EXERCISE 90分

ストーリー

田中VPoE
Golden Path設計、テンプレート戦略、ガードレール、Compliance as Code。プラットフォームの品質を支える仕組みを一通り学んだ。CloudOps社の具体的な設計を行ってもらう
あなた
自由と統制のバランスを具体的に設計するんですね
田中VPoE
そうだ。CloudOps社の8チーム60名の開発者が、安全かつ迅速にサービスを構築・運用できる仕組みを設計してくれ。過度な制約はイノベーションを殺し、制約なしはカオスを生む
あなた
ちょうどいい塩梅を見つけるのが難しそうです
田中VPoE
だからデータに基づいて設計する。どのポリシーを「推奨」にし、どれを「強制」にするか。根拠を持って判断してくれ

ミッション概要

項目内容
演習タイトルGolden Pathとガードレールの設計
想定時間90分
成果物Golden Path設計書 + ガードレールポリシー一覧
対象組織CloudOps社(Step 1から継続)

Mission 1: Golden Pathの設計

要件

CloudOps社のGolden Pathを領域ごとに設計してください。

  1. 8つの領域(言語、フレームワーク、DB、CI/CD、監視、コンテナ、シークレット、ネットワーク)でGolden PathとOff-Roadを定義する
  2. 各Golden Pathの採用インセンティブを設計する
  3. 成功メトリクスと目標値を定義する
解答例

Golden Path定義

領域Golden PathOff-Roadガードレール
言語TypeScriptPython, Goなし
フレームワークNestJS(API), Next.js(Web)Express, FastAPIなし
DBPostgreSQL(Prisma) + RedisMySQL, MongoDB(承認制)管理外DB接続禁止
CI/CDGitHub Actions + Argo CDなしデプロイは必ずGitOps経由
監視Datadog(標準テンプレート)カスタム設定production SLO必須
コンテナ標準ベースイメージカスタム(スキャン必須)rootユーザー禁止
シークレットVaultなしハードコード禁止
ネットワーク自動NetworkPolicyカスタム(承認制)デフォルトallow禁止

採用インセンティブ

インセンティブ方法
速度Golden Path使用で新規サービス作成が10分(Off-Roadは3日)
自動化CI/CD、監視、セキュリティスキャンが全自動設定
サポートGolden Path使用サービスはプラットフォームチームが優先サポート
スコアヘルススコアでGolden Path準拠がボーナスポイント

成功メトリクス

メトリクス目標値
Golden Path採用率(新規サービス)80%以上
テンプレート利用率75%以上
Time to First Deploy30分以内
開発者満足度(Golden Path)4.0/5.0以上

Mission 2: ガードレールポリシーの設計

要件

CloudOps社のガードレールポリシーを設計してください。

  1. 最低10個のポリシーを定義する
  2. 各ポリシーの強制力(Enforce/Audit/Warn)を決定する
  3. 代表的なポリシー3つのKyvernoまたはOPA実装を記述する
解答例

ポリシー一覧

#ポリシーカテゴリ強制力ツール
1rootユーザー禁止セキュリティEnforceKyverno
2承認レジストリのみセキュリティEnforceKyverno
3リソースlimits必須運用EnforceKyverno
4ヘルスチェック必須運用EnforceOPA
5シークレットはVault経由セキュリティEnforceOPA
6production 最低2レプリカ可用性EnforceOPA
7NetworkPolicy必須セキュリティEnforceKyverno
8SLO定義必須(production)運用EnforceOPA
9xlargeリソースは承認制コストAuditOPA
10未使用リソース警告コストWarnカスタム
11依存ライブラリのCritical脆弱性0件セキュリティEnforceTrivy
12ラベル必須(team, environment)運用EnforceKyverno

Kyverno実装例: rootユーザー禁止

apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
  name: disallow-root-user
spec:
  validationFailureAction: Enforce
  rules:
    - name: check-runAsNonRoot
      match:
        any:
          - resources:
              kinds: ["Pod"]
      validate:
        message: |
          rootユーザーでの実行は禁止です。
          修正方法: securityContext.runAsNonRoot: true を設定
          参照: https://wiki.cloudops.io/security/non-root
        pattern:
          spec:
            containers:
              - securityContext:
                  runAsNonRoot: true

Mission 3: Compliance as Codeの設計

要件

CloudOps社のCompliance as Code体制を設計してください。

  1. コンプライアンスダッシュボードの構成を設計する
  2. Golden Pathによる自動準拠の対応表を作成する
  3. 監査レポートの自動生成フローを設計する
解答例

コンプライアンスダッシュボード

ビュー指標更新頻度
エグゼクティブ全社準拠率、Critical違反数、トレンド日次
チームチーム別準拠率、違反Top5、改善提案リアルタイム
サービス個別準拠状況、チェック結果詳細、修正ガイドリアルタイム

Golden Pathによる自動準拠

要件手動の場合Golden Pathの場合
TLS暗号化Ingress設定を手書きtls: trueで自動
監査ログロガー設定@cloudops/loggerで自動
脆弱性スキャンSASTツール設定CI/CDテンプレートに組込済
ネットワーク分離NetworkPolicy手書きApplication CRDから自動生成
バックアップRDS設定を手動DBカタログで自動

監査レポート自動生成フロー

  1. 日次: 全ポリシーの自動チェック結果を収集
  2. 週次: 違反サマリーをSlackで通知
  3. 月次: コンプライアンスレポートをPDFで自動生成
  4. 四半期: 監査用エビデンスパッケージを自動生成

達成度チェック

観点達成基準
Golden Path8領域でGolden Path/Off-Road/ガードレールが定義されている
ガードレール10個以上のポリシーが定義され、実装例がある
Compliance as Codeダッシュボード、自動準拠、監査レポートが設計されている
バランス自由と統制のバランスが根拠に基づいて設計されている
UXエラーメッセージに「理由」と「修正方法」が含まれている

推定所要時間: 90分