2016. 7. 6. 23:59

# 이중화(High Availability)

시스템의 장애피해 등으로 부터 가동률이 높이기 위하여 장비를 다중화 시키는 방법

 

# 이중화의 종류

1) Active-Active

개념

다중화 장비가 두대 모두 활성화 되어 동작하는 구성이다. 두대가 모두 처리를 하기 때문에 Active-Standby에 비하여 처리률이 높지만, 보통 설정 및 구성이 복잡해지며 한대가 죽었을 경우, 두대의 처리량을 한대로 처리하기 때문에 리소스가 높아져 리소스에 대한 계획도 필요하다.

 

 2) Active-Standby

개념

 기본적인 HA 방법이며 두대 중 하나는 활성화 되어 동작하고 하나는 장애 등 의 경우를 대비하여 대기 시키는 구성이다. 장애발생을 감지하여 Active장비가 죽게되면 Standby 장비가 failover가 일어나 Active로 변경된다. 단 failover 되는 시간동안은 서비스가 불가능하다.

 

종류

- Hot Standby : Standby 쪽 장비 기동 후 즉시 사용이 가능. failover 소요시간

- Warm Standby : Standby 쪽 장비 기동 후 이용하기 위하여 어느정도 설정 및 준비가 필요함

- Cold Standby : Standby 측을 평소 정지시켜두며 필요에 따라 직접 켜서 구성

일반적인 경우 Hot - Warm - Cold 순으로 failover 소요시간이 짧음.(Hot이 제일 짧고, Cold가 가장 김)

 

# 이중화의 활용

장애

장비에 장애가 발생하여 1대의 장비가 죽을시, 준비된 장비를 서비스에 투입함으로써 짧은시간내에 서비스복구가 가능하다.

 

웹서비스의 배포

두대의 서버가 LB에 의하여 Active-Active로 운영되고 있는 경우, 한대를 LB에서 제거 한 뒤 배포 및 미들웨어 재기동 후 LB에 붙히고 다시 나머지 한대도 똑같이 작업하는 경우 서비스의 다운타임 없이 온라인 배포가 가능하다.

 

장비의 점검

서버 혹은 네트워크장비를 운영시 OS나 Software Stack등을 보안이나 기능추가 등의 이유로 업데이트 및 설정 변경의 상황을 마주할 수 밖에 없다. 이런 불가피한 시스템다운시 이중화를 이용하면 번갈아 가며 점검 하는경우 서비스의 다운타임 없이 점검이 가능하다.

 

Posted by 배주혁

Linux console based monitoring tool - vmstat


시스템의 CPU, MEMORY, PROCESS, IO 정보들을 모니터링 할 수 는 툴이다.



각행 설명


procs

r : CPU에서 실행을 위하여 대기중인 프로세스의 수

b : I/O 자원을 받지 못하여 수면상태에 있는 프로세스의 수.

momory

swpd : swap의 샤용량. 이 값이 높으면 물리 메모리의 용량이 부족한지 확인해 봐야함

free : 미사용인 메모리의 용량.

buffer : 버퍼로 사용되고 있는 메모리의 양.

cache : 캐쉬로 사용되고 있는 메모리의 양.

swap

si : swapped in된 메모리의 양

(swap out된 내용이 다시 필요하게 되어 불러 오는 작업을 말한다.)

so : swapped out된 메모리의 양

(물리적 메모리가 부족할 경우, 사용하고 있는 물리적 메모리를 해제 시키는 작업을 swap out이라고 한다.)

io

bi : 1초당 block device에 보낸 block양

bo : 1초당 block device로 부터 받은 block양

'OPS > Monitoring' 카테고리의 다른 글

Linux console based monitoring tool - top  (0) 2015.04.29
Posted by 배주혁

Linux console based monitoring tool - top


아마도 제일 널리 알려진 콘솔기반 모니터링 툴이 아닌가 싶다.

시스템 CPU, Memory, process 등 종합적인 정보를 보여준다.

일반 명령어처럼 값을 콘솔에 출력후 shell로 돌아 오는게 아니라, 계속해서 시스템정보를 보여준다.

화면을 빠저나오려면 Ctrl+c를 누르면 shell로 빠저나온다.

top을 실행한 화면이다.

첫벗재행은 uptime 명령어의 실행결과를 그대로 가져온 것이다.

왼쪽부터 현재시간(10:04:41), 시스템 가동시간(7 min), 현재 로그인된 유저수(3 users), 1분(0.01), 5분(0.19), 15분(0.17) load 평균치를 뜻한다.


두번째행은 왼쪽부터 전체 process수(318), 현재 실행중인 process(3), sleep 상태의 process(315), 정지상태의 process(0), 좀비프로세스수(0)을 뜻한다.


세번째행은 cpu에 대한 상태를 나타낸다.

왼쪽부터 사용자가 사용하는 cpu 사용률(0.0 us), 시스템 커널이 cpu 사용률(0.3 sy), NICE 기본값 이하 사용률(0.0 ni), CPU 미사용률(99.0 id), 입출력 대기상태의 사용률(0.3 wa), 하드웨어 인터럽트 사용률(0.0 hi), 소프트웨어 인터럽트 사용률(0.0 si)을 뜻한다.


네번째행은 memory에 대한 상태를 나타낸다.

왼쪽부터 총 메모리 용량(1010860), 현재 사용중인 용량(937608), 남은 용량(73242) , buffer된 메모리 용량(180)을 나타낸다.


다섯번째행은 swap에 대한 상태를 나타낸다.

왼쪽부터 전체 swap 용량(2097148) 사용중인 용량(0) 미사용중인 용량(2097148) 캐싱메모리 용량(243021)을 나타낸다.


그 아래행 부터는 현재 실행중인 프로세스에 대한 정보를 나타낸다.

PID : process ID 
USER : 프로세스를 실행한 사용자 ID
PR : 프로세스의 우선순위 (priority)
NI : NICE 값, 마이너스가 우선순위가 높다.
VIRT : 가상 메모리 사용량 swap과 res를 합한 값이다.
RES : 현재 페이지가 상주하고 있는 크기(Resident Size)
SHR : 프로세스가 사용한 메모리를 나눈 메모리의 합.
S : 프로세스의 상태  S = sleep R = running, W = swapped out process, Z = zombie
%CPU : 프로세스의 CPU 사용률
%MEM : 프로세스의 메모리 사용율
TIME+: 프로세스가 CPU를 사용한 시간
COMMAND : 실행된 명령어


'OPS > Monitoring' 카테고리의 다른 글

Linux console based monitoring tool - vmstat  (0) 2015.04.30
Posted by 배주혁