您现在的位置是: 网站首页 >Kubernetes >Docker&Kubernetes技术全解 Kubernetes
【K8s+Docker技术全解】09.Master主控节点服务-部署controller-manager
admin2020年10月12日 09:34 【Docker | Kubernetes | Linux 】 916人已围观
Docker&Kubernetes技术全解简介 Kubernetes 是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。Kubernetes 拥有一个庞大且快速增长的生态系统。Kubernetes 的服务、支持和工具广泛可用。 课程来自老男孩教育学习总结。
## 99.151/152部署controller-manager ### 什么是controller-manager? controller manager 译为“控制器管理器”,k8s内部有很多资源控制器,比如:Node Controller、Replication Controller、Deployment Controller、Job Controller、Endpoints Controller等等,为了降低复杂度,将这些控制切都编译成了一个可执行文件,并且在同一个进程中运行。 controller manager 负责维护集群的状态,比如故障检测、自动扩展、滚动更新等。 在99.151和99.152上部署controller-manager,这个不用签发证书。 ### 99.151部署controller-manager #### 创建启动脚本kube-controller-manager-startup.sh ```bash # 192.168.99.151 [root@k8s99-151 ~]# cd /opt/kubernetes/server/bin/ [root@k8s99-151 bin]# pwd /opt/kubernetes/server/bin [root@k8s99-151 bin]# mkdir -p /var/log/kube-controller-manager [root@k8s99-151 bin]# vim kube-controller-manager-startup.sh # 写入以下内容 #!/bin/bash ./kube-controller-manager \ --cluster-cidr 172.99.0.0/16 \ --leader-elect true \ --log-dir /var/log/kube-controller-manager \ --master http://127.0.0.1:8080 \ --service-account-private-key-file ./certs/ca-key.pem \ --service-cluster-ip-range 192.168.0.0/16 \ --root-ca-file ./certs/ca.pem \ --v 2 [root@k8s99-151 bin]# chmod +x kube-controller-manager-startup.sh # 测试启动 [root@k8s99-151 bin]# ./kube-controller-manager-startup.sh ``` #### 使用supervisor启动kube-controller-manager.ini ```bash [root@k8s99-151 bin]# vim /etc/supervisord.d/kube-controller-manager.ini ``` 添加下面内容 ```ini [program:kube-controller-manager-k8s99-151] command=/opt/kubernetes/server/bin/kube-controller-manager-startup.sh numprocs=1 directory=/opt/kubernetes/server/bin/ autostart=true autorestart=true startsecs=30 startretries=3 exitcodes=0,2 stopsignal=QUIT stopwaitsecs=10 user=root redirect_stderr=true stdout_logfile=/var/log/kube-controller-manager/controller.stdout.log stdout_logfile_maxbytes=64MB stdout_logfile_backups=4 stdout_capture_maxbytes=1MB stdout_events_enabled=false ``` 启动 ```bash [root@k8s99-151 bin]# supervisorctl update kube-controller-manager-k8s99-151: added process group [root@k8s99-151 bin]# supervisorctl status etcd-server-k8s99-151 RUNNING pid 1307, uptime 0:19:43 kube-apiserver-k8s99-151 RUNNING pid 1306, uptime 0:19:43 kube-controller-manager-k8s99-151 RUNNING pid 1708, uptime 0:00:37 ``` #### 检查controller-manager端口监听 ```bash [root@k8s99-151 bin]# netstat -luntp | grep kube-control tcp6 0 0 :::10252 :::* LISTEN 1709/./kube-control tcp6 0 0 :::10257 :::* LISTEN 1709/./kube-control ``` #### 防火墙允许对外端口 ```bash [root@k8s99-151 bin]# firewall-cmd --zone=public --add-port=10252/tcp --permanent success [root@k8s99-151 bin]# firewall-cmd --zone=public --add-port=10257/tcp --permanent success [root@k8s99-151 bin]# firewall-cmd --reload success ``` ### 99.152部署controller-manager 和99.151类似 ```bash # 192.168.99.152 cd /opt/kubernetes/server/bin/ mkdir -p /var/log/kube-controller-manager # 创建启动文件 cat > kube-controller-manager-startup.sh << EOF #!/bin/bash ./kube-controller-manager \ --cluster-cidr 172.99.0.0/16 \ --leader-elect true \ --log-dir /var/log/kube-controller-manager \ --master http://127.0.0.1:8080 \ --service-account-private-key-file ./certs/ca-key.pem \ --service-cluster-ip-range 192.168.0.0/16 \ --root-ca-file ./certs/ca.pem \ --v 2 EOF # 添加执行权限并测试 chmod +x kube-controller-manager-startup.sh ./kube-controller-manager-startup.sh # 创建supervisor启动配置 cat > /etc/supervisord.d/kube-controller-manager.ini << EOF [program:kube-controller-manager-k8s99-152] command=/opt/kubernetes/server/bin/kube-controller-manager-startup.sh numprocs=1 directory=/opt/kubernetes/server/bin/ autostart=true autorestart=true startsecs=30 startretries=3 exitcodes=0,2 stopsignal=QUIT stopwaitsecs=10 user=root redirect_stderr=true stdout_logfile=/var/log/kube-controller-manager/controller.stdout.log stdout_logfile_maxbytes=64MB stdout_logfile_backups=4 stdout_capture_maxbytes=1MB stdout_events_enabled=false EOF # supervisor启动归并查看端口 supervisorctl update supervisorctl status netstat -luntp | grep kube-control # 防火墙允许端口 firewall-cmd --zone=public --add-port=10252/tcp --permanent firewall-cmd --zone=public --add-port=10257/tcp --permanent firewall-cmd --reload ```
很赞哦! (0)
相关文章
文章交流
- emoji
当前用户
未登录,点击 登录专题目录
- 【K8s+Docker技术全解】01.Kubernetes快速入门概述
- 【K8s+Docker技术全解】02.k8s搭建环境准备-准备DNS服务
- 【K8s+Docker技术全解】03.k8s搭建环境准备-证书签发环境和Docker环境
- 【K8s+Docker技术全解】04.运维主机部署Harbor环境
- 【K8s+Docker技术全解】05.部署k8s分布式数据库etcd
- 【K8s+Docker技术全解】06.Master主控节点服务-部署kube-apiserver集群
- 【K8s+Docker技术全解】07.Master主控节点服务-配置nginx4层反向代理
- 【K8s+Docker技术全解】08.Master主控节点服务-keepalived配置vip
- 【K8s+Docker技术全解】09.Master主控节点服务-部署controller-manager
- 【K8s+Docker技术全解】10.Master主控节点服务-部署kube-scheduler、检查集群状态
- 【K8s+Docker技术全解】11.Node运算节点服务-部署kubelet
- 【K8s+Docker技术全解】12.Node运算节点服务-部署kube-proxy
- 【K8s+Docker技术全解】13.验证kubernets集群
- 【K8s+Docker技术全解】14.关于k8s证书
- 【K8s+Docker技术全解】15.管理k8s核心资源方法
- 【kubernetes】使用kubeadm快速搭建k8s集群学习