• 通过Sealos 180秒部署一套K8S集群


    通过Sealos 180秒部署一套K8S集群

    一、主机准备

    1.1 主机操作系统说明

    序号操作系统及版本备注
    1CentOS7u9

    1.2 主机硬件配置说明

    k8s集群CPU及内存最低分别为2颗CPU、2G内存,硬盘建议为100G+

    需求CPU内存硬盘角色主机名
    8C8G1024GBmasterk8s-master01
    8C8G1024GBmasterk8s-master02
    8C8G1024GBmasterk8s-master03
    8C16G1024GBworker(node)k8s-worker01
    8C16G1024GBworker(node)k8s-worker02

    1.3 主机配置

    1.3.1 主机名配置

    由于本次使用5台主机完成kubernetes集群部署,其中3台为master节点,名称分别为k8s-master01、k8s-master02、k8s-master03;其中2台为worker节点,名称分别为:k8s-worker01及k8s-worker02

    master节点
    # hostnamectl set-hostname k8s-master01
    
    • 1
    • 2
    master节点
    # hostnamectl set-hostname k8s-master02
    
    • 1
    • 2
    master节点
    # hostnamectl set-hostname k8s-master03
    
    • 1
    • 2
    worker01节点
    # hostnamectl set-hostname k8s-worker01
    
    • 1
    • 2
    worker02节点
    # hostnamectl set-hostname k8s-worker02
    
    • 1
    • 2

    1.3.2 主机IP地址配置

    k8s-master01节点IP地址为:192.168.10.140/24
    # vim /etc/sysconfig/network-scripts/ifcfg-ens33
    TYPE="Ethernet"
    PROXY_METHOD="none"
    BROWSER_ONLY="no"
    BOOTPROTO="none"
    DEFROUTE="yes"
    IPV4_FAILURE_FATAL="no"
    IPV6INIT="yes"
    IPV6_AUTOCONF="yes"
    IPV6_DEFROUTE="yes"
    IPV6_FAILURE_FATAL="no"
    IPV6_ADDR_GEN_MODE="stable-privacy"
    NAME="ens33"
    DEVICE="ens33"
    ONBOOT="yes"
    IPADDR="192.168.10.140"
    PREFIX="24"
    GATEWAY="192.168.10.2"
    DNS1="119.29.29.29"
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    k8s-master02节点IP地址为:192.168.10.141/24
    # vim /etc/sysconfig/network-scripts/ifcfg-ens33
    TYPE="Ethernet"
    PROXY_METHOD="none"
    BROWSER_ONLY="no"
    BOOTPROTO="none"
    DEFROUTE="yes"
    IPV4_FAILURE_FATAL="no"
    IPV6INIT="yes"
    IPV6_AUTOCONF="yes"
    IPV6_DEFROUTE="yes"
    IPV6_FAILURE_FATAL="no"
    IPV6_ADDR_GEN_MODE="stable-privacy"
    NAME="ens33"
    DEVICE="ens33"
    ONBOOT="yes"
    IPADDR="192.168.10.141"
    PREFIX="24"
    GATEWAY="192.168.10.2"
    DNS1="119.29.29.29"
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    k8s-master03节点IP地址为:192.168.10.142/24
    # vim /etc/sysconfig/network-scripts/ifcfg-ens33
    TYPE="Ethernet"
    PROXY_METHOD="none"
    BROWSER_ONLY="no"
    BOOTPROTO="none"
    DEFROUTE="yes"
    IPV4_FAILURE_FATAL="no"
    IPV6INIT="yes"
    IPV6_AUTOCONF="yes"
    IPV6_DEFROUTE="yes"
    IPV6_FAILURE_FATAL="no"
    IPV6_ADDR_GEN_MODE="stable-privacy"
    NAME="ens33"
    DEVICE="ens33"
    ONBOOT="yes"
    IPADDR="192.168.10.142"
    PREFIX="24"
    GATEWAY="192.168.10.2"
    DNS1="119.29.29.29"
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    k8s-worker01节点IP地址为:192.168.10.143/24
    # vim /etc/sysconfig/network-scripts/ifcfg-ens33
    TYPE="Ethernet"
    PROXY_METHOD="none"
    BROWSER_ONLY="no"
    BOOTPROTO="none"
    DEFROUTE="yes"
    IPV4_FAILURE_FATAL="no"
    IPV6INIT="yes"
    IPV6_AUTOCONF="yes"
    IPV6_DEFROUTE="yes"
    IPV6_FAILURE_FATAL="no"
    IPV6_ADDR_GEN_MODE="stable-privacy"
    NAME="ens33"
    DEVICE="ens33"
    ONBOOT="yes"
    IPADDR="192.168.10.143"
    PREFIX="24"
    GATEWAY="192.168.10.2"
    DNS1="119.29.29.29"
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    k8s-worker02节点IP地址为:192.168.10.144/24
    # vim /etc/sysconfig/network-scripts/ifcfg-ens33
    TYPE="Ethernet"
    PROXY_METHOD="none"
    BROWSER_ONLY="no"
    BOOTPROTO="none"
    DEFROUTE="yes"
    IPV4_FAILURE_FATAL="no"
    IPV6INIT="yes"
    IPV6_AUTOCONF="yes"
    IPV6_DEFROUTE="yes"
    IPV6_FAILURE_FATAL="no"
    IPV6_ADDR_GEN_MODE="stable-privacy"
    NAME="ens33"
    DEVICE="ens33"
    ONBOOT="yes"
    IPADDR="192.168.10.144"
    PREFIX="24"
    GATEWAY="192.168.10.2"
    DNS1="119.29.29.29"
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    1.3.3 主机名与IP地址解析

    所有集群主机均需要进行配置。

    # cat /etc/hosts
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    192.168.10.140 k8s-master01
    192.168.10.141 k8s-master02
    192.168.10.142 k8s-master03
    192.168.10.143 k8s-worker01
    192.168.10.144 k8s-worker02
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    1.3.4 防火墙配置

    所有主机均需要操作。

    关闭现有防火墙firewalld
    # systemctl disable firewalld
    # systemctl stop firewalld
    # firewall-cmd --state
    not running
    
    • 1
    • 2
    • 3
    • 4
    • 5

    1.3.5 SELINUX配置

    所有主机均需要操作。修改SELinux配置需要重启操作系统。

    # sed -ri 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
    
    • 1
    # sestatus
    
    • 1

    1.3.6 时间同步配置

    所有主机均需要操作。最小化安装系统需要安装ntpdate软件。

    # crontab -l
    0 */1 * * * /usr/sbin/ntpdate time1.aliyun.com
    
    • 1
    • 2

    1.3.7 升级操作系统内核

    所有主机均需要操作。

    导入elrepo gpg key
    # rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
    
    • 1
    • 2
    安装elrepo YUM源仓库
    # yum -y install https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
    
    • 1
    • 2
    安装kernel-ml版本,ml为最新稳定版本,lt为长期维护版本
    # yum --enablerepo="elrepo-kernel" -y install kernel-lt.x86_64
    
    • 1
    • 2
    设置grub2默认引导为0
    # grub2-set-default 0
    
    • 1
    • 2
    重新生成grub2引导文件
    # grub2-mkconfig -o /boot/grub2/grub.cfg
    
    • 1
    • 2
    更新后,需要重启,使用升级的内核生效。
    # reboot
    
    • 1
    • 2
    重启后,需要验证内核是否为更新对应的版本
    # uname -r
    
    • 1
    • 2

    1.3.8 关闭SWAP分区

    修改完成后需要重启操作系统,如不重启,可临时关闭,命令为swapoff -a

    永远关闭swap分区,需要重启操作系统
    # cat /etc/fstab
    ......
    
    # /dev/mapper/centos-swap swap                    swap    defaults        0 0
    
    在上一行中行首添加#
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    二、Sealos软件准备

    在这里插入图片描述
     

    在这里插入图片描述

     

    在这里插入图片描述
     

    在这里插入图片描述

     

    [root@k8s-master01 ~]# wget https://github.com/labring/sealos/releases/download/v4.3.0/sealos_4.3.0_linux_amd64.rpm
    
    • 1
    [root@k8s-master01 ~]# yum -y install sealos_4.3.0_linux_amd64.rpm
    
    • 1

     

    三、使用Sealos部署K8S集群

    [root@k8s-master01 ~]# vim sealos-install-k8s.sh
    [root@k8s-master01 ~]# cat sealos-install-k8s.sh
    sealos run labring/kubernetes:v1.26.5 labring/helm:v3.12.0 labring/calico:v3.24.6 \
    --masters 192.168.10.140,192.168.10.141,192.168.10.142 \
    --nodes 192.168.10.143,192.168.10.144 -p centos
    
    • 1
    • 2
    • 3
    • 4
    • 5
    [root@k8s-master01 ~]# sh sealos-install-k8s.sh
    
    • 1
  • 相关阅读:
    模板层-过滤器和继承
    如何开通 chatGPT4 会员
    linux证书生成详解
    【原创】java+swing+mysql校园活动管理系统设计与实现
    Golang【Web 入门】 07 路由 - http.ServeMux
    P1807 最长路题解【Floyd】
    PMI-ACP练习题(11)
    Excel批量插入工作表
    8月23号面试
    树莓派raspberry pi 4 SSH默认密码无法登录解决办法
  • 原文地址:https://blog.csdn.net/qq_37892401/article/details/132985566