美文网首页
k8s-安装

k8s-安装

作者: xuxin2020 | 来源:发表于2019-12-25 08:42 被阅读0次

原文连接(https://www.kubernetes.org.cn/5846.html)

环境

1.centos7.6
2.三个主机 master node1 node2

1.安装 docker / kubelet

使用 root 身份在所有节点执行如下代码,以安装软件:
•docker
•nfs-utils
•kubectl / kubeadm / kubelet

在 master 节点和 worker 节点都要执行

curl -sSL https://kuboard.cn/install-script/v1.16.0/install-kubelet.sh | sh

2.初始化 master 节点

  • 以 root 身份在 master 机器上执行

  • 初始化 master 节点时,如果因为中间某些步骤的配置出错,想要重新初始化 master 节点,请先执行 kubeadm reset 操作

  • POD_SUBNET 所使用的网段不能与 master节点/worker节点 所在的网段重叠。该字段的取值为一个 CIDR 值,如果您对 CIDR 这个概念还不熟悉,请不要修改这个字段的取值 10.100.0.1/20

# 只在 master 节点执行
# 替换 x.x.x.x 为 master 节点实际 IP(请使用内网 IP)
# export 命令只在当前 shell 会话中有效,开启新的 shell 窗口后,如果要继续安装过程,请重新执行此处的 export 命令
export MASTER_IP=x.x.x.x
# 替换 apiserver.demo 为 您想要的 dnsName (不建议使用 master 的 hostname 作为 APISERVER_NAME)
export APISERVER_NAME=apiserver.demo
# Kubernetes 容器组所在的网段,该网段安装完成后,由 kubernetes 创建,事先并不存在于您的物理网络中
export POD_SUBNET=10.100.0.1/20
echo "${MASTER_IP}    ${APISERVER_NAME}" >> /etc/hosts
yum install -y wget
curl -sSL https://kuboard.cn/install-script/v1.16.0/init-master.sh | sh

检查 master 初始化结果

只在 master 节点执行
# 执行如下命令,等待 3-10 分钟,直到所有的容器组处于 Running 状态
watch kubectl get pod -n kube-system -o wide

# 查看 master 节点初始化结果
kubectl get nodes -o wide

初始化 worker节点

获得 join命令参数
在 master 节点上执行

# 只在 master 节点执行
kubeadm token create --print-join-command

可获取kubeadm join 命令及参数,如下所示

# kubeadm token create 命令的输出
kubeadm join apiserver.demo:6443 --token mpfjma.4vjjg8flqihor4vt     --discovery-token-ca-cert-hash sha256:6f7a8e40a810323672de5eee6f4d19aa2dbdb38411845a1bf5dd63485c43d303

初始化worker
针对所有的 worker 节点执行

# 只在 worker 节点执行
# 替换 ${MASTER_IP} 为 master 节点实际 IP
export MASTER_IP=x.x.x.x
# 替换 ${APISERVER_NAME} 为初始化 master 节点时所使用的 APISERVER_NAME
export APISERVER_NAME=master
echo "${MASTER_IP}    ${APISERVER_NAME}" >> /etc/hosts

# 替换为 master 节点上 kubeadm token create 命令的输出
kubeadm join apiserver.demo:6443 --token mpfjma.4vjjg8flqihor4vt     --discovery-token-ca-cert-hash sha256:6f7a8e40a810323672de5eee6f4d19aa2dbdb38411845a1bf5dd63485c43d303

检查初始化结果
在 master 节点上执行

# 只在 master 节点执行
kubectl get nodes -o wide

输出结果如下所示:

[root@master ~]# kubectl get nodes 
NAME     STATUS   ROLES    AGE     VERSION
master   Ready    master   41m     v1.16.0
node1    Ready    <none>   6m22s   v1.16.0
node2    Ready    <none>   21m     v1.16.0

移除 worker 节点

正常情况下,您无需移除 worker 节点,如果添加到集群出错,您可以移除 worker 节点,再重新尝试添加
在准备移除的 worker 节点上执行

# 只在 worker 节点执行
kubeadm reset

在 master 节点 上执行

# 只在 master 节点执行
kubectl delete node demo-worker-x-x

•将 demo-worker-x-x 替换为要移除的 worker 节点的名字
•worker 节点的名字可以通过在节点 demo-master-a-1 上执行 kubectl get nodes 命令获得

相关文章

  • k8s学习笔记-1-环境准备

    k8s-部署安装 主控节点和运算节点只是逻辑上的概念,在实际生产中主控节点和逻辑节点部署在一台机器上完全没有问题。...

  • k8s-调度算法

    k8s-调度算法 预选算法,过滤nodes 优选算法,对nodes打分 ps. scheduler_algorit...

  • k8s-架构中各个组件介绍

    k8s-架构中各个组件介绍[https://www.cnblogs.com/smail-bao/p/1199592...

  • 容器

    【K8S】K8S-网络模型、POD/RC/SVC YAML 语法官方文档 - junneyang - 博客园 h...

  • k8s-dashboardUI安装

    承接上一篇k8s-单master集群----- 配置dashboard,参考文章,以下是实际流程 拉取配置文件(还...

  • k8s-服务-安装步骤(保姆级)

    1、修改/ect/hostname (所有node) 2、修改 vim /etc/hosts 设置集群ip与主机名...

  • 使用minikube安装k8s-单机版

    1、Minikube 是什么? Minikube 是一种方便在本地运行 Kubernetes 的工具。 Minik...

  • Kubernetes 入坑【一】

    一 Kubernetes 是什么 Kubernetes(k8s->8代表中间的八个字母)是一个基于容器技术的分布式...

  • k8s-部署

    模拟集群——虚拟机 个人学习一般很少具备集群这样的条件,所以集群的模拟可以使用虚拟机进行模拟。windows和li...

  • K8S-概念

    创建PV-持久化存储 1.创建1台单独的nfs服务器,然后安装nfs服务并配置好/etc/exports文件 例如...

网友评论

      本文标题:k8s-安装

      本文链接:https://www.haomeiwen.com/subject/wdjfoctx.html