您现在的位置是: 网站首页 >Kubernetes >Docker&Kubernetes技术全解 Kubernetes

【K8s+Docker技术全解】09.Master主控节点服务-部署controller-manager

admin2020年10月12日 09:34 Docker | Kubernetes | Linux 1034人已围观

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
0人参与,0条评论

当前用户

未登录,点击   登录

站点信息

  • 建站时间:网站已运行2285天
  • 系统信息:Linux
  • 后台程序:Python: 3.8.10
  • 网站框架:Django: 3.2.6
  • 文章统计:257 篇
  • 文章评论:63 条
  • 腾讯分析网站概况-腾讯分析
  • 百度统计网站概况-百度统计
  • 公众号:微信扫描二维码,关注我们
  • QQ群:QQ加群,下载网站的学习源码
返回
顶部
标题 换行 登录
网站