주:
- 이 사용지침서는 Oracle 제공 무료 실습 환경에서 제공됩니다.
- Oracle Cloud Infrastructure 인증서, 테넌시 및 구획에 대한 예제 값을 사용합니다. 실습을 마치면 사용자의 클라우드 환경과 관련된 값으로 대체합니다.
Network Manager CLI를 사용하여 네트워크 본드 생성
소개
네트워크 연결은 시스템의 여러 물리적 네트워크 인터페이스를 단일 논리적 그룹 인터페이스로 그룹화하고 네트워크 스위치에 연결됩니다. 연결은 본드 그룹의 링크가 실패할 경우 연결을 유지 관리하여 중복성을 통해 연결 가용성을 높일 수 있습니다. 또한 물리적 네트워크 인터페이스의 통합은 연결의 인터페이스 간 트래픽을 로드 밸런싱하여 더 높은 처리량을 제공합니다. 이 실습에서는 NMCLI 유틸리티를 사용하여 여러 물리적 인터페이스로 네트워크 본드 인터페이스를 생성하고, 본드 모드를 변경하고, 본드 인터페이스를 삭제하는 과정을 안내합니다.
목표
이 실습에서는 다음 내용을 배웁니다.
- 본드 인터페이스 생성
- 여러 물리적 인터페이스를 본드 인터페이스 그룹의 링크로 추가
- 본드 인터페이스 링크에서 상태 모니터링 및 트래픽 분배에 사용되는 본드 모드 변경
- 본드 인터페이스 삭제
주: 이 자습서의 절차는 Oracle Engineering의 권장 사항을 따릅니다.
필요 조건
- 현재 릴리스 Oracle Linux 8이 설치된 클라우드 인스턴스 시스템
본드 인터페이스 생성
이 랩 환경에 사용되는 인스턴스는 4개의 네트워크 인터페이스가 제공되는 Oracle Linux 8 클라우드 인스턴스입니다. 이러한 네트워크 인터페이스 3개를 사용하여 본드 인터페이스를 만듭니다. 모든 인터페이스는 동일한 가상 클라우드 네트워크 전용 서브넷에 있습니다.
주: 자습서 끝에 있는 추가 정보 섹션의 링크를 따라 연결되는 방법을 보여 주는 무료 비디오를 볼 수 있습니다.
-
Oracle Linux Lab Basics의 지침에 따라 SSH 연결을 설정하고 랩 시스템 인스턴스에 로그인합니다.
다음 절에서는 인스턴스에 SSH 연결을 설정하는 방법을 보여줍니다.
- 공용 IP 주소 복사
- Oracle Linux 인스턴스에 접속
ssh oracle@<ip address of instance>
-
본드 인터페이스를 생성합니다. 연결 이름을 Bondconn1로 설정하고 인터페이스 이름을 bond0로 설정합니다.
sudo nmcli connection add type bond con-name "Bondconn1" ifname bond0
-
생성된 새 본드를 봅니다.
sudo nmcli connection
출력 예:
NAME UUID TYPE DEVICE Bondconn1 6a5605dc-49ad-4f8d-8e10-7c130b95aba7 bond bond0 System ens3 21d47e65-8523-1a06-af22-6f121086f085 ethernet ens3
-
본드 구성 파일을 보고 새 본드 인터페이스에 대한 자세한 정보를 확인합니다.
sudo nmcli connection show "Bondconn1"
주: 출력의 다음 정보 페이지로 이동하려면 '공백' 키를 사용하십시오. 'q' 키를 사용하여 출력을 종료하고 명령행으로 돌아갑니다.
부분 예제 출력:
connection.id: Bondconn1 connection.uuid: e8092374-4397-4452-bc55-2f64c506b518 connection.stable-id: -- connection.type: bond connection.interface-name: bond0 connection.autoconnect: yes connection.autoconnect-priority: 0 connection.autoconnect-retries: -1 (default) connection.multi-connect: 0 (default) ... ... bond.options: mode=balance-rr proxy.method: none proxy.browser-only: no proxy.pac-url: -- proxy.pac-script: -- GENERAL.NAME: Bondconn1 GENERAL.UUID: 37845378-f29a-4b10-8107-49b9f5a0f564 GENERAL.DEVICES: bond0 GENERAL.IP-IFACE: -- GENERAL.STATE: activating ... ... connection.master: -- connection.slave-type: -- connection.autoconnect-slaves: -1 (default) connection.secondaries: -- connection.gateway-ping-timeout: 0 connection.metered: unknown connection.lldp: default connection.mdns: -1 (default) connection.llmnr: -1 (default) connection.wait-device-timeout: -1 ipv4.method: auto lines 1-25
본드 ID, UUID, 인터페이스 이름, IP 설정과 같은 출력에서 정보를 찾고 사용된 본드 모드를 확인합니다.
Bond 모드 변경
본드 모드는 본드 인터페이스가 해당 링크를 통해 트래픽을 분산하는 방법과 로드 균형 조정 및 장치 페일오버의 동작을 변경하여 본드 그룹에서 하나 이상의 링크 실패를 처리하는 방법을 설명합니다.
-
bond.options "mode=active-backup"
명령 옵션을 사용하여 본드 인터페이스에 사용되는 본드 모드를 Round Robin에서 Active Backup으로 변경합니다.sudo nmcli connection modify Bondconn1 bond.options "mode=active-backup"
주: 지원되는 모드는 기본 라운드 로빈(balance-rr), 활성 백업(active-backup), XOR(balance-xor), 브로드캐스트(broadcast), 802.3ad(802.3ad), 적응형 전송 로드 밸런싱(balance-tlb) 및 적응형 로드 밸런싱(balance-alb)입니다.
이 설명서 링크에서 다양한 본드 모드가 작동하는 방식에 대한 자세한 내용을 확인할 수 있습니다.
-
변경된 채권 모드를 보려면 새 채권 인터페이스에 대한 세부정보를 봅니다.
sudo nmcli connection show "Bondconn1"
부분 예제 출력:
... ... ... cipv6.dhcp-timeout: 0 (default) ipv6.dhcp-send-hostname: yes ipv6.dhcp-hostname: -- ipv6.dhcp-hostname-flags: 0x0 (none) ipv6.token: -- bond.options: mode=active-backup proxy.method: none proxy.browser-only: no proxy.pac-url: -- lines 56-80
본드 인터페이스에 인터페이스 링크 추가
-
시스템의 네트워크 장치 인터페이스 정보를 확인합니다.
sudo nmcli device
출력 예:
DEVICE TYPE STATE CONNECTION ens3 ethernet connected System ens3 bond0 bond connecting (getting IP configuration) Bondconn1 ens5 ethernet disconnected -- ens6 ethernet disconnected -- ens7 ethernet disconnected -- lo loopback unmanaged --
본드 인터페이스와 네 개의 네트워크 장치가 나열됩니다.
ens5
,ens6
,ens7
장치가 '연결 해제됨'으로 나열됩니다. 이러한 장치는 본드 인터페이스에 대한 인터페이스 링크로 사용할 수 있습니다. -
ens5
인터페이스를 본드 인터페이스 그룹의 링크로 추가합니다.sudo nmcli connection add type ethernet slave-type bond con-name bond0-if1 ifname ens5 master bond0
출력 예:
Connection 'bond0-if1' (56e98603-099c-46d1-acd5-1268e4ef9005) successfully added.
-
ens6
인터페이스를 본드 인터페이스 그룹의 두번째 링크로 추가합니다.sudo nmcli connection add type ethernet slave-type bond con-name bond0-if2 ifname ens6 master bond0
출력 예:
Connection 'bond0-if2' (577a9de4-43f4-46c7-9b29-dc51ef0f7c65) successfully added.
-
시스템의 네트워크 장치 인터페이스 정보를 확인합니다.
sudo nmcli device
출력 예:
DEVICE TYPE STATE CONNECTION ens3 ethernet connected System ens3 ens5 ethernet connected bond0-if1 ens6 ethernet connected bond0-if2 bond0 bond connecting (getting IP configuration) Bondconn1 ens7 ethernet disconnected -- lo loopback unmanaged --
이제 두 링크가 본드 인터페이스와 연관됩니다.
연결 인터페이스에 대한 IP 주소 구성
기본적으로 연결은 DHCP를 사용하도록 구성됩니다. 논리적 연결 인터페이스에 대해 IP 주소 지정, 게이트웨이 및 네트워크 확인 정보를 구성할 수 있습니다.
-
ip addr
명령을 사용하여bond0
가 상태를UP
로 보고하는지 확인합니다.ip addr
출력 예:
17: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 02:00:17:09:f8:b0 brd ff:ff:ff:ff:ff:ff inet6 fe80::cd09:f18d:f202:3ae4/64 scope link noprefixroute valid_lft forever preferred_lft forever
-
출력에
bond0
가DOWN
로 표시되는 경우sudo nmcli connection up "Bondconn1"
명령을 실행하여 상태를UP
로 변경합니다.sudo nmcli connection up "Bondconn1"
출력 예:
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/61)
-
-
ipv4.addresses
명령 옵션을 사용하여'192.168.1.10/24'
의 IP 주소 및 서브넷 마스크를bond0
인터페이스에 지정합니다.sudo nmcli connection modify "Bondconn1" ipv4.addresses '192.168.1.10/24'
-
IP 주소 지정 방법을 수동으로 설정합니다. 이렇게 하면 본드 인터페이스에 대한 IP 주소 및 마스크가 구성됩니다.
sudo nmcli connection modify "Bondconn1" ipv4.method manual
-
시스템에 대한 계층 3 네트워크 정보를 봅니다.
이제
bond0
인터페이스에 IP 주소가 지정되었습니다.ip addr
부분 예제 출력:
33: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 00:00:17:01:2f:ef brd ff:ff:ff:ff:ff:ff inet 192.168.1.10/24 brd 192.168.1.255 scope global noprefixroute bond0 valid_lft forever preferred_lft forever inet6 fe80::5149:fd05:55e5:9eff/64 scope link noprefixroute valid_lft forever preferred_lft forever
채권 인터페이스에 추가 링크 지정
-
지정되지 않은 마지막 네트워크 장치
ens7
를bond0
인터페이스에 지정합니다.sudo nmcli conn add type ethernet slave-type bond con-name bond0-if3 ifname ens7 master bond0
명령 출력에 본드 인터페이스가 성공적으로 추가되었음이 표시됩니다.
-
시스템의 네트워크 장치 인터페이스 정보를 확인합니다.
sudo nmcli device
출력 예:
DEVICE TYPE STATE CONNECTION ens3 ethernet connected System ens3 bond0 bond connected Bondconn1 ens5 ethernet connected bond0-if1 ens6 ethernet connected bond0-if2 ens7 ethernet connected bond0-if3 lo loopback unmanaged --
출력에는 본드 인터페이스에 연결된 세번째 네트워크 장치가 표시됩니다.
-
본드 구성 정보를 봅니다.
본드, 해당 상태, 본드 그룹의 링크 인터페이스 및 해당 상태에 대한 정보를 표시합니다.
cat /proc/net/bonding/bond0
출력 예:
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) Bonding Mode: load balancing (round-robin) MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Peer Notification Delay (ms): 0 Slave Interface: ens5 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 02:00:17:09:f8:b0 Slave queue ID: 0 Slave Interface: ens6 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 00:00:17:02:a1:10 Slave queue ID: 0 Slave Interface: ens7 MII Status: up Speed: Unknown Duplex: Unknown Link Failure Count: 0 Permanent HW addr: 02:00:17:03:f1:3a Slave queue ID: 0
출력에는 활성 상태인 본드 링크, 해당 정보 및 상태를 비롯한 본드 구성 및 상태가 표시됩니다.
본드 링크 삭제
본드 인터페이스를 제거하려면 먼저 본드 링크를 제거합니다.
주의: 연결된 활성 인터페이스 링크가 있는 본드 인터페이스를 삭제하지 마십시오.
-
sudo nmcli connection delete
명령을 사용하고 본드 링크 인터페이스 이름을 추가합니다. 먼저bond0-if3
연결을 제거한 다음 나머지 연결 인터페이스에 대한 작업을 반복합니다.주: 본드 링크를 삭제하는 순서는 중요하지 않습니다.
sudo nmcli connection delete bond0-if3
출력 예:
Connection 'bond0-if3' (5751ef04-43f4-46c7-9b29-dc51ef0f7c65) successfully deleted.
sudo nmcli connection delete bond0-if2
출력 예:
Connection 'bond0-if2' (577a9de4-43f4-46c7-9b29-dc51ef0f7c65) successfully deleted.
sudo nmcli connection delete bond0-if1
출력 예:
Connection 'bond0-if1' (56e98603-099c-46d1-acd5-1268e4ef9005) successfully deleted.
-
sudo nmcli device
명령을 사용하여 장치의 연결이 해제되었는지 확인합니다.sudo nmcli device
출력 예:
DEVICE TYPE STATE CONNECTION ens3 ethernet connected System ens3 bond0 bond connected Bondconn1 ens5 ethernet disconnected -- ens6 ethernet disconnected -- ens7 ethernet disconnected -- lo loopback unmanaged --
채권 인터페이스 삭제
본드 인터페이스를 삭제하기 전에 sudo nmcli connection down
명령을 사용하여 연결을 down
상태로 설정합니다.
-
본드 인터페이스를 전환합니다.
sudo nmcli connection down "Bondconn1"
출력 예:
Connection 'Bondconn1' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/86)
-
ip addr
명령을 사용하여 본드 인터페이스가 제거되었는지 확인합니다.ip addr
출력에는 본드 인터페이스가 더 이상 나열되지 않는 것으로 표시됩니다.
-
본드 인터페이스 이름과 함께
sudo nmcli connection delete
명령을 사용하여 본드 인터페이스를 삭제합니다.sudo nmcli connection delete "Bondconn1"
출력 예:
Connection 'Bondconn1' (a3d42efc-52ba-474a-9eea-67a4342420df) successfully deleted.
-
sudo nmcli connection
명령을 사용하여 확인합니다.sudo nmcli connection
출력 예:
NAME UUID TYPE DEVICE System ens3 21d47e65-8523-1a06-af22-6f121086f085 ethernet ens3
출력에는
ens3
연결만 표시됩니다. -
본드 구성 파일을 확인합니다.
cat /proc/net/bonding/bond0
cat: /proc/net/bonding/bond0: No such file or directory
주: 본드 인터페이스를 삭제하면 해당 구성 파일도 제거됩니다.
추가 정보
다른 관련 리소스 보기:
추가 학습 자원
docs.oracle.com/learn에서 다른 실습을 살펴보거나 Oracle Learning YouTube 채널에서 보다 무료 학습 컨텐츠에 접근할 수 있습니다. 또한 education.oracle.com/learning-explorer을 방문하여 Oracle Learning Explorer가 됩니다.
제품 설명서는 Oracle Help Center를 참조하십시오.
Create Network Bonds using Network Manager CLI
F56788-01
May 2022
Copyright © 2022, Oracle and/or its affiliates.