十四,Kubernetes_v1.14.2部署kube-scheduler

一,分发kube-scheduler二进制文件

source /root/env.sh
for master_ip in ${MASTER_IPS[@]}
do
echo -e "\033[31m>>> ${master_ip} \033[0m"
scp /opt/kubernetes/package/kubernetes/server/bin/kube-scheduler root@${master_ip}:/opt/kubernetes/bin
done
#验证是否分发成功
source /root/env.sh
for master_ip in ${MASTER_IPS[@]}
do
echo -e "\033[31m>>> ${master_ip} \033[0m"
ssh root@${master_ip} "ls -ld /opt/kubernetes/bin/kube-scheduler"
done

 

 

二,生成kube-scheduler.service文件

cat > /usr/lib/systemd/system/kube-scheduler.service << EOF
[Unit]
Description=Kubernetes Scheduler
Documentation=https://github.com/GoogleCloudPlatform/kubernetes

[Service]
ExecStart=/opt/kubernetes/bin/kube-scheduler \\
  --address=127.0.0.1 \\
  --master=http://127.0.0.1:8080 \\
  --leader-elect=true \\
  --v=2 \\
  --logtostderr=false \\
  --log-dir=/opt/kubernetes/log

Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
EOF

 

 

三,分发kube-scheduler.service服务的配置文件

source /root/env.sh
for master_ip in ${MASTER_IPS[@]}
do
echo -e "\033[31m>>> ${master_ip} \033[0m"
scp /usr/lib/systemd/system/kube-scheduler.service root@${master_ip}:/usr/lib/systemd/system
done
#验证是否分发成功
source /root/env.sh
for master_ip in ${MASTER_IPS[@]}
do
echo -e "\033[31m>>> ${master_ip} \033[0m"
ssh root@${master_ip} "ls -ld /usr/lib/systemd/system/kube-scheduler.service"
done

 

 

四,启动kube-scheduler服务

source /root/env.sh
for master_ip in ${MASTER_IPS[@]}
do
echo -e "\033[31m>>> ${master_ip} \033[0m"
ssh root@${master_ip} "systemctl daemon-reload && systemctl restart kube-scheduler && systemctl enable kube-scheduler"
done

 

 

五,验证kube-scheduler服务是否启动成功

source /root/env.sh
for master_ip in ${MASTER_IPS[@]}
do
echo -e "\033[31m>>> ${master_ip} \033[0m"
ssh root@${master_ip} "systemctl status kube-scheduler | grep Active"
done

确保状态为 active (running),否则查看日志,确认原因

journalctl -u kube-scheduler

 

 

六,验证集群状态

kubectl get cs

输出:
NAME                       STATUS    MESSAGE             ERROR
controller-manager   Healthy      ok                  
scheduler                 Healthy      ok                  
etcd-2                       Healthy      {"health":"true"}   
etcd-1                      Healthy       {"health":"true"}   
etcd-0                      Healthy       {"health":"true"}

 

 

#查看当前的 leader

kubectl get endpoints kube-scheduler --namespace=kube-system -o yaml

#输出:
apiVersion: v1
kind: Endpoints
metadata:
  annotations:
    control-plane.alpha.kubernetes.io/leader: '{"holderIdentity":"k8s-master02_8c2953bd-8147-11e9-aaee-fa163ec2e868","leaseDurationSeconds":15,"acquireTime":"2019-05-28T12:53:11Z","renewTime":"2019-05-28T12:56:52Z","leaderTransitions":0
}'  creationTimestamp: "2019-05-28T12:53:11Z"
  name: kube-scheduler
  namespace: kube-system
  resourceVersion: "1909"
  selfLink: /api/v1/namespaces/kube-system/endpoints/kube-scheduler
  uid: 8cc2c98b-8147-11e9-bbf4-fa163ec2e868

#可见,当前的 leader 为k8s-master02节点

#测试 kube-scheduler 集群的高可用(可选)

#随便找一个或两个 master 节点,停掉 kube-scheduler 服务,看其它节点是否获取了 leader 权限

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值