Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

Kubeadm installation Kubernetes1.15 installation deployment details-Part 1

2025-01-30 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Servers >

Share

Shulou(Shulou.com)06/02 Report--

Kubeadm installation Kubernetes1.15 installation deployment details-Part 1

Brief introduction:

Kubernetes originated from Google's internal Borg and provides an application-oriented container cluster deployment and management system. The goal of Kubernetes is to eliminate the burden of orchestrating physical / virtual computing, network, and storage infrastructure, and to enable application operators and developers to focus entirely on container-centric primitives for self-service operations. Kubernetes also provides a stable, compatible foundation (platform) for building customized workflows and more advanced automation tasks. Kubernetes has comprehensive cluster management capabilities, including multi-level security protection and access mechanism, multi-tenant application support capability, transparent service registration and service discovery mechanism, built-in load balancer, fault detection and self-repair capability, service rolling upgrade and online expansion, scalable resource automatic scheduling mechanism, and multi-granularity resource quota management capability. Kubernetes also provides comprehensive management tools, covering development, deployment testing, operation and maintenance monitoring and other aspects.

Choose a deployment method

Last year, the company completed the full-line containerization transformation of the business environment, and combined with the smooth operation of the open source container management platform Rancher (v1.6). Later, it was found that kubernetes has a unified rhythm. Later, individuals have time to gradually start to investigate the K8s cluster, starting with source deployment, when individuals use ansible, the whole process can be described as a toss, ah, stepped on a lot of holes. There are a lot of batch automation tools on the Internet. Since we are going to use it in the production environment now, we will replace the containerized production environment of the company in the future. Individuals reorganize the ansible-playbook based on source code deployment according to the company's regular server configuration. You can deploy a set of multi-master high availability kubernetes clusters with the following modules:

P1-nginx.yamlp2-keepalived.yml1-download-sofrware.yaml2-creat-key.yaml3-kernelup.yaml4-basic.yml5-copy-command.yml6-etcd.yml7-kubmaster.yaml8-kubnode.yaml9-flannel.yaml10-coredns.ymlp1-nginx.yamlp2-keepalived.yml

The whole process takes a lot of energy and time, and the process is painful and long (O (∩ _ ∩) O ha! ), of course, there are also a lot of gains.

About using source code deployment:

If individuals want to learn or want to know some configuration details, you can use this method, but it is best not to write the automation section yourself, which is not particularly complicated, mainly using batch deployment tools to deploy distributed clusters. You must use very pair of variables to standardize the path, configuration, and permissions. This piece of debugging takes time, and it will be even worse if you are not familiar with cluster deployment. To learn and understand, just knock it manually, and don't push the automation things together in the early stages. In addition, the old bird said that there is time to toss around, after all, the efficiency of automating the deployment of complex clusters is quite high.

Use the kubeadm tool

Individuals tend to deploy source code before using kubadm. Later, looking at the relevant peripheral information about K8s, it is found that the official promotion of kubeadm installation and deployment is very strong, and the iteration of new features is also very fast. Another important factor is that the new functions of k8s are updated very quickly, and the new functions and features may face changes in configuration and parameters. In addition, the components around K8s dns, network plug-ins and K8s compatibility and matching are all constrained, and many features that support versions are only written in official documents, all of which bring problems and pitfalls.

Deployment method is recommended:

Generally speaking, I recommend the deployment of official recommendation tools. First of all, self-testing and functional verification will be carried out before the official release of the new version. Compatibility problems can basically be avoided, the number of users of official website tools can also be guaranteed, and problems can be solved quickly. It is also convenient to upgrade with the main version in the future. The time saved can think more about how the company's business can run more smoothly on K8s.

This deployment architecture

Node role introduction [kub-master] Node name deployment Service 172.20.101.157 name=kubm-01 docker, keepalived, nginx, etcd, kube-apiserver, kube-controller-manager, kube-scheduler172.20.101.164 name=kubm-02 docker, keepalived, nginx, etcd, kube-apiserver, kube-controller-manager, kube-scheduler172.20.101.165 name=kubm-03 docker, keepalived, nginx, etcd, kube-apiserver, kube-controller-manager, Kube-scheduler [kub-node] 172.20.101.160 name=kubnode-01 kubelet, docker, kube_proxy172.20.101.166 name=kubnode-02 kubelet, docker, kube_proxy172.20.101.167 name=kubnode-03 kubelet, docker, kube_proxy deployment environment introduction docker-vDocker version 18.06.1-ce Build e68fc7akubeadm versionkubeadm version: & version.Info {Major: "1", Minor: "15", GitVersion: "v1.15.0", GitCommit: "e8462b5b5dc2584fdcd18e6bcfe9f1e4d970a529", GitTreeState: "clean", BuildDate: "2019-06-19T16:37:41Z", GoVersion: "go1.12.5", Compiler: "gc" Platform: "linux/amd64"} Kubernetes VERSION v1.15.0 more / etc/redhat-release CentOS Linux release 7.6.1810 (Core) uname-aLinux kubm-01 4.20.10-1.el7.elrepo.x86_64 # 1 SMP Fri Feb 15 08:52:17 EST 2019 x86 "64 GNU/Linuxnginx-vnginx version: nginx/1.16.0keepalived-vKeepalived v1.3.5, git commit v1.3.5-6-g6fa32f2

# configuration and deployment

In order to reduce the space, put it into a separate document.

Https://blog.51cto.com/michaelkang/2413965

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Servers

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report