Fabricは直列、Capistranoは並列
Fabric でも Capistrano でも
run("echo stop")
run("echo modify")
run("echo start")
っていう感じで書けるんですが、複数サーバで実行する場合の順序が全然違うので要注意です。ロードバランサから外して、更新して、戻すなんてことを考えてると、Capistrano で死にます。
Fabric の場合:
- サーバAをロードバランサから外す
- サーバAを更新する
- サーバAをロードバランサに戻す
- サーバBをロードバランサから外す
- サーバBを更新する
- サーバBをロードバランサに戻す
Capistrano の場合:
- サーバAをロードバランサから外す
- サーバBをロードバランサから外す
- サーバAを更新する
- サーバBを更新する
- サーバAをロードバランサに戻す
- サーバBをロードバランサに戻す
Capistrano で Fabric の実行順序にするきれいな方法があればいいんですが。きれいな、というからには、汚い方法はあって、Can Capistrano Execute Tasks on Hosts Consecutively? - Stack Overflow にいくつかの解決策が示されています。でもなー、これ cap っぽくないよなー、うーん。
Author And Source
この問題について(Fabricは直列、Capistranoは並列), 我々は、より多くの情報をここで見つけました https://qiita.com/rch850/items/a8d66a049911b061a195著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .