MDRM 이중화 환경에서 Mac Address 충돌 현상

Table of Contents

1. Environment

1) docker container 생성으로 구동되는 모든 MDRM 버전

2) MDRM 관제서버를 Acitve-Standby 환경으로 구성한 싸이트

  #

2. Symptoms

1) 네트워크 모니터링 장비에서 Mac Address “02:42:ac:11:00:02″ 가 충돌되는 메시지가 발생함

2) 네트워크 장비에서 MDRM Active, Standby 두대의 서버에서 위 Mac Address가 사용되는 메시지 발생

  #

3. Cause

1) Docker에서 Container 생성 시 내부 Container의 Mac Address를 항상 맨 처음에 “02:42:ac:11:00:02″로 할당하여 생성

2) 이 후 같은 서버에서 Container를 추가 생성 시 Mac Address를 하나씩 증가하여 할당함

3) 위 Mac Address 할당에 대한 정상한 이유는 알 수 없으나 “02:42:ac” 로 시작하는 vendor가 없기 때문에 다른 vendor 장비와의 충돌을 방지하려고 하는 것으로 추정됨

  #

4. Solution

– Mac address 충돌을 방지하기 위해 Standby 서버에서 MDRM Container 생성 시 “–mac-address <<원하는 MacAddress>>” 내용을 추가 해 줌

  #

5. Workaround

– 실제 KDB산업은행 사이트에 적용한 작업 내용 임

1) Active 서버의 Container 중지

2) VIP, 및 공유 스토리지 영역을 Active 서버에서 Standby 서버로 전환

3) Standby 서버의 “docker stop” 및 “docker rm”으로 container 삭제

4) Standby 서버에서 컨테이너 생성 시 “–mac-address” 옵션 추가하여 container 생성

 # docker run –privileged -d -h <<hostname>> –name gam –mac-address “02:42:ac:11:11:02″ -e “GAMLANG=ko” -e “TZ=Asia/Seoul” -p 80:80 -p 443:443 -p 8443:8443 -p 5055:5055 -p 5673:5673 -p 162:162/udp -v /opt/gam:/gampkgs/data gam

<<주의사항>> 
패치 및 업그레이드 수행 시 Standby 서버에서는 항상 위 옵션으로 Container를 생성해야 함