k8s安装教程 ubuntu 已有docker
时间: 2024-12-31 19:22:44 浏览: 64
### 已有 Docker 环境下 Ubuntu 上安装 Kubernetes (K8S)
#### 配置内核参数
为了确保 Kubernetes 能够正常运行,在开始前需配置一些必要的内核参数。可以通过编辑 `/etc/sysctl.conf` 文件来设置这些参数:
```bash
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sudo sysctl --system
```
这一步骤是为了让 Linux 内核能够正确处理网络桥接流量[^1]。
#### 关闭 Swap 分区
Kubernetes 不支持开启 swap 的节点,因此需要关闭系统的 swap 功能:
```bash
sudo sed -i '/swap/d' /etc/fstab # 注释掉fstab中的swap项
sudo swapoff -a # 立即禁用swap分区
```
此操作可以防止因启用 swap 导致 Kubelet 启动失败的问题。
#### 安装 kubeadm, kubelet 和 kubectl
接下来安装用于初始化集群、管理节点以及命令行工具的软件包:
```bash
sudo apt-get update && sudo apt-get install -y apt-transport-https ca-certificates curl
curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/kubernetes-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/kubernetes-archive-keyring.gpg] http://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubelet=1.28.2-00 kubeadm=1.28.2-00 kubectl=1.28.2-00
sudo apt-mark hold kubelet kubeadm kubectl
```
这里指定了特定版本号 `1.28.2` 来匹配所使用的容器运行时环境。
#### 初始化 Master 节点并加入 Worker 节点
完成上述准备工作之后就可以通过 `kubeadm init` 命令创建一个新的控制平面实例,并按照提示执行后续指令使当前主机成为 master 节点的一部分;对于 worker 节点,则应根据 master 返回的信息使用相应的 join token 加入到集群当中。
注意:如果已经存在旧版的 kubernetes 组件或残留数据,请先清理干净再继续操作。
阅读全文
相关推荐


















