zoukankan      html  css  js  c++  java
  • 二进制部署k8s集群(四):部署controller-manager与kube-scheduler

    部署 kube-controller-manager

    在【管理节点1】与【管理节点2】两个节点的kubernetes安装目录添加kube-controller-manager.sh启动文件,配置内容相同。

    cd /opt/kubernetes/server/bin
    vi kube-controller-manager.sh

    kube-controller-manager.sh 启动文件内容:

    #!/bin/sh
     ./kube-controller-manager 
      --cluster-cidr 172.17.0.0/16 
      --leader-elect true 
      --log-dir /data/logs/kubernetes/kube-controller-manager 
      --master http://127.0.0.1:8080 
      --service-account-private-key-file ./certs/ca-key.pem 
      --service-cluster-ip-range 10.67.0.0/16 
      --root-ca-file ./certs/ca.pem 
      --v 2

     --cluster-cidr 表示pod节点的ip地址段,kube-controller-manager.sh启动文件与kube-proxy.sh启动文件两个要配置成一样。

    --service-cluster-ip-range 表示apiserver服务器的ip地址段,需要跟kube-apiserver启动文件的 --service-cluster-ip-range 参数配置成一致。

    --master 表示跟kube-apiserver内部的通讯地址。

    赋予启动文件执行权限,添加数据目录。

    chmod +x kube-controller-manager.sh
    mkdir -p /data/logs/kubernetes/kube-controller-manager

    编写【管理节点1】的 supervisor对kube-controller-manager的启动配置文件。

    vi  /etc/supervisord.d/kube-controller-manager.ini

    [program:kube-controller-manager-01]
    command=/opt/kubernetes/server/bin/kube-controller-manager.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=/data/logs/kubernetes/kube-controller-manager/controller.stdout.log
    stdout_logfile_maxbytes=64MB
    stdout_logfile_backups=4
    stdout_capture_maxbytes=1MB
    stdout_events_enabled=false

    编写【管理节点2】的 supervisor对kube-controller-manager的启动配置文件。

    vi  /etc/supervisord.d/kube-controller-manager.ini

    [program:kube-controller-manager-02]
    command=/opt/kubernetes/server/bin/kube-controller-manager.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=/data/logs/kubernetes/kube-controller-manager/controller.stdout.log
    stdout_logfile_maxbytes=64MB
    stdout_logfile_backups=4
    stdout_capture_maxbytes=1MB
    stdout_events_enabled=false 

    分别在【管理节点1】与【管理节点2】上更新supervisor,启动kube-controller-manager

    supervisorctl update
    supervisorctl status

      

    查看kube-control状态

    netstat -luntp | grep kube-

    部署 kube-scheduler

    分别在【管理节点1】与【管理节点2】上编写启动文件kube-scheduler.sh

     vi  /opt/kubernetes/server/bin/kube-scheduler.sh

    #!/bin/sh
     ./kube-scheduler 
      --leader-elect 
      --log-dir /data/logs/kubernetes/kube-scheduler 
      --master http://127.0.0.1:8080 
      --v 2

    赋予启动文件可执行权限,创建日志目录。

    chmod +x /opt/kubernetes/server/bin/kube-scheduler.sh
    mkdir -p /data/logs/kubernetes/kube-scheduler

    编写【管理节点1】supervisor对kube-scheduler的启动配置文件。

    vi  /etc/supervisord.d/kube-scheduler.ini

    [program:kube-scheduler-01]
    command=/opt/kubernetes/server/bin/kube-scheduler.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=/data/logs/kubernetes/kube-scheduler/scheduler.stdout.log
    stdout_logfile_maxbytes=64MB
    stdout_logfile_backups=4
    stdout_capture_maxbytes=1MB
    stdout_events_enabled=false

    编写【管理节点2】supervisor对kube-scheduler的启动配置文件。

    vi  /etc/supervisord.d/kube-scheduler.ini

    [program:kube-scheduler-02]
    command=/opt/kubernetes/server/bin/kube-scheduler.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=/data/logs/kubernetes/kube-scheduler/scheduler.stdout.log
    stdout_logfile_maxbytes=64MB
    stdout_logfile_backups=4
    stdout_capture_maxbytes=1MB
    stdout_events_enabled=false

    分别在【管理节点1】与【管理节点2】上更新supervisor,启动kube-controller-manager

    supervisorctl update
    supervisorctl status

      

     查看kube-control状态

    netstat -luntp | grep kube-

    查看kube-scheduler与kube-controller-manager启动日志

    tail -fn 200 /data/logs/kubernetes/kube-scheduler/scheduler.stdout.log  
    tail -fn 200 /data/logs/kubernetes/kube-controller-manager/controller.stdout.log
    用kubectl管理集群

    首先在【管理节点1】与【管理节点2】上创建kubectl的软连接到 /usr/bin/kubectl

    ln -s /opt/kubernetes/server/bin/kubectl /usr/bin/kubectl

    检测k8s集群的健康状态

    kubectl get cs

  • 相关阅读:
    使用idea2017搭建SSM框架(转发:https://www.cnblogs.com/hackyo/p/6646051.html#!comments)
    Maven下载、安装和配置(转发:http://blog.csdn.net/jiuqiyuliang/article/details/45390313)
    IDEA main方法自动补全(转发:http://blog.csdn.net/zjx86320/article/details/52684601)
    IntelliJ IDEA 设置代码提示或自动补全的快捷键 (附IntelliJ IDEA常用快捷键)(转发:https://www.cnblogs.com/jx17/p/6244491.html)
    使用IntelliJ IDEA 15和Maven创建Java Web项目
    easyui学习笔记
    Bootstrap学习笔记
    IoC和AOP
    面向对象的五大原则
    面向对象的思想
  • 原文地址:https://www.cnblogs.com/yyee/p/13226630.html
Copyright © 2011-2022 走看看