Install
openclaw skills install boc-deploy博云BOC容器平台 部署工具。根据部署规划信息自动生成配置文件并执行部署。使用场景:用户需要部署 BOC容器平台时使用,包括生成 config.yaml、执行 bocctl run、监控部署状态。
openclaw skills install boc-deploy自动化完成 BOC容器平台 的部署阶段(配置文件生成 → 部署执行 → 状态验证)。
| 参数 | 说明 | 必填 | 示例 |
|---|---|---|---|
| deploy_server_ip | 部署机IP | 是 | 10.50.6.181 |
| ssh_port | SSH端口 | 否 | 22 |
| ssh_user | SSH用户名 | 是 | root |
| ssh_password | SSH密码 | 是 | Password |
| ci_ip | CI节点IP | 是 | 10.50.6.182 |
| node_ips | BOC节点IP列表(逗号分隔) | 是 | 10.50.6.183,10.50.6.184,10.50.6.185 |
| master_vip | K8s Master VIP | 是 | 10.50.6.186 |
| cni_type | CNI类型 | 否 | ipip (默认) 或 bgp |
| k8s_version | Kubernetes版本 | 否 | 1.33.1 (默认) |
| 角色 | 说明 |
|---|---|
| deploy_server | 部署机 |
| pipeline | CI节点 |
| chartmuseum | Chart仓库 |
| docker_registry | Docker镜像仓库 |
| nfs_server | NFS存储 |
| master | K8s master节点 |
| etcd | etcd节点 |
| db | 数据库节点 |
| node | K8s worker节点 |
验证方法:在部署机上执行以下命令检查容器状态:
nerdctl -n k8s.io ps -a
预期结果:应看到两个运行中的容器
yum_registry - 运行中bocloud_deploy_registry_k8s - 运行中如果容器未运行,需要先用skill boc-init 进行初始化:
cd /opt/BOC_k8s_noarch
./bocctl init
根据输入参数生成 config.yaml,包含:
配置文件示例:
高可用部署示例文件: /opt/BOC_k8s_noarch/playbooks/examples/config/install_portal_HA.yaml ALLINONE 部署示例文件: /opt/BOC_k8s_noarch/playbooks/examples/config/install_portal_allinone.yaml
将生成的 config.yaml 上传到部署机的 /root/config.yaml
cd /opt/BOC_k8s_noarch
nohup ./bocctl run -a install -c /root/config.yaml > log/bocctl.log 2>&1 &
部署过程约 40-60 分钟。
每5分钟检查一次进度:
# 检查进程数
ps aux | grep -E "bocctl|ansible" | grep -v grep | wc -l
# 查看日志
tail -100 /opt/BOC_k8s_noarch/log/bocctl.log
直接连接 master 节点验证
# 从本机直接连接 master 节点
ssh root@<master节点IP>
# 检查节点状态
kubectl get nodes
# 检查 Pod 状态
kubectl get pods -A
预期结果:
ReadyRunning使用浏览器访问:
http://<master_vip>:30001
常用服务端口:
| 服务 | 地址 |
|---|---|
| BOC Portal | http://<master_vip>:30001 |
| K8s API Server | https://<master_vip>:6443 |
| Grafana | http://<master_vip>:30902 |
| Prometheus | http://<master_vip>:30909 |
请使用 boc-deploy 部署 BOC容器平台:
- 部署机IP:10.50.6.181
- SSH用户:root
- SSH密码:Password
- CI节点IP:10.50.6.182
- BOC节点IP:10.50.6.183,10.50.6.184,10.50.6.185
- VIP:10.50.6.186
- CNI类型:ipip
nerdctl 容器已运行A: 可能 SSH 互信未配置完成,直接从本机使用密码连接 master 节点验证
A: 检查具体 Pod 状态 kubectl describe pod <pod-name> -n <namespace>
A: 检查 kube-proxy 和 bocloud 组件是否正常运行