49 lines
1.2 KiB
Bash
49 lines
1.2 KiB
Bash
#!/bin/bash
|
|
set -e
|
|
|
|
echo "==== Kubernetes 环境准备 ===="
|
|
|
|
# 1. 更新系统包
|
|
echo "更新系统包..."
|
|
sudo apt update && sudo apt upgrade -y
|
|
|
|
# 2. 安装必要的工具
|
|
echo "安装必要工具..."
|
|
sudo apt install -y curl wget gnupg lsb-release ca-certificates apt-transport-https software-properties-common
|
|
|
|
# 3. 禁用 swap
|
|
echo "禁用 swap..."
|
|
sudo swapoff -a
|
|
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
|
|
|
|
# 4. 配置内核参数
|
|
echo "配置内核参数..."
|
|
cat <<EOF_MODULES | sudo tee /etc/modules-load.d/k8s.conf
|
|
overlay
|
|
br_netfilter
|
|
EOF_MODULES
|
|
|
|
sudo modprobe overlay
|
|
sudo modprobe br_netfilter
|
|
|
|
# 5. 配置 sysctl 参数
|
|
echo "配置 sysctl 参数..."
|
|
cat <<EOF_SYSCTL | sudo tee /etc/sysctl.d/k8s.conf
|
|
net.bridge.bridge-nf-call-iptables = 1
|
|
net.bridge.bridge-nf-call-ip6tables = 1
|
|
net.ipv4.ip_forward = 1
|
|
EOF_SYSCTL
|
|
|
|
sudo sysctl --system
|
|
|
|
# 6. 配置防火墙
|
|
echo "配置防火墙..."
|
|
sudo ufw --force disable || true
|
|
|
|
# 按你的要求,不在节点上修改 /etc/hosts
|
|
|
|
echo "==== 环境准备完成 ===="
|
|
echo "当前主机名: $(hostname)"
|
|
echo "当前 IP: $(ip route get 1 | awk '{print $7; exit}')"
|
|
echo "Swap 状态: $(swapon --show | wc -l) 个 swap 分区"
|