devops-iac-engineer について
DevOps IaC Engineer は、Infrastructure as Code でクラウドインフラを設計、保守する DevOps チーム向けのスキルです。アーキテクチャ、Terraform、Kubernetes、CI/CD、オブザーバビリティ、セキュリティを体系的に案内します。
主な機能
- 01Terraform と IaC の設計ガイダンス
- 02Kubernetes とコンテナオーケストレーションの実践
- 03クラウドプラットフォームとサービス選定の指針
- 04CI/CD パイプラインと GitOps の計画
- 05オブザーバビリティと DevSecOps の実践
- 06インフラ実装のワークフロー
活用シーン
- 01新しいアプリケーション向けのクラウドインフラ設計
- 02コンテナのデプロイとオーケストレーションの計画
- 03CI/CD と GitOps のワークフロー設計
- 04インフラのドリフト、シークレット、クラウドコストへの対応
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ davila7/ claude-code-templates --skill devops-iac-engineerインストール後、Claude Code で/devops-iac-engineerを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
DIRECTORY_STRUCTURE.mdIMPLEMENTATION_GUIDE.mdREADME.mdexamples/kubernetes/complete-app.yamlexamples/pipelines/github-actions.ymlexamples/terraform/main.tfreference/cicd.mdcloud_platforms.mdkubernetes.mdobservability.mdsecurity.mdtemplates.mdterraform.mdscripts/devops_utils.py詳細
DevOps IaCエンジニア
このスキルは、DevOpsチームがInfrastructure as Codeの原則を用いてクラウドインフラストラクチャを設計、実装、保守するのを支援します。クラウドアーキテクチャの構築、コンテナ化されたアプリケーションのデプロイ、CI/CDパイプラインの設定、オブザーバビリティおよびセキュリティの実践を行う際にご利用ください。
クイックナビゲーション
- Terraform & IaC: Terraformのベストプラクティスとパターンについては terraform.md を参照してください
- Kubernetes & コンテナ: コンテナオーケストレーションについては kubernetes.md を参照してください
- クラウドプラットフォーム: AWS、Azure、GCPに関するガイダンスについては cloud_platforms.md を参照してください
- CI/CDパイプライン: パイプライン設計とGitOpsについては cicd.md を参照してください
- オブザーバビリティ: モニタリングとロギングについては observability.md を参照してください
- セキュリティ: DevSecOpsの実践については security.md を参照してください
- テンプレートとツール: すぐに使えるテンプレートについては templates.md を参照してください
基本原則
主要なDevOps用語(全体で統一)
- Infrastructure as Code (IaC): 宣言的なコードファイルを通じてインフラストラクチャを管理すること
- GitOps: インフラストラクチャとアプリケーションの唯一の信頼できる情報源(Single Source of Truth)としてGitを使用すること
- Immutable Infrastructure(イミュータブルインフラストラクチャ): 変更するのではなく、置き換えられるインフラストラクチャコンポーネント
- Service Mesh(サービスメッシュ): サービス間通信のためのインフラストラクチャレイヤー
- Observability(オブザーバビリティ): 外部からの出力(ログ、メトリクス、トレース)を通じてシステムの状態を把握できる能力
- SLI/SLO/SLA: 信頼性のためのService Level Indicator(サービスレベル指標)/Service Level Objective(サービスレベル目標)/Service Level Agreement(サービスレベル合意)
- RTO/RPO: 災害復旧のためのRecovery Time Objective(目標復旧時間)/Recovery Point Objective(目標復旧時点)
ワークフロー:インフラストラクチャの実装
インフラストラクチャを実装する際は、次の構造化されたアプローチに従ってください。
-
要件を理解する
- ビジネス上のニーズは何か?(新規アプリケーション、移行、スケーリング、コンプライアンス)
- スケールの要件は何か?(トラフィック、データ、地理的分散)
- 制約は何か?(予算、スケジュール、規制)
- 依存関係は何か?(既存システム、データソース)
-
アーキテクチャを設計する
- 適切なクラウドプラットフォームおよびサービスを選定する
- 高可用性と耐障害性を考慮して設計する
- ネットワークトポロジーとセキュリティ境界を計画する
- データフローとストレージ要件を特定する
- ダイアグラムでアーキテクチャを文書化する
-
IaCツールを選定する
- マルチクラウドのインフラストラクチャプロビジョニングにはTerraform
- コンテナオーケストレーションにはKubernetesマニフェスト/Helm
- チームと要件に基づいてCI/CDツールを選定する
- 必要に応じて構成管理ツールを選定する
-
インフラストラクチャを実装する
- モジュール化された再利用可能なIaCコードを作成する
- セキュリティのベストプラクティスに従う(security.md を参照)
- 適切な状態管理とバージョン管理を実装する
- 一貫した命名規則とタグ付け規則を使用する
- コードを文書化し、READMEファイルを作成する
-
オブザーバビリティを設定する
- 重要なサービスについてSLIとSLOを定義する
- ロギング、メトリクス、トレーシングを実装する
- ダッシュボードとアラートを作成する
- ログの集約と分析を設定する
- オンコール体制とランブックを計画する
-
CI/CDを実装する
- デプロイメントパイプラインのステージを設計する
- 自動テスト(ユニット、インテグレーション、E2E)を実装する
- GitOpsワークフローを設定する
- デプロイメント戦略(ブルー/グリーン、カナリア)を構成する
- ロールバック手順を実装する
-
テストと検証を行う
- インフラストラクチャのテスト(セキュリティ、コンプライアンス、コスト)を実行する
- 災害復旧訓練を実施する
- 負荷テストとパフォーマンス検証を行う
- セキュリティスキャンと侵入テストを実施する
- テスト結果と改善点を文書化する
-
デプロイしてモニタリングする
- 段階的なロールアウトを実行する
- メトリクスとログを綿密にモニタリングする
- SLOに対して検証する
- ランブックとトラブルシューティングガイドを文書化する
- デプロイ後のレビューを実施する
意思決定フレームワーク:ツールの選択
マルチクラウド要件 → Terraform または Pulumi AWS のみ → Terraform、AWS CDK、または CloudFormation コンテナオーケストレーション → Kubernetes(EKS、GKE、AKS) シンプルなコンテナデプロイ → ECS、Cloud Run、または App Service 構成管理 → Ansible またはクラウドネイティブなソリューション GitOps ワークフロー → ArgoCD または Flux CI/CD パイプライン → GitHub Actions、GitLab CI、または Jenkins
よくある課題と解決策
問題: コードと実環境のインフラストラクチャにドリフトが発生する 解決策: 自動ドリフト検出を導入し、CI/CD で terraform plan を使用し、本番環境への読み取り専用アクセスを有効にし、ステートファイルの整合性を維持します
問題: シークレット管理と認証情報の漏えい 解決策: クラウドネイティブのシークレットマネージャー(AWS Secrets Manager、HashiCorp Vault)を使用し、Git 内の暗号化されたシークレットには SOPS を導入し、IRSA/ワークロード ID を使用します
問題: クラウドコストの高騰と予期しない請求 解決策: タグ付け戦略を導入し、コスト配分タグを使用し、予算アラートを設定し、リソースを適正化し、スポットインスタンスを使用し、自動スケーリングを導入します
問題: Kubernetes 構成の複雑化 解決策: テンプレート化には Helm チャートを使用し、環境ごとの構成には Kustomize を導入し、GitOps のパターンに従い、複雑なワークロードにはオペレーターを使用します
コラボレーションのヒント
- 開発チームとの連携: セルフサービスのプラットフォームを提供し、API をドキュメント化し、インフラストラクチャを再利用可能なモジュールとして共有します
- セキュリティチームとの連携: ポリシーをコードとして実装し、コンプライアンスチェックを自動化し、監査証跡を提供します
- SRE チームとの連携: SLI/SLO を共同で定義し、オンコールの責任を分担し、インシデント対応で協力します
- 財務チームとの連携: コストの可視化を提供し、経費を予測し、チャージバックモデルを導入します
次のステップ
- インフラストラクチャ・アズ・コードを実装する場合は、terraform.md から始めてください
- コンテナオーケストレーションには kubernetes.md を使用してください
- すぐに使える構成については templates.md を参照してください
- モニタリングを設定するには observability.md を確認してください
注意: 変更を実装する前に、必ず現在のインフラストラクチャの状態、セキュリティ要件、およびコンプライアンス要件を確認してください。このスキルはフレームワークとベストプラクティスを提供するものであり、組織固有の要件に合わせて調整する必要があります。