Appearance
Sealos4快速安装k8s
下载安装包
前往https://github.com/labring/sealos/releases下载安装包
https://github.com/labring/sealos/releasesRPM包:
# amd
https://github.com/labring/sealos/releases/download/v4.3.7/sealos_4.3.7_linux_amd64.rpm
# arm
https://github.com/labring/sealos/releases/download/v4.3.7/sealos_4.3.7_linux_arm64.rpmtar.gz包
# amd
https://github.com/labring/sealos/releases/download/v4.3.7/sealos_4.3.7_linux_amd64.tar.gz
# arm
https://github.com/labring/sealos/releases/download/v4.3.7/sealos_4.3.7_linux_arm64.tar.gz安装sealos
RPM
# amd
yum install -y sealos_4.3.7_linux_amd64.rpm
# arm
yum install -y sealos_4.3.7_linux_arm64.rpmtar.gz包
bash
# arm
mkdir -p /usr/local/sealos/ && tar -xvf sealos_4.3.7_linux_arm64.tar.gz -C /usr/local/sealos/ && chmod +x /usr/local/sealos/sealos && ln -s /usr/local/sealos/sealos /usr/local/bin/sealos && which sealos
# amd
mkdir -p /usr/local/sealos/ && tar -xvf sealos_4.3.7_linux_amd64.tar.gz -C /usr/local/sealos/ && chmod +x /usr/local/sealos/sealos && ln -s /usr/local/sealos/sealos /usr/local/bin/sealos && which sealos注意:sealos不是守护进程,不需要启动
设置所有节点 hostname 主机名
hostnamectl set-hostname xxx主机名不能重复,集群装好后会以主机名作为节点名称
注意:主机名不能重复,否则会报:[EROR] [check.go:63] duplicate hostnames is not allowed
各节点配置 /etc/hosts
cat >> /etc/hosts << EOF
192.168.x.x master1
192.168.x.x master2
192.168.x.x node1
192.168.x.x node2
EOF测试是否ssh能够通过
ssh root@192.168.x.x配置sealos自动补全
bash
# 临时生效sealos自动补全
source <(sealos completion bash)
## 只在当前用户生效sealos自动补全
echo 'source <(sealos completion bash)' >>~/.bashrc
## 全局生效sealos自动补全
echo 'source <(sealos completion bash)' >>/etc/profile.d/sealos.sh && source /etc/profile
# 生成sealos自动补全联想信息
sealos completion bash >/etc/bash_completion.d/sealos安装k8s
在线安装
bash
# 安装k8s
## 集群安装一个集群
## 只支持IP地址
sealos run labring/kubernetes:v1.25.0 labring/helm:v3.8.2 labring/calico:v3.24.1 labring/ingress-nginx:4.1.0 \
--masters 192.168.x.x \
--nodes 192.168.x.x,192.168.x.x \
-p [your-ssh-passwd]
# 检查k8s集群是否就绪
kubectl get nodes
## --single 单机安装
sealos run labring/kubernetes:v1.25.0 \
labring/helm:v3.8.2 \
labring/ingress-nginx:4.1.0 \
labring/calico:v3.24.1 --single-p [your-ssh-passwd]指定密码,免密可忽略
相关的镜像可以下载最新的版本,离线环境可以在其他地方下载后带过去,sealos4自带镜像管理,所以无需安装Docker即可导入镜像
离线安装
bash
# 下载k8s镜像
sealos pull labring/kubernetes:v1.25.0
# 将k8s镜像打包--用于导出到其他离线机器
sealos save -o kubernetes.tar labring/kubernetes:v1.25.0
# 在其他集群导入k8s镜像包
sealos load -i kubernetes.tar
# 查看集群镜像是否导入成功
sealos images
# 安装k8s
## 集群安装一个集群
## 只支持IP地址
sealos run labring/kubernetes:v1.25.0 labring/helm:v3.8.2 labring/calico:v3.24.1 labring/ingress-nginx:4.1.0 \
--masters 192.168.x.x \
--nodes 192.168.x.x,192.168.x.x \
-p [your-ssh-passwd]
## --single 单机安装
sealos run labring/kubernetes:v1.25.0 \
labring/helm:v3.8.2 \
labring/ingress-nginx:4.1.0 \
labring/calico:v3.24.1 --single查看集群健康情况
kubectl get cs域名解析检查
# 查看给dns分配的svc地址,比如说是10.10.0.10
kubectl get svc -n kube-system
# 找一个域名尝试解析
dig -t a www.baidu.com @10.10.0.10其他sealos命令见,sealos help
已执行的集群上可以通过
kubeadm config images list查看组件版本列表
增加/删除node
# 增加master
sealos add --masters 192.168.x.x,192.168.x.x
# 增加node
sealos add --nodes 192.168.x.x,192.168.x.x
# 删除 master 节点:
sealos delete --masters 192.168.x.x,192.168.x.x
# 删除node
sealos delete --nodes 192.168.x.x
# 查看机器是否退出
kubectl get nodes -A删除整个集群
# 删除整个集群
sealos resetpull拉取镜像
# 拉取镜像
sealos pull 镜像名login登录到dockerhub
sealos自带私有仓库 https://sealos.io/zh-Hans/docs/design/private-registry
# 登录到docker.io
sealos login docker.io
# 按照提示输入账号和密码push推送镜像
# sealos push 镜像名:tag
sealos push docker.io/fanux/ingress-nginx:v1.2.0