Kubernetes Detailed Explanation (1) - Basic Knowledge of Kubernetes

Today, I will continue to introduce Linux operation and maintenance related knowledge. The main content of this article is the basic knowledge of Kubernetes.

1. Overview of Kubernetes

Kubernetes is an open source container cluster management system, which can realize automatic deployment, automatic scaling, maintenance and other functions of container clusters.
We have introduced the relevant knowledge of Docker before. Using Docker can easily publish a service or an application, which greatly avoids the impact of development environment and dependencies on software development, testing, and operation and maintenance.
However, the use of Docker still has the disadvantage that when our application needs to be deployed to multiple containers, the operation is more troublesome. We need a management platform, relying on it to provide management for our various containers, so that the containers can automatically start and cooperate to realize our services. For this purpose, Kubernetes came into being.
Kubernetes can achieve the following functions:
1. Automated container deployment and replication.
2. Scale up or down the size of the container as needed.
For example, there are 10 web servers in a service, and these 10 web servers load balance to provide services together. We can expand it to 20 or reduce it to 5 as needed.
3. Organize containers into groups.
For example, two devices in the LAMP architecture, MySQL and Apache, form a container group.
4. Save resources and optimize the use of hardware resources.
Based on Kubernetes, our container deployment is more flexible
. 5. Provide container flexibility. If the container fails, it will be replaced immediately.
When the node running the Kubernetes container fails, Kubernetes will be created again on other nodes. the container.
The Kubernetes Chinese official website URL is: https://kubernetes.io/zh/ , and its page is as follows:
insert image description here

2. Kubernetes features

Kubernetes features are as follows:
1. Portability
Supports public cloud, private cloud and hybrid cloud.
2. Extensible
Kubernetes is based on plugins and modules, so it has good extensibility.
3. Automated
Kubernetes can realize full declaration cycle management such as automatic deployment and replication of containers, elastic shrinkage and expansion, etc.

3. Kubernetes features

Kubernetes usually runs on a set of hosts, which work together under the scheduling of Kubernetes to implement container application services and declaration cycle management.
Kubernetes has the following important features:
1. Automatic boxing.
Kubernetes usually runs on a host group, and manages these hosts, unifies the resources of these hosts, and automatically allocates hosts to run containers according to the host load.
2, automatic repair.
When a host running Kubernetes goes down, Kubernetes will create all containers on the host on other host nodes to ensure uninterrupted business.
3. Horizontal expansion.
It supports expansion through simple commands and horizontal expansion based on the load rate of CPU and other resources.
4. Server discovery.
Kubernetes implements service discovery through KubeDNS, an add-on to Kubernetes.
5. Load balancing.
Kubernetes can achieve load balancing through iptables and ipvs.
6. Automatic release and rollback.
Kubernetes supports "grayscale" updating of applications, that is, when updating applications in the system, only a part is updated to prevent bugs from affecting the entire cluster. If the updated system is running normally, the entire system update will be completed. If the system operation fails, it will immediately "roll back" to the principle system.
7. Key configuration management.
Kubernetes allows storing and managing sensitive information such as Oauth tokens and ssh keys. Kubernetes can be deployed to update passwords and application configuration without rebuilding the container or exposing this sensitive information in running memory.
8. Storage management.
Kubernetes supports a variety of storage systems, including node local storage, cloud storage of cloud service providers, and network storage such as NFS.
9. Batch processing execution.
In addition to service applications, Kubernetes also supports batch jobs known as continuous integration (CI).
Originality is not easy, please indicate the source for reprinting: https://blog.csdn.net/weixin_40228200

Guess you like

Origin blog.csdn.net/weixin_40228200/article/details/124226071