740 lines
47 KiB
Markdown
740 lines
47 KiB
Markdown
# GBS底座部署
|
||
|
||
## 安装前准备
|
||
|
||
每台服务器都需要进行此操作
|
||
|
||
服务器规划 最低三台服务
|
||
|
||
| 主机名/域名 | ip | |
|
||
| --- | --- | --- |
|
||
| k8s-master | x.x.x.x | 应用服务器Master(安装nginx,数据库,mq,redis等<br>安装 docker,安装 Kubernetes) |
|
||
| k8s-work01 | x.x.x.x | 应用服务器work(安装 Kubernetes<br>,安装 docker) |
|
||
| k8s-work02 | x.x.x.x | 应用服务器work(安装 Kubernetes<br>,安装 docker) |
|
||
|
||
基础准备:
|
||
|
||
1、yum源变更(每台服务器都需要变更)
|
||
|
||
centos
|
||
|
||
[https://blog.csdn.net/m0\_74007708/article/details/141276668](https://blog.csdn.net/m0_74007708/article/details/141276668)
|
||
|
||
rockylinux
|
||
|
||
[https://developer.aliyun.com/article/1074889](https://developer.aliyun.com/article/1074889)
|
||
|
||
2、服务器主从节点配置
|
||
|
||
每台服务器的/etc/hosts文件下都写入
|
||
|
||
x.x.x.x k8s-master x.x.x.x k8s-work01 x.x.x.x k8s-work02 x.x.x.x k8s-work03
|
||
|
||

|
||
|
||
```shell
|
||
cd /
|
||
cat /config/hosts | while read hostdata;do echo ${hostdata} >> /etc/hosts;done
|
||
```
|
||
|
||
3、每台服务器都进行同步时间
|
||
|
||
```shell
|
||
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
|
||
yum install ntpdate -y
|
||
crontab -e
|
||
*/5 * * * * ntpdate -u time.pool.aliyun.com
|
||
```
|
||
```shell
|
||
# 安装chrony
|
||
sudo dnf install -y chrony
|
||
sudo vi /etc/chrony.conf
|
||
# 注释原有默认的服务器地址,添加以下阿里云 NTP 服务器地址
|
||
server ntp1.aliyun.com iburst
|
||
server ntp2.aliyun.com iburst
|
||
server ntp3.aliyun.com iburst
|
||
#启动并设置开机自启
|
||
sudo systemctl start chronyd
|
||
sudo systemctl enable chronyd
|
||
#立即同步时间
|
||
sudo chronyc makestep
|
||
# 验证
|
||
date
|
||
chronyc sources
|
||
# 查看是否同步(NTP synchronized: yes)
|
||
timedatectl
|
||
# 如果有其他服务需要同步时钟但是其他服务器互通但是其他服务器连不到外网
|
||
# 主服务器 允许x.x.x.0/24网段的服务器向本服务器同步时间
|
||
sudo vi /etc/chrony.conf
|
||
# 添加allow x.x.x.0/24
|
||
# 从服务器 把主服务加入进去
|
||
# 1、先安装chrony 2、编辑chrony.conf
|
||
# 仅同步本地主服务器(替换为实际主服务器IP)
|
||
server 192.168.1.100 iburst
|
||
|
||
```
|
||
|
||
4、每台服务器防火墙配置
|
||
|
||
```shell
|
||
cat /config/hosts | awk '{print $1}' | while read rich_ip; do sudo firewall-cmd --permanent --zone=trusted --add-source=${rich_ip}; firewall-cmd --reload; done
|
||
```
|
||
```shell
|
||
sudo sh -c 'cat /config/hosts | awk "{print \$1}" | while read rich_ip; do
|
||
firewall-cmd --permanent --zone=trusted --add-source=${rich_ip};
|
||
done;
|
||
firewall-cmd --reload'
|
||
```
|
||
|
||
```shell
|
||
# 允许 kube-proxy 重定向流量
|
||
sudo firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 1 -j ACCEPT -m comment --comment "kube-proxy redirects"
|
||
|
||
# 允许 Docker 容器子网之间的流量通信
|
||
sudo firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 1 -j ACCEPT -m comment --comment "docker subnet"
|
||
|
||
# 设置防火墙伪装IP(打开NAT)
|
||
sudo firewall-cmd --add-masquerade --permanent
|
||
# 添加防火墙端口
|
||
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
|
||
# 最后重载防火墙使配置生效
|
||
sudo firewall-cmd --reload
|
||
# 验证
|
||
sudo firewall-cmd --list-all --zone=trusted
|
||
```
|
||
|
||
4、关闭swap分区&selinux
|
||
|
||
```shell
|
||
sudo swapoff -a
|
||
sudo sed -i 's/.*swap.*/#&/' /etc/fstab
|
||
sudo setenforce 0
|
||
sudo sed -i 's@=enforcing@=disabled@g' /etc/selinux/config
|
||
```
|
||
|
||
5、加载overlay和br\_netfilter内核模块
|
||
|
||
```shell
|
||
sudo cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
|
||
overlay
|
||
br_netfilter
|
||
EOF
|
||
sudo modprobe overlay
|
||
sudo modprobe br_netfilter
|
||
```
|
||
|
||
6、设置所需的 sysctl 参数,参数在重新启动后保持不变
|
||
|
||
```shell
|
||
sudo cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
|
||
net.bridge.bridge-nf-call-iptables = 1
|
||
net.bridge.bridge-nf-call-ip6tables = 1
|
||
net.ipv4.ip_forward = 1
|
||
EOF
|
||
```
|
||
|
||
7、应用刚刚的配置
|
||
|
||
```shell
|
||
sudo sysctl --system
|
||
```
|
||
|
||
8、检查 overlay和br\_netfilter 模块
|
||
|
||
```shell
|
||
sudo lsmod | grep br_netfilter
|
||
sudo lsmod | grep overlay
|
||
# centos结果
|
||
br_netfilter 22256 0
|
||
bridge 151336 1 br_netfilter
|
||
overlay 91659 0
|
||
# Rocky Linux
|
||
br_netfilter 28672 0
|
||
bridge 294912 1 br_netfilter
|
||
overlay 139264 0
|
||
```
|
||
|
||
## 中间件安装
|
||
|
||
### 安装ngxin
|
||
|
||
```shell
|
||
cd /home/data
|
||
# 下载nginx
|
||
sudo wget https://nginx.org/download/nginx-1.27.2.tar.gz
|
||
sudo tar -zxvf nginx-1.27.2.tar.gz
|
||
# 安装c编译器
|
||
sudo dnf install -y gcc gcc-c++ make pcre-devel zlib-devel openssl-devel
|
||
sudo ./configure --prefix=/usr/local/nginx --with-http_ssl_module
|
||
sudo make && sudo make install
|
||
# 配置系统服务
|
||
sudo tee /etc/systemd/system/nginx.service <<EOF
|
||
[Unit]
|
||
Description=nginx
|
||
After=network.target
|
||
[Service]
|
||
Type=forking
|
||
ExecStart=/usr/local/nginx/sbin/nginx
|
||
ExecReload=/usr/local/nginx/sbin/nginx -s reload
|
||
ExecStop=/usr/local/nginx/sbin/nginx -s quit
|
||
PrivateTmp=true
|
||
[Install]
|
||
WantedBy=multi-user.target
|
||
EOF
|
||
|
||
# 重新加载 systemd 配置使服务生效
|
||
sudo systemctl daemon-reload
|
||
sudo systemctl enable nginx
|
||
sudo systemctl start nginx
|
||
```
|
||
|
||
### 安装docker
|
||
|
||
```shell
|
||
# 安装必要的一些系统工具
|
||
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
|
||
# 添加软件源信息
|
||
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
|
||
|
||
# 更新并安装Docker-CE
|
||
sudo yum -y install docker-ce
|
||
sudo service docker start
|
||
```
|
||
```shell
|
||
# 安装必要的一些系统工具
|
||
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
|
||
# 添加软件源信息
|
||
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
|
||
#安装docker
|
||
sudo dnf install -y docker-ce docker-ce-cli containerd.io --allowerasing
|
||
|
||
sudo service docker start
|
||
```
|
||
|
||
### 安装CRI-Dockerd
|
||
|
||
```shell
|
||
"$(uname -m)" = "aarch64"
|
||
wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.4/cri-dockerd-0.3.4.arm64.tgz
|
||
"$(uname -m)" = "loongarch64"
|
||
wget https://mirror.loongnix.cn/cri-dockerd/v0.3.4/cri-dockerd-0.3.4.loongarch64.tgz
|
||
"$(uname -m)" = "x86_64"
|
||
wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.4/cri-dockerd-0.3.4.amd64.tgz
|
||
|
||
```
|
||
|
||
[请至钉钉文档查看附件《cri-dockerd-0.3.4.amd64.tgz》。](https://alidocs.dingtalk.com/document/preview?chInfo=im&cid=130587771:1935297177&dentryKey=g08Ok5gnh0MaBZlL&docKey=4jKqm0bQMz18Gnw1&dontjump=true&iframeQuery=anchorId%3DX02mhygfz56bxlrmbfezb4&type=d&utm_medium=im_card&utm_source=im)
|
||
|
||
```shell
|
||
sudo mv cri-dockerd/cri-dockerd /usr/local/bin/
|
||
sudo chmod +x /usr/local/bin/cri-dockerd
|
||
# 创建systemd服务文件
|
||
sudo tee /usr/lib/systemd/system/cri-docker.service <<'EOF'
|
||
[Unit]
|
||
Description=CRI Interface for Docker Application Container Engine
|
||
Documentation=https://docs.mirantis.com
|
||
After=network-online.target firewalld.service docker.service
|
||
Wants=network-online.target
|
||
Requires=docker.service
|
||
[Service]
|
||
Type=notify
|
||
ExecStart=/usr/local/bin/cri-dockerd --network-plugin=cni --pod-infra-container-image=registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.9
|
||
ExecReload=/bin/kill -s HUP $MAINPID
|
||
TimeoutSec=0
|
||
RestartSec=2
|
||
Restart=always
|
||
StartLimitBurst=3
|
||
StartLimitInterval=60s
|
||
LimitNOFILE=infinity
|
||
LimitNPROC=infinity
|
||
LimitCORE=infinity
|
||
TasksMax=infinity
|
||
Delegate=yes
|
||
KillMode=process
|
||
[Install]
|
||
WantedBy=multi-user.target
|
||
EOF
|
||
# 启动服务
|
||
sudo systemctl daemon-reload
|
||
sudo systemctl enable cri-docker && sudo systemctl start cri-docker
|
||
```
|
||
|
||
### 安装Kubernetes
|
||
|
||
```shell
|
||
sudo tee /etc/yum.repos.d/kubernetes.repo <<EOF
|
||
[kubernetes]
|
||
name=Kubernetes
|
||
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-$(uname -m)/
|
||
enabled=1
|
||
gpgcheck=1
|
||
repo_gpgcheck=1
|
||
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
|
||
EOF
|
||
# 清理并更新yum缓存
|
||
sudo yum clean all
|
||
sudo yum makecache
|
||
```
|
||
```shell
|
||
# 安装指定版本 k8s
|
||
sudo yum install -y kubelet-1.27.6-0 kubeadm-1.27.6-0 kubectl-1.27.6-0
|
||
```
|
||
```shell
|
||
sudo dnf install -y kubelet-1.27.6-0 kubeadm-1.27.6-0 kubectl-1.27.6-0 --disableexcludes=kubernetes
|
||
```
|
||
|
||
配置Kubelet使用CRI-Dockerd
|
||
|
||
```shell
|
||
sudo mkdir -p /var/lib/kubelet/
|
||
# 生成基础配置
|
||
sudo tee /var/lib/kubelet/config.yaml <<EOF
|
||
apiVersion: kubelet.config.k8s.io/v1beta1
|
||
kind: KubeletConfiguration
|
||
cgroupDriver: systemd
|
||
clusterDNS:
|
||
- 10.96.0.10
|
||
clusterDomain: cluster.local
|
||
containerLogMaxSize: 50Mi
|
||
containerLogMaxFiles: 3
|
||
cpuManagerReconcilePeriod: 10s
|
||
evictionHard:
|
||
memory.available: "200Mi"
|
||
nodefs.available: "10%"
|
||
nodefs.inodesFree: "5%"
|
||
imagefs.available: "15%"
|
||
failSwapOn: false
|
||
hairpinMode: hairpin-veth
|
||
serializeImagePulls: false
|
||
logging:
|
||
format: json
|
||
EOF
|
||
|
||
|
||
```
|
||
```shell
|
||
# 修改systemd服务文件
|
||
sudo tee /etc/systemd/system/kubelet.service.d/10-cri-docker.conf <<EOF
|
||
[Service]
|
||
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"
|
||
Environment="KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml"
|
||
Environment="KUBELET_EXTRA_ARGS=--container-runtime=remote --container-runtime-endpoint=unix:///run/cri-dockerd.sock --node-ip=<NODE_IP> --hostname-override=<HOSTNAME>"
|
||
ExecStart=
|
||
ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_EXTRA_ARGS
|
||
EOF
|
||
|
||
sudo systemctl daemon-reload
|
||
sudo systemctl enable kubelet
|
||
```
|
||
|
||
**主节点初始化(不要在工作节点使用)**
|
||
|
||
```shell
|
||
sudo tee kubeadm-config.yaml <<EOF
|
||
apiVersion: kubeadm.k8s.io/v1beta3
|
||
kind: InitConfiguration
|
||
nodeRegistration:
|
||
criSocket: unix:///run/cri-dockerd.sock
|
||
kubeletExtraArgs:
|
||
node-ip: <替换为实际主节点ip>
|
||
hostname-override: <替换为实际主节点hostname>
|
||
---
|
||
apiVersion: kubeadm.k8s.io/v1beta3
|
||
kind: ClusterConfiguration
|
||
kubernetesVersion: 1.27.6
|
||
imageRepository: registry.cn-hangzhou.aliyuncs.com/google_containers
|
||
controlPlaneEndpoint: "<替换为实际主节点ip>:6443"
|
||
networking:
|
||
podSubnet: "10.244.0.0/16"
|
||
serviceSubnet: "10.96.0.0/12"
|
||
dnsDomain: "cluster.local"
|
||
apiServer:
|
||
extraArgs: {}
|
||
controllerManager:
|
||
extraArgs:
|
||
bind-address: "0.0.0.0"
|
||
scheduler:
|
||
extraArgs:
|
||
bind-address: "0.0.0.0"
|
||
EOF
|
||
```
|
||
|
||
[请至钉钉文档查看附件《kubeadm-config.yaml》。](https://alidocs.dingtalk.com/document/preview?chInfo=im&cid=130587771:1935297177&dentryKey=g08Ok5gnh0MaBZlL&docKey=4jKqm0bQMz18Gnw1&dontjump=true&iframeQuery=anchorId%3DX02mhyj8glhoxq16bkm6o&type=d&utm_medium=im_card&utm_source=im)
|
||
|
||
然后配置证书
|
||
|
||
```plaintext
|
||
mkdir -p $HOME/.kube
|
||
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
|
||
sudo chown $(id -u):$(id -g) $HOME/.kube/config
|
||
# 验证配置
|
||
kubectl cluster-info
|
||
# 检查 kubelet 状态
|
||
sudo systemctl status kubelet
|
||
|
||
# 查看 kubelet 日志
|
||
sudo journalctl -u kubelet -n 50 --no-pager
|
||
```
|
||
```shell
|
||
一、优先检查 kubelet 状态(最常见原因)
|
||
kubelet 是节点上的核心组件,若它未运行或异常,控制平面组件(如 kube-apiserver)无法启动。
|
||
查看 kubelet 状态:
|
||
bash
|
||
sudo systemctl status kubelet
|
||
若显示 inactive(未运行),启动并设置开机自启:
|
||
bash
|
||
sudo systemctl enable --now kubelet
|
||
若显示 active (running) 但有错误,查看详细日志:
|
||
bash
|
||
sudo journalctl -xeu kubelet # 重点看 ERROR 级别的日志
|
||
二、常见 kubelet 错误及解决
|
||
1. cgroup 驱动不匹配
|
||
kubelet 与容器运行时(cri-dockerd/Docker)的 cgroup 驱动必须一致,否则会导致启动失败。
|
||
查看 Docker 的 cgroup 驱动:
|
||
bash
|
||
docker info | grep "Cgroup Driver"
|
||
# 输出通常为:Cgroup Driver: systemd
|
||
查看 kubelet 的 cgroup 驱动配置:
|
||
bash
|
||
cat /var/lib/kubelet/config.yaml | grep cgroupDriver
|
||
若不一致(如 Docker 是 systemd,kubelet 是 cgroupfs),修改 kubelet 配置:
|
||
bash
|
||
sudo vi /var/lib/kubelet/config.yaml
|
||
# 将 cgroupDriver: "cgroupfs" 改为 cgroupDriver: "systemd"
|
||
重启 kubelet:
|
||
bash
|
||
sudo systemctl daemon-reload
|
||
sudo systemctl restart kubelet
|
||
2. Swap 未关闭
|
||
Kubernetes 要求禁用 Swap,否则 kubelet 会启动失败。
|
||
临时关闭 Swap:
|
||
bash
|
||
sudo swapoff -a
|
||
永久关闭 Swap(重启生效):
|
||
bash
|
||
sudo sed -i '/swap/s/^/#/' /etc/fstab # 注释 /etc/fstab 中的 Swap 行
|
||
三、检查控制平面容器状态
|
||
若 kubelet 运行正常,需检查控制平面组件(kube-apiserver、kube-controller-manager、kube-scheduler)的容器是否启动失败。
|
||
列出所有 Kubernetes 相关容器:
|
||
bash
|
||
# 使用 cri-dockerd 的 runtime-endpoint 查看
|
||
crictl --runtime-endpoint unix:///run/cri-dockerd.sock ps -a | grep kube | grep -v pause
|
||
若某个容器状态为 Exited 或 CrashLoopBackOff,记录其 CONTAINER ID。
|
||
查看失败容器的日志(以 kube-apiserver 为例):
|
||
bash
|
||
crictl --runtime-endpoint unix:///run/cri-dockerd.sock logs <CONTAINER_ID>
|
||
常见错误:
|
||
端口占用:6443(apiserver)、2379(etcd)等端口被占用,需关闭占用进程(如 sudo lsof -i :6443 查找并 kill)。
|
||
镜像拉取失败:检查 imageRepository 配置是否正确(如阿里云镜像是否可用),手动拉取镜像:
|
||
bash
|
||
sudo docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.27.6
|
||
证书错误:删除旧证书重新初始化(谨慎操作,会重置集群):
|
||
bash
|
||
sudo kubeadm reset
|
||
sudo rm -rf /etc/cni/net.d # 清理网络配置
|
||
sudo kubeadm init --config=kubeadm-config.yaml --upload-certs # 重新初始化
|
||
四、其他可能原因
|
||
SELinux 或防火墙限制:
|
||
临时关闭 SELinux:sudo setenforce 0
|
||
开放必要端口(6443、2379、2380、10250 等):
|
||
bash
|
||
sudo firewall-cmd --permanent --add-port=6443/tcp
|
||
sudo firewall-cmd --permanent --add-port=2379-2380/tcp
|
||
sudo firewall-cmd --permanent --add-port=10250/tcp
|
||
sudo firewall-cmd --reload
|
||
kubelet 配置文件错误:若之前修改过 /var/lib/kubelet/config.yaml,可删除后重新生成:
|
||
bash
|
||
sudo rm -f /var/lib/kubelet/config.yaml
|
||
sudo kubeadm reset
|
||
sudo kubeadm init --config=kubeadm-config.yaml --upload-certs
|
||
```
|
||
|
||
配置集群环境网络插件
|
||
|
||
```shell
|
||
sudo mkdir -p $HOME/.kube
|
||
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
|
||
sudo chown $(id -u):$(id -g) $HOME/.kube/config
|
||
# 网络插件安装(Calico v3.26)
|
||
curl -O https://raw.githubusercontent.com/projectcalico/calico/v3.26.1/manifests/calico.yaml
|
||
sudo sed -i -e 's|docker.io/calico/|quay.io/calico/|g' -e 's|path: /var/lib/calico|path: /var/lib/uros/calico|g' calico.yaml
|
||
# 验证安装进度
|
||
kubectl get pods -n kube-system | grep calico-node
|
||
# 看描述
|
||
kubectl describe pod calico-node-《节点》 -n kube-system
|
||
# 如果镜像下载太慢 直接用docker安装
|
||
# sudo docker pull quay.io/calico/node:v3.26.1
|
||
```
|
||
|
||
集群加入主节点
|
||
|
||
```shell
|
||
# 如果丢失这个信息了以后 执行这个
|
||
# 生成新的 token(有效期 24 小时)
|
||
kubeadm token create --print-join-command
|
||
# 此次应该要确认 主节点的 6443 端口是否放开。
|
||
#https://blog.csdn.net/weixin_47872288/article/details/120188576
|
||
# 子节点 按刚刚的命令 执行下 子节点注入
|
||
|
||
# 验证子节点是否注入成功
|
||
kubectl get nodes -o wide
|
||
|
||
|
||
# 如果加入不成功( Kubernetes API Server 失败)把主节点admin.conf 改名成 config 复制到从节点的/home/admin/.kube 下重新执行命令。
|
||
|
||
```
|
||
```shell
|
||
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
|
||
k8s-master Ready control-plane 2d19h v1.27.6 192.168.198.8 <none> Rocky Linux 8.10 (Green Obsidian) 4.18.0-553.el8_10.x86_64 docker://26.1.3
|
||
k8s-work01 Ready <none> 34m v1.27.6 192.168.198.6 <none> Rocky Linux 8.10 (Green Obsidian) 4.18.0-553.el8_10.x86_64 docker://26.1.3
|
||
k8s-work02 Ready <none> 23m v1.27.6 192.168.198.7 <none> Rocky Linux 8.10 (Green Obsidian) 4.18.0-553.el8_10.x86_64 docker://26.1.3
|
||
```
|
||
|
||
集群中删除某个节点
|
||
|
||
```shell
|
||
# 替换 <节点名称> 为实际节点名(如 k8s-work01)
|
||
kubectl cordon <节点名称>
|
||
# 驱逐非 DaemonSet 的 Pod,--ignore-daemonsets 是关键参数
|
||
kubectl drain <节点名称> --ignore-daemonsets
|
||
# 从集群中删除节点
|
||
kubectl delete node <节点名称>
|
||
# 在被删除的节点上重置 kubeadm 配置
|
||
sudo kubeadm reset
|
||
```
|
||
|
||
[https://get.helm.sh/helm-v3.12.3-linux-amd64.tar.gz](https://get.helm.sh/helm-v3.12.3-linux-amd64.tar.gz)
|
||
|
||
[请至钉钉文档查看附件《helm-v3.12.3-linux-amd64.tar.gz》。](https://alidocs.dingtalk.com/document/preview?chInfo=im&cid=130587771:1935297177&dentryKey=g08Ok5gnh0MaBZlL&docKey=4jKqm0bQMz18Gnw1&dontjump=true&iframeQuery=anchorId%3DX02mhym64msa3zc1ny0vn&type=d&utm_medium=im_card&utm_source=im)
|
||
|
||
安装helm
|
||
|
||
```shell
|
||
sudo mv linux-amd64/helm /usr/local/bin/helm
|
||
sudo chmod +x /usr/local/bin/helm
|
||
helm version
|
||
# 添加仓库
|
||
helm repo add jjb-prod http://charts.jjbedu.cn:81/prod
|
||
# 更新仓库
|
||
helm repo update
|
||
# 安装dashboard
|
||
```
|
||
|
||
### 安装dashboard
|
||
|
||
[请至钉钉文档查看附件《dashboard-value.yaml》。](https://alidocs.dingtalk.com/document/preview?chInfo=im&cid=130587771:1935297177&dentryKey=g08Ok5gnh0MaBZlL&docKey=4jKqm0bQMz18Gnw1&dontjump=true&iframeQuery=anchorId%3DX02mi2q49ngbo4puel18u4&type=d&utm_medium=im_card&utm_source=im)
|
||
|
||
[请至钉钉文档查看附件《metrics-server.yaml》。](https://alidocs.dingtalk.com/document/preview?chInfo=im&cid=130587771:1935297177&dentryKey=g08Ok5gnh0MaBZlL&docKey=4jKqm0bQMz18Gnw1&dontjump=true&iframeQuery=anchorId%3DX02mi2lp5hdv7cg3dfeen&type=d&utm_medium=im_card&utm_source=im)
|
||
|
||
```shell
|
||
# 主节点执行
|
||
kubectl apply -f metrics-server.yaml
|
||
|
||
|
||
# 部署dashboard
|
||
helm install kubernetes-dashboard k8s-dashboard/kubernetes-dashboard --version 6.0.6 -f dashboard-value.yaml
|
||
```
|
||
```shell
|
||
# 主节点执行
|
||
kubectl apply -f metrics-server.yaml
|
||
|
||
# 部署dashboard
|
||
helm install kubernetes-dashboard k8s-dashboard/kubernetes-dashboard --version 6.0.6 -n kube-system -f dashboard-value.yaml
|
||
# 创建用户
|
||
kubectl create clusterrolebinding kube-dashboard-admin-binding \
|
||
--clusterrole=cluster-admin \
|
||
--serviceaccount=kube-system:kube-dashboard-admin-sa
|
||
# 生成token
|
||
kubectl create token kube-dashboard-admin-sa -n kube-system --duration=87600h | tee ~/dashboard_log_token
|
||
# 已生成token
|
||
eyJhbGciOiJSUzI1NiIsImtpZCI6IklJcHoySHJTeUw1bmJweGtZdkNYVUJiUkk0VlMwSDBfRnN5Z0ZPWlhHeHcifQ.eyJhdWQiOlsiaHR0cHM6Ly9rdWJlcm5ldGVzLmRlZmF1bHQuc3ZjLmNsdXN0ZXIubG9jYWwiXSwiZXhwIjoyMDc4NzIwNzM1LCJpYXQiOjE3NjMzNjA3MzUsImlzcyI6Imh0dHBzOi8va3ViZXJuZXRlcy5kZWZhdWx0LnN2Yy5jbHVzdGVyLmxvY2FsIiwia3ViZXJuZXRlcy5pbyI6eyJuYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsInNlcnZpY2VhY2NvdW50Ijp7Im5hbWUiOiJrdWJlLWRhc2hib2FyZC1hZG1pbi1zYSIsInVpZCI6ImQ2MmFjYTllLTY5YTktNGY4Ny1iY2Y5LWE0MGE3ZGJkN2NjMiJ9fSwibmJmIjoxNzYzMzYwNzM1LCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZS1zeXN0ZW06a3ViZS1kYXNoYm9hcmQtYWRtaW4tc2EifQ.hLGSbs_gob8SBkYRQeoY3nBZXsslYmAkxndAt7qMvEkRLVkl8miOuoj5iYbvKsMSzxazP-6H4arCi3k3eR9xLCvmLfte2P0JDCvKr-0FapGevV7uQusKzQTKfIag8CkIs5JN17tsCU5dDAvrwJ6g7hAoPTIccmDcZV6P5AhZrlO0JfXhDBgHyP2n_QFshM-wj_5YwETfJbOnDwEjYEXHviUfGpQQ03LIChKU-vwaG8yrIm7CodnHIE_Bu-9k1Bm2KyDFdVYCpTU_iP2A16zV0590Z9pphSKBbCcxvHCAlkosFE3O-aI9e6SrxieSA02zt-vnoU84li9a6eoLzrbNaA
|
||
```
|
||
|
||
启动命令
|
||
|
||
```shell
|
||
kubectl get svc -n kube-system
|
||
|
||
```
|
||
|
||

|
||
|
||
访问对应的这个地址
|
||
|
||
### 安装mysql
|
||
|
||
```shell
|
||
版本8+
|
||
使用docker 安装 步骤略
|
||
```
|
||
```mysql
|
||
CREATE DATABASE `nacos_config` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `basic-application` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-application` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-application-ota` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-attachment` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-auth` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-base` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-component-design` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-config` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-desk` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-events` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-facade` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-formily-design` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-gateway` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-login` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-message` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-open-platform` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-process-layout` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-risk` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-security` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-system` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-user` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `jjb-saas-view` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
CREATE DATABASE `xxl_job` CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_0900_ai_ci';
|
||
```
|
||
|
||
### 安装redis
|
||
|
||
```shell
|
||
版本6.2
|
||
使用docker 安装步骤略
|
||
```
|
||
|
||
### 安装minio
|
||
|
||
```shell
|
||
版本 RELEASE.2023-09-04T19-57-37Z
|
||
使用docker 安装步骤略
|
||
```
|
||
|
||
### 安装rocketmq
|
||
|
||
[请至钉钉文档查看附件《rocketmq\_install\_for\_k8s.sh》。](https://alidocs.dingtalk.com/document/preview?chInfo=im&cid=130587771:1935297177&dentryKey=g08Ok5gnh0MaBZlL&docKey=4jKqm0bQMz18Gnw1&dontjump=true&iframeQuery=anchorId%3DX02mi2v18z1w5j7bcw6raj&type=d&utm_medium=im_card&utm_source=im)
|
||
|
||
### 安装nacos
|
||
|
||
初始库
|
||
|
||
[请至钉钉文档查看附件《config\_info.sql》。](https://alidocs.dingtalk.com/document/preview?chInfo=im&cid=130587771:1935297177&dentryKey=g08Ok5gnh0MaBZlL&docKey=4jKqm0bQMz18Gnw1&dontjump=true&iframeQuery=anchorId%3DX02mi3zdnnrlxfb4gh01i&type=d&utm_medium=im_card&utm_source=im)
|
||
|
||
[请至钉钉文档查看附件《nacos.yml》。](https://alidocs.dingtalk.com/document/preview?chInfo=im&cid=130587771:1935297177&dentryKey=g08Ok5gnh0MaBZlL&docKey=4jKqm0bQMz18Gnw1&dontjump=true&iframeQuery=anchorId%3DX02mi3zdxg68r1npwfsah4&type=d&utm_medium=im_card&utm_source=im)
|
||
|
||
[请至钉钉文档查看附件《ns.yml》。](https://alidocs.dingtalk.com/document/preview?chInfo=im&cid=130587771:1935297177&dentryKey=g08Ok5gnh0MaBZlL&docKey=4jKqm0bQMz18Gnw1&dontjump=true&iframeQuery=anchorId%3DX02mi3zdxh83vezy07zqx7&type=d&utm_medium=im_card&utm_source=im)
|
||
|
||
[请至钉钉文档查看附件《cm.yml》。](https://alidocs.dingtalk.com/document/preview?chInfo=im&cid=130587771:1935297177&dentryKey=g08Ok5gnh0MaBZlL&docKey=4jKqm0bQMz18Gnw1&dontjump=true&iframeQuery=anchorId%3DX02mi3zdxicg8ozc5vz9yr&type=d&utm_medium=im_card&utm_source=im)
|
||
|
||
[请至钉钉文档查看附件《cm-1.yml》。](https://alidocs.dingtalk.com/document/preview?chInfo=im&cid=130587771:1935297177&dentryKey=g08Ok5gnh0MaBZlL&docKey=4jKqm0bQMz18Gnw1&dontjump=true&iframeQuery=anchorId%3DX02mi3zdxjlfb29uvxq9z&type=d&utm_medium=im_card&utm_source=im)
|
||
|
||
四个配置文件放到服务器上
|
||
|
||
先执行
|
||
|
||
```bash
|
||
# 初始化配置文件
|
||
kubectl apply -f ns.yml
|
||
kubectl apply -f cm.yml
|
||
kubectl apply -f cm-1.yml
|
||
kubectl apply -f nacos.yml
|
||
# 查看pod 节点
|
||
kubectl get pods -A
|
||
# 查看日志
|
||
kubectl logs -f -n jjb-dragon <新的prod-nacos-pod-name>
|
||
# 修改 pod配置
|
||
# 删除 pod节点
|
||
kubectl delete pod <pod-name> -n <namespace>
|
||
```
|
||
|
||
安装xxljob
|
||
|
||
### 部署底座应用
|
||
|
||
```shell
|
||
kubectl create secret docker-registry image-pull-secret \
|
||
--docker-server=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com \
|
||
--docker-username=gbs镜像仓库账号 \
|
||
--docker-password='gbs镜像仓库密码' \
|
||
-n jjb-dragon
|
||
```
|
||
|
||
现有镜像地址有问题,不可信,待更新。
|
||
|
||
插入链接
|
||
|
||
```shell
|
||
helm upgrade -i jjb-saas-gateway --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/prod-aly-ota-dragon-jjb-saas-gateway:oat-20251015-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=true --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30140 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-user --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-user:wbyw-20251010-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-system --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-system:wb-20250904-4 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-config --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-config:wb-20250904-4 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-auth --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/prod-aly-ota-dragon-jjb-saas-auth:ota-20251118-2 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-attachment --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-attachment:wb-20250904-2 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-desk --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-desk:wb-20250904-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-application --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-application:wb-20251011-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-facade --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-facade:wb-20250904-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-message --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-message:wb-20251021-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-base --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-base:wb-20251016-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-formily-design --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-formily-design:wb-20250904-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-login --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-login:wb-20250904-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-official --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-official:wb-20250904-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-security --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-security:wb-20250904-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-open-platform --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-open-platform:wb-20250904-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-netty-server --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/wbyw-dragon-jjb-saas-netty-server:wb-20251010-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-events --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/prod-aly-ota-dragon-jjb-saas-events:ota-20251017-2 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-process-layout --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/prod-aly-ota-dragon-jjb-saas-process-layout:ota-20250926-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-data-center --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/prod-aly-ota-dragon-jjb-saas-data-center:ota-20251111-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-bpm --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/prod-aly-ota-dragon-jjb-saas-bpm:ota-20251111-2 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
helm upgrade -i jjb-saas-component-design --set Replicas=1 --set Cmd_args[0]='-Dnacos.namespace=jjb-dragon' --set Cmd_args[1]='-Dnacos.url=prod-nacos:8848' --set Cmd_args[2]='-Dspring.profiles.active=prod' --set Image=jjb-registry-registry.cn-hangzhou.cr.aliyuncs.com/ali_img_ns/prod-aly-ota-dragon-jjb-saas-component-design:ota-20251111-1 --set LimitsCpu=1 --set LimitsMemory=1024M --set RequestsCpu=0.3 --set RequestsMemory=128M --set nodeportOn=false --set ServicePortMap[0].name=app --set ServicePortMap[0].port=80 --set ServicePortMap[0].nodePortNum=30080 --set HealthyCheck=false --set HeathycheckPort=80 --set HealthyCheckpath=/heartbeat --set hpaON=false --set hpaMinRelicas=1 --set hpaMaxRelicas=3 --set hpacpulimit=85 --set hpamemlimit=85 --set logsidecarOn=false --set esHost=127.0.0.1 --set sidecarLimitsCpu=0.3 --set sidecarLimitsMemory=128M --set sidecarRequestsCpu=0.1 --set sidecarRequestsMemory=56M --set logPathdir=/opt/logs --set logfileRegex=*all_log.log --set nodeSelectorOn=false --set nodeLS.kubernetes.io/hostname=k8s-work01 jjb-prod/jjb-java-app -n jjb-dragon
|
||
```
|
||
```shell
|
||
auth_terminal_login_page_config
|
||
终端地址配置表
|
||
```
|
||
```java
|
||
kubectl create secret docker-registry image-pull-secret1 \
|
||
--docker-server=registry.cn-zhangjiakou.aliyuncs.com \
|
||
--docker-username=gbs镜像仓库账号 \
|
||
--docker-password='gbs镜像仓库密码' \
|
||
-n jjb-dragon
|
||
``` |