はじめに
今日のペースの速いデジタル環境では、アプリケーションの可用性とパフォーマンスが重要であることを確認します。最新のインフラストラクチャには、サーバーの障害がある場合でもサービスの可用性を維持し、トラフィックを効率的に割り当てるために強力なソリューションが必要です。 haproxy高性能負荷分散とフェールオーバーの実際の標準として、それは生まれました。
この記事では、最も人気のあるLinux分布の1つであるHaproxyとUbuntuの相乗効果について説明します。インストールから高度な構成まで、Haproxyがロードバランスとフェールオーバー機能でインフラストラクチャをどのように変換できるかについて飛び込みます。
荷重バランスの詳細な説明
ロードバランシングは、受信ネットワークトラフィックを複数のサーバーに割り当てるプロセスです。負荷のバランスをとることにより、単一のサーバーが圧倒されず、パフォーマンス、信頼性、フォールトトレランスが向上することが保証されます。
主な利点:
- スケーラビリティ:サーバーを追加することでトラフィックの増加をトレーニングします。
- 信頼性:トラフィックを通常のサーバーにルーティングすることで、サーバーの障害の影響を容易にします。
- パフォーマンス:ワークロードを均等に分配することにより、遅延を減らします。
負荷分散タイプ:
- レイヤー4(輸送レイヤー):IPおよびポート情報に従ってトラフィックを配布します。
- レイヤー7(アプリケーションレイヤー):アプリケーションレベルのデータ(HTTPヘッダーなど)に基づいてルーティング決定を行います。
フェイルオーバーコンセプト
フェイルオーバーは、主要なリソースの障害が発生した場合にトラフィックをバックアップリソースに自動的にリダイレクトすることにより、継続性を保証します。これは、高可用性(ha)セットアップの基礎です。
Haproxyを使用すると、フェイルオーバーはシームレスです:
- バックエンドサーバーが使用できない場合、Haproxyは健康チェックを通じてそれを検出します。
- トラフィックは他の利用可能なサーバーに再ルーティングされ、途切れないサービスが維持されます。
ubuntu でhaproxyを設定します
ubuntuにHaproxyをインストールして構成することから始めましょう。
前提条件:
- ubuntuサーバー(20.04以上を使用することをお勧めします)。
- 負荷分散をテストするための複数のバックエンドサーバー。
- 基本的なLinuxコマンドラインスキル。
- Haproxyのインストール:
-
sudo apt update && sudo apt upgrade -y
インストールの確認: -
sudo apt install haproxy -y
-
haproxy -v
ステップ2:haproxyを構成
編集
<code>global log /dev/log local0 log /dev/log local1 notice maxconn 2048 daemon defaults log global option httplog option dontlognull timeout connect 5000ms timeout client 50000ms timeout server 50000ms frontend http_front bind *:80 default_backend http_back backend http_back balance roundrobin server server1 192.168.1.101:80 check server server2 192.168.1.102:80 check</code>
- 変更を適用するにはhaproxyを再起動します:
sudo systemctl restart haproxy
サーバーのIPアドレスにアクセスして、 - テストします。 Haproxyは、バックエンド間でリクエストを割り当てます。
Advanced configuration
ロードバランシングアルゴリズム:
- 世論調査:順次リクエストを順次割り当てます。
- 接続の数:アクティブな接続が最も少ないサーバーにルーティングされます。
- 出典:クライアントが常に同じサーバーにルーティングされていることを確認してください。
それに応じて、バックエンドのbalance
ディレクティブを更新します。
ヘルスチェック:ヘルスチェックにより、トラフィックが通常のサーバーにのみ送信されることが保証されます。 check
命令は定期的な健康チェックを実行します。
ssl終了:トラフィックを保護するには、SSL終了を処理するようにHaproxyを構成します。
- SSL証明書を取得します。
- https:
frontend https_front bind *:443 ssl crt /etc/haproxy/certs/example.pem default_backend http_back
を使用するように構成を更新します
アクセスコントロールリスト(ACL):ACLを使用したフィルタートラフィック:
<code>frontend http_front acl is_api path_beg /api use_backend api_back if is_api</code>
高可用性を有効にします
KeepAlivedを備えたvrrp:フェールオーバーを有効にするには、keepAlivedをhaproxyと統合します。
- KeepAlivedのインストール:
sudo apt install keepalived -y
- 構成KeepAlived(
/etc/keepalived/keepalived.conf
<code>vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 advert_int 1 authentication { auth_type PASS auth_pass mypassword } virtual_ipaddress { 192.168.1.100 } }</code>
- 再起動KeepAlived:
-
sudo systemctl restart keepalived
監視とパフォーマンスチューニング
haproxy統計パネル:リアルタイムの監視のためにパネルを有効にする:
<code>listen stats bind *:8404 stats enable stats uri /stats stats auth admin:password</code>
にアクセスしてください。 http://<server-ip>:8404/stats</server-ip>
最適化スキル:
- および
maxconn
設定を調整します。timeout
HTTPトラフィックにGZIP圧縮を使用します。 - ログの例外を監視します。
ユーザーケースと実際のシナリオ
- マイクロサービス:APIリクエストを複数のサービスに割り当てます。
- Webアプリケーション:バックエンドサーバーを拡張してトラフィックスパイクを処理します。
- データベースロードバランシング:読み取りおよび書き込み操作を最適化します。 FAQSのトラブルシューティング
接続の問題:
ファイアウォールルールを確認します。
- サーバーの健康チェックを確認します。
- パフォーマンスボトルネック:
ファイル記述子のulimitを追加します。
- バックエンドサーバーの構成を最適化します。
- メンテナンス:
- 常にバックアップ構成。
- 交通量の少ない時期に更新を適用します。
結論
HaproxyとUbuntuを組み合わせることにより、トラフィックを管理し、稼働時間を確保するための強力な組み合わせが得られます。上記の手順を使用すると、高い負荷とサーバーの障害を処理できる回復力のあるインフラストラクチャを構築できます。今すぐHaproxyを試してみて、Ubuntuシステム機能の最大限の可能性を解き放ちます。
以上がUbuntuのHaproxy:回復力のあるインフラストラクチャのロードバランシングとフェールオーバーの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

人工知能(AI)は、自動運転車からSiriやAlexaなどの音声アシスタントまで、しばらくの間賑わっている用語です。AIは私たちの日常生活の一部になりつつあります。 しかし、正確にAIは何ですか、そしてなぜLinuxユーザーがABを気にするべきなのか

Linuxを初めて使用する人にとって、UbuntuやMintなどのユーザーフレンドリーな分布を使用しても、Linuxを使用することで、依然として挑戦的に感じることがあります。 これらの分布は多くのタスクを簡素化しますが、いくつかの手動構成が必要ですが、Lの力を完全に活用しています

前の記事では、AIの基本とLinuxの世界にどのように適合するかを紹介しました。今度は、より深く潜り、Linuxシステムをセットアップして、最初のAIモデルの構築を開始する時が来ました。 あなたが完全な初心者であろうと、ある程度の経験があるかどうか

サーバーを簡単に管理したい場合は、Kloxoは無料でオープンソースのWebホスティングコントロールパネルであり、シンプルでユーザーフレンドリーなインターフェイスでサーバーとWebサイトを管理できるため、優れたオプションです。 このガイドでは、歩きます

たくさんのファイルとフォルダーを移動しようとしている状況に陥ったことがある場合、フォルダー名のスペースによって困惑するだけで、あなたは一人ではありません。 ファイル名またはフォルダー名のスペースはすぐに欲求不満になる可能性があります

KDEプラズマデスクトップは、洗練されたデザイン、広範なカスタマイズオプション、印象的なパフォーマンスで有名です。すべての詳細を微調整する柔軟性を備えた洗練されたモダンなインターフェースを高く評価しているユーザーにとって、プラズマは夢が叶います。 しかし、w


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

メモ帳++7.3.1
使いやすく無料のコードエディター

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。
