1.Centos 7.9 内核问题导致部署失败
2.Ubuntu 22.04 免密登录未配置正确,配置到了普通用户免密,正确的应该是ssh root@address 能够免密登录root账户
3.下载pull速度慢的问题,仓库ip地址tcpdump 的结果是美国cloudflare节点有时快有时慢,晚上12点后和早上好像挺快
部署kubernetes集群
sealos gen labring/kubernetes:v1.25.6 \
labring/helm:v3.12.0 \
labring/calico:v3.24.1 \
labring/cert-manager:v1.8.0 \
labring/openebs:v3.4.0 \
--masters 192.168.124.46 \
--nodes 192.168.124.28 > Clusterfile
sealos apply -f Clusterfile
创建一个脚本文件vim sealos.sh粘贴下面内容,添加权限chmod +x sealos.sh
#!/bin/bash
set -e
cat << EOF > ingress-nginx-config.yaml
apiVersion: apps.sealos.io/v1beta1
kind: Config
metadata:
creationTimestamp: null
name: ingress-nginx-config
spec:
data: |
controller:
hostNetwork: true
kind: DaemonSet
service:
type: NodePort
match: docker.io/labring/ingress-nginx:v1.5.1
path: charts/ingress-nginx/values.yaml
strategy: merge
EOF
sealos run docker.io/labring/kubernetes-reflector:v7.0.151\
docker.io/labring/ingress-nginx:v1.5.1\
docker.io/labring/zot:v1.4.3\
docker.io/labring/kubeblocks:v0.5.3\
--env policy=anonymousPolicy\
--config-file ingress-nginx-config.yaml
echo "patch ingress-nginx-controller tolerations to allow run on master node, if you don't want to run on master node, please ignore this step"
kubectl -n ingress-nginx patch ds ingress-nginx-controller -p '{"spec":{"template":{"spec":{"tolerations":[{"key":"node-role.kubernetes.io/control-plane","operator":"Exists","effect":"NoSchedule"}]}}}}'
echo "waitting for kubeblocks crd created, this may take a while"
while ! kubectl get clusterdefinitions.apps.kubeblocks.io redis >/dev/null 2>&1; do
sleep 5
done
echo "start patch redis clusterdefinition"
kubectl patch clusterdefinitions.apps.kubeblocks.io redis --type='json' -p '[{"op": "add", "path": "/spec/componentDefs/0/podSpec/containers/1/resources/limits", "value": {"cpu":"100m", "memory":"100Mi"}}]'
echo "patch redis success"
echo "wait for all pod to be ready then install Sealos"
kubectl get po -A
无域名部署sealos desktop 程序
sealos run registry.cn-hangzhou.aliyuncs.com/fckc/sealos-cloud-private:latest\
--env cloudDomain="192.168.124.46.nip.io"
自定义域名以及证书部署
vim deploySealosCloud.sh
#!/bin/bash
# 读取原始证书和密钥文件
tls_crt_file="tls.cer"
tls_key_file="tls.key"
# 使用 base64 转换
tls_crt_base64=$(cat $tls_crt_file | base64 | tr -d '\n')
tls_key_base64=$(cat $tls_key_file | base64 | tr -d '\n')
# 定义 YAML 文件内容
yaml_content="
apiVersion: apps.sealos.io/v1beta1
kind: Config
metadata:
name: secret
spec:
path: manifests/tls-secret.yaml
# please change the match image to your own image
match: docker.io/labring/sealos-cloud:latest
strategy: merge
data: |
data:
tls.crt: $tls_crt_base64
tls.key: $tls_key_base64
"
# 创建新的 cloud-config.yaml 文件
echo "$yaml_content" > tls-secret.yaml
添加脚本执行权限
chmod +x deploySealosCloud.sh
执行脚本
./deploySealosCloud.sh
部署sealos cloud
sealos run registry.cn-hangzhou.aliyuncs.com/fckc/sealos-cloud-private:latest\
--env cloudDomain="yourdomain.com"\
--config-file tls-secret.yaml