IT用語: GitOpsとは|Gitをインフラ・デプロイの唯一の真実として使う手法
Gitリポジトリの状態をインフラの望ましい状態として、差分を自動的に本番環境に反映するGitOpsの仕組みを解説。
GitOpsとは
GitOpsは「Gitリポジトリをインフラ・アプリケーションの望ましい状態の唯一の真実(Single Source of Truth)として使う」運用手法です。Weaveworksが2017年に提唱しました。Pull Request経由で変更をレビューし、マージされると自動的に本番環境に反映されます。
仕組み
- 開発者がインフラ/アプリの変更をGitにPush
- GitOpsエージェント(ArgoCD・Flux等)がGitの状態と本番環境の差分を検知
- 差分を自動的に本番環境に適用(Reconciliation)
GitOpsのメリット
- 監査ログ: すべての変更がGitのコミット履歴に残る
- ロールバック:
git revertで即座に前の状態に戻せる - セキュリティ: 本番環境へのSSH直接アクセスが不要
KubernetesクラスタとArgoCDを組み合わせた構成が最もよく使われます。
関連する用語 (DevOps)
全58件を見るTerraform
HashiCorpが開発するIaC(Infrastructure as Code)ツール。HCL(HashiCorp Configuration Language)でインフラをコードとして記述し、AWS・GCP・Azureなどのクラウドリソ
ArgoCD
Kubernetesのための宣言的GitOps継続デリバリーツール。Gitリポジトリ上のマニフェストと実際のK8sクラスタの状態を常に同期させる。変更を検知して自動でデプロイする。
DevSecOps
DevOpsのプロセスにセキュリティ(Sec)を統合した開発文化。開発・テスト・デプロイの各フェーズにセキュリティチェックを組み込み、安全なシステムを継続的に提供する。SAST・DAST等のツールが活用される。
サービスメッシュ
マイクロサービス間の通信を管理するインフラ層。サービスディスカバリ・負荷分散・認証・暗号化・可観測性をアプリコードを変更せずにサイドカーパターンで実現する。Istioが代表的。
ELK Stack
Elasticsearch・Logstash・Kibanaの3ツールの組み合わせ。ログの収集(Logstash)・保存・検索(Elasticsearch)・可視化(Kibana)をセットで提供する定番ログ分析基盤。
Istio
Kubernetesで動作するオープンソースのサービスメッシュ実装。Envoyプロキシをサイドカーとして各Podに注入し、トラフィック管理・セキュリティ・可観測性を提供する。