k8s集群规划
三个节点
master
192.168.1.200
30.1.1.11
cpus>=2
memory>=4
worker1
192.168.1.201
30.1.1.21
cpus>=2
memory>=2
worker2
192.168.1.202
30.1.1.31
cpus>=2
memory>=2
网络规划
192.168.1.0/24 访问外网使用
30.1.1.0/24 集群节点之间通信使用
系统版本
centos7.7
k8s版本
1.17
主机名的注意事项
1. 提前用hostnamect 修改三个节点的主机名
2. 主机名中不能有大写字母、不能有符号(. -)
3. 修改hosts文件可,实现可以解析主机名称
安装准备软件 wget
yum install wget -y
你安装过k8s吗
用kubeadm
kubeadm原理
从网络下载docker镜像 并启动为容器
所有的k8s组件就是一个一个的 docker 容器
k8s的worker加入到master的时候 ,必须通过内外网地址通信
内地地址 30.1.1.11
#############################################################
一键部署k8s集群
安装前准备工作
1. 任意节点 centos 版本在兼容列表中
2. master节点内存需要大于4G
3. 所有节点密码相同,我的密码123456
4. 需要配置时间同步
5. 任意节点 CPU 内核数量大于等于 2
6. 任意节点 hostname 不是 localhost, 且不包含下划线、小数点、大写字母
7. 任意节点都有固定的内网 IP 地址
8. 任意节点上 Kubelet使用的 IP 地址 可互通(无需 NAT 映射),且没有防火墙、安全组隔离
9. 任意节点不会直接使用 docker run 或 docker-compose 运行容器
10. 必须关闭selinux和iptables和firewalld,因为k8s会自己去操作配置规则的。
三个节点
master
192.168.1.200
30.1.1.11
cpus>=2
memory>=4
worker1
192.168.1.201
30.1.1.21
cpus>=2
memory>=2
worker2
192.168.1.202
30.1.1.31
cpus>=2
memory>=2
网络规划
192.168.1.0/24 访问外网使用
30.1.1.0/24 集群节点之间通信使用
系统版本
centos7.7
k8s版本
1.17
第一步: 配置时间同步【master节点】
[root@master ~]# yum install chrony -y
[root@master ~]# vim /etc/chrony.conf
server 127.127.1.0 iburst
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
allow 30.1.1.0/24
local stratum 10
[root@master ~]# systemctl restart chronyd
[root@master ~]# systemctl enable chronyd
[root@master ~]# ss -unl | grep 123
[root@master ~]# timedatectl set-timezone Asia/Shanghai
[root@master ~]# echo "timedatectl set-timezone Asia/Shanghai">>/etc/rc.local
[root@master ~]# chmod +x /etc/rc.d/rc.local
第二步: 配置时间同步【worker节点】
[root@worker1 ~]# timedatectl set-timezone Asia/Shanghai
[root@worker1 ~]# echo "timedatectl set-timezone Asia/Shanghai">>/etc/rc.local
[root@worker1 ~]# chmod +x /etc/rc.d/rc.local
[root@worker1 ~]# echo "30.1.1.1 master">>/etc/hosts
[root@worker1 ~]# vim /etc/chrony.conf
server 30.1.1.11 iburst
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
[root@worker1 ~]# systemctl restart chronyd
[root@worker1 ~]# systemctl enable chronyd
第三步 上传k8s组件和安装程序
install_k8s_1.17.0
kube1.17.0.tar.gz
第四步 执行安装
[root@master ~]# chmod +x install_k8s_1.17.0
[root@master ~]# mv install_k8s_1.17.0 /bin/
[root@master ~]# install_k8s_1.17.0 init --passwd 123456 --master 30.1.1.11 --node 30.1.1.21 --pkg-url ./kube1.17.0.tar.gz --version v1.17.0
第五步 查看节点信息
[root@master ~]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
master Ready master 5m46s v1.17.0
第六步 在master上生成token
[root@master ~]# kubeadm token create --print-join-command
kubeadm join apiserver.cluster.local:6443 --token w4tghr.ff1hesx7c6gzwu1x --discovery-token-ca-cert-hash sha256:792d03f02ece7a08b3e2ac259669a52635bd0d5f8fd09dff46a0361dcd0183b0
第七步 worker1加入集群
[root@worker1 ~]# vim /etc/hosts
修改
30.1.1.11 apiserver.cluster.local
[root@worker1 ~]# kubeadm join apiserver.cluster.local:6443 --token w4tghr.ff1hesx7c6gzwu1x --discovery-token-ca-cert-hash sha256:792d03f02ece7a08b3e2ac259669a52635bd0d5f8fd09dff46a0361dcd0183b0
第八步 安装第二个worker2
配置时间同步
略
上传组件包和安装程序
略
[root@worker2 ~]# tar xvf kube1.17.0.tar.gz
[root@worker2 ~]# cd kube/shell/
[root@worker2 shell]# sh init.sh
加入到集群
[root@worker2 ~]# echo "30.1.1.11 apiserver.cluster.local">>/etc/hosts
[root@worker2 ~]# kubeadm join apiserver.cluster.local:6443 --token w4tghr.ff1hesx7c6gzwu1x --discovery-token-ca-cert-hash sha256:792d03f02ece7a08b3e2ac259669a52635bd0d5f8fd09dff46a0361dcd0183b0
centos7.7安装k8s
猜你喜欢
转载自blog.csdn.net/SKTONE_SHUAI/article/details/104179391
今日推荐
周排行