인터페이스 이중화
- 기존에는 하나의 인터페이스에 하나의 IP 주소 할당 및 사용
- 인터페이스 문제 발생 시 서비스 제공에 지장
- 인터페이스마다 주소가 다르면 접근이 어려움
- 인터페이스 여러 개를 묶어서 사용하는 형태 ===> 본딩 / 티밍 두 가지 방식 존재
네트워크 티밍
티밍이란?
- RHEL7 버전부터 제공 (기존의 본딩 방식에서 변경 가능)
- 본딩에 비해 사용자(관리자) 입장에서 편의성 제공
- 인터페이스 장애에 대한 대비
- 효율성 증대
- IP 주소에 대한 부담 감소
- 여러 개의 인터페이스에 대해 IP 주소를 하나만 설정
- 목적: 인터페이스에 문제가 발생하더라도 네트워크가 끊어지지 않도록 하기위함
러너
- 티밍 구성 시 동작 방식 지정 (트래픽 처리 방식)
- 러너 방식
러너 | 설명 |
broadcast | 각각의 인터페이스마다 패킷 전달 |
roundrobin |
하나씩 번갈아가면서 패킷 전달 |
loadbalance | 처리량(상태)에 따라 부하분산 기능 제공 |
active-backup | 장애 복구 방식의 기능만 제공 |
LACP | 네트워크 장비(스위치)에서 설정해둔 방식으로 동작 |
인터페이스 준비
NAT 네트워크 카드 두 개 설정
> 가상 머신 전원 끄기
> 가상 머신 속성
> 네트워크
> 어댑터 총 3개 설정: NAT 네트워크 2개, 호스트 전용 어댑터 1개
인터페이스 아키텍처
- 팀 인터페이스를 활성화하더라도 포트 인터페이스는 활성화되지 않음
- 포트 인터페이스 활성화 시 팀 인터페이스 자동 활성화
- 포트 인터페이스 비활성화 시 팀 인터페이스 활성화 유지
- 팀 인터페이스 비활성화 시 모든 포트 인터페이스 비활성화
인터페이스 설정
NAT 네트워크 비활성화 (enp0s3, enp0s9)
# 연결된 인터페이스 확인
[root@team ~]# nmcli c s
NAME UUID TYPE DEVICE
Wired connection 1 a97fc47b-0dd9-3d92-a146-17b8947a836c ethernet enp0s9
enp0s8 12fddb3e-080a-4945-9673-80141255a31b ethernet enp0s8
virbr0 c1ec0042-e850-4398-8e21-7411149e676d bridge virbr0
enp0s3 f093169b-ee0b-4740-9f54-4056c6c3d1bf ethernet --
# NAT 네트워크 비활성화
[root@team ~]# nmcli con down enp0s3
[root@team ~]# nmcli con down Wired connection 1
# 인터페이스 상태 확인
[root@team ~]# nmcli dev status
DEVICE TYPE STATE CONNECTION
enp0s8 ethernet connected enp0s8
virbr0 bridge connected virbr0
enp0s3 ethernet disconnected --
enp0s9 ethernet disconnected --
lo loopback unmanaged --
virbr0-nic tun unmanaged --
팀 인터페이스 생성 (team01: 가상 인터페이스)
# type: team / team-slave
1) team: 팀 인터페이스
2) team-slave: 포트 인터페이스
# config: 러너 방식 (json 문법)
***작성 시 주의: 입력 시 오타에 대한 오류가 발생하지 않음
[root@team ~]# nmcli connection add type team con-name team01 ifname team01 config '{"runner": {"name": "activebackup"}}'
Connection 'team01' (7cbad7b0-7802-4fe1-b1d8-1c561d42059e) successfully added.
team01 가상 인터페이스는 생성되었으나 실제 IP 주소가 할당되지 않은 상태
생성한 팀 인터페이스에 IP 주소 정적 할당
[root@team ~]# nmcli con mod team01 ipv4.addresses 10.0.2.110/24
[root@team ~]# nmcli con mod team01 ipv4.gateway 10.0.2.1
[root@team ~]# nmcli con mod team01 ipv4.dns 8.8.8.8
[root@team ~]# nmcli con mod team01 ipv4.method manual
[root@team ~]# nmcli con up team01
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/14)
[root@team ~]# teamdctl team01 state
...
ipv4.method: manual
ipv4.dns: 8.8.8.8
ipv4.dns-search: --
ipv4.dns-options: ""
ipv4.dns-priority: 0
ipv4.addresses: 10.0.2.110/24
ipv4.gateway: 10.0.2.1
...
포트 인터페이스 생성 (team01-port1, team01-port2: 물리 인터페이스)
-> DHCP 서버에서 IP 주소를 할당받음
[root@team ~]# nmcli connection add type team-slave con-name team01-port1 ifname enp0s3 master team01
Connection 'team01-port1' (217bee6c-051c-4eaf-868a-04843ff07741) successfully added.
[root@team ~]# nmcli connection add type team-slave con-name team01-port2 ifname enp0s9 master team01
Connection 'team01-port2' (042b8ca2-9fbf-4506-8295-cd4751098371) successfully added.
팀/포트 인터페이스 활성화
*** 팀 인터페이스 활성화를 위해서는 반드시 포트 인터페이스 활성화 필요
[root@team ~]# nmcli con up team01-port1
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/13)
[root@team ~]# nmcli con up team01-port2
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/12)
[root@team ~]# nmcli con up team01
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/8)
참고: 설정한 러너 변경
1) nmcli con mod team01 team.config '{"runner ....
2) 별도의 json 형태의 파일을 이용 가능
-> nmcli con mod team01 team.config FILE
/usr/share/doc/team-XXX/example_configs/ 에서 참고
nmcli con mod team01 team.config '{"runner": {"name": "roundrobin"}}'
'쿠버네티스 교육 > 프로젝트' 카테고리의 다른 글
220526_5_세미 프로젝트_웹 서비스 구축_L4, L7 로드밸런서 구성 (0) | 2022.05.26 |
---|---|
220526_4_세미 프로젝트_웹 서비스 구축_L4 로드밸런서 구성 (0) | 2022.05.26 |
220526_3_세미 프로젝트_웹 서비스 구축_HAProxy 로그 기록 방식 정의 (0) | 2022.05.26 |
220526_2_세미 프로젝트_웹 서비스 구축_로드밸런서 SSL 인증서 적용 (0) | 2022.05.26 |
220526_1_세미 프로젝트_웹 서비스 구축_로드밸런서 상태 체크 (0) | 2022.05.26 |