サーバーの高可用性に関するいくつかの質問に答えてください。
たとえば、中間サーバーとして ngnix が使用され、負荷分散のためにリバース プロキシ Web サーバー (tomcat) が使用されていますが、これは高可用性とみなされますか?
そこで、ngnix がハングアップするのではないかと心配したので、高可用性を実現するミドルウェアとして lvs keepalived を使用しましたが、lvs もハングアップする可能性があると思います。これは必要ですか?それとも、LVS がダウンした場合に対応するノード切り替えソリューションはありますか?
keepalived と組み合わせて nginx の可用性を高める具体的なパフォーマンスは次のとおりです。1 つの nginx がダウンしていることが判明した場合、2 つ目の nginx がすぐに起動して引き継ぎます。
概要は次のとおりです。
2つのnginxユニットが同じIPにバインドされており、2つのユニットの間で、メインユニットがダウンしている場合は、kaが使用されます。 、スレーブはすぐに引き継ぎ、nginx ロードバランシングの高可用性を実現します。
これは高可用性とみなされます。パフォーマンスを水平方向に拡張でき、一部の部品に障害が発生してもビジネスが中断されることはありません。
最初の 4 層の負荷分散 (LVS) + 7 層の負荷分散 (nginx) + ビジネス (tomcat、php など) のアーキテクチャは非常に一般的であり、各層は高可用性を実現するために複数のユニットを使用できます。取り外すことができます。具体的な実装はビジネス ニーズによって異なります。
ハードウェア障害は、このリスクに対抗するために複数のマシンを使用して高可用性を提供することです。
コンピューター室の電源はオフになっており、二重電源 + UPS + 発電機が設置されています。コンピュータ室が標準に達していない場合は、コンピュータ室を交換します。
スイッチが下がっている場合は積み重ねることができます。
ネットワークに障害が発生した場合、複数の光ファイバーアクセスとベアファイバー専用線を使用できます。
あなたの要件が非常に高い場合は、異なる場所でデュアルライブアクティブ、2つの場所で3つのセンターを行うことができ、地震や津波を恐れることはありません。
解決策はたくさんありますが、問題は 1 つだけです - お金です。