7장 무정지를 위한 인프라 구조
2023. 3. 16. 20:57
7.1 안정성 및 이중화
- 상용 시스템에서 시스템 인프라가 '업무 기능의 토대'가 되지만 요구되는 몇 가지가 있다.
- 그 중 하나가 안정성이다 = 고가용성
- 안정성(=고가용성)이란 시스템 서비스가 가능한 한 멈추지 않도록 하는 것을 의미한다.
- 상용 웹 시스템에서는 미들웨어 기능이나 구조로 이중화, 감시, 백업의 세 가지 수단을 구현하여 목표를 실현한다.
이중화
- 하나의 기능을 병렬로 여러 개 나열해서 하나에 장애가 발생해도 다른 것을 이용해서 서비스를 계속할 수 있는 것
- 이중화에 필요한 구조
- 부하분산
- 내부적 생존 감시
- 마스터 결정
- 페일오버
7.2 서버 내 이중화
- 전원, 장치 등의 이중화
- 전원 한쪽이 고장나 전원이 공급되지 않더라도 시스템을 가동하기 위함
- 네트워크 인터페이스 이중화
- PCI 슬롯에 꽂은 카드도 이중화가 가능하다.
- 카드 이중화 및 포트 이중화를 통해 카드 장애 및 포트 장애에 대응한다.
- 네트워크 인터페이스 이중화는 하드웨어 또는 OS로 구현한다.
- 일반적으로 액티브-스탠바이 구성이다.
- 액티브 측에 문제가 생겨 장비가 교체되는것을 페일오버(Failover)라고 한다.
7.3 저장소 이중화
- HDD 이중화
- 저장소 이중화의 주요 대상이다.
- 가동 빈도가 높아서 고장나기가 쉽다
- RAID는 여러 HDD묶어서 그룹을 만들고 이것을 논리적은 HDD로 인식하는 기술이다.
- 논리적 HDD는 LU(Logical Unit)이라 한다. (서버가 인식하는 HDD는 LU이다.)
- RAID 장점
- 안정성 확보
- 성능 향상
- 용량 확장
7.4 웹 서버 이중화
- 웹 서버를 이중화하는 방법 중 하나가 DNS를 이용해서 하나의 호스트명에 대해 복수의 IP 주소를 반환하는 것이다.
- DNS 라운드 로빈을 통해 하나의 호스트에 복수 IP주소를 할당한다.
- 조금 더 고도화된 방식은 부하분산 장치를 통한 방법이다 (로드 밸런서)
- 클라이언트가 가지고 있는 쿠키를 이용해 부한분산 장치가 같은 서버에 요청을 한다.
7.5 AP 서버 이중화
- AP 서버 이중화는 두 가지 기능을 이용해서 구현한다.
- 첫 번째는 웹 서버와 같이 부하분산 장치를 이용하거나, AP 서버가 가진 웹 서버 요청 이중화 기능을 이용하여 AP 서버 요청을 분산시키는 것이다.
- 두 번째 구현 방법은 세션 정보 이중화다.
- 세션 정보를 작성하여 클러스터 내 다른 서버에 복제하는 방식
- DB 연결 이중화
- AP 서버에는 DB서버에 접속 시에 사용할 커넥션을 사전에 여러 개 생성 해 둔다.
- 연결 풀링 (Connection Pooling)이라 한다.
- AP 서버에는 DB서버에 접속 시에 사용할 커넥션을 사전에 여러 개 생성 해 둔다.
7.6 DB 서버 이중화
- 주류 방법은 액티브-스탠바이형의 클러스터 구성이다.
- 클러스터 구성은 HA 구성이다.
- 클러스터의 노드나 서비스 관계는 마스터-워커 개념을 기반으로 하고 있다.
- 클러스터 소프트웨어를 이용한 액티브-스탠바이 구성을 서비스를 병렬로 실행할 수 없고 데이터 일관성을 중시하는 서비스/시스템에 적합하다.
- 예를 들어 데이터 베이스, 파일 서버, 잡 관리 시스템 등이다.
이번 챕터는 간단하게 정리를 했는데, 인프라 구조에 대해 깊게 들어가면 지금 현재 공부 목적에서 좀 벗어날 것 같아서 자세한 내용은 생략했다.
'책 > 그림으로 공부하는 IT 인프라 구조' 카테고리의 다른 글
8장 성능 향상을 위한 인프라 구조 (0) | 2023.03.17 |
---|---|
6장 시스템을 연결하는 네트워크 구조 (0) | 2023.03.15 |
5장 인프라를 지탱하는 응용 이론 (0) | 2023.03.14 |
4장 인프라를 지탱하는 기본 이론 (0) | 2023.03.13 |
3장 3계층형 시스템을 살펴보자 (0) | 2023.03.13 |