web-dev-qa-db-ja.com

Kubernetes:イメージの更新時にデプロイを検出して自動更新する

同じソフトウェアを実行する必要があるグローバルに分散された複数のKubernetesクラスターを実行しています。このソフトウェアの更新を(プライベートDockerリポジトリにアップロードされたDockerイメージとして)リリースするとき、現在のデプロイメントパイプラインは、既知のデプロイメントのリストを反復処理し、各クラスターに接続し、そこで適切なデプロイメントを更新する必要があります。これは、扱いにくく、壊れやすく、遅く、スケーラブルでないプロセスです。

新しいDockerイメージのバージョンを定期的にチェックするデプロイメントを作成し、変更を検出すると新しいイメージをプルして正しいデプロイメントを更新することで、これを解決する方法を探しています。これは、各クラスターによって個別に実行する必要があるため、各クラスターに接続する中央プロセスや維持するクラスターのリストなどはありません。

すべてのクラスターを同時に更新する必要はありませんが、一元管理を行わずに最終的な整合性を保つことが目的です。

これを行うか、この問題を別の方法で解決する既存のツールはありますか?

3
shevron

ウィーブのフラックスのような音があなたの要件に答えます:

https://github.com/weaveworks/flux

お客様のクラスターの1つにインストールしてあり、問題なく動作します。 Dockerイメージの変更を監視し、再利用を実行します。質問であなたがそれをどのように説明したか正確に。

プロジェクトは少し新しいので、設定は少し面倒かもしれません...しかし、最終的にはうまくいきます!

2
Leonid Mirsky