운영을 위한 디자인

완료됨
오류 조건을 예상하기 위해 작업에서 왼쪽으로 이동합니다.

개발 수명 주기 초기에 종종 실패를 테스트하고 성능이 안정성에 미치는 영향을 결정합니다. 근본 원인 분석 및 사후 분석을 위해서는 팀 전체에서 종속성 상태 및 지속적인 실패에 대한 공유 가시성이 있어야 합니다. 관찰 가능한 시스템의 인사이트, 진단 및 경고는 효과적인 인시던트 관리 및 지속적인 개선의 기본 사항입니다.

Contoso University는 Contoso의 교직원 및 학생을 위해 온라인 수업과 같은 교육 서비스를 제공하는 마이크로 서비스를 기반으로 하는 웹앱을 실행합니다. 워크로드는 Azure 앱 Service, Azure SQL Database, Microsoft Entra ID, Azure Key Vault, Azure Service Bus, Azure Monitor 및 Azure DevOps를 기반으로 합니다.

강력한 모니터링 구현

원격 분석의 상관 관계를 지정할 수 있는 관찰 가능한 시스템을 빌드합니다.

모니터링 및 진단 중요한 작업입니다. 오류가 발생하면 실패, 실패한 경우 및 실패한 이유를 알아야 합니다. 구성 요소 수준의 관찰성은 기본적이지만 구성 요소 및 상관 관계 흐름의 집계된 관찰성은 상태 상태 대한 전체적인 보기를 제공합니다. 이 데이터는 사이트 안정성 엔지니어가 수정 작업의 우선 순위를 지정할 수 있도록 하는 데 필요합니다.

Contoso의 과제

  • 워크로드 애플리케이션은 여러 기능 계층에서 분리된 5개의 서비스 제품군의 일부로 배포됩니다.
  • 팀은 솔루션의 다양한 계층을 트래버스할 때 트랜잭션 및 사용자 요청을 분석하여 불안정으로 이어질 수 있는 병목 상태를 식별하고 문제가 발생할 때 보다 효율적인 문제 해결을 수행할 수 있기를 좋아합니다.

접근 방식 및 결과 적용

  • 워크로드 팀은 구성 요소를 계측하여 Application Insights를 사용하여 로그 및 메트릭을 캡처하고 모든 플랫폼 서비스에 대한 로깅을 구성합니다. 모든 로그는 워크로드의 Azure Monitor 작업 영역으로 전달됩니다.
  • AzM 작업 영역의 데이터를 사용하여 솔루션의 개별 구성 요소와 집계된 흐름 및 솔루션 상태의 상태를 분석할 수 있습니다.
  • 구성 요소 및 계층에서 동일한 요청에 속하는 항목의 상관 관계를 지정하면 팀이 워크로드 상태를 결정하고 문제 해결 프로세스를 용이하게 할 수 있습니다.

잠재적인 오작동 및 비정상적인 동작 예측

우선 순위가 지정되고 실행 가능한 경고를 사용하여 활성 안정성 오류를 표시합니다. 더 빠른 심사로 이어지는 신뢰할 수 있는 프로세스 및 인프라에 투자합니다.

사이트 안정성 엔지니어는 진행 중인 라이브 사이트 인시던트가 완화되고 실시간 인시던트가 되기 전에 예측 경고로 식별되는 잠재적인 오류를 사전에 완화할 수 있도록 즉시 알림을 받을 수 있습니다.

Contoso의 과제

  • 팀은 학생들이 수업에 등록하고, 강의 계획서에 액세스하고, 교과서를 구입함에 따라 각 학기 초에 트래픽이 크게 증가할 것으로 예상하고 있습니다.
  • 학년도의 이 중요한 기간 동안 팀은 예상 부하 증가를 위한 충분한 용량을 사용할 수 있는지 확인해야 합니다. 또한 팀은 발생할 수 있는 다른 잠재적 가용성 문제에 신속하게 대응할 수 있어야 합니다.

접근 방식 및 결과 적용

  • 팀은 예상된 수요 증가 이전에 추가 용량을 갖도록 자동으로 확장되고 부하가 증가함에 따라 용량을 계속 할당하도록 웹 및 데이터베이스 계층을 구성합니다.
  • 긴급 대응 계획은 이 기간 동안 스트레스가 발생하는 흐름과 관련된 경고가 인시던트 대응 팀에 의해 우선 순위가 지정되도록 조정됩니다.

안정성 위험 테스트

프로덕션 및 사전 프로덕션 환경에서 오류를 시뮬레이션하고 테스트를 실행합니다.

복구에 대한 현실적인 기대치를 설정할 수 있도록 프로덕션에서 오류를 경험하는 것이 좋습니다. 이렇게 하면 오류에 적절하게 대응하는 디자인을 선택할 수 있습니다. 또한 비즈니스 메트릭에 대해 설정한 임계값을 테스트할 수 있습니다.

Contoso의 과제

  • 이 워크로드에서 웹 계층과 학생 등록 REST 서비스 간의 통신은 클라이언트 인증서에 의존합니다.
  • 용어가 시작된 후에는 학생 등록 기능이 많이 사용되지 않으므로 학생 등록 서비스에서 사용하는 인증서가 만료되면 문제가 잠시 동안 검색되지 않을 수 있습니다.
  • 또한 마지막 등록 기간 동안 시스템이 일시적 연결 오류를 잘못 처리하여 서비스가 여러 차례 중단되었습니다. 팀은 일시적인 오류를 처리하기 위해 몇 가지 코드를 개선했지만 실제 프로덕션 시나리오에서 기능이 어떻게 동작할지는 불확실합니다.

접근 방식 및 결과 적용

  • 팀은 등록 흐름을 포함하여 여러 흐름을 시뮬레이션하기 위해 월별 일정에 따라 프로덕션에서 실행되는 가상 트랜잭션 테스트를 개발합니다.
  • 가상 트랜잭션 테스트에 대한 경고가 구성되므로 팀에 인증서 만료 위험을 포함하는 오류가 발생합니다.
  • 또한 팀은 SDLC에 혼돈 테스트를 구축하고, 일상적인 혼돈 테스트를 수행하고, 결과를 캡처하여 자기 보존 기술의 유효성을 검사하고 이전에 알려지지 않은 안정성 문제를 파악하는 데 투자했습니다.

지식 점검

1.

True 또는 false: 워크로드를 관찰 가능하게 만드는 예제는 원격 분석 데이터를 내보내도록 애플리케이션을 계측하는 것입니다.

2.

잘 설계된 경고 전략의 특성은 무엇인가요?

3.

Contoso가 워크로드가 저하된 상태에서 작동할 수 있음을 증명할 수 있는 한 가지 방법은 무엇인가요?