안녕하세요!
네트워크 본딩(Bonding)은 여러 네트워크 인터페이스를 하나의 논리적인 인터페이스로 묶는 과정입니다.
Acitve / Standby 구조로 작동하여 장애 발생 시에도 네트워크가 끊기지 않도록 합니다.
다음과 같은 목적으로 사용됩니다.
l 고가용성 : 단일 네트워크 인터페이스에 장애가 발생해도, 다른 인터페이스를 통해 네트워크 연결이 유지. 서버의 네트워크 연결 중단 되는 것을 방지. l 부하분산 : 네트워크 트래픽을 여러 인터페이스에 분산시켜 전체 네트워크 성능 향상 가능 l 대역폭 증가 : 여러 네트워크 연결을 결합하여 더 폭은 대역폭 제공 가능 |
네트워크 어댑터 추가하기
VMware에서 가상 머신을 우 클릭 후 Settings… 클릭합니다.
Add 버튼을 클릭한 후 Network Adapter를 추가합니다.
추가된 Network Adpter2를 클릭하여 NAT로 설정합니다.
가상 머신에서 IP를 확인을 통해 Network Adapter가 추가되었는지 확인합니다.
기존 eth0에 eth1이 추가되었습니다.
네트워크 본딩(Bonding) 구성하기
네트워크 본딩을 구성하기 위해 네트워크 설정파일을 편집하고, 본딩 설정파일을 생성합니다.
ifcfg-eth0과 ifcfg-eth1의 파일의 내용을 아래와 같이 변경합니다.
[root@localhost admin]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" TYPE="Ethernet" ONBOOT="yes" MASTER="bond0" SLAVE="yes" NM_CONTROLLED="no" BOOTPROTO="none" USERCTL="no" |
[root@localhost admin]# vi /etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE="eth1" TYPE="Ethernet" ONBOOT="yes" MASTER="bond0" SLAVE="yes" NM_CONTROLLED="no" BOOTPROTO="none" USERCTL="no" |
l DEVICE : 네트워크 장치명 l TYPE : 네트워크 인터페이스 유형 l ONBOOT : 시스템 부팅시 자동 활성화 여부 지정 l MASTER : 어떤 본딩 그룹에 속할지 지정 l SLAVE : 본딩 인터페이스의 슬레이브(종속) 구성 요소 지정 l NM_CONTROLLED : NetworkManager에 의해 네트워크 인터페이스가 관리되는지 여부 설정 l BOOTPROTO : 부팅 시 IP 주소를 어떻게 할당받을지 지정 [dhcp, none, static]가 있음 l USERCTL : 일반 사용자가 네크워크를 활성화하거나 비활성화할 수 있는지 여부를 지정 `no`는 관리자 권한이 필요 |
본딩(Bonding) 설정 파일을 생성 및 편집합니다.
[root@localhost admin]# vi /etc/sysconfig/network-scripts/ifcfg-bond0 DEVICE="bond0" TYPE="Ethernet" ONBOOT="yes" NM_CONTROLLED="no" BOOTPROTO="static" IPADDR=192.168.10.20 NETMASK=255.255.255.0 GATEWAY=192.168.10.2 DNS1=8.8.8.8 BONDING_MASTER="yes" BONDING_OPTS="mode=1 miimon=100" |
모드 번호 | 모드 종드 | 설명 |
0 | balance-rr | NIC를 번갈아가며 패킷을 송신 |
1 | active-backup | bond NIC 내에 한 개의 랜카드만 사용. 만약 사용중인 랜카드에 이상이 생길 경우 bond내의 다른 NIC로 교체 |
2 | balance-xor | 네트워크 부하 분산 통신을 지원. 소스와 목적지 MAC을 XOR 연산하여 사용할 NIC을 결정하여 통신 |
3 | broadcast | 모든 Slave NIC를 통해 데이터를 전송 Fault Tolerance 모드 |
4 | 802.3ad | 네트워크 부하 분산 통신을 지원. 802.3ad 프로토콜을 이용 DyNamic Link Aggregation을 구성 |
5 | balance-tlb | 네트워크 부하 분산 통신을 지원. 송신 패킷 부하 분산 |
6 | balance-alb | 네트워크 부하 분산 통신을 지원, 송수신 패킷 부하 부산 |
본딩을 적용하기 위해 `/etc/modprobe.d/bonding.conf` 파일을 생성하고 네트워크를 재 시작합니다.
[root@localhost admin]# vi /etc/modprobe.d/bonding.conf alias bond0 bonding options bond0 mode=1 miimon=100 [root@localhost admin]# modprobe bond0 [root@localhost admin]# service network restart Shutting down interface bond0: [ OK ] Shutting down loopback interface: [ OK ] Bringing up loopback interface: [ OK ] Bringing up interface bond0: Determining if ip address 192.168.10.20 is already in use for device bond0... [ OK ] |
본딩 설정을 확인합니다.
[root@localhost network-scripts]# cat /proc/net/bonding/bond0 Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) Bonding Mode: fault-tolerance (active-backup) ① Primary Slave: None Currently Active Slave: eth0 ② MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface: eth0 MII Status: up ③ Speed: 1000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:8c:31:7e Slave queue ID: 0 Slave Interface: eth1 MII Status: up Speed: 1000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:8c:31:88 Slave queue ID: 0 |
① Bonding Mode: fault-tolerance (active-backup) : 본딩 모드가 Active-Backup인지 확인
② Currently Active Slave: eth0 : 현재 Active 상태인 인터페이스를 확인
③ MII Status: up : 모니터링 및 통신 상태 확인
본딩 테스트
정상 상태
현재 Active 네트워크는 eth0으로 정상 상태이며 ping을 통해 통신을 확인합니다.
Ifdown으로 하나의 인터페이스 장애를 일으키고 정상으로 작동하는지 번갈아가며 테스트합니다.
eth0을 종료 eth1을 종료
active-back 모드로서 네트워크를 다운시켰을 때 번갈아가며 active salve가 변경되는 것을 확인할 수 있습니다.
이상입니다.
'Linux(리눅스) > VMware_RHEL' 카테고리의 다른 글
VMware RHEL 6.9 fdisk 파티션 생성 및 마운트 1 (1) | 2024.02.02 |
---|---|
VMware에 하드 디스크 추가하기 (0) | 2024.01.31 |
RHEL 6.9 root 비밀번호 분실[싱글모드] (0) | 2024.01.31 |
VMware_RHEL 6.9 SSH 포트 변경하기 (0) | 2024.01.24 |
VMware_RHEL 6.9 고정 IP 할당 (1) | 2024.01.23 |