Weave GitOps - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Weave GitOps

Weave GitOps は、GitOps という用語を導入した会社である Weaveworks によって開発されました。このツールは、GitOps の基本原則に基づく包括的な GitOps ソリューションを提供します。

GitOps のサポート

[面積] ツール機能

信頼できる唯一のソースとしての Git

Weave GitOps は、システムの望ましい状態を定義するための信頼できるソースとして Git リポジトリを使用します。アプリケーションマニフェスト、インフラストラクチャ定義、ポリシーを含むすべての設定は Git に保存されます。

宣言型設定

システムは、システム状態全体の宣言的な説明に依存します。これらの説明は通常、Kubernetes マニフェスト、Helm チャート、またはその他の宣言形式です。

自動同期

Weave GitOps は Git リポジトリの変更を継続的にモニタリングします。変更を検出すると、自動的にターゲット環境に適用されます。

Kubernetes ネイティブアーキテクチャ

Weave GitOps は、一連の Kubernetes コントローラーとカスタムリソースとして構築されています。Kubernetes の拡張機能メカニズムを使用して GitOps 機能を提供します。

継続的な調整

このツールは、クラスターの実際の状態を Git で定義されている目的の状態と常に比較します。これらの状態間で検出されたドリフトは自動的に修正されます。

マルチクラスター管理

Weave GitOps は、単一のコントロールプレーンからの複数の Kubernetes クラスターの管理をサポートします。これにより、さまざまな環境間で一貫したアプリケーションデプロイが可能になります。

コードとしてのポリシー

Weave GitOps には、セキュリティおよびコンプライアンスルールを適用するためのコードとしてポリシーの概念が組み込まれています。ポリシーは、アプリケーションコードとインフラストラクチャ定義とともにバージョン管理されます。

プログレッシブ配信

このツールは、Canary リリースや Blue/Green デプロイなどの高度なデプロイ戦略をサポートします。これは、自動化されたプログレッシブデリバリーのために Flagger と統合されます。

オブザーバビリティとダッシュボード

Weave GitOps には、アプリケーションとクラスターの状態をモニタリングするためのダッシュボードが組み込まれています。調整プロセスとクラスターの状態に関するインサイトを提供します。

設計による保護

このツールは、RBAC 統合やシークレット管理などのセキュリティのベストプラクティスを実装します。さまざまな認証方法をサポートし、エンタープライズ ID プロバイダーと統合します。

拡張性と統合

このツールは、さまざまなクラウドネイティブツールで動作するように設計されています。Flux、Helm、Kustomize などの一般的なツールをサポートしています。

セルフサービス開発者プラットフォーム

Weave GitOps を使用すると、開発者向けのセルフサービスプラットフォームを作成できます。アプリケーションデプロイ用のテンプレートとガードレールを提供します。

GitOps オートメーション

このツールは、更新のプルリクエストの生成など、GitOps ワークフローの多くの側面を自動化します。

継続的デリバリーパイプライン

CI/CD システムと統合してend-to-endの配信パイプラインを作成します。

監査とコンプライアンス

Weave DevOps は、すべての変更とアクションの完全な監査証跡を提供します。バージョン管理と自動プロセスを通じてコンプライアンス要件を満たすのに役立ちます。

スケーラビリティ

このツールは、小規模なプロジェクトから大規模なエンタープライズグレードのデプロイにスケールするように設計されています。

チームコラボレーション

Weave GitOps は、Git ベースのワークフローを通じて開発チームと運用チーム間のコラボレーションを容易にします。

サービスとしての GitOps

このツールはGitOps をマネージドサービスとして提供し、導入と管理を簡素化します。

ハイブリッドおよびマルチクラウドのサポート

Weave GitOps は、さまざまなクラウドプロバイダーやオンプレミス環境間で一貫した管理を可能にします。

継続的なセキュリティ

このツールは、デプロイプロセス全体でセキュリティスキャンとポリシーの適用を統合します。

Weave GitOps は、基本的なデプロイ自動化を超える包括的な GitOps ソリューションを提供するために、これらの原則を実装しています。これは、セキュリティ、スケーラビリティ、使いやすさに焦点を当てたクラウドネイティブアプリケーションの完全な運用モデルを作成することを目的としています。これらの GitOps の原則に従うことで、Weave GitOps は、組織が複数のクラスターやクラウドプロバイダーで Kubernetes 環境を一貫して、監査可能で、効率的に管理できるようにします。

詳細については、「Weave GitOps ドキュメント」を参照してください。

アーキテクチャ

次の図は、EKS クラスター内で Weave GitOps を使用する GitOps 駆動型 CD ワークフローを示しています。詳細については、「Weave GitOps リポジトリ」を参照してください。

GitOps のアーキテクチャとワークフローを織り込んでいます AWS。

各パラメータの意味は次のとおりです。

  • ステップ 1: プルリクエスト (PR) マージ。開発者は、Git リポジトリに保存されている Kubernetes マニフェストまたは Helm チャートに変更をコミットします。PR がレビューされ、メインブランチにマージされると、アプリケーションの望ましい状態がソース管理で更新されます。

  • ステップ 2: リポジトリ同期。Weave GitOps は EKS クラスターの Flux 名前空間内で実行され、設定された Git リポジトリを継続的にモニタリングします。変更が検出されると、最新の更新がプルされ、宣言された状態が調整されます。

  • ステップ 3: ターゲット名前空間へのデプロイ。Weave GitOps は、Git からの目的の状態をクラスター内のライブ状態と比較します。次に、ターゲットワークロード名前空間に必要な変更を適用し、それに応じてアプリケーションをデプロイまたは更新します。