종속성이 있는 가용성 - 가용성과 그 이상: 분산 시스템의 복원력에 대한 이해 및 개선 AWS

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

종속성이 있는 가용성

이전 항목에서는 하드웨어, 소프트웨어 및 기타 분산 시스템이 모두 워크로드의 구성 요소라고 언급했습니다. 이러한 구성 요소를 종속성이라고 하며, 이러한 구성 요소는 워크로드가 기능을 제공하기 위해 의존하는 요소입니다. 여기에는 워크로드가 제대로 작동하지 않는 하드 종속성과 일정 기간 동안 가용성이 눈에 띄지 않거나 용인될 수 있는 소프트 종속성이 있습니다. 하드 종속성은 워크로드의 가용성에 직접적인 영향을 미칩니다.

워크로드의 이론상 최대 가용성을 계산해 보고 싶을 수도 있습니다. 이는 소프트웨어 자체를 포함한 모든 종속성(αn는 단일 하위 시스템의 가용성)의 곱입니다. 각 종속성이 작동해야 하기 때문입니다.

방정식 그림 A = α1 X α2 X... X αn아래 첨자>

수식 4: 이론적 최대 가용성

이러한 계산에 사용되는 가용성 수치는 일반적으로 SLA 또는 서비스 수준 목표(SLO)와 같은 항목과 연관됩니다. SLA는 고객이 받게 될 예상 서비스 수준, 서비스를 평가하는 기준, 서비스 수준을 달성하지 못할 경우 조치 또는 벌금(일반적으로 금전적)을 정의합니다.

위 공식을 사용하면 순전히 수학적으로 볼 때 워크로드는 종속 항목보다 가용성이 높을 수 없다는 결론을 내릴 수 있습니다. 하지만 현실에서는 일반적으로 그렇지 않다는 것을 알 수 있습니다. 99.99% 가용성 SLA와 함께 2~3개의 종속성을 사용하여 구축된 워크로드는 여전히 자체적으로 99.99% 또는 그 이상의 가용성을 달성할 수 있습니다.

이것은 이전 항목에서 설명했듯이 이러한 가용성 수치는 추정치이기 때문입니다. 그것은 고장이 발생하는 빈도와 수리 속도를 추정하거나 예측합니다. 그렇다고 가동 중지를 보장하지는 않습니다. 종속성은 명시된 가용성 SLA 또는 SLO를 초과하는 경우가 많습니다.

또한 종속성은 공개 SLA에 제공된 수치보다 성능을 목표로 하는 내부 가용성 목표가 더 높을 수 있습니다. 이를 통해 미지 또는 불가지의 상황이 발생했을 때 SLA를 준수하는 데 따르는 위험을 일정 수준 완화할 수 있습니다.

마지막으로, 워크로드에는 SLA를 알 수 없거나 SLA 또는 SLO를 제공하지 않는 종속성이 있을 수 있습니다. 예를 들어 전 세계 인터넷 라우팅은 많은 워크로드의 공통적인 종속성이지만 글로벌 트래픽이 어떤 인터넷 서비스 공급자를 사용하고 있는지, SLA가 있는지, 공급업체 간에 얼마나 일관성이 있는지 파악하기가 어렵습니다.

이 모든 것이 시사하는 바는 이론상의 최대 가용성을 계산하는 것은 대략적인 규모만 계산할 수 있을 뿐 그 자체로는 정확하지 않거나 의미 있는 통찰력을 제공하지 못할 가능성이 높다는 것입니다. 계산을 통해 알 수 있는 것은 워크로드가 의존하는 대상이 적을수록 전반적인 실패 가능성이 줄어든다는 것입니다. 1보다 작은 수의 숫자를 적게 곱할수록 결과는 더 커집니다.

규칙 3

종속성을 줄이면 가용성에 긍정적인 영향을 미칠 수 있습니다.

수학은 종속성 선택 프로세스에 정보를 제공하는 데도 도움이 됩니다. 선택 프로세스는 워크로드를 설계하는 방법, 종속성의 중복성을 활용하여 가용성을 개선하는 방법, 이러한 종속성을 소프트 종속성으로 간주할지 하드 종속성으로 간주할지 여부에 영향을 줍니다. 워크로드에 영향을 미칠 수 있는 종속성은 신중하게 선택해야 합니다. 다음 규칙은 이 작업을 수행하는 방법에 대한 지침을 제공합니다.

규칙 4

일반적으로 가용성 목표가 워크로드 목표와 같거나 더 큰 종속성을 선택하세요.