핵심 Azure 아키텍처 구성요소
- azure는 개방형 클라우드 서비스 지원
모든 디바이스, 운영체제, 언어, 데이터 원본을 지원한다.
즉, 산업 표준환경에 필요한 요소들을 포용한다.
지리적 위치(geographies)
- 데이터 상주 및 규정 준수 경계를 보존하는 개별 시장.
- 둘 이상의 지역을 포함.
- 고객 데이터 및 애플리케이션을 근접하게 유지
- 미주, 유럽, 아시아 태평양, 중동 및 아프리카로 분류
지역(region)
- 지역은 데이터 센터의 집합
- 유연성 및 확장성을 제공
- 데이터 보존을 준수
- 사용자와 가까운 지역을 선택 가능
- 가용성을 고려하여 지역을 선택할 것
- 지역별로 독립적인 글로벌 서비스가 존재
지역 별 azure 서비스 특징
- 모든 지역에서 모든 서비스와 인스턴스 크기를 사용할 수 있는 것은 아니다.
가용성 옵션
- 가용성이란 하나의 서비스에 문제가 생겼을 때, 다른 개체요소가 해당 서비스를 대체해주는 것.
- 즉, 끊임없는 서비스를 안정적으로 제공하도록 한다.
- 오른쪽으로 갈수록 높은 가용성을 가진다. (그만큼 가격적인 측면도 비싸지게 됨.)
- 백업을 어디까지 해줄 것인가?
단일 VM
하나의 VM 만을 사용. 가용성 낮음
가용성 집합 ✅
유지 관리 또는 하드웨어 오류 발생 시, 응용 프로그램을 온라인 상태로 유지
렉 (FD) 단위의 백업 유지.
UD(업데이트 도메인) - 서버에 해당
- 예약된 유지 관리, 성능 또는 보안 업데이트는 어데이트 도메인을 통해 순서가 정해진다.
- 물리적인 서버 (HOST)상에서 서비스를 하게 되는데, 여러개의 서버를 동시에 운영하여 업데이트가 발생할 때(즉, 중단될때)다른 물리적인 다른 영역에서 이를 대체 해준다.
결론 : 물리적인 서버가 렉(오류 도메인 : FD) 내에 여러대가 있고, 이를 통해서 업데이트시의 끊김을 방지할 수 있다.
FD(오류 도메인) - 렉 장비에 해당
- 데이터 센터의 하드웨어 이중화를 통해 오류발생시 워크로드를 물리적으로 분리한다.
- 그림의 예를 들었을 때, FD 0의 렉이 나갔을 때, FD 1렉을 사용할 수 있다는 것이다.
결론 : 물리적으로 한 데이터 센터내 응용프로그램을 분리하여 재기능을 발휘하도록 함으로써 온라인상태의 서비스를 지속적으로 제공하는 것.
가용성 영역 ✅✅
- Azure 지역 내에서 물리적으로 구분 되는 위치
- 가용성 집합보다 한 수준 높은 보호 기능을 제공 (서로 지리적으로 지역 자체가 다름)
- 전력, 냉각, 네트워킹을 독립적으로 갖춘 하나 이상의 데이터 센터가 포함
- 격리 경계의 역할
- 한 가용성 영역이 중단되더라도 다른 가용성 영역은 계속해서 작동 가능.
- 독립적인 글로벌서비스 존재
결론 : 물리적인 서버가 한 지역 내 여러 데이터 센터에 나눠져 있고, 이를 통해서 업데이트시의 끊김을 방지할 수 있다.
가용성 영역 쌍(지역 쌍) ✅✅✅
지역 페어(region pair)
- 다른 지역과 쌍(Pair)로 연결
- azure는 구조상 데이터 센터를 483km이상으로 분리
- 중요서비스는 페어로 연결된 지역으로 자동 복제 구현.
- 정전 시 모든 지역페어내의 한 지역이 우선 복구됨
- 시스템 업데이트는 페어로 연결된 지역에 대해 동시가 아닌 순차적으로 시작됨
- 페어로 연결된 지역은 동일한 위치에 포함되어있음.(브라질 제외)
- 하나의 데이터 센터가 불가피한 상황으로 종료되거나, 사용을 못하게 되었을 때 지속적인 서비스를 보장하는 것.
(이번 카카오 데이터센터 사태를 생각해보면 이러한 지역 페어가 필요한 이유를 실로 느낄 수 있다.)
결론 : 물리적인 서버가 여러 지역의 데이터 센터에 나눠져 있고, 이를 통해서 업데이트시의 끊김을 방지할 수 있다.
가상 머신 확장 집합 📈
- 트래픽(접속자 수)이 내가 지정한 기준치 (ex.) CPU 50%)를 넘겼을 때, 자동적으로 VM이 알아서 n대씩 생성되도록 하는 것.
- 성능이 스케일 UP된 상태로 생성될 수 있다. 즉, 새롭게 생성되는 VM의 크기는 4core 8Mem로 태어나는 것)
- 트래픽이 감소되는 경우, 자동 생성된 VM이 삭제된다.
- 온라인 Zoom 회의와 같음.
리소스 그룹
- 수명 주기를 공유하는 여러 리소스에 대한 컨테이너
- 리소스를 단일 관리 단위로 모음
- 리소스는 하나의 리소스 그룹에만 존재해야 함
- 리소스 수준에서 RBAC(역할 기반 액세스 제어)를 사용하여 보호.
Azure Resource Manager
= 자원 관리자를 통해 Azure 구독의 리소스를 생성, 업데이트 및 삭제할 수 있는 계층적 관리를 제공
- 리소스 및 리소스 그룹을 만들고, 구성하고, 관리 및 삭제 담당
- 액세스 및 리소스를 제어
- 다양한 도구 및 SDK를 사용하여 관리를 자동화 할 수 있음.