云原生工具
cloud-specific-tools、eso。
25 分钟
云原生工具
云平台与 Kubernetes 生态提供大量 平台级工具:External Secrets Operator(ESO)、Cloud Provider IAM、CSI 驱动、Config Sync 等,用于把 云 API 能力 安全地注入集群与 CI。本课覆盖 /roadmaps/devops 的 cloud-specific-tools 与 secret-management 交叉节点,衔接 devops-cloud-essentials 的机密管理、kubernetes-essentials 的 Secret/ConfigMap,以及 terraform-essentials 创建的 IAM 角色。
学习目标
- 理解 External Secrets Operator(ESO) 如何把 Azure Key Vault / AWS Secrets Manager 同步为 K8s Secret
- 熟悉 Cloud Controller Manager、CSI、Workload Identity 等平台集成组件职责
- 为 CodeRoadMap 设计「密钥不落 Git、不进镜像」的多云方案
External Secrets Operator
ESO 通过 ExternalSecret CRD 从外部机密 store 拉取数据,生成原生 Secret:
# SecretStore — 指向 Azure Key Vault
apiVersion: external-secrets.io/v1beta1
kind: SecretStore
metadata:
name: azure-kv-store
namespace: coderoadmap
spec:
provider:
azurekv:
vaultUrl: "https://kv-coderoadmap-prod.vault.azure.net"
authType: WorkloadIdentity
serviceAccountRef:
name: backend-sa
# ExternalSecret — 同步 MySQL 连接串
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: backend-db-credentials
namespace: coderoadmap
spec:
refreshInterval: 1h
secretStoreRef:
name: azure-kv-store
kind: SecretStore
target:
name: backend-db-credentials
creationPolicy: Owner
data:
- secretKey: SPRING_DATASOURCE_URL
remoteRef:
key: mysql-connection-string
- secretKey: SPRING_DATASOURCE_PASSWORD
remoteRef:
key: mysql-password
# Deployment 引用 — 与普通 Secret 无异
envFrom:
- secretRef:
name: backend-db-credentials
其他云原生平台工具
| 工具 | 作用 |
|---|---|
| Cluster Autoscaler | 节点池按 Pending Pod 自动扩缩 |
| Metrics Server / HPA | 应用层水平伸缩 |
| CSI Secret Store Driver |