SlideShare a Scribd company logo
서버/인프라를 지탱하는 기술
     웹 서버의 다중화
(IPVS를 이용한 로드밸런서)
             양충현
DNS 라운드로빈과 로드밸런서의 차이

• DNS Round Robin
  – DNS를 이용해서 하나의 서비스에 여러 대의
    서버를 분산시키는 방법.
  – 웹 서버 마다 공인 IP 할당.
  – 균등하게 분산 안됨.
  – 웹 서버가 다운되어도 감지 못함.
DNS 라운드로빈과 로드밸런서의 차이

• Load Balancer
  – 하나의 IP주소에 대해 요청을 복수의 서버로
    분산.
  – 공인 IP를 가진 가상적인 서버로 동작하여 요
    청의 대해 실제 웹 서버로 중계 역할.
  – 여러 대의 리얼 서버중 한 대를 선택해서 중계.
  – 고가의 장비 및 유지 보수 비용이 큼.
• 비용 절약으로인한 OSS(opensource
  software) 구축
IPVS-리눅스로 로드밸런서 구성
• 리눅스로 특별한 S/W 없이 라우터 운용가능.
• IPVS(IP Virtual Server)라는 부하 분산 기능을 제공
  하는 모듈도 포함.
• 로드밸런서 종류와 IPVS 기능
  – L4 스위치
    • 트랜스 포트 계층까지 의 정보를 분석.
    • IP, Port에 따라 분산대상 서버지정.
  – L7 스위치
    • 애플리케이션 계층까지 정보를 분석.
    • URL에 따라 분산대상 서버 지정.
  – IPVS에 내장되어 있는 것은 L4 스위치에 해당.
    • L7 스위치는 이용불가.
스케쥴링 알고리즘
• rr(round-robin)
   – 차례대로 처리.
• wrr(weighted round-robin)
   – rr + 가중치.
• lc(least-connection)
   – 접속수가 가장 적은 서버 선택.
• wlc(weighted least-connection)
   – lc + 가중치.
• sed(shortest expected delay)
   – 응답속도가 가장 빠른 서버 선택.
• nq(never queue)
   – sed와 동일 그러니 active 수가 0인 서버 최우선으로 선택.
스케쥴링 알고리즘
• sh(source hashing)
  – source ip 주소 해시 값 계산 후 분산 서버 선택.
• dh(destination hashing)
  – 목적지 ip 주소 해시 값 계산 후 분산 서버 선택.
• lblc(locality-based least-connection)
  – 접속수가 가중치로 지정한 값을 넘기 전까지 동일한 서버
    선택.
• lblcr(locality-based least-connection with
  replication)
  – lblc + 모든 서버의 접속수가 가중치로 지정한 값을 넘는
    경우 접속수가 가장 적은 서버 선택.
IPVS 사용하기
• ipvsadm
  – IPVS에서 제공하는 명령툴.
  – 가상서버를 정의하고 리얼 서버를 할당.
  – 접속상황,전송률, 통계정보를 제공.
• Keepalived
  – IPVS를 이용하여 가상서버를 구축.
  – 리얼 서버의 상태 체크.(다운 시 부하분산 제외)
     • HTTP_GET, SSL_GET, TCP_CHECK, SMTP_CHECK,
       MISC_CHECK
L4스위치와 L7스위치

              L4 스위치




              L7 스위치



• L4스위치는 클라이언트가 통신하는 곳은 리얼 서버.
• L7 스위치에 클라이언트와 리얼 서버 각각의 TCP
  세션을 전개.
NAT와 DSR
• NAT(Network Address Translation)
  – 한 네트워크 컴퓨터의 IPv4 주소를 다른 네트워크 컴
    퓨터의 IPv4 주소로 변환.
• DSR(Direct Server Return)
  – 로드밸런서 사용시 리얼서버에서 클라이언트로 되돌아
    가는 경우 목적지의 주소가 스위치 주소가 아닌 클라
    이언트 주소로 전달하는 개념.
  – 로드밸런서 병목, 높은 트래픽이 있는 경우 DSR로 권
    장.
NAT와 DSR 동작 방식
부하분산 시 주의점(동일 서브넷)
                                      이 구성에는 NAT 사용 불가.
                                      DSR로 구성.
                                    가상서버
                                    192.168.0.150/24




웹 서버             메일서버                    메일서버
192.168.0.1/24   192.168.0.151/24        192.168.0.152/24
서버/인프라를 지탱하는 기술
     라우터 및
  로드밸런서의 다중화
           양충현
다중화 프로토콜 VRRP
• 라우터나 로드밸러서 벤더들의 독자적인
  다중화 프로토콜
  – 서로 다른 벤더간 호환 불가.
• HSRP(Hot standby Routing Protocol)기
  반으로 벤더에 의존하지 않는 다중화 프로
  토콜 VRRP(Virtual Router Redundancy
  Protocol) 개발.
VRRP 패킷




• 마스터 노드가 정기적으로 VRRP 패킷을 멀티캐스팅
  (224.0.0.18)주소로 송신.
 – 마스터가 정상 작동임을 알리는 메시지(Advertisement)
• 백업 노드는 VRRP 패킷을 수신하는 동안은 대기중, 일정
  시간 수신 하지 못하면 마스터 노드 다운으로 판단 장애
  극복 시작.
가상 라우터 ID
  로드 밸런서 A                    로드 밸런서 B
  (Active)         VRRP       (Backup)



   VRRP 패킷을 송신   224.0.0.18


  로드 밸런서 C                      로드 밸런서 D
  (Active)                      (Backup)
                    VRRP

• Virtual Rtr ID.
• VRRP 패킷은 멀티 캐스팅주소로 송신
 – 주소 변경 불가.
• 인스턴스를 구분하기 위한 용도.
우선순위(Priority)
• Priority.
• VRRP 구조적으로 100대의 백업 노드를 가
  질수 있음.
• 백업 노드가 2대 이상 작동 시 우선순위
  부여.
• 수치적으로 높을수록 우선순위가 높음.
• 사용범위는 1~255, 기본값은 100
선점형 모드(Preemptive Mode)
• 선점형 모드 유효화
 – 자신의 Priority보다 낮은 값을 수신하면
   master상태로 변경.
 – Default mode.
• 선전형 모드 무효화
 – 자신의 Priority 보다 낮은 값을 수신하더라도
   현 상태를 유지.
가상 MAC주소
• VRRP에는 가상 MAC주소가 정의.
• 장애극복 시 IP주소뿐만 아니라, MAC주소
  도 함께 인계.
  – MAC 주소를 인계하지 않을 경우, 통신 상대
    가 되는 모든 장비의 ARP 테이블의 변경 필요.
• Physical/Virtual 2가지 mode
  – Default mode Virtual.
Keepalived의 구조상의 문제
• Keepalived의 VRRP는 가상 MAC주소를 허용하지 않
  음.
• 장애극복 시 ARP 엔트리가 갱신되지 않는 장비가 있
  을 경우, APR 캐시가 clear가 되까지 통신되지 않을
  위험성 소지.
• gratuitous ARP의 지연송신
  – 마스터 상태로 변경 후 GARP를 송신 시 네트워크 상태 불
    안정, 일시적인 트래픽이 집중되어 통신이 안될 수 있음.
  – 수 초 정도 기다린 후 GARP 송신.
  – grap_master_delay로 설정.
  – Default value 5초.
Keepalived 다중화 구성

                                           장애
                   VRRP                                       VRRP
      lv1                   lv2                  lv1                   lv2
 10.0.0.252/24         10.0.0.253/24        10.0.0.252/24         10.0.0.253/24
192,168.0.252/24      192,168.0.253/24     192,168.0.252/24      192,168.0.253/24
      VIP                    가상서버             가상서버                     VIP
 10.0.0.254/24               10.0.0.1         10.0.0.1            10.0.0.254/24
192,168.0.254/24                                                 192,168.0.254/24
    가상서버                                                             가상서버
    10.0.0.1                                                         10.0.0.1




  웹서버(web1)               웹서버(web2)          웹서버(web1)               웹서버(web2)
  192.168.0.1/24          192.168.0.2/24     192.168.0.1/24          192.168.0.2/24
VRRP의 설정
 • lv1의 예




                lv2는 102으로 변경




• lv1과 lv2에서 keepalived를 기동하면 lv1에 VIP가 할당 ifconfig로는 확인 불가,
ip 명령으로 확인.
VRRP의 동작확인
• 동작 확인
 a. lv1을 shutdown 한다. lv2=Master(O)
 b. lv1을 기동한다. lv1=Master, lv2=Backup(O)
 c. lv1의 eth0 케이블을 뺀다. lv1=Backup,
    lv2=Master(O)
 d. lv1의 eth0 케이블을 꽂는다. lv1=Master,
    lv2=Backup(O)
 e. lv1의 eth1 케이블을 뺀다. lv1=Master,
    lv2=Backup
   •   VRRP 패킷은 eth0으로만 전송 eth1의 lan cable을 빼더
       라도 이상동작 확인 불가.
VRRP 인스턴스 분리



                                   <-VRPP마다 고유한 값
                            <-lv2는 102으로 변경
           <-VRPP마다 고유한 값
   <-lv2는 102으로 변경
VRRP 인스턴스 동기화
• vrrp_sync_group
• 여러 VRRP 인스턴스에서 상태를 동기화
  시키기 위한 설정.
• 그룹 내 하나의 인스턴스가 Backup이 되
  는 경우 연동 해서 다른 인스턴스 또한
  Backup이 된다.

More Related Content

What's hot

[242]open stack neutron dataplane 구현
[242]open stack neutron   dataplane 구현[242]open stack neutron   dataplane 구현
[242]open stack neutron dataplane 구현
NAVER D2
 
[234]멀티테넌트 하둡 클러스터 운영 경험기
[234]멀티테넌트 하둡 클러스터 운영 경험기[234]멀티테넌트 하둡 클러스터 운영 경험기
[234]멀티테넌트 하둡 클러스터 운영 경험기
NAVER D2
 
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
SANG WON PARK
 
초보자를 위한 네트워크/VLAN 기초
초보자를 위한 네트워크/VLAN 기초초보자를 위한 네트워크/VLAN 기초
초보자를 위한 네트워크/VLAN 기초
Open Source Consulting
 
[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0
[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0
[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0
Ji-Woong Choi
 
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
Hyunmin Lee
 
[112]clova platform 인공지능을 엮는 기술
[112]clova platform 인공지능을 엮는 기술[112]clova platform 인공지능을 엮는 기술
[112]clova platform 인공지능을 엮는 기술
NAVER D2
 
[온라인교육시리즈] 베어메탈서비스 소개 및 활용 - 현영환 클라우드 솔루션 아키텍트
[온라인교육시리즈] 베어메탈서비스 소개 및 활용 - 현영환 클라우드 솔루션 아키텍트[온라인교육시리즈] 베어메탈서비스 소개 및 활용 - 현영환 클라우드 솔루션 아키텍트
[온라인교육시리즈] 베어메탈서비스 소개 및 활용 - 현영환 클라우드 솔루션 아키텍트
NAVER CLOUD PLATFORMㅣ네이버 클라우드 플랫폼
 
Kafka slideshare
Kafka   slideshareKafka   slideshare
Kafka slideshare
wonyong hwang
 
[MeetUp][1st] 오리뎅이의_쿠버네티스_네트워킹
[MeetUp][1st] 오리뎅이의_쿠버네티스_네트워킹[MeetUp][1st] 오리뎅이의_쿠버네티스_네트워킹
[MeetUp][1st] 오리뎅이의_쿠버네티스_네트워킹
InfraEngineer
 
Openstack live migration
Openstack live migrationOpenstack live migration
Openstack live migration
ymtech
 
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
SANG WON PARK
 
[244]네트워크 모니터링 시스템(nms)을 지탱하는 기술
[244]네트워크 모니터링 시스템(nms)을 지탱하는 기술[244]네트워크 모니터링 시스템(nms)을 지탱하는 기술
[244]네트워크 모니터링 시스템(nms)을 지탱하는 기술
NAVER D2
 
Optane DC Persistent Memory(DCPMM) 성능 테스트
Optane DC Persistent Memory(DCPMM) 성능 테스트Optane DC Persistent Memory(DCPMM) 성능 테스트
Optane DC Persistent Memory(DCPMM) 성능 테스트
SANG WON PARK
 
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
Hyunjik Bae
 
김성윤 - 우분투로 슈퍼컴 만들기 (2011Y03M26D)
김성윤 - 우분투로 슈퍼컴 만들기 (2011Y03M26D)김성윤 - 우분투로 슈퍼컴 만들기 (2011Y03M26D)
김성윤 - 우분투로 슈퍼컴 만들기 (2011Y03M26D)
Ubuntu Korea Community
 
메모리 할당에 관한 기초
메모리 할당에 관한 기초메모리 할당에 관한 기초
메모리 할당에 관한 기초
Changyol BAEK
 
150416 OpenStack Networking with Neutron Jieun, Kim
150416 OpenStack Networking with Neutron Jieun, Kim150416 OpenStack Networking with Neutron Jieun, Kim
150416 OpenStack Networking with Neutron Jieun, Kim
jieun kim
 
Apache kafka performance(latency)_benchmark_v0.3
Apache kafka performance(latency)_benchmark_v0.3Apache kafka performance(latency)_benchmark_v0.3
Apache kafka performance(latency)_benchmark_v0.3
SANG WON PARK
 
150625 마이크로커널 운영체제 김지은
150625 마이크로커널 운영체제 김지은150625 마이크로커널 운영체제 김지은
150625 마이크로커널 운영체제 김지은
jieun kim
 

What's hot (20)

[242]open stack neutron dataplane 구현
[242]open stack neutron   dataplane 구현[242]open stack neutron   dataplane 구현
[242]open stack neutron dataplane 구현
 
[234]멀티테넌트 하둡 클러스터 운영 경험기
[234]멀티테넌트 하둡 클러스터 운영 경험기[234]멀티테넌트 하둡 클러스터 운영 경험기
[234]멀티테넌트 하둡 클러스터 운영 경험기
 
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
Apache kafka 모니터링을 위한 Metrics 이해 및 최적화 방안
 
초보자를 위한 네트워크/VLAN 기초
초보자를 위한 네트워크/VLAN 기초초보자를 위한 네트워크/VLAN 기초
초보자를 위한 네트워크/VLAN 기초
 
[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0
[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0
[오픈소스컨설팅]RHEL7/CentOS7 Pacemaker기반-HA시스템구성-v1.0
 
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
카프카(kafka) 성능 테스트 환경 구축 (JMeter, ELK)
 
[112]clova platform 인공지능을 엮는 기술
[112]clova platform 인공지능을 엮는 기술[112]clova platform 인공지능을 엮는 기술
[112]clova platform 인공지능을 엮는 기술
 
[온라인교육시리즈] 베어메탈서비스 소개 및 활용 - 현영환 클라우드 솔루션 아키텍트
[온라인교육시리즈] 베어메탈서비스 소개 및 활용 - 현영환 클라우드 솔루션 아키텍트[온라인교육시리즈] 베어메탈서비스 소개 및 활용 - 현영환 클라우드 솔루션 아키텍트
[온라인교육시리즈] 베어메탈서비스 소개 및 활용 - 현영환 클라우드 솔루션 아키텍트
 
Kafka slideshare
Kafka   slideshareKafka   slideshare
Kafka slideshare
 
[MeetUp][1st] 오리뎅이의_쿠버네티스_네트워킹
[MeetUp][1st] 오리뎅이의_쿠버네티스_네트워킹[MeetUp][1st] 오리뎅이의_쿠버네티스_네트워킹
[MeetUp][1st] 오리뎅이의_쿠버네티스_네트워킹
 
Openstack live migration
Openstack live migrationOpenstack live migration
Openstack live migration
 
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...Apache kafka performance(throughput) - without data loss and guaranteeing dat...
Apache kafka performance(throughput) - without data loss and guaranteeing dat...
 
[244]네트워크 모니터링 시스템(nms)을 지탱하는 기술
[244]네트워크 모니터링 시스템(nms)을 지탱하는 기술[244]네트워크 모니터링 시스템(nms)을 지탱하는 기술
[244]네트워크 모니터링 시스템(nms)을 지탱하는 기술
 
Optane DC Persistent Memory(DCPMM) 성능 테스트
Optane DC Persistent Memory(DCPMM) 성능 테스트Optane DC Persistent Memory(DCPMM) 성능 테스트
Optane DC Persistent Memory(DCPMM) 성능 테스트
 
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
KGC 2014: 클라이언트 개발자를 위한 컴퓨터 네트워크 기초 배현직
 
김성윤 - 우분투로 슈퍼컴 만들기 (2011Y03M26D)
김성윤 - 우분투로 슈퍼컴 만들기 (2011Y03M26D)김성윤 - 우분투로 슈퍼컴 만들기 (2011Y03M26D)
김성윤 - 우분투로 슈퍼컴 만들기 (2011Y03M26D)
 
메모리 할당에 관한 기초
메모리 할당에 관한 기초메모리 할당에 관한 기초
메모리 할당에 관한 기초
 
150416 OpenStack Networking with Neutron Jieun, Kim
150416 OpenStack Networking with Neutron Jieun, Kim150416 OpenStack Networking with Neutron Jieun, Kim
150416 OpenStack Networking with Neutron Jieun, Kim
 
Apache kafka performance(latency)_benchmark_v0.3
Apache kafka performance(latency)_benchmark_v0.3Apache kafka performance(latency)_benchmark_v0.3
Apache kafka performance(latency)_benchmark_v0.3
 
150625 마이크로커널 운영체제 김지은
150625 마이크로커널 운영체제 김지은150625 마이크로커널 운영체제 김지은
150625 마이크로커널 운영체제 김지은
 

Viewers also liked

톰캣 운영 노하우
톰캣 운영 노하우톰캣 운영 노하우
톰캣 운영 노하우
jieunsys
 
김명환
김명환김명환
김명환Eanis_
 
블록체인
블록체인블록체인
블록체인
정식 황
 
비트코인 네트워크 기술 소개 - 임석의, 윤석주
비트코인 네트워크 기술 소개 - 임석의, 윤석주비트코인 네트워크 기술 소개 - 임석의, 윤석주
비트코인 네트워크 기술 소개 - 임석의, 윤석주
Seok-ju Yun
 
블록 체인 기술 원리, 이용 현황, 전망과 활용 분야.
블록 체인 기술 원리,  이용 현황, 전망과 활용 분야. 블록 체인 기술 원리,  이용 현황, 전망과 활용 분야.
블록 체인 기술 원리, 이용 현황, 전망과 활용 분야.
JaeGon Lim
 
How Blockchain Works - 블록체인의 원리
How Blockchain Works - 블록체인의 원리How Blockchain Works - 블록체인의 원리
How Blockchain Works - 블록체인의 원리
SeokWon Kim
 
[오픈소스컨설팅]Zabbix Installation and Configuration Guide
[오픈소스컨설팅]Zabbix Installation and Configuration Guide[오픈소스컨설팅]Zabbix Installation and Configuration Guide
[오픈소스컨설팅]Zabbix Installation and Configuration Guide
Ji-Woong Choi
 
Wire shark 사용법 및 네트워크 개론 살짝 설명
Wire shark 사용법 및 네트워크 개론 살짝 설명Wire shark 사용법 및 네트워크 개론 살짝 설명
Wire shark 사용법 및 네트워크 개론 살짝 설명
진우 이
 
서버 푸쉬 (c#)
서버 푸쉬   (c#) 서버 푸쉬   (c#)
서버 푸쉬 (c#)
Shon Parker
 
Apache tomcat 로드밸런싱 김태호-20140808
Apache tomcat 로드밸런싱 김태호-20140808Apache tomcat 로드밸런싱 김태호-20140808
Apache tomcat 로드밸런싱 김태호-20140808
Taeho Kim
 
20150724 제10회 부산 모바일 포럼 - 웹과 모바일을 위한 클라우드 데이터베이스 필승 전략
20150724 제10회 부산 모바일 포럼 - 웹과 모바일을 위한 클라우드 데이터베이스 필승 전략20150724 제10회 부산 모바일 포럼 - 웹과 모바일을 위한 클라우드 데이터베이스 필승 전략
20150724 제10회 부산 모바일 포럼 - 웹과 모바일을 위한 클라우드 데이터베이스 필승 전략
Amazon Web Services Korea
 
Jco14 오픈소스를 이용한 모니터링 방법
Jco14 오픈소스를 이용한 모니터링 방법Jco14 오픈소스를 이용한 모니터링 방법
Jco14 오픈소스를 이용한 모니터링 방법정수 한
 
서버 아키텍처 이해를 위한 프로세스와 쓰레드
서버 아키텍처 이해를 위한 프로세스와 쓰레드서버 아키텍처 이해를 위한 프로세스와 쓰레드
서버 아키텍처 이해를 위한 프로세스와 쓰레드
KwangSeob Jeong
 
7급 공무원도 쉽게 따라하는 쉘 스크립트
7급 공무원도 쉽게 따라하는 쉘 스크립트7급 공무원도 쉽게 따라하는 쉘 스크립트
7급 공무원도 쉽게 따라하는 쉘 스크립트Young-Ho Cha
 
간단한 쉘 스크립트 작성하기
간단한 쉘 스크립트 작성하기간단한 쉘 스크립트 작성하기
간단한 쉘 스크립트 작성하기
licubeclub
 
NDC 11 자이언트 서버의 비밀
NDC 11 자이언트 서버의 비밀NDC 11 자이언트 서버의 비밀
NDC 11 자이언트 서버의 비밀
승명 양
 
tcp ip study
tcp ip studytcp ip study
tcp ip study
준철 박
 
2차년도 융합전문가 특강 - 네트워크 보안
2차년도 융합전문가 특강 - 네트워크 보안2차년도 융합전문가 특강 - 네트워크 보안
2차년도 융합전문가 특강 - 네트워크 보안
ictplusud
 

Viewers also liked (20)

톰캣 운영 노하우
톰캣 운영 노하우톰캣 운영 노하우
톰캣 운영 노하우
 
김명환
김명환김명환
김명환
 
블록체인
블록체인블록체인
블록체인
 
비트코인 네트워크 기술 소개 - 임석의, 윤석주
비트코인 네트워크 기술 소개 - 임석의, 윤석주비트코인 네트워크 기술 소개 - 임석의, 윤석주
비트코인 네트워크 기술 소개 - 임석의, 윤석주
 
블록 체인 기술 원리, 이용 현황, 전망과 활용 분야.
블록 체인 기술 원리,  이용 현황, 전망과 활용 분야. 블록 체인 기술 원리,  이용 현황, 전망과 활용 분야.
블록 체인 기술 원리, 이용 현황, 전망과 활용 분야.
 
How Blockchain Works - 블록체인의 원리
How Blockchain Works - 블록체인의 원리How Blockchain Works - 블록체인의 원리
How Blockchain Works - 블록체인의 원리
 
[오픈소스컨설팅]Zabbix Installation and Configuration Guide
[오픈소스컨설팅]Zabbix Installation and Configuration Guide[오픈소스컨설팅]Zabbix Installation and Configuration Guide
[오픈소스컨설팅]Zabbix Installation and Configuration Guide
 
Cloud진 짜
Cloud진 짜Cloud진 짜
Cloud진 짜
 
Wire shark 사용법 및 네트워크 개론 살짝 설명
Wire shark 사용법 및 네트워크 개론 살짝 설명Wire shark 사용법 및 네트워크 개론 살짝 설명
Wire shark 사용법 및 네트워크 개론 살짝 설명
 
서버 푸쉬 (c#)
서버 푸쉬   (c#) 서버 푸쉬   (c#)
서버 푸쉬 (c#)
 
Apache tomcat 로드밸런싱 김태호-20140808
Apache tomcat 로드밸런싱 김태호-20140808Apache tomcat 로드밸런싱 김태호-20140808
Apache tomcat 로드밸런싱 김태호-20140808
 
20150724 제10회 부산 모바일 포럼 - 웹과 모바일을 위한 클라우드 데이터베이스 필승 전략
20150724 제10회 부산 모바일 포럼 - 웹과 모바일을 위한 클라우드 데이터베이스 필승 전략20150724 제10회 부산 모바일 포럼 - 웹과 모바일을 위한 클라우드 데이터베이스 필승 전략
20150724 제10회 부산 모바일 포럼 - 웹과 모바일을 위한 클라우드 데이터베이스 필승 전략
 
Jco14 오픈소스를 이용한 모니터링 방법
Jco14 오픈소스를 이용한 모니터링 방법Jco14 오픈소스를 이용한 모니터링 방법
Jco14 오픈소스를 이용한 모니터링 방법
 
서버 아키텍처 이해를 위한 프로세스와 쓰레드
서버 아키텍처 이해를 위한 프로세스와 쓰레드서버 아키텍처 이해를 위한 프로세스와 쓰레드
서버 아키텍처 이해를 위한 프로세스와 쓰레드
 
7급 공무원도 쉽게 따라하는 쉘 스크립트
7급 공무원도 쉽게 따라하는 쉘 스크립트7급 공무원도 쉽게 따라하는 쉘 스크립트
7급 공무원도 쉽게 따라하는 쉘 스크립트
 
간단한 쉘 스크립트 작성하기
간단한 쉘 스크립트 작성하기간단한 쉘 스크립트 작성하기
간단한 쉘 스크립트 작성하기
 
NDC 11 자이언트 서버의 비밀
NDC 11 자이언트 서버의 비밀NDC 11 자이언트 서버의 비밀
NDC 11 자이언트 서버의 비밀
 
Ppt
PptPpt
Ppt
 
tcp ip study
tcp ip studytcp ip study
tcp ip study
 
2차년도 융합전문가 특강 - 네트워크 보안
2차년도 융합전문가 특강 - 네트워크 보안2차년도 융합전문가 특강 - 네트워크 보안
2차년도 융합전문가 특강 - 네트워크 보안
 

Similar to 서버 인프라를지탱하는기술(1.3,1.4)

서버인프라 구축 입문 basis of composing server and infra
서버인프라 구축 입문 basis of composing server and infra서버인프라 구축 입문 basis of composing server and infra
서버인프라 구축 입문 basis of composing server and infraHwanseok Park
 
Freebsd HA with CARP
Freebsd HA with CARPFreebsd HA with CARP
Freebsd HA with CARP
Genie Chae
 
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
Laehyoung Kim
 
Backend Master | 1.1 Enhancing performance - Scalability (Scale UP & OUT)
Backend Master | 1.1 Enhancing performance - Scalability (Scale UP & OUT)Backend Master | 1.1 Enhancing performance - Scalability (Scale UP & OUT)
Backend Master | 1.1 Enhancing performance - Scalability (Scale UP & OUT)
Kyunghun Jeon
 
무정지 웹서비스
무정지 웹서비스무정지 웹서비스
무정지 웹서비스
영진 채
 
[BRK40019] - 하이브리드 클라우드를 위한 Azure Networks 이해
[BRK40019] - 하이브리드 클라우드를 위한 Azure Networks 이해[BRK40019] - 하이브리드 클라우드를 위한 Azure Networks 이해
[BRK40019] - 하이브리드 클라우드를 위한 Azure Networks 이해
재성 고
 
NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기
NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기
NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기
Jinuk Kim
 
cdit hci zerto '소통하는 세미나' 소개자료(201705)
cdit hci zerto '소통하는 세미나' 소개자료(201705)cdit hci zerto '소통하는 세미나' 소개자료(201705)
cdit hci zerto '소통하는 세미나' 소개자료(201705)
CDIT-HCI
 
Netmanias L2,L3 Training (1) L2 Ethernet
Netmanias L2,L3 Training (1) L2 EthernetNetmanias L2,L3 Training (1) L2 Ethernet
Netmanias L2,L3 Training (1) L2 Ethernet
Chris Changmo Yoo
 
2nd SDN Interest Group Seminar-Session3 (121218)
2nd SDN Interest Group Seminar-Session3 (121218)2nd SDN Interest Group Seminar-Session3 (121218)
2nd SDN Interest Group Seminar-Session3 (121218)
NAIM Networks, Inc.
 
ShieldOne-SIG 제품소개서 3.5
ShieldOne-SIG 제품소개서 3.5ShieldOne-SIG 제품소개서 3.5
ShieldOne-SIG 제품소개서 3.5
PLUS-I
 
Dragon flow and tricircle
Dragon flow and tricircleDragon flow and tricircle
Dragon flow and tricircle
Yongyoon Shin
 
Amazon Virtual Private Cloud 겉핥기
Amazon Virtual Private Cloud 겉핥기Amazon Virtual Private Cloud 겉핥기
Amazon Virtual Private Cloud 겉핥기
DaewookShin
 
오픈스택 멀티노드 설치 후기
오픈스택 멀티노드 설치 후기오픈스택 멀티노드 설치 후기
오픈스택 멀티노드 설치 후기
영우 김
 
[온라인교육시리즈] 네이버클라우드플랫폼 주요 업데이트 - 윤진규 클라우드 솔루션 아키텍트
[온라인교육시리즈] 네이버클라우드플랫폼 주요 업데이트 - 윤진규 클라우드 솔루션 아키텍트[온라인교육시리즈] 네이버클라우드플랫폼 주요 업데이트 - 윤진규 클라우드 솔루션 아키텍트
[온라인교육시리즈] 네이버클라우드플랫폼 주요 업데이트 - 윤진규 클라우드 솔루션 아키텍트
NAVER CLOUD PLATFORMㅣ네이버 클라우드 플랫폼
 
네트워크 가상화 발표자료-SDN/NFV/Cloud
네트워크 가상화 발표자료-SDN/NFV/Cloud네트워크 가상화 발표자료-SDN/NFV/Cloud
네트워크 가상화 발표자료-SDN/NFV/Cloud
seungdols
 
[아꿈사/110528] 멀티코어cpu이야기 5,6장
[아꿈사/110528] 멀티코어cpu이야기 5,6장[아꿈사/110528] 멀티코어cpu이야기 5,6장
[아꿈사/110528] 멀티코어cpu이야기 5,6장sung ki choi
 
[Azure study group] azure의 부하분산
[Azure study group] azure의 부하분산[Azure study group] azure의 부하분산
[Azure study group] azure의 부하분산
세준 김
 
Netmanias L2,L3 Training (3) L2, L3 QoS
Netmanias L2,L3 Training (3) L2, L3 QoSNetmanias L2,L3 Training (3) L2, L3 QoS
Netmanias L2,L3 Training (3) L2, L3 QoS
Chris Changmo Yoo
 
실전! AWS 하이브리드 네트워킹 (AWS Direct Connect 및 VPN 데모 세션) - 강동환, AWS 솔루션즈 아키텍트:: A...
실전! AWS 하이브리드 네트워킹 (AWS Direct Connect 및 VPN 데모 세션) - 강동환, AWS 솔루션즈 아키텍트::  A...실전! AWS 하이브리드 네트워킹 (AWS Direct Connect 및 VPN 데모 세션) - 강동환, AWS 솔루션즈 아키텍트::  A...
실전! AWS 하이브리드 네트워킹 (AWS Direct Connect 및 VPN 데모 세션) - 강동환, AWS 솔루션즈 아키텍트:: A...
Amazon Web Services Korea
 

Similar to 서버 인프라를지탱하는기술(1.3,1.4) (20)

서버인프라 구축 입문 basis of composing server and infra
서버인프라 구축 입문 basis of composing server and infra서버인프라 구축 입문 basis of composing server and infra
서버인프라 구축 입문 basis of composing server and infra
 
Freebsd HA with CARP
Freebsd HA with CARPFreebsd HA with CARP
Freebsd HA with CARP
 
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
 
Backend Master | 1.1 Enhancing performance - Scalability (Scale UP & OUT)
Backend Master | 1.1 Enhancing performance - Scalability (Scale UP & OUT)Backend Master | 1.1 Enhancing performance - Scalability (Scale UP & OUT)
Backend Master | 1.1 Enhancing performance - Scalability (Scale UP & OUT)
 
무정지 웹서비스
무정지 웹서비스무정지 웹서비스
무정지 웹서비스
 
[BRK40019] - 하이브리드 클라우드를 위한 Azure Networks 이해
[BRK40019] - 하이브리드 클라우드를 위한 Azure Networks 이해[BRK40019] - 하이브리드 클라우드를 위한 Azure Networks 이해
[BRK40019] - 하이브리드 클라우드를 위한 Azure Networks 이해
 
NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기
NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기
NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기
 
cdit hci zerto '소통하는 세미나' 소개자료(201705)
cdit hci zerto '소통하는 세미나' 소개자료(201705)cdit hci zerto '소통하는 세미나' 소개자료(201705)
cdit hci zerto '소통하는 세미나' 소개자료(201705)
 
Netmanias L2,L3 Training (1) L2 Ethernet
Netmanias L2,L3 Training (1) L2 EthernetNetmanias L2,L3 Training (1) L2 Ethernet
Netmanias L2,L3 Training (1) L2 Ethernet
 
2nd SDN Interest Group Seminar-Session3 (121218)
2nd SDN Interest Group Seminar-Session3 (121218)2nd SDN Interest Group Seminar-Session3 (121218)
2nd SDN Interest Group Seminar-Session3 (121218)
 
ShieldOne-SIG 제품소개서 3.5
ShieldOne-SIG 제품소개서 3.5ShieldOne-SIG 제품소개서 3.5
ShieldOne-SIG 제품소개서 3.5
 
Dragon flow and tricircle
Dragon flow and tricircleDragon flow and tricircle
Dragon flow and tricircle
 
Amazon Virtual Private Cloud 겉핥기
Amazon Virtual Private Cloud 겉핥기Amazon Virtual Private Cloud 겉핥기
Amazon Virtual Private Cloud 겉핥기
 
오픈스택 멀티노드 설치 후기
오픈스택 멀티노드 설치 후기오픈스택 멀티노드 설치 후기
오픈스택 멀티노드 설치 후기
 
[온라인교육시리즈] 네이버클라우드플랫폼 주요 업데이트 - 윤진규 클라우드 솔루션 아키텍트
[온라인교육시리즈] 네이버클라우드플랫폼 주요 업데이트 - 윤진규 클라우드 솔루션 아키텍트[온라인교육시리즈] 네이버클라우드플랫폼 주요 업데이트 - 윤진규 클라우드 솔루션 아키텍트
[온라인교육시리즈] 네이버클라우드플랫폼 주요 업데이트 - 윤진규 클라우드 솔루션 아키텍트
 
네트워크 가상화 발표자료-SDN/NFV/Cloud
네트워크 가상화 발표자료-SDN/NFV/Cloud네트워크 가상화 발표자료-SDN/NFV/Cloud
네트워크 가상화 발표자료-SDN/NFV/Cloud
 
[아꿈사/110528] 멀티코어cpu이야기 5,6장
[아꿈사/110528] 멀티코어cpu이야기 5,6장[아꿈사/110528] 멀티코어cpu이야기 5,6장
[아꿈사/110528] 멀티코어cpu이야기 5,6장
 
[Azure study group] azure의 부하분산
[Azure study group] azure의 부하분산[Azure study group] azure의 부하분산
[Azure study group] azure의 부하분산
 
Netmanias L2,L3 Training (3) L2, L3 QoS
Netmanias L2,L3 Training (3) L2, L3 QoSNetmanias L2,L3 Training (3) L2, L3 QoS
Netmanias L2,L3 Training (3) L2, L3 QoS
 
실전! AWS 하이브리드 네트워킹 (AWS Direct Connect 및 VPN 데모 세션) - 강동환, AWS 솔루션즈 아키텍트:: A...
실전! AWS 하이브리드 네트워킹 (AWS Direct Connect 및 VPN 데모 세션) - 강동환, AWS 솔루션즈 아키텍트::  A...실전! AWS 하이브리드 네트워킹 (AWS Direct Connect 및 VPN 데모 세션) - 강동환, AWS 솔루션즈 아키텍트::  A...
실전! AWS 하이브리드 네트워킹 (AWS Direct Connect 및 VPN 데모 세션) - 강동환, AWS 솔루션즈 아키텍트:: A...
 

More from Choonghyun Yang

Git
GitGit
Maven build for 멀티프로젝트 in jenkins
Maven build for 멀티프로젝트 in jenkins Maven build for 멀티프로젝트 in jenkins
Maven build for 멀티프로젝트 in jenkins
Choonghyun Yang
 
데이터 모델링
데이터 모델링데이터 모델링
데이터 모델링
Choonghyun Yang
 
Spring boot actuator
Spring boot   actuatorSpring boot   actuator
Spring boot actuator
Choonghyun Yang
 
Spring boot 5장 cli
Spring boot 5장 cliSpring boot 5장 cli
Spring boot 5장 cli
Choonghyun Yang
 
Spring boot 공작소(1-4장)
Spring boot 공작소(1-4장)Spring boot 공작소(1-4장)
Spring boot 공작소(1-4장)
Choonghyun Yang
 
자료구조 – 트리 (Tree)
자료구조 – 트리 (Tree)자료구조 – 트리 (Tree)
자료구조 – 트리 (Tree)
Choonghyun Yang
 
자료구조 큐
자료구조 큐자료구조 큐
자료구조 큐
Choonghyun Yang
 
연결 자료구조
연결 자료구조연결 자료구조
연결 자료구조
Choonghyun Yang
 
자바병렬프로그래밍 9.gui 애플리케이션
자바병렬프로그래밍 9.gui 애플리케이션자바병렬프로그래밍 9.gui 애플리케이션
자바병렬프로그래밍 9.gui 애플리케이션
Choonghyun Yang
 
그림으로 공부하는 오라클 구조
그림으로 공부하는 오라클 구조그림으로 공부하는 오라클 구조
그림으로 공부하는 오라클 구조
Choonghyun Yang
 
Http 완벽가이드(3장 http 메시지)
Http 완벽가이드(3장 http 메시지)Http 완벽가이드(3장 http 메시지)
Http 완벽가이드(3장 http 메시지)
Choonghyun Yang
 
Http 완벽 가이드(2장 url과 리소스)
Http 완벽 가이드(2장 url과 리소스)Http 완벽 가이드(2장 url과 리소스)
Http 완벽 가이드(2장 url과 리소스)
Choonghyun Yang
 
게이트단의 보안
게이트단의 보안게이트단의 보안
게이트단의 보안
Choonghyun Yang
 
Express 프레임워크
Express 프레임워크Express 프레임워크
Express 프레임워크
Choonghyun Yang
 
Bootstrap
BootstrapBootstrap
Bootstrap
Choonghyun Yang
 
아꿈사.C++ api 디자인.20140315 a
아꿈사.C++ api 디자인.20140315 a아꿈사.C++ api 디자인.20140315 a
아꿈사.C++ api 디자인.20140315 a
Choonghyun Yang
 
하둡관리
하둡관리하둡관리
하둡관리
Choonghyun Yang
 
Hadoop io part2
Hadoop io part2Hadoop io part2
Hadoop io part2
Choonghyun Yang
 
Atom
AtomAtom

More from Choonghyun Yang (20)

Git
GitGit
Git
 
Maven build for 멀티프로젝트 in jenkins
Maven build for 멀티프로젝트 in jenkins Maven build for 멀티프로젝트 in jenkins
Maven build for 멀티프로젝트 in jenkins
 
데이터 모델링
데이터 모델링데이터 모델링
데이터 모델링
 
Spring boot actuator
Spring boot   actuatorSpring boot   actuator
Spring boot actuator
 
Spring boot 5장 cli
Spring boot 5장 cliSpring boot 5장 cli
Spring boot 5장 cli
 
Spring boot 공작소(1-4장)
Spring boot 공작소(1-4장)Spring boot 공작소(1-4장)
Spring boot 공작소(1-4장)
 
자료구조 – 트리 (Tree)
자료구조 – 트리 (Tree)자료구조 – 트리 (Tree)
자료구조 – 트리 (Tree)
 
자료구조 큐
자료구조 큐자료구조 큐
자료구조 큐
 
연결 자료구조
연결 자료구조연결 자료구조
연결 자료구조
 
자바병렬프로그래밍 9.gui 애플리케이션
자바병렬프로그래밍 9.gui 애플리케이션자바병렬프로그래밍 9.gui 애플리케이션
자바병렬프로그래밍 9.gui 애플리케이션
 
그림으로 공부하는 오라클 구조
그림으로 공부하는 오라클 구조그림으로 공부하는 오라클 구조
그림으로 공부하는 오라클 구조
 
Http 완벽가이드(3장 http 메시지)
Http 완벽가이드(3장 http 메시지)Http 완벽가이드(3장 http 메시지)
Http 완벽가이드(3장 http 메시지)
 
Http 완벽 가이드(2장 url과 리소스)
Http 완벽 가이드(2장 url과 리소스)Http 완벽 가이드(2장 url과 리소스)
Http 완벽 가이드(2장 url과 리소스)
 
게이트단의 보안
게이트단의 보안게이트단의 보안
게이트단의 보안
 
Express 프레임워크
Express 프레임워크Express 프레임워크
Express 프레임워크
 
Bootstrap
BootstrapBootstrap
Bootstrap
 
아꿈사.C++ api 디자인.20140315 a
아꿈사.C++ api 디자인.20140315 a아꿈사.C++ api 디자인.20140315 a
아꿈사.C++ api 디자인.20140315 a
 
하둡관리
하둡관리하둡관리
하둡관리
 
Hadoop io part2
Hadoop io part2Hadoop io part2
Hadoop io part2
 
Atom
AtomAtom
Atom
 

서버 인프라를지탱하는기술(1.3,1.4)

  • 1. 서버/인프라를 지탱하는 기술 웹 서버의 다중화 (IPVS를 이용한 로드밸런서) 양충현
  • 2. DNS 라운드로빈과 로드밸런서의 차이 • DNS Round Robin – DNS를 이용해서 하나의 서비스에 여러 대의 서버를 분산시키는 방법. – 웹 서버 마다 공인 IP 할당. – 균등하게 분산 안됨. – 웹 서버가 다운되어도 감지 못함.
  • 3. DNS 라운드로빈과 로드밸런서의 차이 • Load Balancer – 하나의 IP주소에 대해 요청을 복수의 서버로 분산. – 공인 IP를 가진 가상적인 서버로 동작하여 요 청의 대해 실제 웹 서버로 중계 역할. – 여러 대의 리얼 서버중 한 대를 선택해서 중계. – 고가의 장비 및 유지 보수 비용이 큼. • 비용 절약으로인한 OSS(opensource software) 구축
  • 4. IPVS-리눅스로 로드밸런서 구성 • 리눅스로 특별한 S/W 없이 라우터 운용가능. • IPVS(IP Virtual Server)라는 부하 분산 기능을 제공 하는 모듈도 포함. • 로드밸런서 종류와 IPVS 기능 – L4 스위치 • 트랜스 포트 계층까지 의 정보를 분석. • IP, Port에 따라 분산대상 서버지정. – L7 스위치 • 애플리케이션 계층까지 정보를 분석. • URL에 따라 분산대상 서버 지정. – IPVS에 내장되어 있는 것은 L4 스위치에 해당. • L7 스위치는 이용불가.
  • 5. 스케쥴링 알고리즘 • rr(round-robin) – 차례대로 처리. • wrr(weighted round-robin) – rr + 가중치. • lc(least-connection) – 접속수가 가장 적은 서버 선택. • wlc(weighted least-connection) – lc + 가중치. • sed(shortest expected delay) – 응답속도가 가장 빠른 서버 선택. • nq(never queue) – sed와 동일 그러니 active 수가 0인 서버 최우선으로 선택.
  • 6. 스케쥴링 알고리즘 • sh(source hashing) – source ip 주소 해시 값 계산 후 분산 서버 선택. • dh(destination hashing) – 목적지 ip 주소 해시 값 계산 후 분산 서버 선택. • lblc(locality-based least-connection) – 접속수가 가중치로 지정한 값을 넘기 전까지 동일한 서버 선택. • lblcr(locality-based least-connection with replication) – lblc + 모든 서버의 접속수가 가중치로 지정한 값을 넘는 경우 접속수가 가장 적은 서버 선택.
  • 7. IPVS 사용하기 • ipvsadm – IPVS에서 제공하는 명령툴. – 가상서버를 정의하고 리얼 서버를 할당. – 접속상황,전송률, 통계정보를 제공. • Keepalived – IPVS를 이용하여 가상서버를 구축. – 리얼 서버의 상태 체크.(다운 시 부하분산 제외) • HTTP_GET, SSL_GET, TCP_CHECK, SMTP_CHECK, MISC_CHECK
  • 8. L4스위치와 L7스위치 L4 스위치 L7 스위치 • L4스위치는 클라이언트가 통신하는 곳은 리얼 서버. • L7 스위치에 클라이언트와 리얼 서버 각각의 TCP 세션을 전개.
  • 9. NAT와 DSR • NAT(Network Address Translation) – 한 네트워크 컴퓨터의 IPv4 주소를 다른 네트워크 컴 퓨터의 IPv4 주소로 변환. • DSR(Direct Server Return) – 로드밸런서 사용시 리얼서버에서 클라이언트로 되돌아 가는 경우 목적지의 주소가 스위치 주소가 아닌 클라 이언트 주소로 전달하는 개념. – 로드밸런서 병목, 높은 트래픽이 있는 경우 DSR로 권 장.
  • 11. 부하분산 시 주의점(동일 서브넷) 이 구성에는 NAT 사용 불가. DSR로 구성. 가상서버 192.168.0.150/24 웹 서버 메일서버 메일서버 192.168.0.1/24 192.168.0.151/24 192.168.0.152/24
  • 12. 서버/인프라를 지탱하는 기술 라우터 및 로드밸런서의 다중화 양충현
  • 13. 다중화 프로토콜 VRRP • 라우터나 로드밸러서 벤더들의 독자적인 다중화 프로토콜 – 서로 다른 벤더간 호환 불가. • HSRP(Hot standby Routing Protocol)기 반으로 벤더에 의존하지 않는 다중화 프로 토콜 VRRP(Virtual Router Redundancy Protocol) 개발.
  • 14. VRRP 패킷 • 마스터 노드가 정기적으로 VRRP 패킷을 멀티캐스팅 (224.0.0.18)주소로 송신. – 마스터가 정상 작동임을 알리는 메시지(Advertisement) • 백업 노드는 VRRP 패킷을 수신하는 동안은 대기중, 일정 시간 수신 하지 못하면 마스터 노드 다운으로 판단 장애 극복 시작.
  • 15. 가상 라우터 ID 로드 밸런서 A 로드 밸런서 B (Active) VRRP (Backup) VRRP 패킷을 송신 224.0.0.18 로드 밸런서 C 로드 밸런서 D (Active) (Backup) VRRP • Virtual Rtr ID. • VRRP 패킷은 멀티 캐스팅주소로 송신 – 주소 변경 불가. • 인스턴스를 구분하기 위한 용도.
  • 16. 우선순위(Priority) • Priority. • VRRP 구조적으로 100대의 백업 노드를 가 질수 있음. • 백업 노드가 2대 이상 작동 시 우선순위 부여. • 수치적으로 높을수록 우선순위가 높음. • 사용범위는 1~255, 기본값은 100
  • 17. 선점형 모드(Preemptive Mode) • 선점형 모드 유효화 – 자신의 Priority보다 낮은 값을 수신하면 master상태로 변경. – Default mode. • 선전형 모드 무효화 – 자신의 Priority 보다 낮은 값을 수신하더라도 현 상태를 유지.
  • 18. 가상 MAC주소 • VRRP에는 가상 MAC주소가 정의. • 장애극복 시 IP주소뿐만 아니라, MAC주소 도 함께 인계. – MAC 주소를 인계하지 않을 경우, 통신 상대 가 되는 모든 장비의 ARP 테이블의 변경 필요. • Physical/Virtual 2가지 mode – Default mode Virtual.
  • 19. Keepalived의 구조상의 문제 • Keepalived의 VRRP는 가상 MAC주소를 허용하지 않 음. • 장애극복 시 ARP 엔트리가 갱신되지 않는 장비가 있 을 경우, APR 캐시가 clear가 되까지 통신되지 않을 위험성 소지. • gratuitous ARP의 지연송신 – 마스터 상태로 변경 후 GARP를 송신 시 네트워크 상태 불 안정, 일시적인 트래픽이 집중되어 통신이 안될 수 있음. – 수 초 정도 기다린 후 GARP 송신. – grap_master_delay로 설정. – Default value 5초.
  • 20. Keepalived 다중화 구성 장애 VRRP VRRP lv1 lv2 lv1 lv2 10.0.0.252/24 10.0.0.253/24 10.0.0.252/24 10.0.0.253/24 192,168.0.252/24 192,168.0.253/24 192,168.0.252/24 192,168.0.253/24 VIP 가상서버 가상서버 VIP 10.0.0.254/24 10.0.0.1 10.0.0.1 10.0.0.254/24 192,168.0.254/24 192,168.0.254/24 가상서버 가상서버 10.0.0.1 10.0.0.1 웹서버(web1) 웹서버(web2) 웹서버(web1) 웹서버(web2) 192.168.0.1/24 192.168.0.2/24 192.168.0.1/24 192.168.0.2/24
  • 21. VRRP의 설정 • lv1의 예 lv2는 102으로 변경 • lv1과 lv2에서 keepalived를 기동하면 lv1에 VIP가 할당 ifconfig로는 확인 불가, ip 명령으로 확인.
  • 22. VRRP의 동작확인 • 동작 확인 a. lv1을 shutdown 한다. lv2=Master(O) b. lv1을 기동한다. lv1=Master, lv2=Backup(O) c. lv1의 eth0 케이블을 뺀다. lv1=Backup, lv2=Master(O) d. lv1의 eth0 케이블을 꽂는다. lv1=Master, lv2=Backup(O) e. lv1의 eth1 케이블을 뺀다. lv1=Master, lv2=Backup • VRRP 패킷은 eth0으로만 전송 eth1의 lan cable을 빼더 라도 이상동작 확인 불가.
  • 23. VRRP 인스턴스 분리 <-VRPP마다 고유한 값 <-lv2는 102으로 변경 <-VRPP마다 고유한 값 <-lv2는 102으로 변경
  • 24. VRRP 인스턴스 동기화 • vrrp_sync_group • 여러 VRRP 인스턴스에서 상태를 동기화 시키기 위한 설정. • 그룹 내 하나의 인스턴스가 Backup이 되 는 경우 연동 해서 다른 인스턴스 또한 Backup이 된다.