[클라우드 컴퓨팅] 10강 클라우드 아키텍처2

Donghun Seol·2022년 11월 18일
0

노트정리 규칙

학습목표

  1. 무중단 서비스 재배치를 이해할 수 있다.✅
  2. 무정지 서비스를 이해할 수 있다.✅
  3. 동적 장애 감지 및 복구를 이해할 수 있다.✅

💡 시스템 중단은 의도적인 조치를 이행하기 위한것이고, 시스템 정지는 우발적인 사고를 의미한다.

학습하기

시스템 중단

시스템 중단

포털, 금융 서비스등은 사용자가 상시 가능하도록 중단없이 이용가능해야 한다. 하지만 서버의 처리 가능한 용량을 초과한 트래픽, 유지보수를 위한 일시적인 다운, 신규 물리서버로의 마이그레이션 등의 경우에 시스템 중단이 발생할 수 있다.

사용자 접속 불능시 서비스 품질 및 신뢰도가 저하되므로 가능하다면 무중단 서비스 재배치가 바람직하다.

무중단 서비스 재배치

온프레미스 환경

이중화 서버 구축으로 구현한다. 서버 구매, 구축, 유지보수에 추가적인 비용이 소모된다.

클라우드 환경

동작중인 서버를 복제하거나 클라우드 벤더가 제공하는 이중화 서비스를 이용한다. 온프레미스 환경보다 매끄럽게 무중단 서비스 재배치를 구현할 수 있다.

클라우드환경 무중단 서비스 재배치 방안

클라우드 서비스를 활용하면 안정적으로 무중단 서비스 재배치 가능하며, 기존의 오토스케일링 기능과 seamless하게 연결 가능하다.

가상디스크와 마이그레이션

서비스의 특성에 따라 데이터를 로컬디스크와 가상디스크에 선택적으로 저장해야 한다. 로컬 디스크는 마이그레이션에 걸리는 시간이 길지만, IO성능이 우수하다. 원격 공유 디스크는 단시간에 이관 가능하지만 이관 이후 IO 성능이 로컬디스크에 비해 낮다.

무정지 서비스

클라우드 서비스 장애

물리서버의 시스템장애, 장비 노후로 인한 무응답, 하드웨어 고장 등으로 클라우드 서비스도 서비스 장애가 생길 수 있다. 따라서 서비스장애를 최소화하기 위해 SPOF가 최소화된 아키텍쳐를 설계해야 한다.

SPOF(Single Point of Failure)

한 지점의 장애가 전체 시스템의 운영에 영항을 미치는 지점. 클라우드 서비스도 물리 서버가 이중화되어 있지 않으면 단일장애점이 생긴다.

장애방지 시스템 (Fault Tolerant System)

시스템의 일부의 결함, 고장이 발생하여도 정상적 혹은 부분적인 기능을 수행할 수 있게 설계한 시스템. 로드밸런서는 대표적인 장애방지 시스템.

장애조치 시스템 (Failover System)

각종 리소스에 문제 발생시 예비 시스템으로 자동 전환하는 시스템. 특정 서버에 장애 발생시 자동으로 상응하는 VM을 프로비전하여 로드배런서와 연결하는 시스템

장애 감지 시스템

장애방지 및 조치시스템을 효과적으로 동작시키려면 장애를 정확히 감지하는 시스템이 필요한다.

동적 장애 감지 및 복구

데이터센터에 있는 수많은 물리 리소스들에는 다양한 원인으로 인한 우발적인 장애가 발생할 수 있다. 하지만 수많은 개별 하드웨어를 대상으로 장애원인을 찾고 조치하는 것은 비효율적인 대응방안이다. 따라서 장애 시나리오를 만들고 하드웨어 장애 발생시 효과적인 페일오버 시스템을 구축, 운영하는 것이 매우 중요하다.

헬스체크

대표적인 하트비트 모니터로 소프트웨어로 Apache ZooKeeper가 있다. 감시대상에 지속적으로 하트비트를 보내고 적절한 응답이 없을 경우 관리자에게 알린다.

클라우드의 헬스체크

모든 클라우드 서비스는 모니터링 기능을 제공한다. 클라우드 사용자는 모니터링 서비스를 확장하여 자동 복구 관제 시스템을 구축할 수 있다. 자동 복구 관제 시스템은 에스컬레이션 절차에 따라 장애대응조치를 수행한다.

에스컬레이션

클라우드 모니터가 장애 상황의 심각성에 따라 클라우드 사업자 및 관리자에게 보고하기까지 거치는 절차를 의미한다. 다음과 같은 절차로 진행된다.

  1. 장애 조치 이후 배치 파일 실행
  2. 시스템 로그에 콘솔 메세지 전송
  3. 로그 파일 전송
  4. 관리자에게 이메일 전송
  5. SNMP 트랩 전송

SNMP

Simple Network Message Protocol
클라우드 모니터링 서버와 타겟 리소스가 상태를 주고받는 프로토콜. SNMP req와 SNMP res구조 또는 SNMP trap(트리거와 유사) 구조로 통신한다.

profile
I'm going from failure to failure without losing enthusiasm

0개의 댓글