手当たり次第に書くんだ

飽きっぽいのは本能

Ubuntu 26.04 HAProxy の基本設定

Ubuntu 26.04 サーバー管理ガイドに戻る

Ubuntu 26.04 で HAProxy を使うと、TCP や HTTP のロードバランサを構成できます。Kubernetes API、Web サービス、内部サービスの前段などで使いやすいミドルウェアです。

この記事では、HAProxy の導入、frontend/backend の基本、TCP ロードバランサの例、設定検証、サービス確認までを整理します。

HAProxy の基本構造

  • global: プロセス全体の設定
  • defaults: frontend/backend の共通設定
  • frontend: 接続を受ける入口
  • backend: 転送先サーバー群
  • server: backend 内の実サーバー

インストールする

sudo apt update
sudo apt install -y haproxy

最小構成例

global
    log /dev/log local0
    log /dev/log local1 notice
    stats socket /run/haproxy/admin.sock mode 660 level admin
    stats timeout 30s
    user haproxy
    group haproxy
    maxconn 10000

defaults
    log global
    mode tcp
    option tcplog
    option dontlognull
    timeout connect 5s
    timeout client 60s
    timeout server 60s

frontend k8s-api-frontend
    bind 192.0.2.10:6443
    default_backend k8s-api-backend

backend k8s-api-backend
    balance roundrobin
    option redispatch
    default-server check
    server k8s-cp-01 192.0.2.101:6443

設定ファイルへ配置する

sudoedit /etc/haproxy/haproxy.cfg

設定を検証する

sudo haproxy -c -f /etc/haproxy/haproxy.cfg

サービスを起動する

sudo systemctl enable --now haproxy
systemctl status haproxy --no-pager

待ち受けを確認する

ss -lntp | grep haproxy || true

ログを確認する

journalctl -u haproxy --since "1 hour ago" --no-pager

設計上の注意

HAProxy は入口を増やすほど firewall、VIP、DNS、監視と関係します。TCP mode では L7 のヘッダー処理をしないため、HTTP の X-Forwarded-For や TLS 終端が必要な場合は HTTP mode や別設計として考えます。

まとめ

HAProxy は frontend と backend の関係を明確にすると扱いやすいです。まずは TCP の最小構成で設定検証、待ち受け、ログ確認を行い、用途に応じて HTTP mode や TLS 終端へ広げます。

Ubuntu 26.04 サーバー管理ガイドに戻る

Ubuntu 26.04 HAProxy の基本設定

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る