운영 우수성

운영 우수성 원칙에는 효과적인 개발 및 워크로드 실행을 지원하고, 작업에 대한 인사이트를 얻고, 지원 프로세스 및 절차를 지속적으로 개선하여 비즈니스 가치를 제공할 수 있는 능력입니다. 이(가) 포함됩니다.

운영 우수성 원칙에서는 설계 원리 개요, 모범 사례 및 질문 사항을 제공합니다. 구현 방법에 대한 선제적 가이드는 운영 우수성 부문 백서에서 확인할 수 있습니다.

설계 원칙

클라우드에는 운영 우수성 에 대한 five개의 설계 원칙이 있습니다.

정의

클라우드에는 운영 우수성 에 대한 four개의 모범 사례 영역이 있습니다.

조직의 경영진이 비즈니스 목표를 정합니다. 조직은 요구 사항과 우선순위를 파악하고, 이를 통해 비즈니스 성과를 실현할 수 있도록 업무를 구성하고 수행해야 합니다. 또한 워크로드에서 이를 지원하는 데 필요한 정보를 생성해야 합니다. 워크로드를 통합, 배포 및 제공하는 서비스를 구현하면 반복적인 프로세스를 자동화하여 프로덕션 환경에 유익한 변경 사항을 지속적으로 더 많이 적용할 수 있습니다.

워크로드 운영에 내재된 위험이 있을 수 있습니다. 이러한 위험을 파악하고 정보에 근거하여 프로덕션 환경에 적용할지 여부를 결정해야 합니다. 그리고 팀에서 워크로드를 지원할 수 있어야 합니다. 원하는 비즈니스 성과에서 도출된 비즈니스 및 운영 지표를 통해 워크로드 상태, 운영 활동, 인시던트에 대한 대응 능력을 파악할 수 있습니다. 우선순위는 비즈니스 요구 사항과 비즈니스 환경 변화에 따라 달라집니다. 이를 피드백 루프로 활용하여 조직과 워크로드 운영을 지속적으로 개선합니다.

모범 사례

조직

적절한 업무 수행의 기준이 되는 우선순위를 설정하려면 팀이 전체 워크로드, 워크로드 내 각 팀원의 역할 그리고 공동의 업무 목표를 파악해야 합니다. 우선순위를 잘 정하면 운영 개선 작업의 이점을 극대화할 수 있습니다. 실무 팀, 개발 팀, 운영 팀 등의 주요 이해관계자와 함께 내부 및 외부 고객 요구 사항을 평가하여 주력할 영역을 결정합니다. 고객 요구 사항을 평가하면 비즈니스 성과를 달성하기 위해 어떤 지원이 필요한지 철저하게 파악할 수 있습니다. 조직의 거버넌스와 규정 준수 요구 사항 및 산업 표준과 같은 외부 요인에 따라 특정 작업을 반드시/집중적으로 수행해야 할 수 있는 의무 사항이나 지침을 파악해야 합니다. 내부 거버넌스 및 외부 규정 준수 요구 사항의 변경 내용을 식별할 수 있는 메커니즘이 있는지 확인합니다. 요구 사항이 식별되지 않는 것으로 결론을 내릴 때에는 신중하게 판단하여 내린 결론인지 재차 확인해야 합니다. 주기적으로 우선순위를 검토하여 요구 사항의 변화에 따라 우선순위를 업데이트합니다.

비즈니스에 대한 위협 요소(예: 비즈니스상의 위험 및 법적 책임, 정보 보안 위협)를 평가하고 위험 목록에서 이 정보를 관리합니다. 위험의 영향과 상충하는 이해 관계나 대안 사이의 장단점을 평가합니다. 예를 들어, 비용 최적화보다 새로운 기능의 시장 출시를 앞당기는 데 더 역점을 둘 수 있습니다. 아니면 리팩터링 없이 시스템 마이그레이션 작업을 간소화하기 위해 비관계형 데이터용 솔루션으로 관계형 데이터베이스를 선택할 수도 있습니다. 주력할 영역을 결정할 때 정보를 토대로 적절한 결정을 내릴 수 있도록 이점과 위험을 관리합니다. 일부 위험이나 선택은 한동안 감수할 수 있거나, 관련 위험을 완화할 수도 있겠지만, 위험을 감수할 수 없는 경우에는 위험을 해결하기 위한 조치를 취해야 합니다.

팀은 비즈니스 성과를 달성하기 위해 맡은 역할을 파악해야 합니다. 그리고 다른 팀의 성공을 위해 자신의 팀이 해야 할 역할과 해당 팀이 해야 할 역할을 파악하고, 목표를 공유해야 합니다. 맡은 책임, 소유권, 의사 결정 방식 및 의사 결정권자를 파악하면 역량을 집중하고 팀의 이점을 극대화할 수 있습니다. 팀의 요구 사항은 팀에서 지원하는 고객, 소속된 조직, 팀 구성 및 워크로드의 특성에 따라 결정됩니다. 당연히 단일 운영 모델로는 모든 팀과 조직 내에서 그들이 맡은 워크로드를 지원할 수 없습니다.

애플리케이션, 워크로드, 플랫폼 및 인프라 구성 요소마다 소유자가 명시되어 있고, 각 프로세스와 절차의 정의 및 실행을 담당하는 소유자가 각각 명시되어 있는지 확인합니다. 각 구성 요소, 프로세스 및 절차의 비즈니스 가치, 이러한 리소스가 배치되거나 활동이 수행되는 이유, 그러한 소유권이 존재하는 이유를 파악하면 팀원의 작업을 알 수 있습니다. 팀원이 적절하게 행동하고 책임과 소유권을 식별하는 메커니즘이 마련되도록 팀원의 책임을 명확하게 정의합니다. 혁신에 제약이 없도록 추가, 변경 및 예외를 요청하는 메커니즘을 마련합니다. 팀 간의 협력을 통해 서로를 지원하는 방법과 비즈니스 성과를 설명하는 계약을 정의합니다.

팀원이 효과적으로 조치를 취하고 비즈니스 성과를 지원할 수 있도록 팀원에 대한 지원을 제공합니다. 관련 최고 경영진이 기대치를 설정하고 성공 여부를 측정해야 합니다. 최고 경영진은 조직이 발전하고 모범 사례를 도입하도록 하는 동인이자 후원자이자 지지자입니다. 팀원에게 성과가 위험한 상태일 때 영향을 최소화하기 위한 조치를 취할 수 있는 권한을 주고, 위험이 있다고 판단될 때 문제 해결과 인시턴트 방지를 위해 의사 결정권자 및 이해관계자에게 에스컬레이션하도록 합니다. 팀원이 시기 적절하고 적절한 조치를 취할 수 있도록 알려진 위험과 계획된 이벤트에 대한 시기 적절하고 명확하며 실행 가능한 커뮤니케이션을 제공합니다.

실험을 권장하여 학습을 가속화하고 팀원의 관심과 참여를 유지합니다. 팀은 새로운 기술을 도입하고 수요와 책임의 변화를 지원하기 위해 기술을 발전시켜야 합니다. 학습을 위한 전용 구조 시간을 제공하여 이를 지원하고 장려합니다. 팀원이 성공과 비즈니스 성과 지원을 위한 확장에 필요한 리소스 즉, 도구와 팀원을 모두 확보하고 있는지 확인합니다. 조직 간의 다양성을 활용하여 여러 가지 고유한 관점을 모색합니다. 이러한 관점을 통해 혁신을 증진하고, 기존의 추정 사항에 의문을 제기하며, 확증 편향의 위험을 줄일 수 있습니다. 팀 내에서 포용성, 다양성 및 접근성을 높여 유익한 관점을 확보합니다.

조직에 적용되는 외부 규제 또는 규정 준수 요구 사항이 있다면 팀원이 우선순위에 대한 영향을 확인할 수 있도록 AWS 클라우드 규정 준수에서 제공하는 리소스를 사용하여 관련 정보를 제공해야 합니다. Well-Architected 프레임워크에서는 학습, 평가 및 개선을 강조합니다. 아키텍처를 평가하고 시간에 따라 확장 가능한 설계를 구현하는 일관된 접근 방식을 제공합니다. AWS에서 제공하는 AWS Well-Architected Tool은 개발 전의 접근 방식, 프로덕션 환경에 적용하기 전의 워크로드 상태, 프로덕션 환경에서의 워크로드 상태를 검토합니다. 이를 최신 AWS 아키텍처 모범 사례와 비교하고, 워크로드의 전반적인 상태를 모니터링하며, 잠재적 위험에 대한 인사이트를 얻을 수 있습니다. AWS Trusted Advisor는 우선순위 결정에 도움이 될 수 있는 최적화 방안을 알려주는 핵심 검사 세트에 액세스할 수 있는 도구입니다. Business 및 Enterprise Support 고객에게는 우선순위를 더욱 자세히 결정하는 데 사용할 수 있는 추가 검사 기능이 제공됩니다. 이러한 기능을 사용하면 보안, 안정성, 성능 및 비용 최적화 영역을 중점적으로 확인할 수 있습니다.

AWS를 활용하면 선택한 방식이 워크로드에 어떤 영향을 주는지를 더 자세히 파악할 수 있도록 팀에게 AWS 및 해당 서비스 관련 정보를 제공할 수 있습니다. AWS Support에서 제공하는 리소스(AWS Knowledge Center, AWS 토론 양식 및 AWS 지원 센터) 및 AWS 설명서를 사용하여 팀에게 관련 정보를 제공해야 합니다. AWS 관련 문의 사항에 대해 지원을 받으려면 AWS 지원 센터를 통해 AWS Support에 지원을 요청하십시오. 또한 AWS는 AWS의 운영을 통해 학습한 모범 사례와 패턴을 Amazon Builders' Library에서 공유합니다. AWS 블로그 및 공식 AWS 팟캐스트에서도 기타 여러 가지 유용한 정보를 확인할 수 있습니다. AWS Training and Certification에서는 AWS 기초에 관한 자습형 디지털 과정을 통해 무료 교육을 제공합니다. 팀이 AWS 기술을 발전시켜 나갈 수 있도록 강의식 교육에 등록할 수도 있습니다.

운영 모델 관리를 위해 AWS Organizations와 같이 여러 계정에 걸쳐 환경을 중앙 집중식으로 관리할 수 있는 도구나 서비스를 사용해야 합니다. AWS Control Tower와 같은 서비스는 계정 설정을 위한 블루프린트(운영 모델 지원)를 정의하고, AWS Organizations를 통해 지속적으로 거버넌스를 적용하며, 새로운 계정의 프로비저닝을 자동화할 수 있도록 이 관리 기능을 확장합니다. Managed Services 공급자(예: AWS Managed Services, AWS Managed Services 파트너 또는 AWS Partner Network의 Managed Services 공급자)는 클라우드 환경을 구현하는 전문성을 제공하며, 보안 및 규정 준수 요구 사항과 비즈니스 목표를 지원합니다. Managed Services를 운영 모델에 추가하면 시간과 리소스를 절약할 수 있으며, 새로운 기술과 기능을 개발하는 대신 내부 팀을 간소화하며, 팀이 비즈니스를 차별화하는 전략적 결과에 집중할 수 있습니다.

다음 질문은 운영 우수성 에 대한 이러한 고려 사항을 중점적으로 다룹니다.

OPS 1: 운영 우선순위를 결정하는 요인은 무엇입니까?
OPS 2: 비즈니스 성과를 지원하기 위해 조직을 어떻게 구성합니까?
OPS 3: 조직 문화는 비즈니스 성과를 어떻게 지원합니까?

특정 시점에 우선순위 중 일부를 중점적으로 처리해야 할 수도 있습니다. 필요한 기능을 개발하고 위험을 관리하려면 워크로드 우선순위를 장기적으로 적절하게 절충해야 합니다. 우선순위를 정기적으로 검토하고 요구 사항이 바뀌면 우선순위를 업데이트합니다. 책임과 소유권을 정의하지 않았거나 알지 못하는 경우 필요한 활동을 적시에 처리하지 못하고 해당 요구 사항을 해결하기 위한 작업이 중복되고 잠재적으로 상충될 위험이 있습니다. 조직 문화는 팀원의 업무 만족도와 팀원 이직률에 직접적인 영향을 미칩니다. 팀원의 참여와 역량을 통해 비즈니스의 성공을 뒷받침할 수 있습니다. 혁신과 아이디어를 실현하려면 실험이 필요합니다. 원치 않는 결과가 나와도 성공하지 못하는 경로를 알게 되었으므로 실험에는 성공한 것으로 인정합니다.

준비

운영 우수성 달성을 준비하려면 워크로드 및 예상되는 워크로드 동작을 파악해야 합니다. 그러면 워크로드가 상태 관련 인사이트를 제공하도록 설계할 수 있으며, 워크로드를 지원하는 절차를 작성할 수 있습니다.

문제를 관찰하고 조사할 수 있도록 모든 구성 요소에서 지표, 로그, 이벤트, 추적 등 내부 상태를 파악하는 데 필요한 정보를 제공하도록 워크로드를 설계합니다. 반복을 통해, 워크로드 상태를 모니터링하고, 성과 실현에 실패할 위험이 있는 경우 이를 식별하며, 효과적으로 대응하는 데 필요한 원격 측정을 개발합니다. 워크로드를 계측할 때 상태를 파악할 수 있는 광범위한 정보 세트를 캡처합니다(예: 상태 변경 사항, 사용자 활동, 권한 있는 액세스, 사용률 카운터). 이때 필터를 사용하여 시간 경과에 따라 가장 유용한 정보를 선택할 수 있습니다.

프로덕션 환경으로 변경 사항을 전달하는 흐름을 개선할 수 있는 방식을 도입합니다. 이 방식은 리팩터링, 품질과 관련된 빠른 피드백 및 버그 수정을 지원해야 합니다. 이러한 방식을 도입하면 유용한 변경 사항을 프로덕션 환경으로 빠르게 전달할 수 있고, 문제 배포 가능성을 제한할 수 있으며, 배포 활동을 통해 발생하거나 환경에서 발생된 문제를 빠르게 파악하고 해결할 수 있습니다.

품질과 관련한 피드백을 빠르게 제공하며, 적절한 성과를 달성하는 데 도움이 되지 않는 변경을 수행한 경우 신속하게 복구할 수 있는 방식을 도입합니다. 이러한 사례를 사용하면 변경 사항 배포로 인해 발생하는 문제의 영향을 완화할 수 있습니다. 필요한 경우 더 빠르게 대응하고 변경 사항을 테스트 및 확인할 수 있도록 부적절한 변경을 수행한 경위의 계획을 수립합니다. 계획된 활동에 영향을 미치는 변경 위험을 제어할 수 있도록 환경의 계획된 활동을 알고 있어야 합니다. 되돌릴 수 있는 소규모 변경을 자주 수행하도록 하여 변경 범위를 제한합니다. 그러면 문제를 더 쉽게 해결할 수 있으며 변경 사항 롤백 옵션을 사용해 문제 해결 시간을 단축할 수 있습니다. 또한 중요한 변경 사항의 이점을 더 자주 누릴 수 있다는 의미이기도 합니다.

워크로드, 프로세스, 절차 및 직원의 운영 준비 상태를 평가하여 워크로드와 관련된 운영 위험을 파악합니다. 수동 또는 자동화된 체크리스트를 비롯한 일관된 프로세스를 사용해 워크로드 또는 변경에 응답하는 준비 여부를 확인해야 합니다. 이렇게 하면 문제 해결 계획을 세워야 하는 영역도 파악할 수 있습니다. 일상 활동을 문서화한 런북과 문제 해결 프로세스를 안내하는 플레이북을 준비합니다. 이점과 위험을 파악하여 프로덕션에 변경 사항 적용에 대해 정보에 입각한 결정을 내립니다.

AWS에서 전체 워크로드(애플리케이션, 인프라, 정책, 거버넌스, 운영)를 코드로 확인할 수 있습니다. 즉, 코드를 사용하여 모든 워크로드를 정의하고 업데이트할 수 있습니다. 즉, 애플리케이션 코드에 사용하는 것과 동일한 엔지니어링 분야를 스택의 모든 요소에 적용하고 이를 팀 또는 조직 간에 공유하여 개발 작업의 이점을 확대할 수 있습니다. 클라우드에서 운영을 코드로 사용하고 워크로드, 운영 절차 및 사례 실패 개발을 위해 안전하게 실험하는 기능을 사용합니다. AWS CloudFormation을 사용하면 운영 제어 수준이 점점 증가하는 일관된 템플릿 형식의 샌드박스 개발, 테스트 및 생산 환경을 갖출 수 있습니다.

다음 질문은 운영 우수성 에 대한 이러한 고려 사항을 중점적으로 다룹니다.

OPS 4: 어떻게 운영 상태를 파악할 수 있도록 워크로드를 설계하십니까?
OPS 5: 귀사는 어떻게 결함을 줄이고 수정 작업을 쉽게 수행하고 프로덕션으로 이어지는 흐름을 개선하십니까?
OPS 6: 배포 위험을 최소화하기 위해 어떻게 노력하나요?
OPS 7: 서비스 운영을 지원할 준비가 되어있는지를 어떻게 알 수 있나요?

운영 활동을 코드로 구현하여 운영 인력의 생산성을 최대화하고, 오류율을 최소화하고, 자동화된 응답을 사용할 수 있습니다. 해당하는 경우에는 “사전 분석(pre-mortem)” 기능을 사용하여 장애를 예측하고 절차를 생성합니다. 리소스 태그 및 AWS 리소스 그룹을 사용하여 메타데이터를 적용하고 일관된 태그 지정 전략을 시행하면 리소스를 식별할 수 있습니다. 리소스에 조직, 비용 회계, 액세스 제어에 대한 리소스에 태그를 지정하여 자동화된 운영 활동을 실행할 대상을 설정합니다. 클라우드의 탄력성을 활용하는 배포 실습을 도입하여 개발 활동을 용이하게 하고 시스템을 사전 배포할 수 있도록 함으로써 보다 빠른 구현을 달성합니다. 워크로드를 평가하는 데 사용하는 체크리스트를 변경할 때는 해당 변경으로 인해 더 이상 규정을 준수하지 않는 라이브 시스템에 대해 수행할 작업을 계획합니다.

운영

워크로드 운영의 성공은 비즈니스 및 고객 성과 달성에 따라 측정됩니다. 예상 결과를 정의하고, 성공을 측정하는 방법을 결정하고 이러한 계산에 사용될 지표를 식별하여 워크로드와 운영이 성공적인지 여부를 결정합니다. 운영 상태에는 워크로드 상태, 워크로드 지원 시 수행되는 운영 활동의 상태와 성공이 모두 포함됩니다(예: 배포 및 인시던트 응답). 개선, 조사 및 개입에 대한 지표 기준선을 설정하고 지표를 수집 및 분석한 후 운영 성공에 대한 이해 및 시간에 따라 어떻게 변하는지를 확인합니다. 수집된 지표를 사용하여 고객과 비즈니스 요구 사항을 충족하는지 여부를 확인하고 개선 영역을 식별합니다.

운영 우수성을 달성하려면 효과적이고 효율적인 운영 이벤트 관리가 필요합니다. 이는 계획된 운영 이벤트 및 계획되지 않은 운영 이벤트 모두에 적용됩니다. 사전에 파악된 이벤트에 대해 런북을 작성하여 사용하고, 문제 조사 및 해결에 도움이 되는 해결책을 지원하는 데는 플레이북을 사용합니다. 비즈니스 및 고객 영향을 기반으로 이벤트 응답의 우선순위를 지정합니다. 이벤트 응답에 대해 알람이 발생하는지, 연결된 실행 프로세스가 있는지 여부를 식별된 담당자와 함께 확인합니다. 이벤트를 해결하는 데 필요한 인력을 미리 정하고 에스컬레이션 트리거를 포함하여 필요할 경우 긴급성과 영향을 기반으로 추가 인력의 참여를 유도합니다. 권한이 있는 개인을 식별하고 참여시켜 이전에 해결되지 않은 이벤트 대응에 대해 대응 과정이 비즈니스에 영향을 미쳤는지 확인합니다.

타겟(예: 고객, 비즈니스, 개발자, 운영)에 맞는 알림 및 대시보드를 통해 워크로드 운영 상태를 전달하여 적절한 조치를 취하고 기대 사항을 관리하고 정상 운영이 다시 시작될 때 알림을 받을 수 있도록 합니다.

AWS에서는 AWS의 기본 지표 및 워크로드로부터 수집된 지표에 대한 대시보드 보기를 생성할 수 있습니다. CloudWatch 또는 타사 애플리케이션을 활용하여 운영 활동의 비즈니스, 워크로드 및 운영 수준 보기를 표시하고 집계할 수 있습니다. AWS는 근본 원인 분석 및 해결 지원을 통해 워크로드 문제를 식별할 수 있는 AWS X-Ray, CloudWatch, CloudTrail, VPC Flow Logs 등의 로그 기능을 통해 워크로드 인사이트를 제공합니다.

다음 질문은 운영 우수성 에 대한 이러한 고려 사항을 중점적으로 다룹니다.

OPS 8: 워크로드가 정상인지 어떻게 판단하나요?
OPS 9: 운영 업무가 정상인지 어떻게 판단하나요?

OPS 10: 서비스/운영 이벤트를 어떻게 관리하나요?

수집하는 모든 지표는 비즈니스 요구 사항과 지원되는 성과에 부합해야 합니다. 잘 알려진 이벤트에 대한 스크립팅된 응답을 개발하고 이벤트 인식에 대한 응답으로 성능을 자동화합니다.

개선

운영 우수성을 유지하려면 학습하고 공유하고 지속적으로 개선해야 합니다. 연속적이고 증분적 개선을 이뤄내는 데에 주력하여 작업 주기를 조절합니다. 고객에게 영향을 미치는 모든 이벤트에 대한 사후 분석을 수행합니다. 재발 제한 또는 방지를 위한 기여 요인과 예방 조치를 파악합니다. 영향을 받는 커뮤니티와 함께 기여 요소를 적절히 알립니다. 워크로드 및 운영 절차 모두를 포함하여 개선의 여지(예: 기능 요청, 문제 해결, 규정 준수 요구 사항)를 정기적으로 평가하고 우선순위를 조정합니다. 절차 내에 피드백 루프를 포함시켜 개선할 영역을 빠르게 식별하고 운영 실행을 통해 학습한 내용을 파악합니다.

팀 전반에 걸쳐 파악한 내용을 공유하여 이러한 내용의 이점도 함께 공유합니다. 파악한 내용 내의 추세를 분석하고 운영 지표에 대해 팀 교차 후행 분석을 수행하여 개선할 여지 및 방법을 식별합니다. 개선하려는 변경 사항을 적용하고 결과를 평가하여 성공 여부를 확정합니다.

AWS에서 Amazon S3으로 로그 데이터를 내보내거나 장기 보관을 위해 Amazon S3으로 로그를 직접 전송할 수 있습니다. AWS Glue를 사용하면 분석을 위해 Amazon S3의 로그 데이터를 검색 및 준비하여 AWS Glue Data Catalog에 관련된 메타데이터를 저장할 수 있습니다. 그리고 Amazon Athena에서 Glue와의 기본 통합을 통해 로그 데이터를 분석하고 표준 SQL을 사용해 쿼리할 수 있습니다. Amazon QuickSight와 같은 비즈니스 인텔리전스 도구를 사용하면 데이터를 시각화하고 탐색하며 분석할 수 있습니다. 개선을 이끌 수 있는 추세와 관심 이벤트를 찾습니다.

다음 질문은 운영 우수성 에 대한 이러한 고려 사항을 중점적으로 다룹니다.

OPS 11: 운영을 어떻게 개선 시키나요?

성공적인 운영 개선은 잦은 소규모 개선, 안전한 환경 및 실험, 개발, 테스트 개선에 대한 시간 제공, 그리고 실패로부터 학습 독려하는 환경을 통해 이루어집니다. 샌드박스, 개발, 테스트 및 생산 환경에 대한 운영 지원을 통해 운영 제어 수준을 점점 높아지도록 하고, 개발을 촉진하며, 생산 단계에 배포된 변경에서 성공적인 결과가 예측 가능하도록 합니다.

리소스

운영 우수성 관련 AWS 모범 사례에 대해 자세히 알아보려면 다음 리소스를 참조하십시오.

Operational Excellence Pillar
DevOps and AWS
DevOps at Amazon