OCI, Containerd, runC, Moby, linuxkit are all relatively new components that work together for building containers. In this post we will explain each component and how these components relate to one another. Lets Start with the Basics (OCI, runC, Containerd) So what is the Open Container Initiative (OCI)? What are runC and Containerd? Demistyfing Moby & The LinuxKit Linuxkit Test-Drive Important References Lets Start with the Basics (OCI, runC, Containerd) Before jumping in and talking about Moby and Linuxkit, it is important to establish some basic knowledge first, this will make understanding Linuxkit much easier.
As you might know already Docker is now the defacto standard for containers. It is being used as the run-time for many clustering frameworks. Therefore, I thought about summarizing some of the important commands that you might need in your day-to-day docker life. I hope this post will be useful for you. General Docker Commands ## Tagging an image docker tage <image_id> name_of_the_image #real time logs docker logs --tail 1 --follow cbceaaea0ef5 # Forcing a rebuild docker build --no-cache # publish a port even if it was not expose in the dockerfile docker run -p <port> # publish all ports that were explosed in the docker file docker run -P # Setting up environment variables docker run -e WEBAPP_PORT=8000 -e WEBAPP_HOST=www.
I have received many questions about a new project that I have created called GoSayan, so I decided to write a blog post about it. What is GoSayan? Needless to say that GoSayan is a project I started to work on as a hobby in my free time. So I am a “learn by doing” kind of person, even when I was learning Golang, I tried coding as many stub projects as I could, however, there is a limit to the amount of knowledge I can acquire because I have another life to live :D.
Welcome to “Go Recipes For the Lost” post, this is a live post, it won’t ever be done as long as I am writing go code. The intention here is to share with you some fast resolution for common Go coding problems. Let’s begin. Undefined function even though it is declared in another file! When you would like to use functions defined in another go file, and you are using the “run” command.
Microservices are decoupled components that follows the Single Responsibility Principle (SRP), that is, a component does one thing but does it really well. In this mini-book we will be discussing various patterns for decomposing a service into a microservice. What motivates developers to go Micro? How to decompose your services? Handling Cross-cutting concerns Handling communication between micro-services ? Service-Discovery - Where is my-service? Handling failure across dependent services (Circuit breaking reliability) Handling storage-dependencies for microservices Handling access to services Service Function Validation Logging, Instrumentation, and health-checking (Observability) Is it really worth it?
In this post we will walk through the definitions, Properties and patterns for building Microservices. What are Microservices? A microservice is really just a service that adheres to a slightly looser definition of the Single Responsibility Principle (SRP) that arose from patterns for object-oriented design. It is a service that does one thing. Properties of Microservices Small, and Focused on Doing One Thing Well AutonomusTo do decoupling well, you’ll need to model your services right and get the APIs right.
Have you ever tried to spend sometime alone somewhere, thinking about nothing, just letting your absolute self talk to you. I have, and it feels great. Usually, we are occupied mentally by tasks that we are mandated to finish, meetings that we have to attend, people that we have to discuss with, thus leaving no time for ourselves, for discussing important life matters, for defining who we truly are in this life.
As a young kid, I strived for being good at school, for being the best at the swimming club, for getting high honors, and most importantly for being recognized and acknowledged by my peers at school and my family at home. My purpose was to please others and not myself, and as I grew up and started to get a grip at how the world works, I started to feel empty inside, I started to feel that I have not done anything for myself but I have done it all for others.
Okay, so I am going to try and make this brief and to the point for you to get going. You need a Kubernetes cluster working with Kubeadm? good you are in the right place. First, lets get over the problems first. What you need to see at the end is the following: kube-system dummy-2088944543-1x359 1/1 Running 1 1d kube-system etcd-master 1/1 Running 1 1d kube-system kube-apiserver-master 1/1 Running 0 1d kube-system kube-controller-manager-master 1/1 Running 1 1d kube-system kube-discovery-1769846148-1khb9 1/1 Running 1 1d kube-system kube-dns-2924299975-pg660 4/4 Running 4 1d kube-system kube-flannel-ds-25l4t 2/2 Running 2 1d kube-system kube-flannel-ds-9jtd5 2/2 Running 2 1d kube-system kube-flannel-ds-lvskl 2/2 Running 8 1d kube-system kube-proxy-l1hn5 1/1 Running 1 1d kube-system kube-proxy-p1kbt 1/1 Running 1 1d kube-system kube-proxy-x2b1m 1/1 Running 1 1d kube-system kube-scheduler-master 1/1 Running 1 1d Not this …
In today’s virtual network architecture, NFV is paving the way to become to defacto standard for providing network services in the cloud. NFV relies on Service Function Chaining (SFC), to stitch services together to provide a service-path for packets to traverse. OpenStack, one of the more successful open cloud platforms is considered a good base to start building services for NFV related functions. In this post, we will be having a sneak-peak over the components exposed by neutron-sfc, the service chaining API exposed by OpenStack.