Ubuntu 24.04 搭建k8s 1.33.4

安装常用的基础工具:

shell 复制代码
apt-get update
apt-get install -y apt-transport-https ca-certificates curl gnupg

添加签名和配置基础源:

shell 复制代码
apt-get update && apt-get install -y apt-transport-https
curl -fsSL https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.34/deb/Release.key |
    gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.34/deb/ /" |
    tee /etc/apt/sources.list.d/kubernetes.list

开始安装kubeadm工具:

shell 复制代码
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl

配置网络策略:

shell 复制代码
echo "net.ipv4.ip_forward = 1" | tee /etc/sysctl.d/k8s.conf
sysctl --system

开始配置运行时:

apt安装

shell 复制代码
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
udo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install -y containerd.io
systemctl  start containerd
systemctl enable containerd
systemctl status containerd

手动安装:

开始配置运行时

shell 复制代码
mkdir /etc/containerd
containerd config default > /etc/containerd/config.toml
# 启动SystemdCgroup
vim /etc/containerd/config.toml
[plugins.'io.containerd.cri.v1.runtime'.containerd.runtimes.runc.options]
SystemdCgroup = true
# 还有一个66行中的:
sandbox_image = "registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.8"
# 开始重启containerd
systemctl restart containerd

安装客户端工具方便后期使用:

shell 复制代码
wget -c https://gh.monlor.com/https://github.com/containerd/nerdctl/releases/download/v2.1.4/nerdctl-2.1.4-linux-amd64.tar.gz
tar -zxf nerdctl-2.1.4-linux-amd64.tar.gz
mv nerdctl /usr/bin/nerdctl
mkdir /etc/nerdctl
echo 'namespace = "k8s.io"' | tee /etc/nerdctl/nerdctl.toml
# 可以给nerdctl 修改一个别名方便使用

开始进行初始化:

shell 复制代码
kubeadm init --apiserver-advertise-address=10.0.8.4 --pod-network-cidr=172.16.0.0/12 --service-cidr=192.168.0.0/16 --image-repository=registry.aliyuncs.com/google_containers


mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

开始安装网络插件calico

shell 复制代码
curl https://gh.monlor.com/https://raw.githubusercontent.com/projectcalico/calico/v3.30.3/manifests/calico-typha.yaml -o calico.yaml # 注意,这边使用的官网的地址,可能会导致无法下载下来,还要修改里面的docker镜像要不然国内无法使用
kubectl  apply -f calico.yaml    # 进行加载此配置即可

开始验证是否完成:

相关推荐
济6178 分钟前
linux(第十五期)--蜂鸣器实验-- Ubuntu20.04
linux·运维·服务器
方便面不加香菜10 分钟前
Linux基本指令(2)
linux
Run_Teenage13 分钟前
Linux:硬链接与软链接
linux·运维·服务器
pusheng202514 分钟前
数据中心安全警报:为何“免维护”气体传感器可能正在制造危险盲区?
linux·网络·人工智能
wgl66652019 分钟前
自主Shell命令行解释器
linux·运维·windows
Crazy________21 分钟前
Kubernetes探针实战和生命周期
linux·服务器·网络·kubernetes
.小小陈.2 小时前
Linux高频基础实用指南:从文件操作到日志
linux·运维·服务器
Java.熵减码农9 小时前
解决Linux修改环境变量后导致登录循环进不去系统的问题
linux·运维·服务器
天骄t9 小时前
嵌入式系统与51单片机核心原理
linux·单片机·51单片机
阿部多瑞 ABU10 小时前
`chenmo` —— 可编程元叙事引擎 V2.3+
linux·人工智能·python·ai写作