SLES 15ボンディングによる信頼性の高いイーサネットフェイルオーバーの設定

SUSE Linux Enterprise Server 15 ホストにイーサネットアダプタが 2 つ搭載されているが、ケーブルの 1 つが故障するとネットワークアクセスが失われる場合は、 YaST でbond0インターフェイスを設定し、両方のアダプタを追加して、アクティブ/バックアップを選択しますmiimon=100。サーバーの IP 設定は、物理ポートではなく、ボンディングされたインターフェイスに設定してください。これにより、LACP 対応スイッチを必要とせずにリンク冗長性が確保されます。

以下の手順では、通常SLESサーバーのワークロードで使用されるWickedネットワークサービスを使用します。SSHセッションを伝送するインターフェースを変更すると接続が切断される可能性があるため、ローカルコンソール、リモート管理コンソール、または復旧パスが確保された承認済みのメンテナンスウィンドウから変更を実行してください。

アダプターを確認し、正しい接続モードを選択してください。

利用可能なネットワークカードが2枚あっても、自動的にフェイルオーバーペアが形成されるわけではありません。ボンディングを使用しない場合、各インターフェースは個別に管理されるため、一方のルートを使用しているアプリケーションは、そのリンクがダウンすると接続を失う可能性があります。Linuxのボンディング機能を使用すると、複数の物理ポートが1つの論理インターフェースとして認識されます。

変更を加える前に、実際のインターフェース名を特定し、ホストの現在のIPv4/IPv6アドレス、ゲートウェイ、VLAN、およびDNS設定を記録し、両方のスイッチポートが目的のネットワークに到達していることを確認してください。

ip -br link
ip -br addr
ip route
systemctl status network

サンプル画面では、2つの物理インターフェースはenp1s0とですenp2s0。これらの名前は例示であり、実際のサーバーでは異なる名前が使用されている場合があります。サンプルアドレス192.0.2.20/24はドキュメント専用のアドレスであり、ネットワークに展開する値ではありません。

ポートまたはケーブルの障害発生時にサービスを維持することが目的の場合は、アクティブ/バックアップ(モード 1)を使用してください。一方のポートが送信を行い、もう一方のポートはフェイルオーバー用に待機します。802.3ad (LACP、モード 4)は、ネットワークスイッチが、対応する速度とデュプレックス設定を備えた、一致する LACP アグリゲーション グループ用に明示的に構成されている場合にのみ選択してください。LACP は、リンク間で異なるトラフィック フローを分散できますが、1 つの接続の速度が 2 倍になることを保証するものではありません。スイッチ ベンダーがその構成をサポートしていない限り、SUSE は、通常のボンディングを複数のスイッチにまたがって使用することを推奨しません。SUSEのネットワーク ボンディングの手順と制限事項を参照してください。

YaSTでbond0を設定する

  1. 1. ネットワーク設定を開き、使用可能なポートを確認します。

    YaSTをローカルで実行sudo yast2または起動し、[システム] > [ネットワーク設定]に移動します。[概要] タブで、結合するイーサネット インターフェイスを両方とも指定します。一方のインターフェイスにサーバーの管理アドレスが割り当てられている場合は、設定を変更する前にコンソール アクセスを設定してください。トポロジを事前に計画せずに、無線インターフェイスや、すでに無関係なブリッジに割り当てられているインターフェイスを選択しないでください。

    YaSTネットワーク設定の概要には、2つのイーサネットアダプタenp1s0とenp2s0、および追加ボタンが表示されています。
    ネットワーク設定の概要では、ボンディングデバイスを作成する前にenp1s0とenp2s0を識別します。
  2. 2. 接合インターフェースを作成する

    「追加」をクリックし、「デバイスタイプ」を「ボンディング」に変更して、「次へ」をクリックします。YaST が新しい論理ボンディング用のネットワークカード設定を開きます。2 つの物理アダプタにそれぞれ独立して同じ静的アドレスを割り当てようとしないでください。

    YaSTの「新しいネットワークカードの追加」ウィンドウで、「デバイスタイプ」メニューで「ボンディング」を選択します。
    「新しいネットワークカードの追加」画面では、新しいデバイスタイプとして「ボンディング」が選択されています。
  3. 3. ボンドのIP設定を割り当てる

    「アドレス」タブで、インフラストラクチャが適切なDHCPリースを提供している場合は「動的アドレス」を、固定アドレスを持つサーバーの場合は「静的に割り当てられたIPアドレス」を選択します。静的展開の場合は、以前の管理アドレスとサブネットをボンディングに移動し、古い物理インターフェイスに重複するIPアドレスが残らないようにします。「ルーティング」タブでデフォルトゲートウェイを、 「ホスト名/DNS」でDNSを適切に確認します。静的アドレス指定によってこれらが自動的に設定されるとは考えないでください。

    YaSTネットワークカード設定のアドレスタブには、静的アドレス192.0.2.20とサブネットマスク255.255.255.0が表示されています。
    「アドレス」タブには、ボンドのメンバーではなく、ボンドに割り当てられた静的IPアドレスとサブネットマスクの例が表示されます。
  4. 4. 両方のポートを選択し、リンク監視を継続し、適用します。

    ボンドポートを開き、目的のアダプタを 2 つ選択します。ボンドドライバオプションで、active-backup単純な冗長性を選択し、 を維持しますmiimon=100。これにより、メンバーリンクの状態が 100 ミリ秒間隔でチェックされますが、すべてのアップストリーム障害が検出される保証はありません。次へを選択し、古い個別のインターフェイス構成を適応させるためのプロンプトが表示されたら、続行を選択して承認し、OKをクリックして新しいボンドをコミットします。IP が bond0 に移動する間、一時的にアクセスできなくなる場合があります。

    YaSTネットワークカード設定の「ボンディングポート」タブで、両方のアダプタを選択し、アクティブ/バックアップリンクを100ミリ秒間隔で監視する。
    両方のイーサネットポートが選択され、アクティブ/バックアップボンディングと100ミリ秒のMII監視間隔が設定されています。

これらの画面表示は、SUSEのSLES 15 SP7 YaSTのボンディング手順で説明されているコントロールに焦点を当てています。正確なレイアウトや文言は、インストールされているYaSTのバージョンや、グラフィカルインターフェースまたはテキストインターフェースによって異なる場合があります。

YaSTが利用できない場合はifcfgファイルを使用してください

手動設定は、YaST を使用できない管理者向けの代替手段です。SUSE は、/etc/sysconfig/network/ifcfg-*Wicked で管理されるホストのフォーマットを文書化しています。作業を進める前に、ライブディレクトリ以外の場所に元のネットワークファイルをバックアップし/etc/sysconfig/network、コンソールへのアクセスを維持してください。

sudo mkdir -p /root/network-bond-backup
sudo cp -a /etc/sysconfig/network/ifcfg-enp1s0 /root/network-bond-backup/
sudo cp -a /etc/sysconfig/network/ifcfg-enp2s0 /root/network-bond-backup/

指定されたソースファイルが存在しない場合は、ディレクトリを調べて、ファイル名を推測するのではなく、実際のファイルをバックアップしてください。この静的IP構成例では、/etc/sysconfig/network/ifcfg-bond0インターフェース名とアドレスを実際の値に置き換えて、以下の内容でファイルを作成してください。

STARTMODE='auto'
BOOTPROTO='static'
IPADDR='192.0.2.20/24'
BONDING_MASTER='yes'
BONDING_SLAVE0='enp1s0'
BONDING_SLAVE1='enp2s0'
BONDING_MODULE_OPTS='mode=active-backup miimon=100'

各メンバーのifcfgファイルには、独自のIP構成を含める必要はありません。たとえば、ifcfg-enp1s0と両方に以下の行のみを配置してくださいifcfg-enp2s0。

BOOTPROTO='none'
STARTMODE='hotplug'

必要なシステム全体のルーティングおよびリゾルバ構成を新しいボンディングに合わせて維持します。構成を確認し、Wicked を使用して論理インターフェースを起動します。

sudo wicked show-config
sudo wicked ifup all bond0

実行中のボンディングに対して後から編集を加えた後に使用してください。個々のボンディングされたデバイスの起動または停止にはsudo wicked ifreload bond0使用しないでください。SUSE ではそのタスク用に が指定されています。サポートされているファイル パラメータについては、 SUSE マニュアルのボンディング構成リファレンスおよびローカルにインストールされているページを参照してください。systemctlwickedman 5 ifcfg-bonding

オンラインにならない債券のトラブルシューティング

ボンドは存在しますが、IPアドレスが割り当てられていません。アドレスがメンバーではなくbond0に割り当てられていることを確認し、DHCPサーバーまたは静的アドレス設定を確認してください。ゲートウェイが欠落しているか、VLANが正しくない場合、両方のポートがキャリアを報告していてもサーバーに到達できないことがあります。ip routeネットワークを繰り返し再起動する前に、実際のスイッチポート構成を確認してください。

ボンドがダウンしたメンバーを報告します。ケーブル、スイッチポートの状態、インターフェイスの選択、およびドライバメッセージを確認してください。メンバー名が とBONDING_SLAVE0とBONDING_SLAVE1一致していることを確認してくださいip -br link。リンク監視は関連するインターフェイス/キャリアの変更を検出しますが、直接接続されているスイッチより先のあらゆる障害を検出するわけではありません。

802.3adに切り替えた後にトラフィックが失敗する場合は、まずスイッチのLACPグループとポートの設定を確認してください。ボンディングがLACPに設定されているにもかかわらず、スイッチポートが通常の独立したポートのままになっている場合は、設定の不一致です。単にフェイルオーバーが目的であれば、スイッチアグリゲーションを不必要に導入するのではなく、アクティブ/バックアップ構成に戻してください。

構成を確認し、フェイルオーバーをテストします。

稼働中のボンド、そのメンバーインターフェース、およびルーティングを確認してください。

sudo wicked ifstatus --verbose bond0
ip -br addr show bond0
ip route
cat /proc/net/bonding/bond0

ボンディングには意図したIPアドレスが割り当てられ、リンクがアクティブ状態であり、カーネルステータスファイルに両方のメンバーインターフェースがリストされている必要があります。アクティブ/バックアップモードでは、「現在アクティブなスレーブ」フィールドと各メンバーのMIIステータスを確認してください。正確な出力はドライバと構成によって異なります。このステータスインターフェイスについては、 Linuxカーネルのボンディングに関するドキュメントを参照してください。

最後に、実際のデフォルトゲートウェイと、ホストに接続する必要のあるサービスクライアントへの接続を確認します。承認されたメンテナンス期間中に、ボンディングステータスと継続的な接続テストを監視しながら、現在アクティブなリンクのみを一時的に切断または無効にします。スタンバイメンバーが引き継ぎ、接続が回復するはずです。その後、リンクを復元し、両方のメンバーが正常な状態であることを確認します。ネットワークにアクセスできない場合は、SSH 経由で追加の変更を闇雲に行うのではなく、コンソールアクセスを使用してバックアップ済みのメンバー構成を復元してください。

コメントを残す

OpenSCAPを使用してSLES 15 STIGを安全に適用する

OpenSCAPを使用してSLES 15 STIGを安全に適用する

SUSEがサポートするSTIGプロファイルを使用して、SLES 15のスキャン、修復テスト、残りの検出結果の確認、および評価証拠の保持を行ってください。

SUSE Linux Enterprise ServerへのCockpitアクセスを復元する

SUSE Linux Enterprise ServerへのCockpitアクセスを復元する

SUSEの最新のガイダンスに従って、DNS、ポート9090、systemdソケット、firewalld、TLS、およびログイン設定を通じて、Cockpit接続の失敗を追跡してください。

SLES 15ボンディングによる信頼性の高いイーサネットフェイルオーバーの設定

SLES 15ボンディングによる信頼性の高いイーサネットフェイルオーバーの設定

YaSTとWickedを使用してSLES 15上に冗長イーサネット接続を作成し、アクティブ/バックアップボンディングを構成して、両方のポートとフェイルオーバーを確認します。

SLES 15インストール用の再利用可能なAutoYaSTプロファイルを作成する

SLES 15インストール用の再利用可能なAutoYaSTプロファイルを作成する

既存のSLES 15システムをレビュー済みのAutoYaSTプロファイルに変換し、検証を行い、それを使用して手動の手順を減らしてテストサーバーをデプロイします。

SLES 15 KVM セットアップ: 選択した仮想マシンを起動時に自動的に起動するように設定

SLES 15 KVM セットアップ: 選択した仮想マシンを起動時に自動的に起動するように設定

SLES 15 KVMおよびlibvirtツールをインストールし、適切なホストサービスを有効にし、選択した仮想マシンが再起動後に起動するように設定します。

systemdシャットダウン画面でハングアップするSUSEサーバーを診断する

systemdシャットダウン画面でハングアップするSUSEサーバーを診断する

systemdジョブと前回の起動ジャーナルを使用して、遅いサービス、マウント、またはストレージの依存関係を特定し、原因を隠蔽することなく修正します。

SLES 15サーバーに必要なWebトラフィックのみを許可する

SLES 15サーバーに必要なWebトラフィックのみを許可する

firewall-cmd を使用してアクティブゾーンを検査し、HTTP を安全に許可し、SSH アクセスを維持し、SLES 15 でルールが再読み込み後も有効であることを確認します。

ロックアウトせずにSLES PAMログイン失敗を診断する

ロックアウトせずにSLES PAMログイン失敗を診断する

PAMの障害が発生した原因を、サービス、アカウントポリシー、またはIDプロバイダーに特定し、正常に動作する管理者セッションを維持しながら、適切なSLES構成を修復します。

SLES 15セキュアブートにカスタムカーネルモジュールをインストールして署名する

SLES 15セキュアブートにカスタムカーネルモジュールをインストールして署名する

セキュアブートを無効にせずに、カスタムSLES 15カーネルモジュールをロードします。実行中のカーネルと一致させ、.koファイルに署名し、MOKキーを登録し、ロードが成功したことを確認します。

ResticとCronを使用して、Nextcloudのバックアップを自動化し、一貫性を保つ

ResticとCronを使用して、Nextcloudのバックアップを自動化し、一貫性を保つ

NextcloudのファイルとMariaDBをまとめてバックアップし、cronを使って暗号化されたResticスナップショットをスケジュール設定し、稼働中のサーバーにリスクを負わせることなく復旧を検証します。