2022-09-04 初始化环境

1、主机名成解析 

编辑三台服务器的/etc/hosts文件,添加下面内容

192.168.109.100  master

192.168.109.101  node1

192.168.109.102  node2

2、kubernetes要求集群中的节点时间必须精确一致,这里直接使用chronyd服务从网络同步时间。

3、 禁用iptables和firewalld服务

kubernetes和docker在运行中会产生大量的iptables规则,为了不让系统规则跟它们混淆,直接关闭系统的规则

4、 禁用selinux

selinux是linux系统下的一个安全服务,如果不关闭它,在安装集群中会产生各种各样的奇葩问题

5、禁用swap分区

swap分区指的是虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间虚拟成内存来使用,启用swap设备会对系统的性能产生非常负面的影响,因此kubernetes要求每个节点都要禁用swap设备,但是如果因为某些原因确实不能关闭swap分区,就需要在集群安装过程中通过明确的参数进行配置说明

6、修改linux的内核参数

# 修改linux的内核参数,添加网桥过滤和地址转发功能

# 编辑/etc/sysctl.d/kubernetes.conf文件,添加如下配置:

net.bridge.bridge-nf-call-ip6tables = 1

net.bridge.bridge-nf-call-iptables = 1

net.ipv4.ip_forward = 1

# 重新加载配置

[root@master ~]# sysctl -p

# 加载网桥过滤模块

[root@master ~]# modprobe br_netfilter

# 查看网桥过滤模块是否加载成功

[root@master ~]# lsmod | grep br_netfilter

7、配置ipvs功能

在kubernetes中service有两种代理模型,一种是基于iptables的,一种是基于ipvs的。两者比较的话,ipvs的性能明显要高一些,但是如果要使用它,需要手动载入ipvs模块

# 1 安装ipset和ipvsadm

[root@master ~]# yum install ipset ipvsadmin -y

# 2 添加需要加载的模块写入脚本文件

[root@master ~]# cat < /etc/sysconfig/modules/ipvs.modules

#!/bin/bash

modprobe -- ip_vs

modprobe -- ip_vs_rr

modprobe -- ip_vs_wrr

modprobe -- ip_vs_sh

modprobe -- nf_conntrack_ipv4

EOF

# 3 为脚本文件添加执行权限

[root@master ~]# chmod +x /etc/sysconfig/modules/ipvs.modules

# 4 执行脚本文件

[root@master ~]# /bin/bash /etc/sysconfig/modules/ipvs.modules

# 5 查看对应的模块是否加载成功

[root@master ~]# lsmod | grep -e ip_vs -e nf_conntrack_ipv4

8、重启服务器

上面步骤完成之后,需要重新启动linux系统

[root@master ~]# reboot

9、检查是否关闭

你可能感兴趣的:(2022-09-04 初始化环境)