【安装部署】linux环境使用sealos快速安装k8s集群

        传言sealos是最丝滑的k8s集群部署工具,没错像德芙一般丝滑,但如果你是第一次使用sealos,建议你不要去百度,经过我一晚上的测试,基本都是copy的,一个命令写错,全网人跟着错,没啥用纯浪费时间,而且关于报错后排查的资料很少,可能是用的人少吧,上官网都比百度省时间。

       官网地址: https://sealos.io/zh-Hans/docs/Intro

一、服务器规划

        kubernetes集群大体上分为两类:一主多从和多主多从。

        1、一M多N:一台Master节点和多台Node节点,但是有单机故障风险,适合用于测试环境

        2、多M多N:多台Master节点和多台Node节点,安全性高,适合用于生产环境

        我配置的两M一N有其它目的,不必在意。

作用 私网IP 操作系统 配置
master1 192.168.0.123 Centos7.9 2C/4G/50G
master2 192.168.0.124 Centos7.9 2C/4G/50G
node1 192.168.0.125 Centos7.9 2C/4G/50G

        软件版本如下:

组件/工具 版本号
sealos v4.3.7_linux_amd64
kubernetes v1.25.0
helm v3.8.2
calico v3.24.1

二、环境准备

1、初始化环境

        每台机器都需要进行初始化环境

        关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

        关闭selinux

sed -i 's/enforcing/disabled/' /etc/selinux/config  # 永久
setenforce 0  # 临时

        关闭swap

扫描二维码关注公众号,回复: 17168304 查看本文章
swapoff -a  # 临时
sed -ri 's/.*swap.*/#&/' /etc/fstab    # 永久

        时间同步 

yum install ntpdate -y
ntpdate time.windows.com

2、设置主机名

        每台机器都需要配置hosts

# 根据规划设置主机名
hostnamectl set-hostname <hostname>
vi /etc/hosts  # 按照集群规划,在每台机器的hosts文件中添加以下内容
192.168.0.123 master1
192.168.0.124 master2
192.168.0.125 node1

        在每台几器上都进行测试,各节点要全部ping通

3、免密登录

#在master上生成密钥对
ssh-keygen #一路按回车即可,会在当前用户.ssh目录下生产相应秘钥文件

#拷贝公钥到其它master、node节点上
ssh-copy-id -i .ssh/id_rsa.pub [email protected]
ssh-copy-id -i .ssh/id_rsa.pub [email protected]

三、安装sealos

1、下载sealos

wget https://github.com/labring/sealos/releases/download/v4.3.7/sealos_4.3.7_linux_amd64.tar.gz

 2、解压赋权

tar zxvf sealos_4.3.7_linux_amd64.tar.gz sealos && chmod +x sealos && mv sealos /usr/bin

四、安装k8s集群

1、生成集群配置

        生成一个包含多个镜像、指定了主节点和工作节点的集群的配置

        有docker版:

sealos gen labring/kubernetes-docker:v1.25.0 labring/helm:v3.8.2 labring/calico:v3.24.1 \
--masters 192.168.0.123,192.168.0.124 \
--nodes 192.168.0.125 --passwd Admin123 --port 22 --output Clusterfile

         无docker版:

sealos gen labring/kubernetes:v1.25.0 labring/helm:v3.8.2 labring/calico:v3.24.1 \
--masters 192.168.0.123,192.168.0.124 \
--nodes 192.168.0.125 --passwd Admin123 --port 22 --output Clusterfile

        参数说明:

        --masters :  master节点地址
        --nodes :     node节点地址
        --passwd :   服务器root密码
        --port 22 :    ssh端口
        --output :     生成的文件路径及名称

2、修改配置文件

        在生成了 Clusterfile 之后,用户可以根据自己的需求来修改这个文件。添加或修改环境变量;修改集群cidr配置,不添加和修改也可以直接创建集群。

        不修改默认安装启动组件有:coredns、etcd、kube-apiserver、kube-controller-manager、kube-scheduler、kube-proxy、kube-sealos-lvscare。

3、创建集群

kubectl apply -f Clusterfile

        这里需要等待一段时间,安装成功后如图:

         查看集群节点

Kubectl get nodes

        查看pod状态

kubectl get pod -n kube-system

        安装成功。 

4、验证一下

        创建一个nginx-deployment.yaml文件

vi nginx-deployment.yaml

        添加如下内容

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
  labels:
    app: nginx
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2
        ports:
        - containerPort: 80

        创建deployment资源

kubectl apply -f nginx-deployment.yaml

         查看创建的pod

猜你喜欢

转载自blog.csdn.net/u014481728/article/details/134907401