要件は次のとおりです。
1。高可用性
2。負荷分散
最初の構成
1。 2つのLinuxサーバーがそれぞれ1つの静的IPで構成されています:10.17.243.11、10.17.243.12
2。 Keepalivedは、1つの仮想IP(VIPとして10.17.243.10、マスターとして10.17.243.11、バックアップとして10.17.243.12)を提供する1つのVRRPインスタンスでインストールおよび構成されています。
3。すべてが正常に動作します。 VIPは、稼働している限りマスターサーバー(10.17.243.11)に割り当てられます。マスターサーバーがダウンするとすぐに、VIPバックアップサーバー(10.17.243.12)に割り当てられます。
4。ここでの問題は、すべての通信がマスターサーバーに送信されることです。
2番目の構成
1。複数のVRRPインスタンスを定義することで可能なKeepalivedのアクティブ-アクティブ構成を見つけました。そのため、両方のサーバーに2つのIPがあります(サーバー#1の場合は実数10.17.243.11と仮想10.17.243.10、サーバー#2の場合は実数10.17.243.12と仮想10.17.243.20)。
2。すべてが正常に動作します。アクセス可能な2つのVIPがあります(HA)。ただし、各IPに送信されるすべての通信は、1台のマシン(IPに応じてサーバー#1または#2)に送信されます。しかし、私はこの制限を克服するためにDNSにいくつかのトリックを見つけました。しかし、私たちの場合は受け入れられません。
- 質問:
両方のサーバーに1つの仮想IPを割り当てる方法はありますか?つまり、両方のサーバーがワークロードの一部を処理しているということです(Webサーバーの負荷分散で行うことのように)? keepalivedまたは他のツールを使用することによって?
前もって感謝します。
いくつかの調査の結果、IPTABESのCLUSTERIP拡張がこの目的に役立つことがわかりました。ただググってください。
私にとって、最初は、システムを構成して起動するのが少し難しかったです。しかし、最終的には、MichaelSchwartzkopffによるPDFドキュメントに基づいています。残念ながら、Web上のリンクを忘れてしまいました。ただし、念のためにドキュメントを持っています。詳細については、別のドキュメントが役立つ場合があります。この点に関する私の質問: