RHEL 7 でネットワークを構成するために、チーム化用の JSON ファイルを作成し、次のコマンドを実行しました。
ip link set down eno1
ip link set down eno2
ip link set down eno3
ip link set down eno4
teamd -g -f lacp.conf -d
また、VLAN 用の ifcfg ファイルを作成し、次のコマンドを実行しました。
systemctl restart network
その後、すべてがほぼ期待どおりに動作しますが、問題は、これが再起動間で保持されないため、起動後に毎回これを実行する必要があることです。
この問題を解決するにはどうすればいいでしょうか? このコマンドは 1 回だけ実行され、再起動後もこの設定が維持されるようにしたいです。
==========================================================
提案された修正を適用しようとしましたが、次の質問が表示されました:
ifcfg-team0
ファイルを作成しました。内容は次のとおりです:DEVICE=team0 DEVICETYPE=Team ONBOOT=yes BOOTPROTO=none TEAM_CONFIG='{"device":"team0", "runner": { "name": "lacp"...
「デバイス」セクションを削除して、TEAMCONFIG='{"runner": { "name": "lacp"...
すでに があるために変更する必要がありますかDEVICE=team0
? または、 を 2 回言及しても大丈夫ですか?
私の
ifcfg-eno1
ファイルには以下が含まれます:HWADDR=... TYPE=Ethernet BOOTPROTO=dhcp DEFROUTE=yes PEERDNS=yes IPV4_FAILURE_FATAL=no IPV6_INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no NAME=eno1 UUID=e656... ONBOOT=no
本当にほとんどすべてを削除すべきでしょうか? 特に、セクションを削除し、このファイルをドキュメントで示されているものに置き換えるべきでしょうかUUID
? NAME
:
DEVICE=eth1
HWADDR=D4:85:64:01:46:9E
DEVICETYPE=TeamPort
ONBOOT=yes
TEAM_MASTER=team0
TEAM_PORT_CONFIG='{"prio": 100}'
それとも両方のファイルを保存するべきでしょうか?例えば名前を付けifcfg-eno1
てifcfg-eno1Team
これを実行すると、
systemctl start network.service
次のようなエラーが発生します:Failed to start LSB: Bring up/down networking. Unit network.service entered failed state.
答え1
まず、次のような新しいファイルを/etc/sysconfig/network-scripts
というディレクトリに作成します。ifcfg-team0
DEVICE=team0
DEVICETYPE=Team
ONBOOT=yes
BOOTPROTO=none
IPADDR=1.2.3.4
NETMASK=255.255.255.0
TEAM_CONFIG='{"runner": {"name": "lacp"}, "link_watch": {"name": "ethtool"}}'
当然のことながら、IP アドレスとネットマスクを適切に変更する必要があります。
次に、同じディレクトリで、すべてのifcfg-eno[1-4]
ファイルを次のように変更します。
DEVICE=eno1
HWADDR=00:11:22:33:44:55
DEVICETYPE=TeamPort
ONBOOT=yes
TEAM_MASTER=team0
TEAM_PORT_CONFIG='{"prio": 100}'
上記のように、既存の設定を保持する必要があるため、ローカル ファイルは少し異なりますHWADDR
。
これはマニュアル通り。
ファイルは、すでに作成したファイルifcfg-team0
を参照しますlacp.conf
。ただし、そのファイルを見つける方法がマニュアルに記載されていません。おそらく、teamd
以前の手動構成からそれを記憶しているか、共通のディレクトリに配置する必要があるのでしょう。
とにかく、これを構成したら、 と入力するifup team0
と、チーム化された NIC グループがすべて同時に起動します。個々のインターフェイスは最初はダウンしている必要がありますが、NIC チームの一部としてマークされているため、起動時にそれを保証するために特別な操作を行う必要はありません。OS のブート構成では、これらの 4 つのインターフェイスを個別に起動するのではなく、NIC チームの一部としてのみ起動する必要があることを認識します。
上記はすべて無効になっていることを前提としていますネットワーク管理者そして、Red Hat タイプの Linux でネットワークを構成する古き良き方法に戻りました。
$ sudo systemctl stop NetworkManager.service
$ sudo systemctl disable NetworkManager.service
$ sudo systemctl start network.service
$ sudo systemctl enable network.service
これは、LACP のようにネットワーク構成が複雑になり始めたときに特にサーバーで役立つことが多いです。NetworkManager は多くの問題を解決しますが、多くの場合、デスクトップに重点を置いた方法で解決するため、サーバーには適していません。たとえば、ラップトップで一般的な WiFi から Ethernet への自動移行を解決します。サーバーは通常、静的なネットワーク構成を持っているため、NetworkManager は邪魔になるだけです。
それでも、Red Hatのデフォルトを使い続けたい場合、代替案はカバーされています。マニュアルの前のいくつかのセクション。