現在、CIシステムとしてJenkinsを使用しており、1つのマスターサーバーとスレーブがOpenstackのSaltstackによってプロビジョニングされています。 Jenkinsマスターサーバーがダウンした場合、新しいマスターを作成し、古いマスターからファイルを取得して新しいファイルに入れる必要がありますが、少なくとも30分かかります。
Jenkinsを高可用性でセットアップする方法はありますか?
すでに Gearman Plugin で確認していますが、何らかの理由でGearmanサーバーがダウンした場合は、GearmanのHAもセットアップする必要があります。
Jenkinsの高可用性をセットアップする他の方法はありますか?
Jenkinsには素晴らしいHAストーリーはありません。オープンソースバージョンでできる最善の方法は、すべてのファイルを共有ファイルシステムの$ JENKINS_HOMEに配置し、アクティブマスターがダウンした場合に起動できるコールドスタンバイマスターマシンを用意することです。これにより、マスターの再起動にかかる時間(通常は数分)にフェールオーバー時間が短縮されます。
高可用性プラグイン を含むCloudBeesのJenkins Enterprise製品もご覧ください。
cluster from scratch doc を使用して、Jenkins WAN-HAアクティブ/パッシブクラスターを作成します。添付の Pacemakerを使用したJenkins HAのアーキテクチャ図 を参照してください。
/etc/init.d/jenkins
は、ocfエージェントスクリプトに変換する必要があります。現在、systemd
経由でJenkinsを手動で起動していますpcmk-2
サーバーpcmk-1
ダウンしています。