温馨提示×

Linux下Kubernetes安装步骤是什么

小樊
52
2025-10-03 20:22:08
栏目: 智能运维

Linux下Kubernetes安装步骤(以Ubuntu/CentOS为例)

1. 环境准备

  • 硬件要求:至少2GB RAM、2个CPU内核、20GB可用磁盘空间;
  • 软件要求:所有节点需安装Linux发行版(如Ubuntu 22.04+、CentOS 7/8+),并具备管理员权限;
  • 网络配置:节点间可通过SSH互相访问,关闭防火墙(sudo systemctl stop firewalld)或配置允许Kubernetes组件通信(如6443端口);
  • SELinux:若启用SELinux,需设置为宽松模式(sudo setenforce 0)或调整策略。

2. 安装Docker容器运行时

Kubernetes依赖Docker作为默认容器运行时(也可替换为containerd),安装步骤如下:

  • Ubuntu/Debian
    sudo apt update sudo apt install -y apt-transport-https ca-certificates curl software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" sudo apt update sudo apt install -y docker-ce sudo systemctl enable --now docker 
  • CentOS/RHEL
    sudo yum install -y yum-utils device-mapper-persistent-data lvm2 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install -y docker-ce sudo systemctl enable --now docker 
  • 验证:运行docker run hello-world,若输出“Hello from Docker!”则安装成功。

3. 安装Kubernetes核心组件

Kubernetes的核心组件包括kubelet(节点代理)、kubeadm(集群初始化工具)、kubectl(命令行工具),安装步骤如下:

  • Ubuntu/Debian

    sudo apt update sudo apt install -y kubelet kubeadm kubectl sudo systemctl enable --now kubelet 
  • CentOS/RHEL

    sudo yum install -y epel-release sudo yum install -y kubelet kubeadm kubectl sudo systemctl enable --now kubelet 
  • 禁用Swap:Kubernetes要求禁用swap分区,否则无法启动:

    sudo swapoff -a sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab # 永久禁用 
  • 验证组件:运行kubeadm versionkubelet version,确认版本输出正常。

4. 初始化Master节点

Master节点负责集群管理(如调度、API服务),初始化命令如下:

sudo kubeadm init \ --pod-network-cidr=10.244.0.0/16 \ # 指定Pod网络CIDR(需与网络插件匹配) --apiserver-advertise-address=<Master-IP> \ # Master节点IP --image-repository registry.aliyuncs.com/google_containers # 国内镜像加速(可选) 
  • 输出关键信息:初始化完成后,终端会显示kubeadm join命令(包含token和CA证书哈希),需保存备用。

5. 配置kubectl

kubectl是管理Kubernetes集群的命令行工具,需配置访问权限:

mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config 
  • 验证配置:运行kubectl version,若显示客户端与服务端版本信息则配置成功。

6. 安装网络插件

Kubernetes需要网络插件实现Pod间通信,常用插件如Flannel(轻量级):

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml 
  • 验证网络:运行kubectl get pods -n kube-system,确认网络插件Pod状态为Running

7. 加入Worker节点

Worker节点负责运行应用Pod,使用Master节点初始化时生成的kubeadm join命令加入集群:

sudo kubeadm join <Master-IP>:6443 \ --token <token> \ --discovery-token-ca-cert-hash sha256:<hash> 
  • 验证节点状态:回到Master节点,运行kubectl get nodes,若Worker节点状态为Ready则表示加入成功。

8. 可选步骤:安装Kubernetes Dashboard

Dashboard是Kubernetes的Web管理界面,可通过以下命令安装:

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml 
  • 访问Dashboard:创建ServiceAccount并绑定权限后,通过kubectl proxy启动代理,访问http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/

以上步骤为Kubernetes基础安装流程,实际生产环境中还需配置高可用(HA)、持久化存储、网络策略等高级功能,建议参考Kubernetes官方文档调整配置。

0