关于我们要搭建的K8S:
- Docker版本:docker-ce-19.03.9;
- K8S版本:1.20.2;
- 三个节点:master、node1、node2(固定IP);
- 容器运行时:仍然使用Docker而非Containerd;
- Pod网络:用Calico替换Flannel实现 Pod 互通,支持更大规模的集群;
- 集群构建工具:Kubeadm(这个没啥好说的吧);
关于网络配置:
- 整体机器采用NAT地址转换;
- 各台虚拟机采用固定IP地址;
- 虚拟机VMWare统一网关地址:192.168.32.2;
具体IP地址分配如下:
主机名称 | 硬件配置 | IP |
---|---|---|
master | CPU4核/内存4G | 192.168.32.200 |
node1 | CPU4核/内存4G | 192.168.32.201 |
node2 | CPU4核/内存4G | 192.168.32.202 |
① 安装CentOS镜像
首先在镜像站下载CentOS-7-x86_64-Minima.iso,即最小的镜像文件;
然后在VMWare安装这个镜像,这里作为master机器;
具体镜像安装挺简单的,这里不再赘述了;
只贴一个配置:
- 1个处理器4核
- 4G内存
- 40G硬盘SCSI
- 网络:NAT
分区:
- /boot:256M
- swap:2G
- /:剩余
在安装CentOS时可以不创建用户,但是一定要创建Root密码;
我这里创建的是:
123456
;
② 配置网络
在网络配置中,我们要配置虚拟机为固定的IP地址,避免使用DCHP动态分配IP
首先需要修改配置vi /etc/sysconfig/network
:
$ vi /etc/sysconfig/network
# 添加下面的配置
+ NETWORKING=yes
+ HOSTNAME=master
还要修改vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
-BOOTPROTO=dchp
+BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
-UUID=XXXX-XXXX-XXXX
-ONBOOT=no
+ONBOOT=yes
+IPADDR=192.168.32.200
+NETMASK=255.255.255.0
+GATEWAY=192.168.32.2
配置hosts:
$ vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
+ 192.168.32.200 master
+ 192.168.32.201 node1
+ 192.168.32.202 node2
配置完成后reboot;
reboot后登录,ping百度、qq等网站,成功则说明配置成功
ping www.qq.com
PING ins-r23tsuuf.ias.tencent-cloud.net (221.198.70.47) 56(84) bytes of data.
64 bytes from www47.asd.tj.cn (221.198.70.47): icmp_seq=1 ttl=128 time=61.0 ms
64 bytes from www47.asd.tj.cn (221.198.70.47): icmp_seq=2 ttl=128 time=61.0 ms
64 bytes from www47.asd.tj.cn (221.198.70.47): icmp_seq=3 ttl=128 time=61.2 ms
③ 系统配置
系统配置主要是关闭防火墙、关闭swap、配置yum源等;
Ⅰ.关闭防火墙iptables && .禁用selinux
关闭防火墙iptables
$ service iptables stop
$ systemctl disable iptables
禁用selinux
$ systemctl stop firewalld
$ systemctl disable firewalld
# 查看selinux
$ getenforce
Enforcing
# 关闭
$ vim /etc/selinux/config
# 修改为:disabled
SELINUX=disabled
SSH登录配置
$ vim /etc/ssh/sshd_config
# 修改
UseDNS no
PermitRootLogin yes #允许root登录
PermitEmptyPasswords no #不允许空密码登录
PasswordAuthentication yes # 设置是否使用口令验证
关闭Swap空间
[root@master ~]# swapoff -a
[root@master ~]# sed -ie '/swap/ s/^/# /' /etc/fstab
[root@master ~]# free -m
total used free shared buff/cache available
Mem: 3770 1265 1304 12 1200 2267
Swap: 0 0 0
配置桥接流量