KubernetesWhat is it?
Probably a lot of people have doubts about this, but in the container field, kubernetes is well known.
In recent years, China’s Internet giants such as Alibaba, byte hop, Tencent, Baidu, etc. have been deeply engaged in the container field, and kubernetes is also the strategic focus of these large factories in the future.
Therefore, if you don’t know kubernetes yet, this post should be collected and read carefully.
1、 Kubernetes’ past and present
stayKubernetes Basics: getting started and installing configurationIn one lesson, kubernetes is described in this way.
Kubernetes is a cross host cluster, open source container scheduling platform. It can automate the deployment, expansion and operation of application containers, and provide container centric infrastructure.
Its name comes from Greek, meaning “helmsman” or “pilot”. K8s is an abbreviation by replacing the eight letters “ubernet” with “8”. In Chinese, the pronunciation of k8s is similar to that of kubernetes.
Jim zemlin, managing director of the Linux foundation, said:“Kubernetes has become the Linux operating system in the era of cloud computing.”
Kubernetes is an open source version of Google Borg project. Borg is a famous large-scale cluster management system that has been used by Google for more than ten years. Its prototype image is as follows:
So,Kubernetes was built on Google’s decades of experience, mostly from the scale of Google’s production environment, and combines the best ideas and practices of the community.The goal of kubernetes is to manage containers across multiple hosts, provide basic deployment, maintenance, and application scalability. The main implementation language is go.
2、 Kubernetes’ growth process and characteristics
Kubernetes’ important growth history:
- In June 2014, kubernetes was officially open-source by Google
- In 2015, Google donated kubernetes to CNCF (cloud native Computing Foundation) of Linux foundation
- In 2017, kubernetes defeated docker swarm and Apache mesos to become the preferred platform and de facto standard in the field of container management and scheduling
Strong container layout capability
As a container choreography management platform, it has strong container choreography ability. Kubernetes and docker develop together and deeply integrate docker, so it adapts to the characteristics of containers, such as container composition, label selection and service discovery, and can meet the needs of enterprise level.
It is lightweight and has good support for microservice architecture.
No matter public cloud, private cloud, hybrid cloud or multi Cloud Architecture, the system can be “relocated” anytime, anywhere.
The system can be migrated from the physical machine to the public cloud without changing the configuration file, and Google cloud (GCE), Huawei cloud (CCE), Alibaba cloud (ACK) and Tencent cloud (tke) support kubernetes cluster.
3、 10 reasons to use kubernetes
From the perspective of ecosystem:
- Output of Google’s most mature container choreography management experience in the industry
- In 2017, it defeated docker swarm and Apache mesos and became the only container choreography management platform worthy of binding for cloud native applications
- Comprehensive support of traditional cloud platform providers: Google k8s engine, openshift of red hat, azure container service of Microsoft, cloud container service of IBM, etc
With kubernetes, you can:
- Choreograph containers across hosts
- Make full use of hardware resources to maximize the requirements of enterprise applications
- Deployment and application of automation control and upgrade
- Mounting and adding storage for stateful applications
- Extending or tailoring containerized applications and their resources online
- Declarative container management ensures that the deployed applications operate as we deploy them
- Through automatic layout, automatic restart, automatic replication and automatic scaling, the application status check and self repair are realized
4、 Zero basics introduction kubernetes
Recently, the experimental building has launched a series of kubernetes courses with different difficulties, but I think the most suitable course for new students is this oneKubernetes Basics: getting started and installing configuration
This course is an introduction to kubernetes. It will lead you to learn more about kubernetes step by step from scratch. The content includes: basic concepts of kubernetes, microservice architecture, deployment examples, and the most commonly used yaml language format.
You will learn:
Experimental environment: 1
This course is all virtual machine experimental environment, kubernetes version is 1.15, in the environment, execute the command through script, that is to start a 3-node kubernetes cluster.
The difficulty of the course is simple, for students who have mastered Linux and docker basics, and hope to quickly understand the basic concepts of kubernetes, single node (multi node) installation and deployment, and basic use of cluster.
clickKubernetes Basics: getting started and installing configurationThere is still a chance to try.
5、 Supplementary reading on kubernetes
For those who are not familiar with Linux and docker, you can check out the lab building course:
Linux Basics (free)
Practical learning docker
Students who already know kubernetes and want to learn in depth can continue to study the lab building course:
Kubernetes advanced (1): pod and service
Kubernetes advanced (2): controller, storage and network
Kubernetes advanced (3): helm, cluster security, logging and monitoring