RHEL 7에서 부팅 시 NIC 팀을 표시하는 방법

RHEL 7에서 부팅 시 NIC 팀을 표시하는 방법

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"...
    

"device" 섹션을 제거해야 합니까? TEAMCONFIG='{"runner": { "name": "lacp"...이미 있으므로 으로 변경해야 합니까 DEVICE=team0? 아니면 두 번 언급해도 괜찮나요?

  1. 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

  1. 이것을 실행할 때 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에서 이더넷으로의 자동 전환 문제를 해결합니다. 서버는 일반적으로 정적 네트워크 구성을 가지므로 NetworkManager가 방해가 될 수 있습니다.

그럼에도 불구하고 Red Hat의 기본값을 고수하고 싶다면 Red Hat이 그 대안을 다룹니다.설명서 앞부분의 몇 섹션.

관련 정보