2つのubuntuサーバーでucarpを動作させています。 Apache、Postfix、DovecotはHAモードで動作しているため、一方のホストがダウンすると、もう一方のホストが自動的に引き継ぎます。
私の最初の問題は、スレーブをマスターに手動で昇格させる方法がわからないことです。
2つ目は、ucarp-advskewが何をするかです。問題は、ucarpについてもっとどこで読むことができるかわからないことです。設定方法のガイドを読んだだけですが、制御方法がわかりません。詳細設定は何ですか。
編集:いくつかのタイプミス
私はkeepalivedを使用していて、ucarpについてあまり知りませんが、常にマスターインターフェイスを無効にしてきました。それは奴隷に引き継ぐことを強制します。スレーブをマスターにしたい場合は、スレーブを再構成してサービスを再起動します。次に、古いマスターをスレーブとして再構成し、サービスを再起動して、インターフェイスを有効にします。
次の引用テキストは、advskewパラメーターの機能を説明するのに役立つ場合があります。
"advskew:このオプションのパラメーターは、CARPアドバタイズメントを送信するときにadvbaseをスキューする量を指定します。advskewを操作することにより、マスターCARPホストを選択できます。数値が大きいほど、マスターを選択するときにホストの優先度が低くなります。デフォルトは0.許容値は0から254です。」 - http://www.openbsd.org/faq/pf/carp.html
"... CARPノードがマスターであると見なすまでの時間を計算するには、3 *(advbase +(advskew/255))を計算します" - http://kerneltrap.org/node/5607
したがって、3つのホストがあり、1つのマスターと2つのスレーブがあり、スレーブは次のように構成されている場合。
スレーブ1-3 * 1 +(10/255)= 3.117秒
スレーブ2-3 * 1 +(20/255)= 3.235秒
そうすると、slave1はアドバタイズする頻度が高くなるため、slave2の前に常にマスターになります。何らかの理由でslave1がダウンした場合、slave2がマスターになります。
私の最初の問題は、スレーブをマスターに手動で昇格させる方法がわからないことです。
次の手順を実行することで、マシンの1つにマスターからスレーブに降格するように指示できます。
killall -USR2 ucarp
マスターで。
例えば:
/opt/... /scripts/network/ucarp off
Linuxではucarpを使用していませんが、BSDランドでは、プライマリのcarpインターフェイスを停止するのと同じくらい簡単で、バックアップによってcarpインターフェイスがマスターに昇格します。