向Kubernetes集群添加/删除Node

向Kubernetes集群添加/移除Node

  1. Minion Node操作前准备

    #关闭防火墙
    systemctl stop firewalld
    #禁止防火墙开机启动
    systemctl disable firewalld
    #检查selinux
    getenforce
    Disabled
    #端口检查
  2. Kubernetes集群中添加Node
    在kubeadm init初始化操作完成时,系统最后给出了将节点加入集群的命令:
    kubeadm join 10.0.0.39:6443 --token 4g0p8w.w5p29ukwvitim2ti
    --discovery-token-ca-cert-hash sha256:21d0adbfcb409dca97e655641573b2ee51c
    77a212f194e20a307cb459e5f77c8

    说明:这条命令一定保存好,因为后期没法重现的!!
    在swarm1(Minion Node)上操作:

    kubeadm join 10.0.0.39:6443 --token 4g0p8w.w5p29ukwvitim2ti
    --discovery-token-ca-cert-hash sha256:21d0adbfcb409dca97e655641573b2ee51c
    77a212f194e20a307cb459e5f77c8

    在swarm2(Master)上操作:

    kubectl get nodes
    NAME      STATUS    ROLES     AGE       VERSION
    swarm1    Ready     <none>    3h        v1.10.0
    swarm2    Ready     master    3h        v1.10.0

    swarm1加入集群很是顺利!

  3. Kubernetes集群中移除Node
    在master节点上执行:
    kubectl drain swarm1 --delete-local-data --force --ignore-daemonsets
    kubectl delete node swarm1

    在node2上执行:

    kubeadm reset
  4. 添加Node出现的问题
    #Minion Node一直处于notReady状态,如:
    kubectl get nodes
    NAME      STATUS     ROLES     AGE       VERSION
    swarm1    NotReady   <none>    3h        v1.10.0
    swarm2    Ready      master    3h        v1.10.0

    #原因
    (1)启动kubelet的时候,会pull以下两个镜像(gcr.io/**),因为天朝网络一般翻不了墙,不能成功pull,所以要自己找到这两个docker镜像。点击images自行下载使用!

    k8s.gcr.io/kube-proxy-amd64   v1.10.1             6e6237849607        3 weeks ago         97.1 MB
    k8s.gcr.io/pause-amd64        3.1                 da86e6ba6ca1        4 months ago        742 kB

    (2)使用Kubeadm工具搭建的Kubernetes集群,已经默认集成了安全策略,所以要将Master Node节点/etc/kubernetes/pki下的所有文件复制到Minion Node相同目录下一份。所以在Master Node上执行:

    scp /etc/kubernetes/pki/* [email protected]{minion-ip}:/etc/kubernetes/pki

原文地址:http://blog.51cto.com/wutengfei/2113791

时间: 2024-10-19 13:49:50

向Kubernetes集群添加/删除Node的相关文章

Kubernetes集群部署之五node节点部署

部署kubelet: 1.二进制包准备 将软件包可执行文件从k8s-master复制到node节点中去. [[email protected] ~]# cd /usr/local/src/kubernetes/server/bin [[email protected]-master bin]# scp kubelet kube-proxy 10.200.3.106:/opt/kubernetes/bin/ [[email protected]-master bin]# scp kubelet k

Kubernetes容器集群管理环境 - Node节点的移除与加入

一.如何从Kubernetes集群中移除Node 比如从集群中移除k8s-node03这个Node节点,做法如下: 1)先在master节点查看Node情况 [[email protected]-master01 ~]# kubectl get nodes NAME STATUS ROLES AGE VERSION k8s-node01 Ready <none> 47d v1.14.2 k8s-node02 Ready <none> 47d v1.14.2 k8s-node03 R

kubernetes集群新增node

kubernetes集群要新增node,首先要配置ssh免密登陆 [email protected]:/etc/ansible# ssh-copy-id 172.18.196.6 /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s),

CentOS7部署Kubernetes集群

CentOS7部署Kubernetes集群 简介 Kubernetes是什么? Kubernetes一个用于容器集群的自动化部署.扩容以及运维的开源平台. 通过Kubernetes,你可以快速有效地响应用户需求: a.快速而有预期地部署你的应用 b.极速地扩展你的应用 c.无缝对接新的应用功能 d.节省资源,优化硬件资源的使用 我们希望培育出一个组件及工具的生态,帮助大家减轻在公有云及私有云上运行应用的负担. Kubernetes特点: a.可移植: 支持公有云,私有云,混合云,多重云(mult

基于 CentOS 7 搭建kubernetes集群

基于Centos7构建Kubernetes平台 一.实验环境 3台centos7的主机: master  192.168.111.131部署etcd,kube-apiserver,kube-controller-manager,kube-scheduler 4个应用. node01  192.168.111.130  部署docker,kubelet, kube-proxy  3个应用 node02  192.168.111.129  部署docker,kubelet, kube-proxy  

部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0)

部署Bookinfo示例程序详细过程和步骤(基于Kubernetes集群+Istio v1.0) 部署Bookinfo示例程序 在下载的Istio安装包的samples目录中包含了示例应用程序. Bookinfo应用 部署一个样例应用,它由四个单独的微服务构成,用来演示多种 Istio 特性.这个应用模仿在线书店的一个分类,显示一本书的信息.页面上会显示一本书的描述,书籍的细节(ISBN.页数等),以及关于这本书的一些评论. Bookinfo 应用分为四个单独的微服务: productpage

阿里云ECS搭建Kubernetes集群踩坑记

阿里云ECS搭建Kubernetes集群踩坑记 [TOC] 1. 现有环境.资源 资源 数量 规格 EIP 1 5M带宽 ECS 3 2 vCPU 16 GB内存 100G硬盘 ECS 3 2 vCPU 16 GB内存 150G硬盘 SLB 2 私网slb.s1.small 2. 规划 坑: 上网问题,因为只有一个EIP,所有其它节点只能通过代理上网; 负载均衡问题,因为阿里不支持LVS,负载均衡TCP方式后端又不支持访问负载均衡,HTTP和HTTPS方式,只支持后端协议为HTTP; 为了避免上

Kubeadm部署Kubernetes集群

Kubeadm部署Kubernetes1.14.1集群 原理kubeadm做为集群安装的"最佳实践"工具,目标是通过必要的步骤来提供一个最小可用的集群运行环境.它会启动集群的基本组件以及必要的附属组件,至于为集群提供更丰富功能(比如监控,度量)的组件,不在其安装部署的范围.在环境节点符合其基本要求的前提下,kubeadm只需要两条基本命令便可以快捷的将一套集群部署起来.这两条命令分别是: kubeadm init:初始化集群并启动master相关组件,在计划用做master的节点上执行

【prometheus】kubernetes集群性能监控

手动安装方案——阿里云解决方案(部署失败): https://www.jianshu.com/p/1c7ddf18e8b2 手动安装方案—— (部署成功,但是只有CPU内存等的监控信息,没有GPU的监控信息): https://github.com/camilb/prometheus-kubernetes/tree/master helm安装方案——GPU-Monitoring-tools解决方案(部署成功): 参考:http://fly-luck.github.io/2018/12/10/gp