'server/Infra'에 해당되는 글 3건

  1. 2014.12.17 DNS Round Robin
  2. 2014.12.17 Load Balancer
  3. 2014.12.17 용어
2014. 12. 17. 13:48

DNS Round Robin


: DNS를 이용해서 하나의 서비스에 여러 대의 서버를 분산시키는 방법.


문제점)

- 서버의 수만큼 글러벌(공인 IP) 주소가 필요.


- 균등하게 분산되는 것은 아님.

: DNS 질의 결과를 캐싱하여 사용하는 경우(시스템, 소프트웨어..) 같은 IP로 요청하기 때문에 균등하게 부하가 분산되지 않는다.

ex) 웹 브라우저, 휴대폰 캐리어 게이트웨이(?)


- 서버 다운을 감지 못함

: DNS 서버는 등록된 아이피를 Round Robin으로 응답하기 때문에 Application Server의 상태를 알 수 없다.


해결방안 1)  AP 서버에 VIP(Virtual IP)를 부여해서 다중화를 구성한다. 각 AP 서버를 Health Check후 이상이 감지되면 VIP를 정상 AP 서버로 인계하는 방식을 사용한다.


해결방안 2) Load Balancer를 도입한다.





'server/Infra' 카테고리의 다른 글

Load Balancer  (0) 2014.12.17
용어  (0) 2014.12.17
Posted by 짱가쟁이
2014. 12. 17. 13:43

DNS Round Robin vs Load Balancer


- DNS Round Robin은 웹 서버마다 공인 IP를 할당하여 운영되는 반면에 Load Balancer는 하나의 IP주소에 대해 요청을 복수의 서버로 분산할 수 있다. DNS Round Robin은 별도의 Failover에 대한 처리가 필요하지만 Load Balancer는 내장된 기능으로 처리된다.


Load Balancer


- 동작

: 로드밸런서는 서비스용 공인IP를 가진 가상적인 서버로서 동작한다. 클라이언트로부터 전송되어 온 요청을 Real Server로 중계함으로써 마치 자신이 AP 서버인 것처럼 동작한다.


- 기능

: 로드밸런서는 여러 대의 Real Server중에 한 대를 선택해서 처리를 중계한다. 이 때, 헬스체크가 실패하는 서버는 선택되지 않는다. 따라서 서버 한 대가 정지해 있더라도 정상적으로 가동하고 있는 서버가 있는 한 서비스가 정지하지 않는다.


- 종류

case 1) L4 switch (Layer 4 - 트랜스포트 계층)

: IP 주소나 PORT에 따라 분산대상 서버를 지정한다.

: Linux의 IP Virtual Server(IPVS) 모듈을 이용해서 구성 가능.


L4 구성안 1) Network Address Translation(NAT)

: L4는 요청이 들어오면 수신지 주소(L4 IP)를 선택된 리얼서버 주소로 변경하여 요청을 전송 후 응답이 도착하면 송신지(리얼서버) 주소를 L4 IP로 되돌려서 클라이언트로 전송한다.


L4 구성안 2) Direct Server Return(DSR)

: L4는 요청이 들어오면 선택된 리얼서버로 패킷을 그대로 전송하고 리얼서버는 요청을 처리 후 클라이언트로 Direct로 응답을 전송한다.

: 로드발랜서의 병목이 되는 것을 걱정하거나 높은 트래픽에 견디는 부하분산환경이 필요할 경우 사용한다.


case 2) L7 switch (Layer 7 - 어플리케이션 계층)

: Layer 4 ~ Layer 7까지 패킷을 분석하여 분산대상 서버를 지정한다.

: Reverse Proxy를 이용해서 구성 가능.


Load Balancer - Scheduling Algorithm


- Round-Robin(rr)

: Real Server를 차례로 선택한다. 모든 서버에 균등하게 처리가 분산된다.


- Weighted Round-Robin(wrr)

: 가중치를 가미해서 Round-Robin이 수행된다. 가중치가 높은 서버일수록 빈번하게 선택되므로 처리


- Least-Connection(lc)

: 접속수가 가장 적은 서버를 선택한다.


- Weighted Least-Connection(wlc)

: 가중치를 가미해서 Least-Connection을 수행한다. 고성능 장비에 가중치를 크게하면 효율이 좋다.


- Shorted Expected Delay(sed)

: 가장 응답속도가 빠른 서버를 선택한다. 그렇다고 해도 서버에 패킷을 날려 응답시간을 계측하는 것은 아니다. 상태가 ESTABLISHED인 접속수가 가장 적은 서버를 선택하는 것일 뿐이다. wlc와 거의 동일하게 동작하지만 wlc에서는 ESTABLISHED 이외의 상태(TIME_WAIT, FIN_WAIT 등)인 접속수를 더한다는 점이 다르다.


- Never Queue(nq)

: Shorted Expected Delay와 동일한 알고리즘이지만 ESTABLISHED 접속수가 0인 서버를 최우선으로 선택한다.










'server/Infra' 카테고리의 다른 글

DNS Round Robin  (0) 2014.12.17
용어  (0) 2014.12.17
Posted by 짱가쟁이
2014. 12. 17. 13:29

Content Delivery Network(CDN)

- 컨텐츠를 전송하기 위한 네트워크 시스템.

- 전송 성능 향상과 가용성 향상을 목적으로 하며, 전 세계에 존재하는 캐시 서버 중에 클라이언트에 보다 가까운 캐시 서버를 선택해서 전송함으로써 성능 향상을 실현하는 것이 구성상의 특징임.


Netfilter

- 리눅스 커널 상에서 네트워크 패킷을 조작하기 위한 프레임워크.

- 패킷 필터링등을 수행하는 iptable나 로드밸런스를 실현하기 위한 IPVS(IP Virtual Server)도 Netfilter의 기능을 이용하고 있다.


Availability(가용성)

- 시스템을 정지시키지 않음을 의미함. '가용성이 높다'라고 하면 '해당 서비스는 거의 멈추지 않는다'라는 의미다.


High Availability(고 가용성)

- 바람직한 정도로 긴 시간동안 지속적으로 운영이 가능한 시스템이나 컴포넌트를 가리킨다.


Single Point of Failure(SPOF)

- 장애가 발생하면 시스템 전체가 정지해버리는 곳. (시스템 급소?)


Round Robin

- 여러 개의 노드에 대해 순서대로 할당하거나 분산하는 것.

- 프로그램/프로세스에게 컴퓨터 자원을 공정하기 부여하기 위해 순서대로 자원을 할당하는 방법.


Scale-out

- 서버를 여러 대 두고 분산함으로써 시스템 전체의 성능을 향상시키는 것.


Scale-up

- 단일 서버의 성능을 높임으로써 시스템 전체의 성능을 향상시키는 것.


Failover

- 다중화된 시스템에서 Active인 노드가 정지했을 때 자동으로 Backup 노드로 전환되는 것.


Failback

- Active 노드가 정지한 후 장애가 극복된 상태에서 원래의 정상 상태로 복귀하는 것.


Health Check(장애 검출)

- 현재 운용장비에서 장애가 발생하고 있음을 검출하는 방법.


- ICMP 감시(Layer 3 - 네트워크 계층)

: ICMP의  echo 요청을 보내서 응답이 돌아오는지를 체크한다. 가장 간단하고 가벼운 방법이지만, 웹서비스가 다운된 경우(아파치가 중지한 경우 등)는 감지할 수 없다. 서비스의 정상 동작 유/무는 감지할 수 없다.


ICMP -  네트워크에서 오류, 경고, 알림에 대한 메시지를 전달하는 목적으로 사용되는 인터넷 프로토콜.


- 포트 감시(Layer 4 - 트랜스포트 계층)

: TCP로 접속을 시험해서 접속할 수 있는지 여부를 체크한다. 웹서비스가 다운된 것은 감지할 수 있지만, 과부하 상태로 응답할 수 없다거나 에러를 반환하는 것은 감지할 수 없다.


- 서비스 감시(Layer 7 - 어플리케이션 계층)

: 실제로 요청 등을 보내서 정상적인 응답이 돌아오는지를 체크한다. 대부분의 이상을 감지할 수 있지만 경우에 따라서는 서버에 부하를 유발할 수도 있다.


Appliance

- 서버나 스토리지 같은 하드웨어에 소프트웨어를 장착해 특정 업무에 최적화된 상태에서 판매되는 통합 장비

- OS나 응용 소프트웨어의 설치, 설정등을 행하지 않고 구입해서 전원을 접속하면 곧 사용할 수 있는 정보 기기.

- 결국 특정 업무에 특화된 하드웨어 장비를 얘기하는 듯.


'server/Infra' 카테고리의 다른 글

DNS Round Robin  (0) 2014.12.17
Load Balancer  (0) 2014.12.17
Posted by 짱가쟁이
이전버튼 1 이전버튼