Kubernetes集群部署详细步骤(CentOS 7.8 + Docker 1.13 + Kubernetes 1.5.2)[二]

一、环境准备

  1. 服务器规划

    角色

    IP地址

    配置要求

    Master

    192.168.118.18

    2核CPU/2G内存

    Node01

    192.168.118.19

    2核CPU/2G内存

    Node02

    192.168.118.20

    2核CPU/2G内存

  2. 系统初始化

    bash

    bash 复制代码
    # 关闭SELinux
    setenforce 0
    sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
    
    # 关闭防火墙
    systemctl stop firewalld && systemctl disable firewalld
    
    # 禁用Swap
    swapoff -a
    sed -i '/swap/s/^/#/' /etc/fstab
    
    # 配置内核参数
    cat > /etc/sysctl.d/k8s.conf << EOF
    net.bridge.bridge-nf-call-ip6tables = 1
    net.bridge.bridge-nf-call-iptables = 1
    net.ipv4.ip_forward = 1
    EOF
    sysctl --system

二、Docker安装(1.13版本)

  1. 配置YUM源

    bash

    bash 复制代码
    # 安装依赖
    yum install -y yum-utils device-mapper-persistent-data lvm2
    
    # 添加Docker源
    yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
    # 安装指定版本
    yum install -y docker-ce-1.13.1 docker-ce-cli-1.13.1 containerd.io
    
    # 启动服务
    systemctl start docker && systemctl enable docker
    
    # 验证版本
    docker version | grep '1.13.1'
  2. 配置镜像加速

    bash

    javascript 复制代码
    cat > /etc/docker/daemon.json << EOF
    {
      "registry-mirrors": ["https://hub-mirror.c.163.com"],
      "exec-opts": ["native.cgroupdriver=systemd"]
    }
    EOF
    systemctl restart docker

三、Kubernetes组件安装

  1. 添加K8S源

    bash

    ini 复制代码
    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=0
    repo_gpgcheck=0
    gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
    EOF
  2. 安装指定版本

    bash

    bash 复制代码
    # 安装kubeadm/kubelet/kubectl 1.5.2
    yum install -y kubelet-1.5.2 kubeadm-1.5.2 kubectl-1.5.2
    
    # 启动服务
    systemctl enable kubelet && systemctl start kubelet

四、集群初始化(Master节点)

  1. 拉取镜像

    bash

    bash 复制代码
    # 手动拉取K8S基础镜像
    images=(kube-proxy:v1.5.2 kube-scheduler:v1.5.2 
            kube-controller-manager:v1.5.2 kube-apiserver:v1.5.2 
            etcd:3.0.18 pause:3.0)
    
    for imageName in ${images[@]}; do
      docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName
      docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName k8s.gcr.io/$imageName
      docker rmi registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName
    done
  2. 初始化集群

    bash

    bash 复制代码
    kubeadm init --kubernetes-version=v1.5.2 \
      --pod-network-cidr=10.244.0.0/16 \
      --service-cidr=10.96.0.0/12 \
      --ignore-preflight-errors=Swap
    
    # 配置kubectl
    mkdir -p $HOME/.kube
    cp /etc/kubernetes/admin.conf $HOME/.kube/config
    chown $(id -u):$(id -g) $HOME/.kube/config

五、Node节点加入集群

  1. 执行Master生成的加入命令

    bash

    sql 复制代码
    kubeadm join 192.168.118.18:6443 \
      --token xxxxx.xxxxxxxxxx \
      --discovery-token-ca-cert-hash sha256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

六、部署网络插件(Flannel)

bash

bash 复制代码
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/v0.7.1/Documentation/kube-flannel.yml

七、集群验证

bash

csharp 复制代码
# 查看节点状态
kubectl get nodes

# 查看系统组件状态
kubectl get pods -n kube-system

# 验证DNS功能
kubectl run busybox --image=busybox:1.28 --rm -it -- sh
nslookup kubernetes.default

注意事项

  1. Kubernetes 1.5.2为老旧版本,无官方安全支持,生产环境建议使用1.23+版本
  2. Docker 1.13需搭配cri-dockerd适配器才能在K8S 1.24+中使用
  3. 如需高可用部署,需额外配置负载均衡和etcd集群
相关推荐
Value_Think_Power7 小时前
DDD::repo.go
架构
稻草人22229 小时前
打造个人Dify?手写AI工作流让AI乖乖听话 - 业务节点实现篇
架构
neoooo9 小时前
Apollo兜底口诀
java·后端·架构
chenchihwen9 小时前
RAG 多模态 API 处理系统设计解析:企业级大模型集成架构实战
架构
文火冰糖的硅基工坊10 小时前
[嵌入式系统-114]:华为的操作系统:鸿蒙操作系统(HarmonyOS)和欧拉操作系统(openEuler)
科技·华为·架构·harmonyos
ZeehLin11 小时前
auipc指令在NEMU中的执行过程
架构
EF@蛐蛐堂12 小时前
WUJIE VS QIANKUN 微前端框架选型(一)
前端·vue.js·微服务·架构
RunningShare12 小时前
高可用架构实战:SpringBoot+MongoDB构建AI原生应用
spring boot·mongodb·架构
Xxtaoaooo12 小时前
Sora文生视频技术拆解:Diffusion Transformer架构与时空建模原理
人工智能·架构·音视频·transformer·sora
银帅1833503097114 小时前
2015年下半年试题三:论面向服务的架构及其应用
架构