CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
DevOps 配置与平台/课时/云原生工具
RawBlame
课时目录12 节

DevOps 配置与平台

  1. 01配置管理概览
  2. 02Chef 与 Salt
  3. 03Puppet
  4. 04OpenShift
  5. 05Azure 平台
  6. 06云原生工具
  7. 07操作系统发行版
  8. 08平台搭建方法论
  9. 09代理与负载均衡
  10. 10云函数
  11. 11数据与平台设计
  12. 12综合练习

云原生工具

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
挂载机密为 Volume(替代 env 注入)
CrossplaneK8s 原生 CRD 管理云资源(与 Terraform 互补)
Argo CD / FluxGitOps 持续交付平台配置
# HPA 示例 — CodeRoadMap backend
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
  name: backend-hpa
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: coderoadmap-backend
  minReplicas: 2
  maxReplicas: 10
  metrics:
    - type: Resource
      resource:
        name: cpu
        target:
          type: Utilization
          averageUtilization: 70

设计原则

  1. 单一可信源:Key Vault / Secrets Manager 为权威,K8s Secret 为缓存
  2. 最小权限:Workload Identity / IRSA,禁止长期 Access Key
  3. 轮换自动化:ESO refreshInterval + 应用支持热重载或滚动重启
  4. 与 IaC 分工:Terraform 创建 Vault 与 IAM;ESO 负责运行时同步

练习

  • 为 CodeRoadMap 画 ESO 数据流:Key Vault → ExternalSecret → Pod env
  • 对比 CSI Secret Store 挂载与 ESO env 注入在「密钥轮换、应用改造量」上的差异
  • 在 /roadmaps/devops 标注 secret-management 与 cloud-specific-tools,列出至少 3 个本课工具

小结

云原生平台工具把云的 IAM、机密、存储 API 以 K8s 原生方式接入集群。 ESO 是多云 Secret 同步的事实标准之一。下一课回到 操作系统发行版,理解 RHEL/BSD 家族对平台选型的影响。

加载本节练习…
← 上一课Azure 平台下一课 →操作系统发行版