在Linux服务器上安装Kubernetes(k8s)可以分为几个步骤,包括准备环境、安装Docker、配置kubeadm、初始化Master节点、加入Worker节点等。以下是一个详细的安装指南:
1. 环境准备
硬件要求
- 内存:至少2GB RAM
- CPU:至少2核CPU
- 硬盘:至少30GB磁盘空间
操作系统
- 推荐使用CentOS 7.x
2. 基本环境配置
关闭防火墙和SELinux
systemctl stop firewalld systemctl disable firewalld sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config setenforce 0
关闭Swap分区
swapoff -a # 临时关闭 # 或编辑 /etc/fstab 文件永久关闭
设置主机名
hostnamectl set-hostname k8s-master hostnamectl set-hostname k8s-node01 hostnamectl set-hostname k8s-node02
修改hosts文件
在 /etc/hosts
文件中添加集群内部的主机名映射。
3. 安装Docker
配置Docker的Yum源
cat > /etc/yum.repos.d/docker-ce.repo << EOF [docker-ce] name=Docker CE baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/ enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg EOF
安装Docker
yum install -y docker-ce docker-ce-cli containerd.io systemctl start docker systemctl enable docker
4. 配置Kubernetes的Yum源
cat > /etc/yum.repos.d/kubernetes.repo << EOF [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
5. 安装kubeadm, kubelet和kubectl
yum install -y kubelet-1.28.0 kubectl-1.28.0 kubeadm-1.28.0 systemctl enable kubelet systemctl start kubelet
6. 初始化Master节点
kubeadm init --apiserver-advertise-address 10.0.0.201 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.28.0 --service-cidr 10.96.0.0/12 --pod-network-cidr 10.244.0.0/16
7. 配置kubectl
mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config
8. 部署网络插件(例如Flannel)
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
9. 验证安装
检查Pod网络
kubectl get pods --all-namespaces
检查Service
kubectl get services
10. 加入Worker节点
在Worker节点上运行以下命令:
kubeadm join 10.0.0.201:6443 --token--discovery-token-ca-cert-hash sha256:
参考资料
以上步骤涵盖了在Linux服务器上安装Kubernetes的基本流程,具体细节可能会因版本和环境差异而有所不同,请根据实际情况进行调整。