一、搭建k8s集群前置准备工作

1、VM虚拟机配置网卡




2、准备机器

操作系统 IP 角色 CPU核心数 运行内存 Hostname
CentOS 7.6 192.168.1.2 Master1 2 2G k8s-master1
CentOS 7.6 192.168.1.3 Master2 2 2G k8s-master2
CentOS 7.6 192.168.1.4 Master3 2 2G k8s-master3
CentOS 7.6 192.168.1.5 Nade1 2 4G k8s-nade1
CentOS 7.6 192.168.1.6 Nade1 2 4G k8s-node2
CentOS 7.6 192.168.1.7 Harbor 2 4G k8s-harbor(镜像仓库)
CentOS 7.6 192.168.1.8 Spray 2 2G 使用spray安装k8s使用(装完可删)

3、每台机器升级内核

# 检查已安装的内核版本
uname -rs
#导入该源的秘钥
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
#启用该源仓库
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
#查看有哪些内核版本可供安装
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
#安装长期稳定版本,稳定可靠
yum --enablerepo=elrepo-kernel install kernel-lt -y

设置GURB默认的内核版本

为了让新安装的内核成为默认启动选项,你需要如下修改 GRUB 配置:
vim /etc/default/grub
并设置 GRUB_DEFAULT=0。意思是 GRUB 初始化页面的第一个内核将作为默认内核。

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved  #这里的saved改为0即可,重启后,默认就是你上次所选的版本了。
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

执行命令:

grub2-mkconfig -o /boot/grub2/grub.cfg
reboot

**4、所有机器关闭SELinux(非常重要)

  • 查看SELinux状态
    [root@localhost ~]# getenforce
    Enforcing
    
    [root@localhost ~]# /usr/sbin/sestatus
    SELinux status:                 enabled
    SELinuxfs mount:                /sys/fs/selinux
    SELinux root directory:         /etc/selinux
    Loaded policy name:             targeted
    Current mode:                   permissive
    Mode from config file:          enforcing
    Policy MLS status:              enabled
    Policy deny_unknown status:     allowed
    Max kernel policy version:      28
    
  • 临时关闭
    [root@localhost ~]# setenforce 0
    
  • 永久关闭
    vi /etc/selinux/config
    
    将SELINUX=enforcing改为SELINUX=disabled,保存后退出
    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #     enforcing - SELinux security policy is enforced.
    #     permissive - SELinux prints warnings instead of enforcing.
    #     disabled - No SELinux policy is loaded.
    SELINUX=enforcing
    # SELINUXTYPE= can take one of three two values:
    #     targeted - Targeted processes are protected,
    #     minimum - Modification of targeted policy. Only selected processes are protected. 
    #     mls - Multi Level Security protection.
    SELINUXTYPE=targeted
    

5、所有机器关闭防火墙、dnsmasq、swap

systemctl disable --now firewalld
systemctl disable --now dnsmasq
systemctl disable --now NetworkManager
 
swapoff -a && sysctl -w vm.swappiness=0
 
vi /etc/fstab
#/dev/mapper/centos-swap swap                    swap    defaults        0 0 #注释掉这行

6、时区设置

yum -y install ntp
#通过阿里云时间服务器校准时间
ntpdate ntp1.aliyun.com
# 设置时区为上海
timedatectl set-timezone Asia/Shanghai

7、静态ip

# 编辑  /etc/sysconfig/network-scripts/ifcfg-ens33
vi /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE=ethernet
NAME=ens33
DEVICE=ens33
DEFROUTE=yes
BOOTPROTO=static
IPADDR=192.168.10.10 # 静态ip
NETMASK=255.255.255.0
GATEWAY=192.168.10.2 # 跟虚拟网卡网关保持一直
DNS1=223.5.5.5
DNS2=223.6.6.6
ONBOOT=yes
ZONE=public

# Linux 网卡配置说明
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
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"
NAME="ens33"
UUID="8c111770-cb5f-477c-a6c4-a3581d79bd55"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.219.11
NETMASK=255.255.255.0
GATEWAY=192.168.219.1
HWADDR=00:0C:29:3A:0C:F3
DNS1=8.8.8.8
DNS2=8.8.4.4
#TYPE: 表示网络接口的类型,这里是 “Ethernet”,表示这是一个以太网接口。
#PROXY_METHOD: 代理方法,这里设置为 “none”,表示不使用代理。
#BROWSER_ONLY: 指示是否仅供浏览器使用,这里设置为 “no”,意味着不是仅供浏览器使用。
#BOOTPROTO: 指定启动时的协议,这里是 “static”,表示使用静态 IP 地址,而不是动态配置(如 DHCP)。
#DEFROUTE: 表示该接口是否是默认路由。这设置为 “yes”,意味着此接口会用作默认的网络出口。
#IPV4_FAILURE_FATAL: 指示是否将 IPv4 配置失败标记为致命错误,这里设置为 “no”,表示即使 IPv4 配置失败,也不会阻止系统启动。
#IPV6INIT: 指示是否初始化 IPv6,这里设置为 “yes”,意味着此接口将支持 IPv6。
#IPV6_AUTOCONF: 表示是否自动配置 IPv6 地址,这里设置为 “yes”,表示使用自动配置功能。
#IPV6_DEFROUTE: 指示是否为 IPv6 配置默认路由,这里设置为 “yes”,表示接口将用于 IPv6 默认路由。
#IPV6_FAILURE_FATAL: 指明 IPv6 配置失败是否为致命错误,这里设置为 “no”。
#IPV6_ADDR_GEN_MODE: 指定生成 IPv6 地址的模式,这里设置为 “stable-privacy”,表示使用一个稳定的隐私地址生成策略。
#NAME: 设定网络接口的名称,这里是 “ens33”。
#UUID: 一个唯一标识符,用于识别网络接口。
#DEVICE: 表示该配置文件对应的设备,这里是 “ens33”,与 NAME 字段相同。
#ONBOOT: 指示是否在系统启动时启用此接口,这里设置为 “yes”,表示在启动时会自动启用该接口。
#IPADDR: 配置的静态 IPv4 地址,这里设置为 192.168.219.11。
#NETMASK: 子网掩码,这里设置为 255.255.255.0,表示子网的范围。
#GATEWAY: 指定默认网关,即数据包如何离开本地网络,这里设置为 192.168.219.1。
#HWADDR: 硬件地址(MAC 地址),唯一标识网络接口的硬件地址,这里是 00:0C:29:3A:0C:F3。
#DNS1 和 DNS2: 指定 DNS 服务器的地址,这里分别是 8.8.8.8(Google 公共 DNS)和 8.8.4.4(另一个 Google 公共 DNS)。
posted @ 2023-05-16 12:36  嘸杺  阅读(37)  评论(0编辑  收藏  举报