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    # 进行加载此配置即可

开始验证是否完成:

相关推荐
小鹏linux9 小时前
Ubuntu 22.04 部署开源免费具有精美现代web页面的Casdoor账号管理系统
linux·前端·ubuntu·开源·堡垒机
在角落发呆10 小时前
Linux转发配置:解锁网络互联的核心密码
linux·运维·网络
齐潇宇10 小时前
Zabbix 7 概述与配置
linux·zabbix·监控告警
江公望11 小时前
Ubuntu htop命令,10分钟讲清楚
linux·服务器
哎呦,帅小伙哦11 小时前
Linux 时间:从原子钟到 clock_gettime 的每一面
linux·运维·服务器
张小姐的猫12 小时前
【Linux】多线程 —— 线程互斥
linux·运维·服务器·c++
YuanDaima204812 小时前
Linux 进阶运维与 AI 环境实战:进程管理、网络排错与 GPU 监控
linux·运维·服务器·网络·人工智能
牛奶咖啡1313 小时前
k8s容器编排技术实践——使用containerd作为容器运行时部署k8s集群
kubernetes·k8s的安装部署·开启系统的ipvs支持·安装containerd·containerd配置加速器·安装k8s的工具·安装calico网络插件
lolo大魔王14 小时前
Linux 数据文件处理实战:排序、搜索、压缩、归档一站式详解
linux·运维·服务器
starvapour14 小时前
Ubuntu切换到Fcitx5中文输入法
linux·运维·ubuntu