在三台具有4核16GB内存的机器上安装Kubernetes(K8s)集群涉及到几个关键步骤。我们将一个机器设为主节点(Master)和两个工作节点(Worker)。以下是详细步骤:
1. 系统环境准备(在所有机器上执行)
更新系统
sudo yum update -y
关闭Swap
sudo swapoff -a
要永久禁用Swap,编辑 /etc/fstab
文件,注释掉swap相关的行。
关闭SELinux
sudo setenforce 0
sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
关闭防火墙
sudo systemctl stop firewalld
sudo systemctl disable firewalld
设置主机名
sudo hostnamectl set-hostname <master-or-worker-node-name>
更新主机文件
确保 /etc/hosts
文件包含所有节点的正确的主机名和IP地址。
2. 安装Docker(在所有机器上执行)
安装Docker
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io
启动并启用Docker
sudo systemctl start docker
sudo systemctl enable docker
3. 安装Kubernetes(在所有机器上执行)
添加Kubernetes仓库
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
安装Kubernetes组件
sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
启动kubelet
sudo systemctl enable --now kubelet
4. 初始化Kubernetes集群(只在主节点上执行)
初始化集群
sudo kubeadm init --pod-network-cidr=192.168.0.0/16
记下 kubeadm join
命令的输出,将用于加入工作节点。
设置kubectl(只在主节点上执行)
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
安装网络插件(只在主节点上执行)
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
5. 将工作节点加入集群(在每个工作节点上执行)
使用在初始化主节点时提供的 kubeadm join
命令来加入工作节点。
6. 验证集群状态(在主节点上执行)
kubectl get nodes
这样,你的Kubernetes集群就建立完成了。根据你的具体需求,可以在此基础上部署各种应用。记得定期检查和维护集群以确保其安全和高效运行。
原文地址:https://blog.csdn.net/sunyuhua_keyboard/article/details/134744460
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_25002.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。