mcpField
P
platform-engineer

platform-engineer

github.com/404kidwiz云与 DevOps106 次安装
代码仓库

关于 platform-engineer

面向平台工程师的技能,提供内部开发者平台、开发者体验和自助基础设施方面的指导。内容覆盖 Backstage 服务目录、Golden Path 模板、Crossplane 资源抽象及 GitOps。

主要功能

  1. 01设计内部开发者平台
  2. 02构建 Backstage 服务目录与门户
  3. 03创建 Golden Path 模板
  4. 04使用 Crossplane 抽象云资源
  5. 05实施 GitOps 与临时环境
  6. 06衡量 DORA 和 DevEx 指标

适用场景

  1. 01从零规划内部开发者平台
  2. 02为微服务创建标准化模板
  3. 03通过 Crossplane 提供自助云资源
  4. 04改进开发者入职与平台体验

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/404kidwiz/claude-supercode-skills --skill platform-engineer

安装后在 Claude Code 中输入/platform-engineer确认已加载。

详细介绍

平台工程师

目的

提供内部开发者平台(IDP)专业知识,专注于优化开发者体验、自助式基础设施和 Golden Path 模板。使用 Backstage、Crossplane 和 GitOps 构建平台,降低开发者的认知负担。

适用场景

  • 从零开始构建内部开发者平台(IDP)
  • 实施服务目录或开发者门户(Backstage)
  • 为微服务(Spring Boot、Node.js、Go)创建“Golden Path”模板
  • 将云资源(RDS、S3)抽象为自定义平台 API(Crossplane)
  • 设计自助式临时环境
  • 衡量 DORA 指标和开发者体验(DevEx)KPI

示例

示例 1:使用 Backstage 构建开发者门户

场景: 一家中型科技公司希望将开发者入职时间从 2 周缩短至 2 天。

实施方案:

  1. 部署 Backstage 并集成标准功能
  2. 为常见服务类型(Go、Node.js、Python)创建软件模板
  3. 集成 CI/CD(GitHub Actions),实现自动化配置
  4. 构建包含所有权信息和文档的服务目录
  5. 使用 TechDocs 实现集中式文档管理

结果:

  • 新服务创建时间从 2 周缩短至 4 小时
  • 开发者满意度提升 45%
  • 文档覆盖率从 60% 提升至 95%
  • 部署频率提升 3 倍
示例 2:微服务 Golden Path 模板

场景: 微服务平台需要缩短新服务从创建到上线的时间。

实施方案:

  1. 创建嵌入最佳实践的标准化服务模板
  2. 在模板中实施自动化安全扫描
  3. 默认添加可观测性(指标、日志、追踪)
  4. 配置带有安全门禁的 CI/CD 流水线
  5. 提供清晰的文档和示例

结果:

  • 80% 的新服务使用 Golden Path
  • 首次生产部署时间从 2 周缩短至 2 天
  • 自动化安全合规检查(无需人工审核)
  • 开发者生产力得分提升 35%
示例 3:Crossplane 平台 API

场景: 需要让开发者能够配置云资源,而无需直接访问云平台。

实施方案:

  1. 为常见基础设施模式定义 Crossplane XRD
  2. 为数据库、队列、存储桶创建组合资源
  3. 实施带有配额和审批机制的 RBAC
  4. 使用 Backstage 插件构建自助服务门户
  5. 与现有工作流和工具集成

结果:

  • 开发者可在几分钟内配置资源,而非几天
  • 云支出可见性提升(开发者可查看成本影响)
  • 安全态势改善(无需直接访问云控制台)
  • 基础设施工单减少 60%

最佳实践

平台设计
  • 聚合,而非替代:链接到原生工具,不要重新构建它们
  • Golden Path,而非黄金牢笼:提供价值,而非强制使用
  • 开发者体验优先:将开发者视为客户
  • 迭代改进:从小处着手,根据反馈不断迭代
自助服务
  • 快速配置:在几分钟内完成资源配置
  • 清晰的文档:模板和工作流应自带文档
  • 灵活处理机制:在需要时允许手动覆盖
  • 反馈循环:收集并采纳开发者反馈
治理
  • 默认安全:将安全嵌入模板,而非作为附加项
  • 自动化合规:自动执行合规检查
  • 成本可见性:向开发者展示成本影响
  • 审计跟踪:记录所有操作,以便追责
运维
  • 高可用性:平台必须与生产环境同样可靠
  • 监控:监控平台健康状况和采用情况指标
  • 事件响应:为平台问题准备运行手册
  • 持续改进:定期审查平台健康状况


核心能力

内部开发者平台
  • 构建自助式基础设施平台
  • 使用 Backstage 实施服务目录
  • 创建开发者门户和文档中心
  • 管理平台治理和策略
黄金路径模板
  • 开发标准化应用模板
  • 创建基础设施即代码模块
  • 实施安全和合规控制
  • 自动化服务接入
GitOps 和基础设施
  • 使用 ArgoCD/Flux 实施 GitOps 工作流
  • 管理 Kubernetes 集群和运算符
  • 配置 Crossplane,实现云资源抽象
  • 设置临时环境
开发者体验
  • 衡量 DORA 指标和 DevEx KPI
  • 减轻开发者的认知负担
  • 实施内部工具和自动化
  • 管理开发者入职培训和进阶培训


工作流 2:基础设施组合(Crossplane)

**目标:**让开发者无需了解 AWS 细节,即可通过 Kubernetes 清单(YAML)申请 PostgreSQL 数据库。

步骤:

  1. 定义组合资源定义(XRD)

    # postgres-xrd.yaml
    apiVersion: apiextensions.crossplane.io/v1
    kind: CompositeResourceDefinition
    metadata:
      name: xpostgresqlinstances.database.example.org
    spec:
      group: database.example.org
      names:
        kind: XPostgreSQLInstance
        plural: xpostgresqlinstances
      claimNames:
        kind: PostgreSQLInstance
        plural: postgresqlinstances
      versions:
        - name: v1alpha1
          served: true
          referenceable: true
          schema:
            openAPIV3Schema:
              type: object
              properties:
                spec:
                  properties:
                    storageGB:
                      type: integer
    
  2. 定义组合(AWS 实现)

    # aws-composition.yaml
    apiVersion: apiextensions.crossplane.io/v1
    kind: Composition
    metadata:
      name: xpostgresqlinstances.aws.database.example.org
    spec:
      compositeTypeRef:
        apiVersion: database.example.org/v1alpha1
        kind: XPostgreSQLInstance
      resources:
        - base:
            apiVersion: rds.aws.crossplane.io/v1alpha1
            kind: DBInstance
            spec:
              forProvider:
                region: us-east-1
                dbInstanceClass: db.t3.micro
                masterUsername: masteruser
                allocatedStorage: 20
          patches:
            - fromFieldPath: "spec.storageGB"
              toFieldPath: "spec.forProvider.allocatedStorage"
    
  3. 开发者体验

    • 开发者应用以下配置:
      apiVersion: database.example.org/v1alpha1
      kind: PostgreSQLInstance
      metadata:
        name: my-db
        namespace: my-app
      spec:
        storageGB: 50
      
    • Crossplane 自动预配 RDS 实例。


4. 模式与模板

模式 1: “黄金路径”仓库

**使用场景:**集中管理模板。

/templates
  /spring-boot-microservice
    /src
    /Dockerfile
    /chart
    /catalog-info.yaml
    /mkdocs.yml
  /react-frontend
    /src
    /Dockerfile
    /nginx.conf
  /python-data-worker
    /src
    /requirements.txt
模式 2:评分卡(游戏化)

**使用场景:**通过 Backstage 鼓励采用最佳实践。

  • 铜牌级:
    • 包含 catalog-info.yaml
    • 包含 README.md
    • CI 构建通过
  • 银牌级:
    • 代码覆盖率 > 80%
    • 在 Prometheus 中定义告警
    • 存在 Runbook 链接
  • 金牌级:
    • 跟踪 DORA 指标
    • 安全扫描通过(0 个高危/严重问题)
    • 定义 SLO
模式 3:TechDocs(文档即代码)

**使用场景:**让文档与代码保持紧密关联。

# mkdocs.yml
site_name: My Service Docs
nav:
  - Home: index.md
  - API: api.md
  - Architecture: architecture.md
  - Runbook: runbook.md
plugins:
  - techdocs-core


6. 集成模式

kubernetes-specialist:
  • 交接:平台工程师定义抽象的 PostgreSQL claim → Kubernetes 专家实现运算符/驱动程序逻辑。
  • 协作:为 IDP 设计底层集群拓扑。
  • 工具:Crossplane、ArgoCD。
安全工程师:
  • 交接:平台工程师构建模板 → 安全工程师将 SAST/SCA 步骤添加到 CI 骨架中。
  • 协作:在黄金路径中采用“默认安全”配置。
  • 工具:OPA Gatekeeper、Snyk。
SRE 工程师:
  • 交接:平台工程师提供“创建告警”功能 → SRE 定义默认告警规则。
  • 协作:为服务定义 SLI/SLO 模板。
  • 工具:Prometheus、PagerDuty。
后端开发者:
  • 交接:平台工程师提供“创建服务”按钮 → 后端开发者使用它发布代码。
  • 协作:收集关于模板的反馈(“它是不是太臃肿了?”)。
  • 工具:Backstage。

评论

支持 Markdown