solhost.blogg.se

Docker and kubernetes architecture
Docker and kubernetes architecture











  1. #DOCKER AND KUBERNETES ARCHITECTURE SOFTWARE#
  2. #DOCKER AND KUBERNETES ARCHITECTURE CODE#

After deploying Rancher, you can create or import clusters for running your workloads. Running user workloads on this cluster is not advised. The figure depicts a Rancher Server installation that manages two downstream Kubernetes clusters: one created by RKE and another created by Amazon EKS (Elastic Kubernetes Service).įor the best performance and security, we recommend a dedicated Kubernetes cluster for the Rancher management server. The figure below illustrates the high-level architecture of Rancher 2.x.

#DOCKER AND KUBERNETES ARCHITECTURE SOFTWARE#

Rancher Server includes all the software components used to manage the entire Rancher deployment. The majority of Rancher 2.x software runs on the Rancher Server.

docker and kubernetes architecture

#DOCKER AND KUBERNETES ARCHITECTURE CODE#

  • Rancher server components and source code.
  • Tools for provisioning Kubernetes clusters.
  • Communicating with downstream user clusters.
  • docker and kubernetes architecture

    This section covers the following topics: For a brief explanation of how Kubernetes components work together, refer to the concepts page. This section assumes a basic familiarity with Docker and Kubernetes. The following illustrations show the structure of Kubernetes Master and Node.This section focuses on the Rancher server, its components, and how Rancher communicates with downstream Kubernetes clusters.įor information on the different ways that Rancher can be installed, refer to the overview of installation options.įor a list of main features of the Rancher API server, refer to the overview section.įor guidance about setting up the underlying infrastructure for the Rancher server, refer to the architecture recommendations. It manages pods on node, volumes, secrets, creating new containers’ health checkup, etc. It makes sure that the networking environment is predictable and accessible and at the same time it is isolated as well. It helps in forwarding the request to correct containers and is capable of performing primitive load balancing. This is a proxy service which runs on each node and helps in making services available to the external host. It manages network rules, port forwarding, etc. The kubelet process then assumes responsibility for maintaining the state of work and the node server. This communicates with the master component to receive commands and work. It interacts with etcd store to read configuration details and wright values. This is a small service in each node responsible for relaying information to and from control plane service. The first requirement of each node is Docker which helps in running the encapsulated application containers in a relatively isolated but lightweight operating environment. Kubernetes - Node Componentsįollowing are the key components of Node server which are necessary to communicate with Kubernetes master. The scheduler is responsible for workload utilization and allocating pod to new node. In other words, this is the mechanism responsible for allocating pods to available nodes. It is responsible for tracking utilization of working load on cluster nodes and then placing the workload on which resources are available and accept the workload. It is a service in master responsible for distributing the workload. This is one of the key components of Kubernetes master. The controller manager runs different kind of controllers to handle nodes, endpoints, etc. The key controllers are replication controller, endpoint controller, namespace controller, and service account controller. It works toward getting the shared state of cluster and then make changes to bring the current status of the server to the desired state.

    docker and kubernetes architecture

    In general, it can be considered as a daemon which runs in nonterminating loop and is responsible for collecting and sending information to API server. This component is responsible for most of the collectors that regulates the state of cluster and performs a task. Kubeconfig is a package along with the server side tools that can be used for communication.

    docker and kubernetes architecture

    API server implements an interface, which means different tools and libraries can readily communicate with it. Kubernetes is an API server which provides all the operation on cluster using the API. It is a distributed key value Store which is accessible to all. It is accessible only by Kubernetes API server as it may have some sensitive information. It is a high availability key value store that can be distributed among multiple nodes. It stores the configuration information which can be used by each of the nodes in the cluster. Kubernetes - Master Machine Componentsįollowing are the components of Kubernetes Master Machine. The key components of master and node are defined in the following section. Wherein, we have master installed on one machine and the node on separate Linux machines. Kubernetes - Cluster ArchitectureĪs seen in the following diagram, Kubernetes follows client-server architecture. In this chapter, we will discuss the basic architecture of Kubernetes.













    Docker and kubernetes architecture