1.k8s集群安装 -- 主机的准备

安装注意事项

  • 最好选择2个CPU,否则可能会报一个致命的错误,而且看不到错误的具体信息

修改固定IP

  • 编辑文件
sudo vim /etc/netplan/00-installer-config.yaml
  • 把 DHCP4 改为false,内容如下,IP根本自身设置对
network:
  ethernets:
    enp0s3:
      dhcp4: no
      addresses: [172.16.1.100/24]
      gateway4: 172.16.1.1
      nameservers:
              addresses: [172.16.1.1]
  version: 2

关闭swap

  • 使用 swapon 命令
    swapon 命令可以显示当前启用的 swap 设备。运行以下命令:
sudo swapon --show

如果没有输出,说明 swap 已关闭。

  • 检查 /proc/swaps 文件
    /proc/swaps 文件包含当前启用的 swap 设备的信息。运行以下命令:
cat /proc/swaps

如果输出为空,说明 swap 已关闭。

  • 使用 free 命令
    free 命令可以显示系统的内存和 swap 使用情况。运行以下命令:
free -h

输出中 Swap 行的 total 值为 0 表示 swap 已关闭

关闭 swap

  • 临时关闭 swap:
sudo swapoff -a
  • 永久关闭 swap:

编辑 /etc/fstab 文件,注释掉(在行首添加 #)包含 swap 分区的行。例如:

# /swapfile none swap sw 0 0

保存并关闭文件,然后重新启动系统:

sudo reboot

修改主机名

  • 临时修改主机名
    临时修改主机名只在当前会话中有效,重启后会恢复原来的主机名。

使用 hostnamectl 命令:

sudo hostnamectl set-hostname 新主机名

例如:

sudo hostnamectl set-hostname my-new-hostname
  • 永久修改主机名
    要永久修改主机名,需要修改系统配置文件。以下是具体步骤:

修改 /etc/hostname 文件
打开 /etc/hostname 文件:

sudo vim /etc/hostname

将文件中的内容替换为新的主机名,然后保存并关闭文件。
修改 /etc/hosts 文件
打开 /etc/hosts 文件:

sudo vim /etc/hosts

找到 127.0.1.1 行,并将其后的主机名替换为新的主机名。例如:
127.0.0.1 localhost
127.0.1.1 my-new-hostname

  • 配置主机名解析
sudo vim /etc/hosts

添加记录

172.16.2.100 k8s-master
172.16.2.101 k8s-node1
172.16.2.102 k8s-node2

应用更改
保存并关闭文件后,重新启动系统以应用更改:

sudo reboot

验证更改
重启后,使用以下命令验证主机名是否修改成功

生成新的 Machine ID

如果您发现多个系统具有相同的 Machine ID,可以通过以下步骤生成新的 Machine ID:

删除现有的 Machine ID 文件:

sudo rm /etc/machine-id

重新生成 Machine ID:

sudo systemd-machine-id-setup

设置root的密码

sudo passwd root

使用root用户

su root

设置系统时区,同步时间

  • 设置时区
timedatectl set-timezone Asia/Shanghai
  • 安装ntpdate 自己动同步
apt install ntpdate
  • 配置ntp.aliyun.com时钟
ntpdate ntp.aliyun.com
  • 配置自动同步
crontab -e

修选【2】
按格式配置什么时候执行什么命令
例如:每天0时0分执行ntpdate ntp.aliyun.com

0 0 * * * ntpdate ntp.aliyun.com

配置内核转发与网桥过滤

  • 创建加载模块文件
cat << EOF | tee /etc/modules-load.d/k8s.conf
overlay
br_netfilter
EOF

手动本次加载

modprobe overlay
modprobe br_netfilter

查看是否已加载的模块

lsmod | egrep "overlay"
lsmod | egrep "br_netfilter"
  • 添加网桥过滤级内核转发配置文件
cat << EOF | tee /etc/sysctl/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF

安装ipset 与 ipvsadm

apt install ipset ipvsadm

配置ipvsadm模块加载

cat << EOF | tee /etc/modules-load.d/ipvs.conf
ip_vs
ip_vs_rr
ip_vs_wrr
ip_vs_sh
nf_conntrack
EOF

创建加载脚本

cat << EOF | tee ipvs.sh
#!/bin/sh
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack
EOF

执行脚本文件,加载模块

sh ipvs.sh
posted @   刘继先  阅读(8)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· DeepSeek 解答了困扰我五年的技术问题。时代确实变了!
· 本地部署DeepSeek后,没有好看的交互界面怎么行!
· 趁着过年的时候手搓了一个低代码框架
· 推荐一个DeepSeek 大模型的免费 API 项目!兼容OpenAI接口!
点击右上角即可分享
微信分享提示