rockylinux9.4配置k8s
时间: 2025-01-27 21:05:12 浏览: 66
### 安装和配置Kubernetes集群
#### 准备工作
为了在 Rocky Linux 9.4 上成功安装并配置 Kubernetes 集群,需先完成一些准备工作。确保操作系统是最新的,并关闭防火墙以及 SELinux 的强制模式,因为这些设置可能会干扰 Kubernetes 组件之间的通信[^1]。
```bash
sudo yum update -y
sudo systemctl disable firewalld --now
sudo setenforce 0
sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
```
#### 安装必要工具
安装 `yum-utils` 和其他必要的依赖项来管理容器运行时环境 containerd.io:
```bash
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y containerd.io
```
#### 初始化 Containerd 并启用服务
编辑 `/etc/containerd/config.toml` 文件以禁用沙盒镜像,重启 service 应用更改:
```bash
sudo mkdir -p /etc/containerd/
containerd config default | sudo tee /etc/containerd/config.toml >/dev/null 2>&1
sudo systemctl restart containerd
```
#### 添加 Kubernetes YUM Repository
创建名为 `kubernetes.repo` 的文件到目录 `/etc/yum.repos.d/`, 将其内容设为指向官方 K8S 软件包仓库地址:
```bash
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kube*
EOF
```
#### 设置模块参数
为了让节点能够识别桥接流量来自 IP 表而不是虚拟机本身,在内核启动选项中添加 net.bridge 参数:
```bash
sudo modprobe br_netfilter
echo '1' | sudo tee /proc/sys/net/bridge/bridge-nf-call-iptables
echo 'net.bridge.bridge-nf-call-iptables = 1' | sudo tee -a /etc/sysctl.conf
```
#### 安装 kubeadm, kubelet 及 kubectl
通过命令行安装这三个核心组件版本 v1.27.x (具体子版本号可根据需求调整):
```bash
sudo yum install -1.27.0 kubeadm-1.27.0 kubectl-1.27.0
sudo systemctl enable --now kubelet
```
#### 使用 kubeadm 初始化 Master Node
执行初始化操作前确认主机名解析正常工作;之后可以按照提示输入 token 加入 worker nodes 到 master node 下面形成完整的 cluster:
```bash
sudo kubeadm init --pod-network-cidr=192.168.0.0/16
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
```
#### 安装 Calico CNI 插件
下载适用于当前 Kubernetes 版本的 YAML 文件并通过 apply 命令加载至集群内部署网络策略引擎 calico:
```bash
curl https://docs.projectcalico.org/manifests/calico.yaml -O
kubectl apply -f calico.yaml
```
#### 启动 BGP 功能(可选)
如果计划让外部设备直连 Pod 或 Service,则需要开启 BGP 支持以便更好地控制路由通告行为。这一步骤涉及修改 Calico 的配置文件以暴露额外的服务端口给边界网关协议使用。
阅读全文
相关推荐



















