ubuntu安装k8s教程
更新时间:2026年02月25日 09:05:57 作者:喝水的热心市民
这篇文章详细介绍了在Ubuntu系统上安装和配置Kubernetes集群的步骤,包括节点设置、防火墙和SELinux关闭、时间同步、Docker安装与配置、Kubernetes三大件安装、Master节点初始化以及Node节点加入集群的方法
一、在master和node节点上执行初始条件
1、不同节点设置不同的hostname
hostnamectl set-hostname master-ndsc
bash #刷新主机名
修改/etc/hosts文件
202.202.2.23 master-ndsc 202.202.2.2 node02 202.202.2.3 node03 202.202.2.4 node04 202.202.2.5 node05 202.202.2.6 node06
2、关闭防火墙(新的ubuntu系统默认没有安装防火墙)
systemctl stop firewalld && systemctl disable firewalld
3、关闭selinux(新的ubuntu系统默认没有安装selinux)
setenforce 0 sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
4、关闭swap
swapoff -a sed -i '/swap/s/^\(.*\)$/#\1/g' /etc/fstab
free -m #查看是否关闭swap
5、将桥接的IPv4流量传递到iptables的链
cat <<EOF > /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.ipv4.ip_forward = 1 EOF sysctl --system
6、设置时间同步
sudo apt install -y chrony sudo systemctl restart chrony sudo systemctl status chrony chronyc sources
7、安装docker(见另一篇博客"安装docker20.10.22")
8、修改docker的Cgroup Driver
1)修改vim /etc/docker/daemon.json文件
{
"exec-opts": ["native.cgroupdriver=systemd"]
}
2)重启docker
systemctl daemon-reload systemctl restart docker
二、安装k8s三大件
# 安装基础环境 apt-get install -y ca-certificates curl software-properties-common apt-transport-https curl curl -s https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo apt-key add - # 执行配置k8s阿里云源 vim /etc/apt/sources.list.d/kubernetes.list #加入以下内容 deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main # 执行更新 apt-get update -y #查看kubeadm kubelet kubectl有哪些版本,以及版本安装时的具体名称,例如1.23.6是错误的,要是1.23.6-00 apt-cache madison kubeadm kubelet kubectl #安装指定版本的kubeadm kubelet kubectl sudo apt update && \ sudo apt-get -y install kubelet=1.23.15-00 kubeadm=1.23.15-00 kubectl=1.23.15-00 # 安装的时候需要指定版本,否则会安装最新版本,node节点可以不需要安装kubectl sudo apt-mark hold kubelet kubeadm kubectl #阻止软件自动更新 systemctl start kubelet systemctl enable kubelet 查看安装的情况以及版本 kubectl version --client && kubeadm version
三、初始化master节点
初始化master节点
kubeadm init \ --apiserver-advertise-address=202.202.2.5 \ --image-repository registry.aliyuncs.com/google_containers \ --kubernetes-version v1.23.15 \ --service-cidr=10.96.0.0/12 \ --pod-network-cidr=10.244.0.0/16 \ --ignore-preflight-errors=all
如果初始化失败,执行命令
kubeadm reset
四、node节点加入集群
如果加入失败的话,执行命令
kubeadm reset
尝试reboot重启服务器再次尝试
五、总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。


最新评论