node.js アプリケーションの cloudfoundry での Blue/Green デプロイを自動化するツールはありますか? Cloudfoundry gradle プラグイン ( https://github.com/cloudfoundry/cf-java-client/tree/master/cloudfoundry-gradle-plugin ) を試しましたが、存在しない jar/war ファイルを含むファイル パラメーターが必要ですノードアプリ。Cloudfoundry でノード アプリのブルー/グリーン デプロイをどのように自動化しますか?
2 に答える
Bluemix のドキュメントには、ブルー/グリーン ゼロ ダウンタイム デプロイ (A/B デプロイとも呼ばれます) に影響を与える方法に関する簡単なチュートリアル [1] が含まれています。このチュートリアルでは、2 つのアプローチを提供します。「cf map-route」コマンドと「cf unmap-route」コマンドを使用して、アプリの 2 つのバージョンでルートを共有できるようにする 2 つ目の方法をお勧めします。自分だけが知っているルートを使用して、新しいバージョンを展開します。テストして期待どおりに動作していることを確認してから、元のルートを新しいバージョンにマップして、アプリの古いバージョンと新しいバージョンが同じルートを共有するようにします。両方のバージョンを同じルートにマップした後、古いバージョンを (ゼロ インスタンスに) スケールダウンし、もう一方をスケールアップできます。インスタンスをスケールダウンすると、エラスティック ランタイムは、インスタンスを終了する前にアクティブなリクエストを確実に静止させます。
Tim Spann によるこのチュートリアル [2] も説明に非常に優れており、Matt Stine によって投稿された別の優れたソースを参照しています。
これは、cloudfoundry.org Web アプリのブルー/グリーン デプロイに影響を与えるために必要な自動化の例 [3] です。うまくいけば、ニーズに合わせて再利用できます。
自動化を含み、Blue/Green デプロイメントの自動化を IBM DevOps Services に統合する方法を説明する別の優れたチュートリアル [4]。
[1] https://www.ng.bluemix.net/docs/#manageapps/index-gentopic3.html#genTopProcId4
[2] http://www.cloudfoundry.rocks/blue-green-deployment-with-cloudfoundry/
[3] https://github.com/cloudfoundry/cloudfoundry.org/blob/master/publish.sh