ubuntu安装k8s

安装apt源

cd /etc/apt/

# 配置k8s源
sudo tee /etc/apt/sources.list.d/kubernetes.list <<EOF
deb [arch=amd64] https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF

# 配置docker源

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

# 安装docker源的公钥

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

# 安装公钥
curl -fsSL https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/kubernetes-aliyun.gpg

# 更新源依赖
apt update

# 列举出来相关的版本
apt-cache madison kubeadm

# 离线下载安装包的命令
apt-get install --download-only docker-ce

# 修改主机配置

cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
overlay
br_netfilter
EOF
sudo modprobe overlay
sudo modprobe br_netfilter

# 配置网络转发
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-iptables  = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.ipv4.ip_forward                 = 1
EOF
sudo sysctl --system
 


关闭swap

sudo swapoff -a          # 临时关闭
sudo sed -i '/ swap / s/^$.*$$/#\1/g' /etc/fstab  # 永久关闭



配置防火墙或修改防火墙白名单
systemctl status ufw.service
修改主机的内核参数

* soft nofile 65535
* hard nofile 65535
* soft nproc 65535
* hard nproc 65535

# 安装docker
apt install docker-ce=5:20.10.13~3-0~ubuntu-jammy

# 安装指定的版本
apt install kubeadm=1.20.2-00 kubectl=1.20.2-00 kubelet=1.20.2-00 -y

# 加入集群配置运行
登录master获取加入集群的命令

kubeadm token create --print-join-command
# 打印出来的 kubeadm join 10.10.0.10:6443 --token j61nqa.gfkn0vtcklnnsg4j --discovery-token-ca-cert-hash sha256:f978ccbc658dd309557639c7866310214273a9ffd5796116698c8b9e154d7f50
登录节点使用这个join命令加入
kubeadm join 10.10.0.10:6443 --token j61nqa.gfkn0vtcklnnsg4j --discovery-token-ca-cert-hash sha256:f978ccbc658dd309557639c7866310214273a9ffd5796116698c8b9e154d7f50

 

# docker纳管显卡资源
# 先安装nvidia-container-runtime

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list |
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' |
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

# 刷新一下这个依赖包
apt-get update

# 安装nvidia-container-runtime
apt install -y nvidia-container-toolkit

# 修改docker配置文件,配置可以使用显卡资源
vi /etc/docker/daemon.json

{
"insecure-registries": ["10.10.10.1:8021"],
"exec-opts": ["native.cgroupdriver=cgroupfs"],
"default-runtime": "nvidia",
"runtimes": {
"nvidia": {
"path": "/usr/bin/nvidia-container-runtime",
"runtimeArgs": []
}
},
"storage-driver": "overlay2",
"registry-mirrors": ["https://docker.hpcloud.cloud","https://docker.m.daocloud.io","https://docker.unsee.tech","https://docker.1panel.live","http://mirrors.ustc.edu.cn","https://docker.chenby.cn","http://mirror.azure.cn","https://dockerpull.org","https://dockerhub.icu","https://hub.rat.dev","https://docker.m.daocloud.io","https://dockerproxy.com","https://docker.mirrors.ustc.edu.cn","https://docker.nju.edu.cn","https://cr.console.aliyun.com","https://ccr.ccs.tencentyun.com","https://dockerproxy.com","https://hub-mirror.c.163.com","https://mirror.baidubce.com","https://hubgw.docker.com"]
}

# 重启一下这个docker服务
systemctl restart docker

# 查看是否生效了
docker info

posted @ 2025-05-06 16:44  dididi崩了  阅读(11)  评论(0)    收藏  举报