CentOS 7 安装k8s集群
1、创建3台虚拟机,并绑定可以连接外网的EIP
也可以直接用virtualbox创建3个节点
2、配置主机名、添加hosts
hostnamectl set-hostname k8s-master
hostnamectl set-hostname k8s-node1
hostnamectl set-hostname k8s-node2
cat >> /etc/hosts << EOF
192.168.56.11 k8s-master1
192.168.56.12 k8s-node1
192.168.56.13 k8s-node2
EOF
3、关闭防火墙、SELINUX和swap分区
systemctl stop firewalld && systemctl disable firewalld
setenforce 0 && sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
swapoff -a && sed -ri 's/.*swap.*/#&/' /etc/fstab
4、配置阿里云yum源
cd /etc/yum.repos.d/ && mkdir bak && mv *.repo bak
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
curl -o/etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0
EOF
yum clean all && yum makecache
5、将桥接的IPV4流量传递到iptables 的链
cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system
6、安装k8s
yum install -y kubelet kubeadm kubectl
systemctl enable kubelet
7、安装docker
yum install -y docker-ce
systemctl enable docker && systemctl start docker
8、统一docker运行方式
sed -i 's/ExecStart=\/usr\/bin\/dockerd/& --exec-opt native.cgroupdriver=systemd/g' /usr/lib/systemd/system/docker.service
systemctl daemon-reload && systemctl restart docker
9、在master节点初始化
kubeadm init \
--apiserver-advertise-address=192.168.56.11 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.23.5 \
--service-cidr=10.1.0.0/16 \
--pod-network-cidr=10.244.0.0/16
按照上图提示先完成集群启动配置文件的配置
10、此时集群状态为notReady,需要先创建网络,如果无法获取文件,需要先想办法获取到对应的yaml文件
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
11、在node节点执行节点加入集群操作,使用第9步初始化的时候打印出来的命令
12、使能node节点可以使用kubectl命令
mkdir ~/.kube && scp k8s-master:/root/.kube/config ~/.kube/
13、安装并配置kube命令补全
yum -y install bash-completion
source /usr/share/bash-completion/bash_completion
source <(kubectl completion bash)
echo "source <(kubectl completion bash)" >> ~/.bashrc
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现