Ubuntu安装k8s
时间: 2025-05-26 11:19:39 浏览: 22
### 在 Ubuntu 系统上安装和配置 Kubernetes
#### 1. 环境准备
在开始之前,确保目标服务器已准备好并满足以下条件:
- 使用支持的操作系统版本(如 Ubuntu 22.04 或更高版本)。
- 关闭交换分区以避免影响 Kubernetes 的调度功能。
关闭交换分区可以通过以下命令完成[^1]:
```bash
sudo swapoff -a
sudo sed -i '/\s*swap\s*/ s/^/#/' /etc/fstab
```
#### 2. 安装容器运行时 (Container Runtime)
Kubernetes 支持多种容器运行时,默认推荐使用 `containerd`。以下是安装步骤:
更新系统包列表并安装必要的依赖项:
```bash
sudo apt-get update && sudo apt-get install -y curl gnupg lsb-release
```
导入官方 GPG 密钥并设置 containerd 存储库:
```bash
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/containerd-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/containerd-archive-keyring.gpg] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/containerd.list > /dev/null
```
安装 containerd 并启用服务:
```bash
sudo apt-get update && sudo apt-get install -y containerd.io
sudo mkdir -p /etc/containerd
containerd config default | sudo tee /etc/containerd/config.toml >/dev/null 2>&1
sudo systemctl restart containerd
```
#### 3. 添加 Kubernetes APT 仓库
为了获取最新的 Kubernetes 组件,需添加官方的 APT 仓库。执行以下命令来下载密钥并创建存储库文件[^2]:
```bash
curl -fsSLo /etc/apt/keyrings/kubernetes-apt-keyring.gpg https://pkgs.k8s.io/core:/stable:/$VERSION/deb/Release.key
chmod 644 /etc/apt/keyrings/kubernetes-apt-keyring.gpg
echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.28/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list
```
注意:将 `$VERSION` 替换为所需的 Kubernetes 次要版本号。
#### 4. 安装 Kubernetes 工具
通过以下命令安装 `kubeadm`, `kubelet`, 和 `kubectl`:
```bash
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
```
#### 5. 初始化主节点
初始化 Kubernetes 主节点可以使用以下命令:
```bash
sudo kubeadm init --pod-network-cidr=192.168.0.0/16
```
完成后,按照提示配置 kubeconfig 文件以便管理员访问集群:
```bash
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
```
#### 6. 配置网络插件
Kubernetes 需要一个 CNI 插件才能正常通信。可以选择 Flannel、Calico 等插件之一。例如,安装 Calico 可以通过以下命令实现:
```bash
kubectl apply -f https://raw.githubusercontent.com/projectcalico/calico/v3.27.1/manifests/calico.yaml
```
#### 7. 加入工作节点
如果需要扩展集群,在每台工作节点上运行以下命令加入到主节点中(具体 token 值由主节点提供):
```bash
sudo kubeadm join <control-plane-host>:<control-plane-port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>
```
---
###
阅读全文
相关推荐
















