设为首页 收藏本站
查看: 1285|回复: 0

[经验分享] 使用kubeadm部署k8s集群09-配置worker节点

[复制链接]

尚未签到

发表于 2018-1-22 10:36:28 | 显示全部楼层 |阅读模式
配置 worker 节点

    初始化
    加入集群
    切换 worker 节点连接到 apiserver 的 LB 入口
    调整集群中节点角色和调度策略

初始化

    /etc/hosts


    ### k8s master @envDev
    10.10.9.67 tvm-00
    10.10.9.68 tvm-01
    10.10.9.69 tvm-02

k8s worker @envDev

10.10.9.74 tvm-03
10.10.9.75 tvm-04
k8s apiserver SLB

10.10.9.76 kubernetes.default.svc.cluster.local


- docker
```bash
yum -y install yum-utils
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast
yum -y install docker-ce-17.09.1.ce-1.el7.centos.x86_64
systemctl enable docker

mkdir -p /data2/docker
mkdir -p /etc/docker
tee /etc/docker/daemon.json <<-'EOF'
{
  "exec-opts": ["native.cgroupdriver=cgroupfs"],
  "graph": "/data2/docker",
  "storage-driver": "overlay",
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "registry-mirrors": ["https://xxx.mirror.aliyuncs.com"]
}
EOF

    k8s


    cat <<'_EOF' >  /etc/sysctl.d/k8s.conf
    net.bridge.bridge-nf-call-ip6tables = 1
    net.bridge.bridge-nf-call-iptables = 1
    _EOF
    sysctl --system

worker 节点需要的镜像

docker load -i gcr.io-worker.tar
docker load -i calico-worker.tar
worker 节点需要的 rpm 包

[iyunv@tvm-03 ~]# cd ~/k8s_install/k8s_rpms_1.9
[iyunv@tvm-03 k8s_rpms_1.9]# ls
kubelet-1.9.0-0.x86_64.rpm kubernetes-cni-0.6.0-0.x86_64.rpm socat-1.7.3.2-2.el7.x86_64.rpm

yum localinstall *.rpm -y
sed -i 's#--cgroup-driver=systemd#--cgroup-driver=cgroupfs#' /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
systemctl daemon-reload


##### 加入集群
```bash
### 在 mater 上重新生成 token (如果过期了的话)
kubeadm join --token 9db9dd.09bd5226fb3f259c 10.10.9.67:6443 --discovery-token-ca-cert-hash sha256:42cfdc412e731793ce2fa20aad1d8163ee8e6e5c05c30765f204ff086823c653

### 在 master 上查看节点是否加入
[iyunv@tvm-00 ~]# kubectl get nodes
NAME                     STATUS    ROLES     AGE       VERSION
tvm-00   Ready     master    12d       v1.9.0
tvm-01   Ready     <none>    8d        v1.9.0
tvm-02   Ready     <none>    8d        v1.9.0
tvm-03   Ready     <none>    30m       v1.9.0
tvm-04   Ready     <none>    29m       v1.9.0

切换 worker 节点连接到 apiserver 的 LB 入口

sed -i 's#https://10.10.9.67:6443#[url]https://kubernetes.default.svc.cluster.local:6443#'[/url] /etc/kubernetes/kubelet.conf
systemctl restart kubelet

### 验证一下
[iyunv@tvm-03 k8s_install]# ss -antp4 |grep ':6443'
ESTAB      0      0      10.10.9.74:56118              10.10.9.76:6443                users:(("kubelet",pid=21260,fd=12))
ESTAB      0      0      10.10.9.74:53204              10.10.9.67:6443                users:(("kube-proxy",pid=15834,fd=5))

### 符合预期

调整集群中节点角色和调度策略

### 当前状态
[iyunv@tvm-00 ~]# kubectl describe nodes/tvm-00 |grep -E '(Roles|Taints)'
Roles:              master
Taints:             node-role.kubernetes.io/master:NoSchedule
[iyunv@tvm-00 ~]# kubectl describe nodes/tvm-01 |grep -E '(Roles|Taints)'
Roles:              <none>
Taints:             <none>

### 设置 tvm-01 为 master 且不允许调度
[iyunv@tvm-00 ~]# kubectl label node tvm-01 node-role.kubernetes.io/master=
node "tvm-01" labeled
[iyunv@tvm-00 ~]# kubectl taint nodes tvm-01 node-role.kubernetes.io/master=:NoSchedule
node "tvm-01" tainted

### 符合预期
[iyunv@tvm-00 ~]# kubectl describe nodes/tvm-01 |grep -E '(Roles|Taints)'
Roles:              master
Taints:             node-role.kubernetes.io/master:NoSchedule

### 设置 tvm-02 为 master 且不允许调度(操作类似,略)
[iyunv@tvm-00 ~]# kubectl get nodes
NAME                     STATUS    ROLES     AGE       VERSION
tvm-00   Ready     master    12d       v1.9.0
tvm-01   Ready     master    8d        v1.9.0
tvm-02   Ready     master    8d        v1.9.0
tvm-03   Ready     <none>    1h        v1.9.0
tvm-04   Ready     <none>    1h        v1.9.0





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-435934-1-1.html 上篇帖子: 使用kubeadm部署k8s集群08-配置LB指向kube-apiserver 下篇帖子: k8s基本概念-如何使用Namespaces
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表