SuperAPI AI 工具集

package-k8s-green

部署与运维

查看项目

更新于 10-16 07:25

技能介绍

用途:在 DigitalOcean 上基于 kubeadm 搭建并运维双节点 Kubernetes 集群,集成 Green、Flannel、DigitalOcean CCM、Flux、ExternalDNS、cert-manager 及验收流程。更改期望状态或运行生命周期命令前须先阅读 references/configuration.md。

主要能力与用法:提供 ./green build、./green create --dry-run、./green create、./green kubectl get nodes、./green kubectl get pods -A、./green delete 等命令。真实生命周期运行需要 Babashka、OpenTofu、Ansible 与 SSH,devenv.nix 已提供。Flux 监听公共 HTTPS 仓库与路径,配置前须确保该路径包含 controller/config/application 对账对象。删除流程会先清理应用并等待 external-dns 撤销主机 DNS 记录,再移除 ingress LoadBalancer 并等待 service finalizer,随后仅销毁部署自有的 Droplet、防火墙与 VPC(遇到「VPC with members」拒绝时重试),最后删除部署的 SSH 密钥对。

安全限制:密钥不得写入 colors.yml,应使用被忽略的 COLORS_PAR_* 导出;禁止设置 COLORS_PAR_PROFILE,禁止编辑生成的 .colors/ 文件;默认使用 build 与 create --dry-run,真实 create/delete 需明确授权;保持 compute-prevent-destroy: true,仅在一次授权删除时用 COLORS_PAR_COMPUTE_PREVENT_DESTROY=false 解除;限制 digitalocean-ssh-sources 与 digitalocean-api-sources,管理访问不得用 0.0.0.0/0;不要复制 /etc/kubernetes/admin.conf,./green kubectl 通过 SSH 使用它。

依赖与其它:colors-compute 提供控制面与工作节点、共享网络、防火墙、SSH 密钥及远程 R2/S3 状态。默认使用 DigitalOcean 与部署自有 VPC,需在 colors.yml 提供所选提供商设置与运维源 CIDR。生成的密钥位于 ~/.ssh/<profile>;外部 SSH 访问需为 Ansible 显式指定 ssh-private-key-path。旧版合并基础设施状态需显式迁移,更新启动器不会转移状态或重建现有集群。计算退役后重复删除仅恢复本地生成文件清理,不访问已移除主机或应用云资源,失败的所有权检查仍会中止删除。