고가용성/장애 내구성
-
고가용성
- 장애 상황을 해결하고 서비스를 지속할 수 있는 능력
- 장애 상황의 준비가 되어있는 아키텍쳐가 필요
ex) 자동차를 운전하다 타이어가 터졌을 때, 트렁크에 있는 스페어타이어로 최대한 빨리 교체하고 다시 운행을 시작하는 것
-
장애 내구성
- 장애 상황에도 서비스를 지속할 수 있는 능력
- 장애 상황에 영향을 받지 않는 아키텍쳐가 필요
ex) 항공기의 경우 엔진이 1~2개 이상이 생긴다고 해도 문제 없이 운항할 수 있다.
-
장애 내구성을 확보하게 된다면 일반적으로 한개 이상의 예비 인프라가 필요하게 되면서 비용이 증가한다.
-
고가용성을 확보하기 위해서는 두 개 이상의 인프라를 활용하기 위한 추가적인 아키텍처가 필요하기 때문에 복잡성이 증가한다.
-
따라서 고가용성/장애 내구성 중 어떤 것을 확보할지 요구사항에 맞춰서 고민해봐야한다.
확장성/탄력성
- 확장성(Scalable) : 쉽고 빠르게 규모를 늘릴 수 있는 능력
- 탄력성(Elastic) : 수요에 따라 컴퓨팅 파워/용량을 확장하거나 축소할 수 있는 능력, 불필요한 자원을 사용하지 않고 비용 최적화에 필수적인 능력이다.
긴말한 결합/느슨한 결합
- 긴밀한 결합 : 다른 주체에 대해서 단단하게 얽힌 상태, 주체끼리 높은 의존성을 가지고 있어 변경이 어렵다.
- 느슨한 결합 : 다른 요소에 대해 얽히지 않고 연결되어 있는 상태, 주체끼리 낮은 의존성을 가지고 있어 쉽게 변경할 수 있고 유연하다.
가상화
- 단일 컴퓨터의 하드웨어 요소를 일반적으로 가상 머신(VM)이라고 하는 다수의 가상 컴퓨터로 분할할 수 있도록 해주는 기술

참조
https://www.youtube.com/watch?v=5uhy3fvJfqk&list=PLfth0bK2MgIYuFahPhXTpTomkwVx5Fl-v&index=3