centos

在CentOS上运行Kubernetes容器化应用

小樊
42
2025-03-11 20:39:36
栏目: 智能运维

在CentOS上运行Kubernetes容器化应用需要经过以下几个步骤:

准备工作

  1. 更新系统

    sudo yum update -y
    
  2. 安装Docker

    sudo yum install -y docker
    
  3. 配置Kubernetes源

    创建 /etc/yum.repos.d/kubernetes.repo 文件并添加以下内容:

    [kubernetes]
    name=Kubernetes
    baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
    enabled=1
    gpgcheck=1
    repo_gpgcheck=1
    gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
    
  4. 安装Kubernetes组件

    sudo yum install -y kubeadm kubelet kubectl
    
  5. 启动Kubernetes服务

    sudo systemctl start docker
    sudo systemctl enable docker
    sudo systemctl start kubelet
    sudo systemctl enable kubelet
    
  6. 配置时间同步

    安装 chrony 并配置时间同步:

    sudo yum install -y chrony
    sudo vi /etc/chrony.conf
    # 删除所有的 server 配置
    server 0.centos.pool.ntp.org iburst
    server 192.168.1.1
    
  7. 关闭防火墙和SELinux

    sudo systemctl stop firewalld
    sudo systemctl disable firewalld
    sudo setenforce 0
    sed -i 's/SELINUXenforcing/SELINUXdisabled/' /etc/selinux/config
    

初始化Master节点

  1. 配置主机名

    修改主机名,例如将 master 改为 ks-master-1

    hostnamectl set-hostname ks-master-1
    
  2. 配置DNS

    编辑 /etc/resolv.conf 文件:

    echo "nameserver 8.8.8.8" > /etc/resolv.conf
    
  3. 配置服务器时区

    配置服务器时区为 asia/shanghai

    timedatectl set-timezone asia/shanghai
    
  4. 初始化Kubernetes集群

    使用 kubeadm 初始化Master节点:

    sudo kubeadm init
    

    初始化过程中会输出一些信息,包括加入集群所需的 kubeadm join 命令和初始的 kubectl 配置,请妥善保存这些信息。

  5. 配置kubectl

    kubeadm 初始化输出的初始 kubectl 配置添加到 ~/.kube/config 文件中:

    mkdir -p $HOME/.kube
    cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    sudo chown $(id -u):$(id -g) $HOME/.kube/config
    
  6. 部署网络插件

    以Flannel为例,安装Flannel网络插件:

    kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
    

添加Worker节点

在其他节点上重复以下步骤,使用 kubeadm join 命令将其他节点加入到集群中:

# 替换为实际的Master节点IP地址和端口
kubeadm join <MASTER_IP>:<MASTER_PORT> --token <TOKEN> --discovery-token-ca-cert-hash <HASH>

至此,Kubernetes容器编排平台已经在CentOS上安装和配置完成,你可以使用 kubectl 命令来管理和操作Kubernetes集群。

0
看了该问题的人还看了