Google Cloud Well-Architected Framework의 운영 우수성 핵심 요소는 Google Cloud에서 워크로드를 효율적으로 운영하기 위한 권장사항을 제공합니다. 클라우드의 운영 우수성에는 가치, 성능, 보안, 안정성을 제공하는 클라우드 솔루션을 설계, 구현, 관리하는 것이 포함됩니다. 이 핵심 요소의 권장사항은 클라우드의 동적이고 끊임없이 진화하는 요구사항을 충족하도록 워크로드를 지속적으로 개선하고 조정하는 데 도움이 됩니다.
운영 우수성 핵심 요소는 다음 잠재고객과 관련이 있습니다.
- 관리자 및 리더: 클라우드에서 운영 효율성을 확립하고 유지하며 클라우드 투자가 가치를 제공하고 비즈니스 목표를 지원하도록 보장하는 프레임워크입니다.
- 클라우드 운영팀: 사고 및 문제 관리, 용량 계획, 성능 최적화, 변경 관리에 대한 안내입니다.
- 사이트 안정성 엔지니어 (SRE): 모니터링, 사고 대응, 자동화를 포함하여 높은 수준의 서비스 안정성을 달성하는 데 도움이 되는 권장사항입니다.
- 클라우드 설계자 및 엔지니어: 솔루션이 운영 효율성과 확장성을 고려하여 설계되도록 설계 및 구현 단계의 운영 요구사항과 권장사항을 제공합니다.
- DevOps팀: 자동화, CI/CD 파이프라인, 변경 관리에 대한 안내로, 더 빠르고 안정적인 소프트웨어 배포를 지원합니다.
운영 우수성을 달성하려면 자동화, 조정, 데이터 기반 인사이트를 수용해야 합니다. 자동화는 반복 업무를 없애는 데 도움이 됩니다. 또한 반복적인 작업을 간소화하고 가드레일을 구축합니다. 조정은 복잡한 프로세스를 조정하는 데 도움이 됩니다. 데이터 기반 인사이트를 통해 근거 기반 의사 결정이 가능합니다 이러한 관행을 사용하면 클라우드 운영을 최적화하고, 비용을 절감하고, 서비스 가용성을 개선하고, 보안을 강화할 수 있습니다.
클라우드의 운영 우수성은 클라우드 운영의 기술적 숙련도를 넘어섭니다. 여기에는 지속적인 학습과 실험을 장려하는 문화적 변화가 포함됩니다. 팀은 혁신, 반복, 성장 마인드셋을 채택할 수 있는 역량을 갖춰야 합니다. 운영 우수성 문화는 개인이 아이디어를 공유하고, 가정에 도전하고, 개선을 추진하도록 장려하는 공동작업 환경을 조성합니다.
AI 및 ML 워크로드와 관련된 운영 효율성 원칙 및 권장사항은 Well-Architected Framework의 AI 및 ML 관점: 운영 효율성을 참조하세요.
에이전트 기술을 사용하여 워크로드 평가
AI 에이전트가 이 핵심 요소의 원칙과 권장사항에 따라 클라우드 워크로드를 평가할 수 있도록 하려면 GitHub의 Google Agent Skills 저장소에서 제공되는 google-cloud-waf-operational-excellence 기술을 사용하세요.
스킬을 설치하려면 에이전트의 클라이언트 또는 터미널에서 다음 명령어를 실행합니다.
npx skills add google/skills --skill google-cloud-waf-operational-excellence
메시지가 표시되면 기술을 설치할 AI 에이전트를 지정하고 설치 범위(프로젝트 또는 전역)를 설정합니다.
기술을 이미 설치한 경우 다음 명령어를 실행하여 최신 버전으로 업데이트할 수 있습니다.
npx skills update
핵심 원칙
Well-Architected Framework의 운영 우수성 핵심 요소에 있는 권장사항은 다음 핵심 원칙에 매핑됩니다.
- CloudOps를 사용하여 운영 준비 상태 및 성능 보장: 서비스 수준 목표 (SLO)를 정의하고 포괄적인 모니터링, 성능 테스트, 용량 계획을 수행하여 클라우드 솔루션이 운영 및 성능 요구사항을 충족하는지 확인합니다.
- 사고 및 문제 관리: 포괄적인 모니터링 가능성, 명확한 사고 대응 절차, 철저한 회고, 예방 조치를 통해 클라우드 사고의 영향을 최소화하고 재발을 방지합니다.
- 클라우드 리소스 관리 및 최적화: 적절한 크기 조정, 자동 확장과 같은 전략을 통해, 그리고 효과적인 비용 모니터링 도구를 사용하여 클라우드 리소스를 최적화하고 관리합니다.
- 변경사항 자동화 및 관리: 프로세스를 자동화하고 변경 관리를 간소화하며 수작업 부담을 줄입니다.
- 지속적인 개선 및 혁신: 지속적인 개선과 새로운 솔루션 도입에 집중하여 경쟁력을 유지합니다.
참여자
저자:
기타 참여자:
- 다니엘 리 | 클라우드 보안 설계자
- 필리페 그라시오 박사 | 고객 엔지니어, AI/ML 전문가
- 게리 함슨 | 수석 설계자
- 호세 안드라데 | 고객 엔지니어, SRE 전문가
- 저자: 쿠마르 다나고팔 | 크로스 프로덕트 솔루션 개발자
- 니콜라스 핀토 | 고객 엔지니어, 애플리케이션 현대화 전문가
- 라디카 카나캄 | Well-Architected Framework Google Cloud 프로그램 책임자
- 사만다 헤 | 테크니컬 라이터
- 자크 세일 | 네트워킹 전문가
- 웨이드 홈즈 | 글로벌 솔루션 이사
CloudOps를 사용하여 운영 준비 상태 및 성능 보장
Google Cloud Well-Architected Framework의 운영 우수성 부문에서 이 원칙을 따르면 클라우드 워크로드의 운영 준비 상태와 성능을 보장할 수 있습니다. 서비스 성능에 대한 명확한 기대치와 약속을 설정하고, 강력한 모니터링 및 알림을 구현하고, 성능 테스트를 수행하고, 용량 요구사항을 사전에 계획하는 것을 강조합니다.
원칙 개요
조직마다 운영 준비 상태를 다르게 해석할 수 있습니다. 운영 준비는 조직이 Google Cloud에서 워크로드를 성공적으로 운영할 수 있도록 준비하는 방법입니다. 복잡한 다층 클라우드 워크로드를 운영하려면 출시 및 day-2 운영을 신중하게 계획해야 합니다. 이러한 작업을 CloudOps라고 합니다.
운영 준비의 중점 영역
운영 준비는 네 가지 중점 영역으로 구성됩니다. 각 중점 영역은 Google Cloud에서 복잡한 애플리케이션 또는 환경을 운영할 준비를 하는 데 필요한 일련의 활동과 구성요소로 구성됩니다. 다음 표에는 각 중점 영역의 구성요소와 활동이 나와 있습니다.
| 운영 준비 상태의 중점 영역 | 활동 및 구성요소 |
|---|---|
| 직원 |
|
| 프로세스 |
|
| 도구 | CloudOps 프로세스를 지원하는 데 필요한 도구입니다. |
| 거버넌스 |
|
추천
CloudOps를 사용하여 운영 준비 상태 및 성능을 보장하려면 다음 섹션의 권장사항을 고려하세요. 이 문서의 각 권장사항은 하나 이상의 운영 준비의 중점 영역과 관련이 있습니다.
SLO 및 SLA 정의
클라우드 운영팀의 핵심 책임은 모든 중요 워크로드에 대한 서비스 수준 목표 (SLO) 및 서비스수준계약 (SLA)을 정의하는 것입니다. 이 권장사항은 운영 준비의 거버넌스 중점사항과 관련이 있습니다.
SLO 정의:
SLO는 구체적이고, 측정 가능하며, 달성 가능하고, 관련성이 있으며, 기한이 정해져야 하고(SMART), 원하는 서비스 및 성능 수준을 반영해야 합니다.
- 구체적: 필요한 서비스 및 성능 수준을 명확하게 설명합니다.
- 측정 가능: 수량화 및 추적 가능
- 달성 가능: 조직의 역량과 리소스 한도 내에서 달성할 수 있습니다.
- 관련성: 비즈니스 목표 및 우선순위에 부합합니다.
- 시간 제한: 측정 및 평가를 위한 기간이 정해져 있습니다.
예를 들어 웹 애플리케이션의 SLO는 '99.9% 가용성' 또는 '평균 응답 시간 200ms 미만'일 수 있습니다. 이러한 SLO는 웹 애플리케이션에 필요한 서비스 및 성능 수준을 명확하게 정의하며, SLO는 시간 경과에 따라 측정하고 추적할 수 있습니다.
SLA 정의:
SLA는 서비스 가용성, 성능, 지원과 관련하여 고객에게 제공하는 약속을 간략하게 설명하며, 여기에는 규정 미준수에 대한 벌금 또는 구제책이 포함됩니다. SLA에는 제공되는 서비스, 예상되는 서비스 수준, 서비스 제공업체와 고객의 책임, 규정 미준수에 대한 페널티 또는 구제책에 관한 구체적인 세부정보가 포함되어야 합니다. SLA는 두 당사자 간의 계약 역할을 하며, 양측 모두 클라우드 서비스와 관련된 기대치와 의무를 명확히 이해하도록 합니다.
SLO 추적:
Cloud Monitoring 및 서비스 수준 지표 (SLI)를 사용하여 SLO를 추적합니다. Monitoring은 조직에서 클라우드 기반 애플리케이션 및 서비스의 가용성, 성능, 지연 시간과 관련된 측정항목을 수집하고 분석할 수 있는 포괄적인 모니터링 및 모니터링 가능성 기능을 제공합니다. SLI는 시간 경과에 따라 SLO를 측정하고 추적하는 데 사용할 수 있는 특정 측정항목입니다. 이러한 도구를 활용하면 클라우드 서비스를 효과적으로 모니터링하고 관리하며 SLO 및 SLA를 충족할 수 있습니다.
모든 중요 클라우드 서비스에 대해 SLO 및 SLA를 명확하게 정의, 전달, 추적하면 배포된 애플리케이션 및 서비스의 안정성과 성능을 보장하는 데 도움이 됩니다.
종합적인 모니터링 가능성 구현
클라우드 환경의 상태와 성능을 실시간으로 파악하려면 Google Cloud Observability 도구와 서드 파티 솔루션을 함께 사용하는 것이 좋습니다. 이 권장사항은 운영 준비의 중점사항인 프로세스 및 도구와 관련이 있습니다.
모니터링 가능성 솔루션 조합을 구현하면 클라우드 인프라 및 애플리케이션의 다양한 측면을 포괄하는 종합적인 모니터링 가능성 전략을 수립할 수 있습니다. Google Cloud Observability는 다양한Google Cloud 서비스, 애플리케이션, 외부 소스에서 측정항목, 로그, trace를 수집, 분석, 시각화하는 통합 플랫폼입니다. Monitoring을 사용하면 리소스 사용률, 성능 특성, 전반적인 리소스 상태에 대한 통계를 얻을 수 있습니다.
포괄적인 모니터링을 위해 CPU 사용률, 메모리 사용량, 네트워크 트래픽, 디스크 I/O, 애플리케이션 응답 시간과 같은 시스템 상태 지표와 일치하는 중요한 측정항목을 모니터링합니다. 비즈니스별 측정항목도 고려해야 합니다. 이러한 측정항목을 추적하면 잠재적인 병목 현상, 성능 문제, 리소스 제약 조건을 식별할 수 있습니다. 또한 관련 팀에 잠재적 문제나 이상치를 선제적으로 알리도록 알림을 설정할 수 있습니다.
모니터링 기능을 더욱 강화하려면 서드 파티 솔루션을 Google Cloud Observability와 통합하면 됩니다. 이러한 솔루션은 고급 분석, 머신러닝 기반 이상 감지, 사고 관리 기능과 같은 추가 기능을 제공할 수 있습니다. Google Cloud Observability 도구와 서드 파티 솔루션을 조합하면 특정 요구사항에 맞게 맞춤설정할 수 있는 강력한 모니터링 생태계를 만들 수 있습니다. 이러한 조합 방식을 사용하면 문제를 사전에 식별하고 해결하며 리소스 사용률을 최적화하고 클라우드 애플리케이션 및 서비스의 전반적인 안정성과 가용성을 보장할 수 있습니다.
성능 및 부하 테스트 구현
정기적인 성능 테스트를 수행하면 클라우드 기반 애플리케이션과 인프라가 최대 부하를 처리하고 최적의 성능을 유지할 수 있습니다. 부하 테스트는 현실적인 트래픽 패턴을 시뮬레이션합니다. 스트레스 테스트는 시스템을 한계까지 밀어붙여 잠재적인 병목 현상과 성능 제한을 식별합니다. 이 권장사항은 운영 준비의 중점사항인 프로세스 및 도구와 관련이 있습니다.
성능 테스트: 부하 테스트 서비스를 사용하여 실제 트래픽 패턴을 시뮬레이션하고 애플리케이션을 스트레스 테스트합니다. 이러한 도구는 다양한 부하 조건에서 시스템이 어떻게 작동하는지에 대한 유용한 정보를 제공하며 최적화가 필요한 영역을 식별하는 데 도움이 될 수 있습니다.
성능 최적화: 성능 테스트 결과를 기반으로 클라우드 인프라와 애플리케이션을 최적화하여 최적의 성능과 확장성을 확보할 수 있습니다. 이 최적화에는 리소스 할당 조정, 구성 조정 또는 캐싱 메커니즘 구현이 포함될 수 있습니다.
예를 들어 트래픽이 많은 기간 동안 애플리케이션 속도가 느려지는 경우 애플리케이션에 할당된 가상 머신 또는 컨테이너 수를 늘려야 할 수 있습니다. 또는 성능을 개선하기 위해 웹 서버 또는 데이터베이스의 구성을 조정해야 할 수 있습니다.
정기적으로 성능 테스트를 수행하고 필요한 최적화를 구현하면 클라우드 기반 애플리케이션과 인프라가 항상 최고의 성능으로 실행되고 사용자에게 원활하고 반응성이 뛰어난 환경을 제공할 수 있습니다. 이렇게 하면 경쟁 우위를 유지하고 고객과의 신뢰를 구축하는 데 도움이 될 수 있습니다.
용량 계획 및 관리
수요 변화에 따라 클라우드 시스템을 실행하고 확장하려면 클라우드 리소스의 용량을 적극적으로 계획하고 관리해야 합니다. 이 권장사항은 운영 준비의 중점사항인 프로세스 및 도구를 지원합니다.
서비스 한도 고려 및 리소스 할당량 관리: 클라우드 리소스의 용량을 계획하려면 사용하려는 서비스의 엄격한 한도 (고정된 제약조건)부터 시작합니다.
- 필요한 컴퓨팅, 스토리지, API 한도, 기타 리소스의 할당량 요구사항을 추정합니다. 리소스가 필요하기 전에 적절한 할당량 조정을 요청하세요.
- Cloud Monitoring의 측정항목을 BigQuery에 로드하고 측정항목을 사용하여 트래픽 패턴을 식별하고 시간 경과에 따른 시스템 부하를 추적합니다.
- 예정된 마케팅 캠페인, 사용자 가입, 기능 출시를 기반으로 리소스 수요를 예측합니다. 또한 현재 및 계획된 SLA 약정도 고려하세요.
유연성과 효율성을 고려한 설계: Cloud Deploy 배포의 용량을 계획할 때 애플리케이션 구성요소를 특정 머신 유형에서 분리합니다. 워크로드를 단일 머신 유형에 고정하면 최신 클라우드 하드웨어나 리전 용량 변경사항을 활용할 수 없습니다.
- 높은 메모리 인스턴스 또는 GPU와 같은 특수 하드웨어가 필요한 워크로드의 경우 필요할 때 리소스를 확보할 수 있는지 확인합니다. 미래용 예약을 사용하여 최대 1년 전에 중요한 머신 유형의 용량을 보장받을 수 있습니다.
- 시작 시간이 가변적인 일괄 처리 또는 모델 학습 워크로드의 경우 Flex-start VM을 사용하여 용량을 동적으로 예약합니다. 이러한 VM은 동적 워크로드 스케줄러를 사용하여 요청을 큐에 추가하고 컴퓨팅 비용을 줄입니다.
- 일시적인 개발 환경에 이전 머신 계열이나 리소스를 예약하지 마세요.
- 재해 복구 (DR)를 위해 효율적으로 장애 조치를 수행할 수 있도록 보조 리전의 리소스를 계획합니다.
자동 확장 구현: 실시간 워크로드 변동에 맞게 클라우드 리소스를 동적으로 조정하려면 자동 확장 정책을 구현합니다. 자동 확장 알고리즘은 CPU 사용률, 메모리 부족, 큐 깊이와 같은 측정항목을 평가합니다. 평가에 따라 트래픽이 많은 기간에는 리소스가 수평 확장되고 사용률이 낮은 기간에는 수평 축소되므로 클라우드 리소스 비용을 최적화하는 데 도움이 됩니다.
- 현재 세대와 최신 세대의 머신 유형을 결합하는 혼합 인스턴스 템플릿으로 관리형 인스턴스 그룹 (MIG)을 구성합니다.
- MIG 구성에 인스턴스 유연성(호환되는 여러 머신 유형 지정)과 위치 유연성(리전의 여러 영역에 대상 분산)이 모두 포함되어 있는지 확인합니다. 현재 용량 요구사항에 따라 시스템은 요청을 삭제하거나 컴퓨팅 리소스를 제한하지 않고 대체 목록에서 다음으로 선호하는 머신 유형을 자동으로 프로비저닝합니다.
지속적인 모니터링 및 최적화
클라우드 워크로드를 관리하고 최적화하려면 성능 측정항목을 지속적으로 모니터링하고 분석하는 프로세스를 수립해야 합니다. 이 권장사항은 운영 준비의 중점사항인 프로세스 및 도구와 관련이 있습니다.
데이터 추적 및 수집:
지속적인 모니터링 및 분석 프로세스를 구축하려면 클라우드 환경의 다양한 측면과 관련된 데이터를 추적, 수집, 평가해야 합니다. 이 데이터를 사용하면 개선이 필요한 영역을 사전에 파악하고, 리소스 사용률을 최적화하고, 클라우드 인프라가 성능 기대치를 지속적으로 충족하거나 초과하도록 할 수 있습니다.
로그 및 trace 검토:
로그는 시스템 이벤트, 오류, 경고에 대한 유용한 정보를 제공합니다. trace는 애플리케이션을 통한 요청 흐름에 대한 자세한 정보를 제공합니다. 로그와 trace를 분석하면 잠재적인 문제를 식별하고, 문제의 근본 원인을 파악하고, 다양한 조건에서 애플리케이션이 어떻게 작동하는지 더 잘 이해할 수 있습니다. 서비스 간 왕복 시간과 같은 측정항목은 워크로드의 병목 현상을 식별하고 이해하는 데 도움이 될 수 있습니다.
성능 조정:
성능 조정 기술을 사용하여 애플리케이션 응답 시간과 전반적인 효율성을 크게 최적화합니다. 사용할 수 있는 기법의 예시는 다음과 같습니다.
- 캐싱: 자주 액세스하는 데이터를 메모리에 저장하여 반복적인 데이터베이스 쿼리나 API 호출의 필요성을 줄입니다.
- 데이터베이스 최적화: 색인 생성 및 쿼리 최적화와 같은 기술을 사용하여 데이터베이스 작업 성능을 개선합니다.
- 코드 프로파일링: 과도한 리소스를 소비하거나 성능 문제를 일으키는 코드 영역을 식별합니다.
사고 및 문제 관리
Google Cloud Well-Architected Framework의 운영 우수성 부문에서 이 원칙은 클라우드 워크로드와 관련된 이슈 및 문제를 관리하는 데 도움이 되는 권장사항을 제공합니다. 여기에는 포괄적인 모니터링 및 모니터링 가능성 구현, 명확한 사고 대응 절차 수립, 철저한 근본 원인 분석 수행, 예방 조치 구현이 포함됩니다. 이 원칙에서 설명하는 많은 주제는 안정성 핵심 요소에서 자세히 다룹니다.
원칙 개요
사고 관리 및 문제 관리는 기능적 운영 환경의 중요한 구성요소입니다. 심각도가 다른 사고에 대응, 분류, 해결하는 방법은 운영에 상당한 영향을 미칠 수 있습니다. 또한 안정성과 성능을 최적화하기 위해 선제적이고 지속적으로 조정해야 합니다. 효율적인 사고 및 문제 관리 프로세스는 다음과 같은 기본 요소에 따라 달라집니다.
- 지속적인 모니터링: 문제를 신속하게 식별하고 해결합니다.
- 자동화: 작업을 간소화하고 효율성을 개선합니다.
- 조정: 클라우드 리소스를 효과적으로 조정하고 관리합니다.
- 데이터 기반 인사이트: 클라우드 운영을 최적화하고 정보에 입각한 의사 결정을 내립니다.
이러한 요소는 다양한 문제와 중단을 처리할 수 있는 복원력이 우수한 클라우드 환경을 빌드하는 데 도움이 됩니다. 이러한 요소는 비용이 많이 드는 사고 및 다운타임의 위험을 줄이는 데도 도움이 되며 비즈니스 민첩성과 성공을 높이는 데도 도움이 될 수 있습니다. 이러한 기본 요소는 인력, 프로세스, 도구, 거버넌스라는 운영 준비의 네 가지 중점 영역에 걸쳐 있습니다.
추천
이슈와 문제를 효과적으로 관리하려면 다음 섹션의 권장사항을 고려하세요. 이 문서의 각 권장사항은 운영 준비의 중점사항 중 하나 이상과 관련이 있습니다.
명확한 사고 대응 절차 수립
사고에 효과적이고 조율된 방식으로 대응하려면 명확한 역할과 책임이 필수적입니다. 또한 명확한 커뮤니케이션 프로토콜과 에스컬레이션 경로를 통해 사고 중에 정보가 신속하고 효과적으로 공유되도록 할 수 있습니다. 이 권장사항은 인력, 프로세스, 도구라는 운영 준비의 중점사항과 관련이 있습니다.
사고 대응 절차를 수립하려면 사고 책임자, 조사자, 커뮤니케이터, 기술 전문가와 같은 각 팀원의 역할과 기대치를 정의해야 합니다. 커뮤니케이션 및 에스컬레이션 경로를 설정하려면 중요한 연락처를 식별하고, 커뮤니케이션 채널을 설정하고, 필요한 경우 사고를 상위 관리자에게 에스컬레이션하는 프로세스를 정의해야 합니다. 정기적인 교육과 준비는 팀이 사고에 효과적으로 대응할 수 있는 지식과 기술을 갖추는 데 도움이 됩니다.
런북 또는 플레이북에 사고 대응 절차를 문서화하면 사고 중에 팀이 따를 수 있는 표준화된 참조 가이드를 제공할 수 있습니다. 런북은 커뮤니케이션, 분류, 조사, 해결을 포함하여 사고 대응 프로세스의 각 단계에서 수행해야 하는 단계를 간략히 설명해야 합니다. 또한 관련 도구 및 리소스에 대한 정보와 주요 인력의 연락처 정보도 포함해야 합니다. 런북을 정기적으로 검토하고 업데이트하여 최신 상태로 유지하고 효과적으로 작동하도록 해야 합니다.
중앙 집중식 사고 관리
사고 수명 주기 전반에서 효과적인 추적 및 관리를 위해 중앙 집중식 사고 관리 시스템을 사용하는 것이 좋습니다. 이 권장사항은 프로세스 및 도구라는 운영 준비 중점사항과 관련이 있습니다.
중앙 집중식 사고 관리 시스템은 다음과 같은 이점을 제공합니다.
- 가시성 향상: 모든 이슈 관련 데이터를 한곳에 통합하면 팀이 다양한 채널이나 시스템에서 컨텍스트를 검색할 필요가 없습니다. 이 접근 방식은 시간을 절약하고 혼란을 줄이며 이해관계자에게 사고의 상태, 영향, 진행 상황을 포함한 포괄적인 사고 보기를 제공합니다.
- 조정 및 공동작업 개선: 중앙 집중식 시스템은 커뮤니케이션 및 작업 관리를 위한 통합 플랫폼을 제공합니다. 사고 대응에 관련된 여러 부서와 기능 간의 원활한 공동작업을 촉진합니다. 이 접근 방식을 사용하면 모든 사용자가 최신 정보에 액세스할 수 있으며 잘못된 커뮤니케이션 및 불일치 위험이 줄어듭니다.
- 책임 및 소유권 강화: 중앙 집중식 사고 관리 시스템을 사용하면 조직에서 특정 개인 또는 팀에 작업을 할당할 수 있으며 책임이 명확하게 정의되고 추적됩니다. 이 접근 방식은 팀원이 자신의 진행 상황과 기여도를 쉽게 모니터링할 수 있으므로 책임감을 높이고 적극적인 문제 해결을 장려합니다.
중앙 집중식 사고 관리 시스템은 사고 추적, 작업 할당, 커뮤니케이션 관리를 위한 강력한 기능을 제공해야 합니다. 이러한 기능을 사용하면 워크플로를 맞춤설정하고, 우선순위를 설정하고, 모니터링 도구 및 티켓팅 시스템과 같은 다른 시스템과 통합할 수 있습니다.
중앙 집중식 사고 관리 시스템을 구현하면 조직의 사고 대응 프로세스를 최적화하고 공동작업을 개선하며 가시성을 높일 수 있습니다. 이렇게 하면 사고 해결 시간이 단축되고 다운타임이 줄어들며 고객 만족도가 향상됩니다. 또한 과거 사고에서 교훈을 얻고 개선할 영역을 파악할 수 있으므로 지속적인 개선 문화를 조성하는 데 도움이 됩니다.
철저한 사고 후 검토 실시
사고가 발생한 후에는 사후 분석이라고도 하는 자세한 사고 후 검토(PIR)를 수행하여 근본 원인, 기여 요인, 교훈을 파악해야 합니다. 이러한 철저한 검토는 향후 유사한 사고를 방지하는 데 도움이 됩니다. 이 권장사항은 프로세스 및 거버넌스라는 운영 준비 중점사항과 관련이 있습니다.
PIR 프로세스에는 사고의 다양한 측면에 대한 전문 지식을 갖춘 여러 분야의 팀이 참여해야 합니다. 팀은 인터뷰, 문서 검토, 현장 검사를 통해 모든 관련 정보를 수집해야 합니다. 사고로 이어진 일련의 작업을 설정하려면 이벤트 타임라인을 만들어야 합니다.
팀은 필요한 정보를 수집한 후 근본 원인 분석을 수행하여 사고를 유발한 요인을 파악해야 합니다. 이 분석은 사고의 직접적인 원인과 사고에 기여한 시스템적 문제를 모두 식별해야 합니다.
PIR팀은 근본 원인을 파악하는 것과 함께 이슈를 일으켰을 수 있는 다른 원인도 파악해야 합니다. 이러한 요인에는 인적 오류, 장비 고장 또는 의사소통 장애 및 교육 부족과 같은 조직적 요인이 포함될 수 있습니다.
PIR 보고서에는 이벤트 타임라인, 근본 원인 분석, 권장 조치를 포함한 조사 결과가 문서화되어야 합니다. 이 보고서는 시정 조치를 구현하고 재발을 방지하는 데 유용한 리소스입니다. 보고서는 모든 관련 이해관계자와 공유해야 하며 안전 교육 및 절차를 개발하는 데 사용해야 합니다.
성공적인 PIR 프로세스를 보장하려면 조직은 비난을 가하는 대신 학습과 개선에 중점을 두는 비난 없는 문화를 조성해야 합니다. 이러한 문화는 개인이 보복에 대한 두려움 없이 사고를 보고하도록 장려하며, 시스템 문제를 해결하고 의미 있는 개선을 이룰 수 있게 해줍니다.
철저한 PIR을 수행하고 발견 사항을 기반으로 시정 조치를 구현하면 향후 유사한 사고가 발생할 위험을 크게 줄일 수 있습니다. 사고 조사 및 예방에 대한 이러한 사전 예방적 접근 방식은 관련된 모든 사람에게 더 안전하고 효율적인 작업 환경을 조성하는 데 도움이 됩니다.
기술 자료 유지보수
알려진 문제, 해결 방법, 문제 해결 가이드로 구성된 지식 기반은 사고 관리 및 해결에 필수적입니다. 팀원은 기술 자료를 사용하여 일반적인 문제를 빠르게 식별하고 해결할 수 있습니다. 지식 베이스를 구현하면 에스컬레이션의 필요성을 줄이고 전반적인 효율성을 개선할 수 있습니다. 이 권장사항은 인력 및 프로세스라는 운영 준비 중점사항과 관련이 있습니다.
지식 자료의 주요 이점은 팀이 과거 경험에서 배우고 실수를 반복하지 않도록 하는 것입니다. 알려진 문제에 대한 솔루션을 캡처하고 공유함으로써 팀은 일반적인 문제를 해결하는 방법과 사고 관리를 위한 권장사항에 대한 집단적 이해를 구축할 수 있습니다. 기술 자료를 사용하면 시간과 노력을 절약하고 프로세스를 표준화하며 사고 해결의 일관성을 보장할 수 있습니다.
기술 자료는 사고 해결 시간을 개선하는 데 도움이 될 뿐만 아니라 팀 간의 지식 공유와 공동작업을 촉진합니다. 중앙 정보 저장소를 사용하면 팀이 기술 자료에 쉽게 액세스하고 기여할 수 있으므로 지속적인 학습과 개선의 문화가 조성됩니다. 이러한 문화는 팀이 전문성과 경험을 공유하도록 장려하여 더 포괄적이고 가치 있는 지식 기반을 구축할 수 있게 합니다.
기술 자료를 효과적으로 만들고 관리하려면 적절한 도구와 기술을 사용합니다. Google Workspace와 같은 공동작업 플랫폼은 문서를 쉽게 만들고, 수정하고, 공유할 수 있으므로 이 목적에 적합합니다. 이러한 도구는 버전 제어 및 변경 추적도 지원하므로 기술 자료를 최신 상태로 정확하게 유지할 수 있습니다.
모든 관련 팀이 기술 자료에 쉽게 액세스할 수 있도록 합니다. 지식 기반을 기존 사고 관리 시스템과 통합하거나 전용 포털 또는 인트라넷 사이트를 제공하여 이를 달성할 수 있습니다. 쉽게 사용할 수 있는 기술 자료를 통해 팀은 이슈를 효율적으로 해결하는 데 필요한 정보에 빠르게 액세스할 수 있습니다. 이러한 가용성은 다운타임을 줄이고 비즈니스 운영에 미치는 영향을 최소화하는 데 도움이 됩니다.
기술 자료를 정기적으로 검토하고 업데이트하여 관련성과 유용성을 유지합니다. 이슈 보고서를 모니터링하고, 일반적인 문제와 추세를 파악하고, 새로운 솔루션과 문제 해결 가이드를 기술 자료에 통합합니다. 최신 기술 자료는 팀이 사고를 더 빠르고 효과적으로 해결하는 데 도움이 됩니다.
사고 대응 자동화
자동화는 사고 대응 및 해결 프로세스를 간소화하는 데 도움이 됩니다. 이를 통해 보안 침해와 시스템 장애를 신속하고 효율적으로 해결할 수 있습니다. Cloud Run Functions 또는 Cloud Run과 같은 Google Cloud 제품을 사용하면 일반적으로 수동으로 수행되며 시간이 많이 소요되는 다양한 작업을 자동화할 수 있습니다. 이 권장사항은 프로세스 및 도구라는 운영 준비 중점사항과 관련이 있습니다.
자동화된 사고 대응은 다음과 같은 이점을 제공합니다.
- 사고 감지 및 해결 시간 단축: 자동화된 도구는 시스템과 애플리케이션을 지속적으로 모니터링하고, 의심스럽거나 비정상적인 활동을 실시간으로 감지하며, 이해관계자에게 알리거나 개입 없이 대응할 수 있습니다. 이러한 자동화를 통해 잠재적인 위협이나 문제가 큰 사고로 확대되기 전에 식별할 수 있습니다. 사고가 감지되면 자동화된 도구는 영향을 받은 시스템 격리, 악성 파일 격리, 변경사항 롤백과 같은 사전 정의된 해결 작업을 트리거하여 시스템을 정상 상태로 복원할 수 있습니다.
- 보안 및 운영팀의 부담 감소: 자동화된 사고 대응을 통해 보안 및 운영팀이 보다 전략적인 작업에 집중할 수 있습니다. 진단 정보 수집이나 알림 트리거와 같은 일상적이고 반복적인 작업을 자동화하면 조직은 더 복잡하고 중요한 이슈를 처리할 수 있는 인력을 확보할 수 있습니다. 이러한 자동화를 통해 전반적인 사고 대응 효과와 효율성을 개선할 수 있습니다.
- 해결 프로세스의 일관성 및 정확성 향상: 자동화된 도구를 사용하면 영향을 받는 모든 시스템에 해결 조치를 일관되게 적용하여 인적 오류나 불일치의 위험을 최소화할 수 있습니다. 이러한 해결 프로세스의 표준화는 사고가 사용자와 비즈니스에 미치는 영향을 최소화하는 데 도움이 됩니다.
클라우드 리소스 관리 및 최적화
Google Cloud Well-Architected Framework의 운영 우수성 부문에서 이 원칙을 따르면 클라우드 워크로드에서 사용하는 리소스를 관리하고 최적화하는 데 도움이 되는 권장사항을 확인할 수 있습니다. 여기에는 실제 사용량과 수요에 따라 리소스 크기를 적절하게 조정하고, 동적 리소스 할당을 위해 자동 확장을 사용하고, 비용 최적화 전략을 구현하고, 리소스 사용률과 비용을 정기적으로 검토하는 작업이 포함됩니다. 이 원칙에서 설명하는 많은 주제는 비용 최적화 핵심 요소에서 자세히 다룹니다.
원칙 개요
클라우드 리소스 관리 및 최적화는 클라우드 지출, 리소스 사용량, 인프라 효율성을 최적화하는 데 중요한 역할을 합니다. 여기에는 클라우드 지출의 가치와 수익을 극대화하기 위한 다양한 전략과 권장사항이 포함됩니다.
이 핵심 요소의 최적화는 비용 절감에만 국한되지 않습니다. 다음 목표를 강조합니다.
- 효율성: 자동화 및 데이터 분석을 사용하여 최고의 성능과 비용 절감을 달성합니다.
- 성능: 변동하는 수요를 충족하고 최적의 결과를 제공하기 위해 리소스를 손쉽게 확장합니다.
- 확장성: 급격한 성장과 다양한 워크로드를 수용할 수 있도록 인프라와 프로세스를 조정합니다.
이러한 목표에 집중하면 비용과 기능 간의 균형을 이룰 수 있습니다. 리소스 프로비저닝, 확장, 마이그레이션에 관해 정보에 입각한 결정을 내릴 수 있습니다. 또한 리소스 소비 패턴에 대한 유용한 정보를 얻을 수 있으므로 잠재적인 문제가 확대되기 전에 선제적으로 식별하고 해결할 수 있습니다.
추천
리소스를 관리하고 최적화하려면 다음 섹션의 권장사항을 고려하세요. 이 문서의 각 권장사항은 하나 이상의 운영 준비 중점사항과 관련이 있습니다.
리소스의 적정 크기 조정
효율적인 클라우드 리소스 관리를 위해서는 리소스 사용률을 지속적으로 모니터링하고 실제 수요에 맞게 리소스 할당을 조정하는 것이 필수적입니다. 리소스를 과도하게 프로비저닝하면 불필요한 비용이 발생할 수 있고 프로비저닝이 부족하면 애플리케이션 성능과 사용자 환경에 영향을 미치는 성능 병목 현상이 발생할 수 있습니다. 최적의 균형을 달성하려면 클라우드 리소스의 크기를 적절하게 조정하는 사전 예방적 접근 방식을 채택해야 합니다. 이 권장사항은 운영 준비의 거버넌스 중점사항과 관련이 있습니다.
Cloud Monitoring 및 추천자는 적정 크기 조정 기회를 파악하는 데 도움이 됩니다. Monitoring은 리소스 사용률 측정항목에 대한 실시간 가시성을 제공합니다. 이러한 가시성을 통해 리소스 사용 패턴을 추적하고 잠재적인 비효율성을 식별할 수 있습니다. 추천자는 리소스 사용률 데이터를 분석하여 리소스 할당을 최적화하기 위한 지능적인 추천을 제공합니다. 이러한 도구를 사용하면 리소스 사용량에 대한 통계를 얻고 리소스 크기 조정에 대해 정보에 입각한 결정을 내릴 수 있습니다.
Monitoring 및 Recommender 외에도 커스텀 측정항목을 사용하여 자동 크기 조정 작업을 트리거하는 것이 좋습니다. 커스텀 측정항목을 사용하면 애플리케이션 및 워크로드와 관련된 특정 리소스 사용률 측정항목을 추적할 수 있습니다. 사전 정의된 기준에 도달하면 관리자에게 알리도록 알림을 구성할 수도 있습니다. 그러면 관리자가 리소스 할당을 조정하는 데 필요한 조치를 취할 수 있습니다. 이러한 사전 예방적 접근 방식을 사용하면 리소스가 적시에 확장되므로 클라우드 비용을 최적화하고 성능 문제를 방지할 수 있습니다.
자동 확장 사용
컴퓨팅 및 기타 리소스를 자동 확장하면 클라우드 기반 애플리케이션의 최적의 성능과 비용 효율성을 보장할 수 있습니다. 자동 확장을 사용하면 워크로드 변동에 따라 리소스 용량을 동적으로 조정할 수 있으므로 필요할 때 필요한 리소스를 확보하고 과도한 프로비저닝과 불필요한 비용을 방지할 수 있습니다. 이 권장사항은 운영 준비의 프로세스 중점사항과 관련이 있습니다.
다양한 애플리케이션과 워크로드의 다양한 요구사항을 충족하기 위해Google Cloud 는 다음을 포함한 다양한 자동 확장 옵션을 제공합니다.
- Compute Engine 관리형 인스턴스 그룹(MIG)은 단일 항목으로 관리되고 확장되는 VM 그룹입니다. MIG를 사용하면 그룹에서 유지할 VM의 최소 수와 최대 수, 자동 확장을 트리거하는 조건을 지정하는 자동 확장 정책을 정의할 수 있습니다. 예를 들어 CPU 사용률이 특정 기준에 도달하면 MIG에 VM을 추가하고 사용률이 다른 기준 아래로 떨어지면 VM을 삭제하도록 정책을 구성할 수 있습니다.
Google Kubernetes Engine(GKE) 자동 확장은 애플리케이션 니즈에 맞게 클러스터 리소스를 동적으로 조정합니다. 다음과 같은 도구를 제공합니다.
- 클러스터 자동 확장 처리는 포드 리소스 수요에 따라 노드를 추가하거나 삭제합니다.
- 수평형 포드 자동 확장 처리는 CPU, 메모리 또는 커스텀 측정항목을 기준으로 포드 복제본 수를 변경합니다.
- 수직형 포드 자동 확장 처리는 사용 패턴에 따라 포드 리소스 요청 및 한도를 미세 조정합니다.
- 노드 자동 프로비저닝은 워크로드에 최적화된 노드 풀을 자동으로 만듭니다.
이러한 도구는 리소스 사용률을 최적화하고 애플리케이션 성능을 보장하며 클러스터 관리를 간소화하기 위해 함께 작동합니다.
Cloud Run은 인프라를 관리할 필요 없이 코드를 실행할 수 있는 서버리스 플랫폼입니다. Cloud Run은 수신 트래픽을 기준으로 인스턴스 수를 자동으로 조정하는 자동 확장을 기본 제공합니다. 트래픽 양이 증가하면 Cloud Run은 부하를 처리하기 위해 인스턴스 수를 확장합니다. 트래픽이 감소하면 Cloud Run은 인스턴스 수를 축소하여 비용을 절감합니다.
이러한 자동 확장 옵션을 사용하면 클라우드 기반 애플리케이션에 다양한 워크로드를 처리하는 데 필요한 리소스가 확보되며 과도한 프로비저닝과 불필요한 비용이 방지됩니다. 자동 확장을 사용하면 성능이 향상되고 비용이 절감되며 클라우드 리소스를 더 효율적으로 사용할 수 있습니다.
비용 최적화 전략 활용
클라우드 지출을 최적화하면 조직의 IT 예산을 효과적으로 관리할 수 있습니다. 이 권장사항은 운영 준비의 거버넌스 중점사항과 관련이 있습니다.
Google Cloud 는 클라우드 비용을 최적화하는 데 도움이 되는 여러 도구와 기법을 제공합니다. 이러한 도구와 기술을 사용하면 클라우드 지출에서 최고의 가치를 얻을 수 있습니다. 이러한 도구와 기술은 사용률이 낮은 리소스를 식별하거나 더 비용 효율적인 인스턴스 유형을 추천하는 등 비용을 절감할 수 있는 영역을 식별하는 데 도움이 됩니다. Google Cloud 클라우드 비용을 최적화하는 데 도움이 되는 옵션은 다음과 같습니다.
- 약정 사용 할인(CUD)은 일정 기간 동안 특정 수준의 사용량을 약정하는 경우 제공되는 할인입니다.
- Compute Engine의 지속 사용 할인은 서비스를 지속적으로 사용할 때 할인을 제공합니다.
- 스팟 VM은 일반 VM에 비해 저렴한 비용으로 미사용 VM 용량에 대한 액세스를 제공합니다.
가격 책정 모델은 시간이 지남에 따라 변경될 수 있으며 기존 옵션에 비해 더 나은 성능이나 더 낮은 비용을 제공하는 새로운 기능이 도입될 수 있습니다. 따라서 가격 책정 모델을 정기적으로 검토하고 대체 기능을 고려해야 합니다. 최신 가격 책정 모델과 기능에 대한 정보를 파악하면 클라우드 아키텍처에 대해 정보에 입각한 결정을 내려 비용을 최소화할 수 있습니다.
Google Cloud의 비용 관리 도구(예: 예산 및 알림)는 클라우드 지출에 대한 유용한 정보를 제공합니다. 예산 및 알림을 사용하면 사용자가 예산을 설정하고 예산이 초과되면 알림을 받을 수 있습니다. 이러한 도구는 사용자가 클라우드 지출을 추적하고 비용을 절감할 수 있는 영역을 파악하는 데 도움이 됩니다.
리소스 사용량 및 비용 추적
태그 지정 및 라벨 지정을 사용하여 리소스 사용량과 비용을 추적할 수 있습니다. 프로젝트, 부서 또는 기타 관련 측정기준과 같은 클라우드 리소스에 태그와 라벨을 할당하면 리소스를 분류하고 정리할 수 있습니다. 이를 통해 특정 리소스의 지출 패턴을 모니터링 및 분석하고 사용량이 많거나 비용을 절감할 수 있는 영역을 식별할 수 있습니다. 이 권장사항은 거버넌스 및 도구라는 운영 준비 중점사항과 관련이 있습니다.
Cloud Billing 및 비용 관리와 같은 도구를 사용하면 지출 패턴을 포괄적으로 파악할 수 있습니다. 이러한 도구는 클라우드 사용량에 대한 자세한 정보를 제공하며 추세를 파악하고 비용을 예측하며 정보에 입각한 결정을 내릴 수 있게 해줍니다. 이전 데이터와 현재 지출 패턴을 분석하여 비용 최적화 노력의 중점 영역을 파악할 수 있습니다.
커스텀 대시보드와 보고서를 사용하면 비용 데이터를 시각화하고 지출 추세에 대한 심층적인 인사이트를 얻을 수 있습니다. 관련 측정항목과 측정기준으로 대시보드를 맞춤설정하면 핵심성과지표(KPI)를 모니터링하고 비용 최적화 목표 달성 진행 상황을 추적할 수 있습니다. 보고서는 비용 데이터에 대한 심층 분석을 제공합니다. 보고서를 사용하면 특정 기간 또는 리소스 유형별로 데이터를 필터링하여 클라우드 지출에 기여하는 기본 요인을 파악할 수 있습니다.
태그, 라벨, 비용 분석 도구를 정기적으로 검토하고 업데이트하여 클라우드 사용량 및 비용에 대한 최신 정보를 확보하세요. 최신 정보를 파악하고 비용 사후 분석 또는 사전 예방적 비용 검토를 수행하면 예상치 못한 지출 증가를 즉시 파악할 수 있습니다. 이렇게 하면 클라우드 리소스를 최적화하고 비용을 관리하기 위한 사전 결정을 내릴 수 있습니다.
비용 할당 및 예산 책정 설정
클라우드 비용 관리의 책임성과 투명성은 리소스 사용률을 최적화하고 재무 관리를 보장하는 데 매우 중요합니다. 이 권장사항은 운영 준비의 거버넌스 중점사항과 관련이 있습니다.
책임과 투명성을 보장하려면 비용 할당 및 지불 거절을 위한 명확한 메커니즘이 필요합니다. 특정 팀, 프로젝트 또는 개인에게 비용을 할당하면 조직에서 각 주체가 클라우드 사용에 대한 책임을 지도록 할 수 있습니다. 이러한 관행은 주인의식을 키우고 책임감 있는 리소스 관리를 장려합니다. 또한 지불 거절 메커니즘을 통해 조직은 내부 고객으로부터 클라우드 비용을 회수하고, 인센티브를 성과에 맞게 조정하고, 재정 규율을 촉진할 수 있습니다.
다양한 팀 또는 프로젝트에 대한 예산을 설정하는 것은 클라우드 비용 관리의 또 다른 필수적인 측면입니다. 예산을 사용하면 조직에서 지출 한도를 정의하고 해당 한도에 대한 실제 비용을 추적할 수 있습니다. 이 접근 방식을 사용하면 선제적인 결정을 내려 통제되지 않는 지출을 방지할 수 있습니다. 현실적이고 달성 가능한 예산을 설정하면 클라우드 리소스를 효율적으로 사용하고 비즈니스 목표에 맞출 수 있습니다. 예산 대비 실제 지출을 정기적으로 모니터링하면 차이를 파악하고 잠재적인 초과 지출을 즉시 해결할 수 있습니다.
예산을 모니터링하려면 Cloud Billing 예산 및 알림과 같은 도구를 사용하면 됩니다. 이러한 도구는 클라우드 지출에 대한 실시간 인사이트를 제공하고 이해관계자에게 잠재적인 초과 지출을 알립니다. 이러한 기능을 사용하면 클라우드 비용을 추적하고 큰 편차가 발생하기 전에 시정 조치를 취할 수 있습니다. 이러한 사전 예방적 접근 방식은 예상치 못한 재정적 문제를 방지하고 클라우드 리소스를 책임감 있게 사용하도록 보장합니다.
변경사항 자동화 및 관리
Google Cloud Well-Architected Framework의 운영 우수성 부문에서 이 원칙을 따르면 클라우드 워크로드의 변경사항을 자동화하고 관리하는 데 도움이 되는 권장사항을 확인할 수 있습니다. 여기에는 코드형 인프라 (IaC) 구현, 표준 운영 절차 수립, 구조화된 변경 관리 프로세스 구현, 자동화 및 조정 사용이 포함됩니다.
원칙 개요
변경 관리와 자동화는 클라우드 환경 내에서 원활하고 제어된 전환을 보장하는 데 중요한 역할을 합니다. 효과적인 변경 관리를 위해서는 중단을 최소화하고 변경사항이 기존 시스템과 원활하게 통합되도록 하는 전략과 권장사항을 사용해야 합니다.
효과적인 변경 관리 및 자동화에는 다음과 같은 기본 요소가 포함됩니다.
- 변경 거버넌스: 승인 프로세스 및 커뮤니케이션 계획을 포함하여 변경 관리를 위한 명확한 정책과 절차를 수립합니다.
- 위험 평가: 변경사항과 관련된 잠재적 위험을 식별하고 위험 관리 기법을 통해 완화합니다.
- 테스트 및 검증: 변경사항을 철저히 테스트하여 기능 및 성능 요구사항을 충족하고 잠재적인 회귀를 완화하는지 확인합니다.
- 제어된 배포: 제어된 방식으로 변경사항을 구현하여 사용자가 새 환경으로 원활하게 전환되도록 하고 필요한 경우 원활하게 롤백할 수 있는 메커니즘을 제공합니다.
이러한 기본 요소는 변화의 영향을 최소화하고 변화가 비즈니스 운영에 긍정적인 영향을 미치도록 하는 데 도움이 됩니다. 이러한 요소는 운영 준비의 프로세스, 도구, 거버넌스 중점 영역으로 표현됩니다.
추천
변경사항을 자동화하고 관리하려면 다음 섹션의 권장사항을 고려하세요. 이 문서의 각 권장사항은 하나 이상의 운영 준비의 중점 영역과 관련이 있습니다.
IaC 채택
코드형 인프라 (IaC)는 클라우드 인프라를 관리하는 혁신적인 접근 방식입니다. Terraform과 같은 도구를 사용하여 클라우드 인프라를 선언적으로 정의하고 관리할 수 있습니다. IaC는 일관성, 반복성, 간소화된 변경 관리를 달성하는 데 도움이 됩니다. 또한 더 빠르고 안정적인 배포가 가능합니다. 이 권장사항은 프로세스 및 도구라는 운영 준비 중점사항과 관련이 있습니다.
다음은 클라우드 배포에 IaC 접근 방식을 채택할 때의 주요 이점입니다.
- 사람이 읽을 수 있는 리소스 구성: IaC 접근 방식을 사용하면 JSON 또는 YAML과 같이 사람이 읽을 수 있는 형식으로 클라우드 인프라 리소스를 선언할 수 있습니다. 인프라 관리자와 운영자는 인프라를 쉽게 이해하고 수정하며 다른 사용자와 공동작업할 수 있습니다.
- 일관성 및 반복 가능성: IaC를 사용하면 인프라 배포의 일관성과 반복 가능성을 높일 수 있습니다. 배포를 수행하는 사람과 관계없이 매번 동일한 방식으로 인프라가 프로비저닝되고 구성되도록 할 수 있습니다. 이 접근 방식은 오류를 줄이고 인프라가 항상 알려진 상태에 있도록 하는 데 도움이 됩니다.
- 책임 및 간소화된 문제 해결: IaC 접근 방식은 책임을 개선하고 문제를 더 쉽게 해결할 수 있도록 도와줍니다. IaC 코드를 버전 제어 시스템에 저장하면 변경사항을 추적하고 변경이 이루어진 시점과 변경한 사용자를 식별할 수 있습니다. 필요한 경우 이전 버전으로 쉽게 롤백할 수 있습니다.
버전 제어 구현
Git과 같은 버전 제어 시스템은 IaC 프로세스의 핵심 구성요소입니다. 강력한 변경 관리 및 위험 완화 기능을 제공하므로 사내 개발 또는 SaaS 솔루션을 통해 널리 채택되고 있습니다. 이 권장사항은 거버넌스 및 도구라는 운영 준비 중점사항과 관련이 있습니다.
IaC 코드 및 구성의 변경사항을 추적함으로써 버전 제어는 코드의 변화를 파악할 수 있게 해 주므로 변경사항의 영향을 이해하고 잠재적인 문제를 더 쉽게 식별할 수 있습니다. 이렇게 가시성이 향상되면 동일한 IaC 프로젝트에서 작업하는 팀원 간의 공동작업이 촉진됩니다.
대부분의 버전 제어 시스템에서는 필요한 경우 변경사항을 쉽게 롤백할 수 있습니다. 이 기능을 사용하면 의도하지 않은 결과나 오류의 위험을 완화할 수 있습니다. IaC 워크플로에서 Git과 같은 도구를 사용하면 변경 관리 프로세스를 크게 개선하고, 공동작업을 촉진하고, 위험을 완화하여 보다 효율적이고 안정적인 IaC 구현을 이룰 수 있습니다.
CI/CD 파이프라인 빌드
지속적 통합 및 지속적 배포 (CI/CD) 파이프라인은 클라우드 애플리케이션을 개발하고 배포하는 프로세스를 간소화합니다. CI/CD 파이프라인은 빌드, 테스트, 배포 단계를 자동화하여 품질 관리를 개선하면서 더 빠르고 자주 출시할 수 있도록 합니다. 이 권장사항은 운영 준비의 도구 중점사항과 관련이 있습니다.
CI/CD 파이프라인은 코드 변경사항이 중앙 저장소(일반적으로 Git과 같은 버전 제어 시스템)에 지속적으로 통합되도록 합니다. 지속적 통합은 문제를 조기에 감지하고 해결하는 데 도움이 되며 버그나 호환성 문제가 발생할 가능성을 줄여줍니다.
클라우드 애플리케이션의 CI/CD 파이프라인을 만들고 관리하려면 Cloud Build 및 Cloud Deploy와 같은 도구를 사용하면 됩니다.
- Cloud Build는 개발자가 선언적 방식으로 빌드 단계를 정의하고 실행할 수 있는 완전 관리형 빌드 서비스입니다. 인기 있는 소스 코드 관리 플랫폼과 원활하게 통합되며 코드 푸시 및 pull 요청과 같은 이벤트로 트리거할 수 있습니다.
- Cloud Deploy는 테스트, 스테이징, 프로덕션과 같은 다양한 환경에 애플리케이션을 배포하는 프로세스를 자동화하는 서버리스 배포 서비스입니다. 블루-그린 배포, 트래픽 분할, 롤백 기능과 같은 기능을 제공하여 애플리케이션 배포를 더 쉽게 관리하고 모니터링할 수 있습니다.
CI/CD 파이프라인을 버전 제어 시스템 및 테스트 프레임워크와 통합하면 클라우드 애플리케이션의 품질과 안정성을 보장하는 데 도움이 됩니다. CI/CD 프로세스의 일부로 자동화된 테스트를 실행하면 개발팀은 코드가 프로덕션 환경에 배포되기 전에 문제를 신속하게 식별하고 해결할 수 있습니다. 이 통합은 클라우드 애플리케이션의 전반적인 안정성과 성능을 개선하는 데 도움이 됩니다.
구성 관리 도구 사용
Puppet, Chef, Ansible, VM Manager와 같은 도구를 사용하면 클라우드 리소스의 구성 및 관리를 자동화할 수 있습니다. 이러한 도구를 사용하면 클라우드 환경 전반에서 리소스 일관성과 규정 준수를 보장할 수 있습니다. 이 권장사항은 운영 준비의 도구 중점사항과 관련이 있습니다.
클라우드 리소스의 구성 및 관리를 자동화하면 다음과 같은 이점이 있습니다.
- 수동 오류 위험 대폭 감소: 수동 프로세스가 포함되면 인적 오류로 인한 실수가 발생할 가능성이 높아집니다. 구성 관리 도구는 프로세스를 자동화하여 이러한 위험을 줄여주므로 모든 클라우드 리소스에 구성이 일관되고 정확하게 적용됩니다. 이러한 자동화는 클라우드 환경의 안정성과 신뢰성을 개선할 수 있습니다.
- 운영 효율성 개선: 반복적인 작업을 자동화하면 조직에서 IT 직원이 더 전략적인 이니셔티브에 집중할 수 있습니다. 이러한 자동화는 생산성 향상, 비용 절감, 변화하는 비즈니스 요구에 대한 대응력 개선으로 이어질 수 있습니다.
- 복잡한 클라우드 인프라의 간소화된 관리: 클라우드 환경의 규모와 복잡성이 증가함에 따라 리소스 관리가 점점 더 어려워질 수 있습니다. 구성 관리 도구는 클라우드 리소스를 관리하기 위한 중앙 집중식 플랫폼을 제공합니다. 이러한 도구를 사용하면 구성을 추적하고, 문제를 식별하고, 변경사항을 구현하기가 더 쉬워집니다. 이러한 도구를 사용하면 클라우드 환경의 가시성, 제어, 보안을 개선할 수 있습니다.
테스트 자동화
자동화된 테스트를 CI/CD 파이프라인에 통합하면 클라우드 애플리케이션의 품질과 안정성을 보장하는 데 도움이 됩니다. 배포 전에 변경사항을 검증하면 오류 및 회귀 위험을 크게 줄일 수 있으므로 더 안정적이고 강력한 소프트웨어 시스템을 구축할 수 있습니다. 이 권장사항은 프로세스 및 도구라는 운영 준비 중점사항과 관련이 있습니다.
자동화된 테스트를 CI/CD 파이프라인에 통합하면 다음과 같은 주요 이점이 있습니다.
- 버그 및 결함 조기 감지: 자동화된 테스트는 개발 프로세스 초기에 버그와 결함을 감지하여 프로덕션에서 심각한 문제를 일으키기 전에 해결하는 데 도움이 됩니다. 이 기능을 사용하면 개발 프로세스의 후반 단계에서 비용이 많이 드는 재작업과 버그 수정이 필요하지 않으므로 시간과 리소스를 절약할 수 있습니다.
- 고품질 및 표준 기반 코드: 자동화된 테스트는 코드가 특정 표준 및 권장사항을 충족하도록 하여 코드의 전반적인 품질을 개선하는 데 도움이 될 수 있습니다. 이 기능을 사용하면 유지보수성과 안정성이 향상되고 오류가 발생할 가능성이 적은 애플리케이션을 만들 수 있습니다.
CI/CD 파이프라인에서 다양한 유형의 테스트 기법을 사용할 수 있습니다. 각 테스트 유형은 특정 목적을 수행합니다.
- 단위 테스트는 함수나 메서드와 같은 개별 코드 단위를 테스트하여 예상대로 작동하는지 확인하는 데 중점을 둡니다.
- 통합 테스트는 애플리케이션의 여러 구성요소 또는 모듈 간의 상호작용을 테스트하여 함께 제대로 작동하는지 확인합니다.
- 엔드 투 엔드 테스트는 단위 및 통합 테스트와 함께 사용되는 경우가 많습니다. 엔드 투 엔드 테스트는 실제 시나리오를 시뮬레이션하여 애플리케이션을 전체적으로 테스트하고 애플리케이션이 최종 사용자의 요구사항을 충족하는지 확인하는 데 도움이 됩니다.
자동화된 테스트를 CI/CD 파이프라인에 효과적으로 통합하려면 적절한 테스트 도구와 프레임워크를 선택해야 합니다. 다양한 옵션이 있으며, 각 옵션에는 고유한 장단점이 있습니다. 또한 수행할 테스트 유형, 테스트 빈도, 테스트 통과 또는 실패 기준을 설명하는 명확한 테스트 전략을 수립해야 합니다. 이러한 권장사항을 따르면 자동화된 테스트 프로세스가 효율적이고 효과적입니다. 이러한 프로세스는 클라우드 애플리케이션의 품질과 안정성에 대한 유용한 정보를 제공합니다.
지속적인 개선 및 혁신
Google Cloud Well-Architected Framework의 운영 우수성 부문에서 이 원칙을 따르면 클라우드 운영을 지속적으로 최적화하고 혁신을 추진하는 데 도움이 되는 권장사항을 확인할 수 있습니다.
원칙 개요
클라우드에서 지속적으로 개선하고 혁신하려면 지속적인 학습, 실험, 적응에 집중해야 합니다. 이를 통해 새로운 기술을 탐색하고 기존 프로세스를 최적화할 수 있으며, 조직이 업계 리더십을 달성하고 유지할 수 있는 우수한 문화를 조성할 수 있습니다.
지속적인 개선과 혁신을 통해 다음 목표를 달성할 수 있습니다.
- 혁신 가속화: 새로운 기술과 서비스를 탐색하여 역량을 강화하고 차별화를 도모합니다.
- 비용 절감: 프로세스 개선 이니셔티브를 통해 비효율성을 식별하고 제거합니다.
- 민첩성 향상: 변화하는 시장 수요와 고객 요구에 신속하게 적응합니다.
- 의사 결정 개선: 데이터 및 분석에서 유용한 정보를 얻어 데이터 기반 의사 결정을 내립니다.
지속적인 개선 및 혁신 원칙을 수용하는 조직은 클라우드 환경의 잠재력을 최대한 활용하고 지속 가능한 성장을 달성할 수 있습니다. 이 원칙은 주로 운영 준비의 인력 중점 영역에 매핑됩니다. 혁신 문화는 팀이 새로운 도구와 기술을 실험하여 역량을 확장하고 비용을 절감할 수 있도록 합니다.
추천
클라우드 워크로드를 지속적으로 개선하고 혁신하려면 다음 섹션의 권장사항을 고려하세요. 이 문서의 각 권장사항은 하나 이상의 운영 준비의 중점 영역과 관련이 있습니다.
학습 문화 조성
팀이 실험하고, 지식을 공유하고, 지속적으로 학습하도록 장려합니다. 실패를 성장과 개선의 기회로 여기는 비난 없는 문화를 채택합니다. 이 권장사항은 인력의 운영 준비 중점사항과 관련이 있습니다.
학습 문화를 조성하면 팀이 실수로부터 배우고 빠르게 반복할 수 있습니다. 이러한 접근 방식은 팀원이 위험을 감수하고, 새로운 아이디어를 실험하고, 업무의 경계를 넓히도록 장려합니다. 또한 개인이 실패를 공유하고 실패로부터 배우는 데 편안함을 느끼는 심리적으로 안전한 환경을 조성합니다. 이러한 방식으로 공유하면 더 개방적이고 협력적인 환경이 조성됩니다.
지식 공유와 지속적인 학습을 촉진하려면 팀이 지식을 공유하고 서로에게서 배울 수 있는 기회를 만듭니다. 비공식 및 공식 학습 세션과 컨퍼런스를 통해 이 작업을 수행할 수 있습니다.
실험, 지식 공유, 지속적인 학습 문화를 조성하면 팀이 위험을 감수하고 혁신하며 성장할 수 있는 환경을 만들 수 있습니다. 이러한 환경은 생산성 향상, 문제 해결 능력 개선, 직원 참여도 및 동기 부여 향상으로 이어질 수 있습니다. 또한 비난 없는 문화를 장려하면 직원들이 실수로부터 배우고 팀의 집단 지식에 기여할 수 있는 안전한 공간을 만들 수 있습니다. 이러한 문화는 궁극적으로 장기적으로 문제를 처리하고 성공을 이끌 수 있는 더 탄력적이고 적응력 있는 인력으로 이어집니다.
정기적인 회고 진행
회고는 팀이 경험을 되돌아보고, 잘된 점을 파악하고, 개선할 수 있는 점을 파악할 수 있는 기회를 제공합니다. 프로젝트 또는 주요 사고 후에 회고를 수행하면 팀은 성공과 실패로부터 배우고 프로세스와 관행을 지속적으로 개선할 수 있습니다. 이 권장사항은 프로세스 및 거버넌스라는 운영 준비 중점사항과 관련이 있습니다.
회고를 구성하는 효과적인 방법은 시작-중지-계속 모델을 사용하는 것입니다.
- 시작: 회고의 시작 단계에서 팀원은 업무를 개선할 수 있다고 생각하는 새로운 관행, 프로세스, 행동을 식별합니다. 변경이 필요한 이유와 구현 방법을 논의합니다.
- 중지: 중지 단계에서 팀원은 더 이상 효과적이지 않거나 진행을 방해하는 관행, 프로세스, 행동을 식별하고 제거합니다. 이러한 변경이 필요한 이유와 구현 방법을 논의합니다.
- 계속: 계속 단계에서 팀원은 잘 작동하고 계속해야 하는 관행, 프로세스, 행동을 식별합니다. 이러한 요소가 중요한 이유와 이를 강화하는 방법을 설명합니다.
시작-중지-계속 모델과 같은 구조화된 형식을 사용하면 팀은 회고가 생산적이고 집중적으로 진행되도록 할 수 있습니다. 이 모델은 토론을 촉진하고, 주요 요점을 파악하고, 향후 개선을 위한 실행 가능한 단계를 파악하는 데 도움이 됩니다.
클라우드 기술 최신 정보 확인하기
Google Cloud 서비스의 잠재력을 극대화하려면 최신 발전 사항, 기능, 권장사항을 파악해야 합니다. 이 권장사항은 인력의 운영 준비 중점사항과 관련이 있습니다.
관련 컨퍼런스, 웹 세미나, 교육 세션에 참여하는 것은 지식을 넓히는 데 유용한 방법입니다. 이러한 이벤트는 Google Cloud 전문가로부터 배우고, 새로운 기능을 이해하고, 유사한 과제에 직면할 수 있는 업계 동료와 소통할 수 있는 기회를 제공합니다. 이 세션에 참석하면 새로운 기능을 효과적으로 사용하고, 클라우드 운영을 최적화하고, 조직 내에서 혁신을 주도하는 방법에 대한 유용한 정보를 얻을 수 있습니다.
팀원이 클라우드 기술을 계속해서 익힐 수 있도록 자격증을 취득하고 교육 과정에 참석하도록 장려하세요. Google Cloud는 특정 Cloud Domains의 기술과 지식을 검증하는 다양한 자격증을 제공합니다. 이러한 자격증을 취득하면 우수성에 대한 노력을 입증하고 클라우드 기술에 대한 숙련도를 보여주는 실질적인 증거를 제공할 수 있습니다. Google Cloud 및 파트너가 제공하는 교육 과정에서는 특정 주제를 더 자세히 살펴봅니다. 실제 프로젝트에 즉시 적용할 수 있는 직접적인 경험과 실용적인 기술을 제공합니다. 팀의 전문성 개발에 투자하면 지속적인 학습 문화를 조성하고 모든 구성원이 클라우드에서 성공하는 데 필요한 기술을 갖추도록 할 수 있습니다.
적극적으로 피드백을 구하고 반영하기
사용자, 이해관계자, 팀원으로부터 의견을 수집합니다. 피드백을 사용하여 클라우드 솔루션을 개선할 기회를 파악합니다. 이 권장사항은 인력의 운영 준비 중점사항과 관련이 있습니다.
수집한 의견은 솔루션 사용자의 변화하는 요구사항, 문제, 기대치를 이해하는 데 도움이 될 수 있습니다. 이러한 의견은 개선을 추진하고 향후 개선사항의 우선순위를 정하는 데 중요한 입력 자료가 됩니다. 다양한 메커니즘을 사용하여 의견을 수집할 수 있습니다.
- 설문조사는 많은 사용자 및 이해관계자로부터 정량적 데이터를 수집하는 효과적인 방법입니다.
- 사용자 인터뷰는 심층적인 정성적 데이터를 수집할 기회를 제공합니다. 인터뷰를 통해 개별 사용자의 구체적인 문제와 경험을 파악할 수 있습니다.
- 클라우드 솔루션 내에 배치된 의견 양식은 사용자가 자신의 경험에 대한 의견을 즉시 제공할 수 있는 편리한 방법을 제공합니다.
- 팀원들과의 정기 회의를 통해 기술적 측면과 구현 과제에 대한 의견을 수집할 수 있습니다.
이러한 메커니즘을 통해 수집하는 피드백을 분석하고 종합하여 공통 주제와 패턴을 식별해야 합니다. 이 분석은 제안된 개선사항의 영향과 타당성을 기반으로 향후 개선사항의 우선순위를 정하는 데 도움이 될 수 있습니다. 피드백을 통해 파악된 요구사항과 문제를 해결하면 클라우드 솔루션이 사용자 및 이해관계자의 변화하는 요구사항을 계속 충족할 수 있습니다.
진행 상황 측정 및 추적
핵심성과지표 (KPI)와 측정항목은 진행 상황을 추적하고 클라우드 운영의 효과를 측정하는 데 매우 중요합니다. KPI는 전반적인 실적을 반영하는 정량화 가능한 측정항목입니다. 측정항목은 KPI 계산에 기여하는 특정 데이터 포인트입니다. 측정항목을 정기적으로 검토하고 이를 사용하여 개선 기회를 파악하고 진행 상황을 측정합니다. 이렇게 하면 클라우드 환경을 지속적으로 개선하고 최적화하는 데 도움이 됩니다. 이 권장사항은 거버넌스 및 프로세스라는 운영 준비 중점사항과 관련이 있습니다.
KPI와 측정항목을 사용할 때의 주요 이점은 조직에서 클라우드 운영에 데이터 기반 접근 방식을 채택할 수 있다는 것입니다. 운영 데이터를 추적하고 분석하면 클라우드 환경을 개선하는 방법에 대해 정보에 입각한 결정을 내릴 수 있습니다. 이러한 데이터 기반 접근 방식은 체계적인 측정항목을 사용하지 않으면 보이지 않을 수 있는 추세, 패턴, 이상치를 식별하는 데 도움이 됩니다.
운영 데이터를 수집하고 분석하려면 Cloud Monitoring 및 BigQuery와 같은 도구를 사용하면 됩니다. Monitoring을 사용하면 클라우드 리소스와 서비스를 실시간으로 모니터링할 수 있습니다. BigQuery를 사용하면 모니터링을 통해 수집한 데이터를 저장하고 분석할 수 있습니다. 이러한 도구를 함께 사용하면 맞춤 대시보드를 만들어 중요한 측정항목과 추세를 시각화할 수 있습니다.
운영 대시보드는 가장 중요한 측정항목을 중앙 집중식으로 보여주므로 확인이 필요한 영역을 빠르게 식별할 수 있습니다. 예를 들어 대시보드에는 특정 애플리케이션 또는 서비스의 CPU 사용률, 메모리 사용량, 네트워크 트래픽, 지연 시간과 같은 측정항목이 포함될 수 있습니다. 이러한 측정항목을 모니터링하면 잠재적인 문제를 신속하게 파악하고 해결 조치를 취할 수 있습니다.