Share via


운영 우수성 절충

운영 우수성은 명확한 팀 표준 구현, 이해된 책임 및 책임, 고객 결과에 대한 관심 및 팀 응집력을 통해 워크로드 품질을 제공합니다. 이러한 목표의 구현은 프로세스 분산을 최소화하고, 인적 오류를 줄이고, 궁극적으로 워크로드의 가치 반환을 늘리는 데 권장되는 DevOps에 뿌리를 두고 있습니다. 이 값은 워크로드의 구성 요소에서 제공하는 기능 요구 사항에 대해 측정되는 것이 아닙니다. 또한 팀이 개선을 위해 노력하는 데 제공하는 가치로 측정됩니다.

워크로드의 디자인 단계와 수명 주기 동안 지속적인 개선 단계가 수행됨에 따라 운영 우수성 디자인 원칙 에 따른 의사 결정과 운영 우수성에 대한 디자인 검토 검사 목록 의 권장 사항이 다른 핵심 요소의 목표와 최적화에 미치는 영향을 고려하는 것이 중요합니다. 특정 결정은 일부 핵심 요소에 도움이 될 수 있지만 다른 요소에 대한 절충안으로 구성됩니다. 이 문서에서는 워크로드 아키텍처 및 작업을 디자인할 때 워크로드 팀이 발생할 수 있는 절충 사례에 대해 설명합니다.

안정성과의 운영 우수성 절충

절충: 복잡성이 증가했습니다. 단순 디자인은 잘못된 구성을 최소화하고 예기치 않은 상호 작용을 줄이기 때문에 안정성은 단순성을 우선시합니다.

  • 안전한 배포 전략에는 종종 애플리케이션 논리와 워크로드의 데이터 간에 어느 정도의 전달 및 이전 버전 호환성이 필요합니다. 이로 인해 복잡성이 증가하여 테스트 부담이 증가하고 워크로드 데이터의 복잡성 또는 무결성 문제가 발생할 수 있습니다.

  • 고도로 계층화되거나 모듈화되거나 매개 변수가 있는 인프라를 코드로 사용하면 코드 구성 요소 간의 상호 작용 복잡성으로 인해 실수로 잘못된 구성이 발생할 가능성이 높아질 수 있습니다.

  • 작업에 도움이 되는 클라우드 디자인 패턴은 경우에 따라 추가 구성 요소(예: 외부 구성 저장소 사용 또는 컨테이너화된 애플리케이션 플랫폼에서 사이드카 배포 조정)를 도입해야 하는 경우가 있습니다. 추가 구성 요소는 시스템의 상호 작용 지점을 증가시켜 오작동 또는 잘못된 구성에 대한 노출 영역을 증가합니다.

  • 민첩한 개발 및 호스팅을 지원하도록 독립적으로 발전하도록 설계된 워크로드 구성 요소는 서비스 검색에 대한 종속성 또는 DNS를 간접 참조 계층으로 도입합니다. 서비스 검색은 변화에 대한 응답성이 부족할 수 있으며 오작동은 진단하기 어려울 수 있습니다.

절충: 잠재적으로 불안정한 활동이 증가했습니다. 안정성 핵심 요소는 시스템을 불안정하게 만들고 중단, 중단 또는 오작동으로 이어질 수 있는 활동 또는 디자인 선택을 회피하도록 장려합니다.

  • 작은 증분 변경 내용을 배포하는 것은 위험을 완화하는 기술이지만 이러한 작은 변경 내용도 프로덕션에 더 자주 전달될 것으로 예상됩니다. 배포는 시스템을 불안정하게 만들 수 있으므로 배포 속도가 증가함에 따라 이 위험도 증가합니다.

  • 주당 배포와 같은 속도 메트릭으로 자체 측정하고 더 빠른 속도로 변경 내용을 쉽게 도입할 수 있는 자동화를 사용하는 문화권은 더 짧은 기간에 더 많은 배포를 수행할 가능성이 높습니다.

  • 오작동 또는 잘못된 구성으로 인해 불안정한 이벤트의 영향 반경이 증가하기 때문에 제어 및 가시성 표면의 수를 줄여 작업을 간소화하는 밀도를 높이면 가용성 위험이 증가할 수 있습니다.

보안과의 운영 우수성 절충

절충: 노출 영역이 증가했습니다. 보안 핵심 요소는 구성 요소 및 작업에 대한 노출 측면에서 워크로드 노출 영역을 줄이는 것이 좋습니다. 이러한 감소는 공격 벡터를 최소화하고 보안 제어 및 테스트를 위한 더 작은 scope 생성합니다.

  • 워크로드를 둘러싸고 자동화 또는 사용자 지정 컨트롤 플레인과 같은 작업을 지원하는 구성 요소도 정기적인 보안 강화 및 테스트를 위해 scope 있어야 합니다.

  • 루틴, 임시 및 응급 작업으로 워크로드와의 접촉 지점이 증가합니다. 제로 트러스트 접근 방식을 사용하려면 이러한 프로세스가 공격 벡터로 간주되고 워크로드에 대한 보안 제어 및 유효성 검사에 포함되어야 합니다.

  • 시스템의 가시성 플랫폼은 워크로드에 대한 로그 및 메트릭을 수집하며, 이는 중요한 정보 공개 원본이 될 수 있습니다. 따라서 워크로드의 보안은 내부 및 외부 위협으로부터 데이터 싱크를 보호하기 위해 확장되어야 합니다.

  • 빌드 에이전트, 외부화된 구성 및 기능 토글 저장소 및 병렬 배포 접근 방식은 모두 보안이 필요한 애플리케이션 노출 영역을 증가합니다.

  • 작은 증분 변경 또는 "최신 상태 유지" 노력으로 인해 발생하는 배포 빈도가 높을수록 소프트웨어 개발 수명 주기에서 더 많은 보안 테스트가 수행됩니다.

절충: 투명성에 대한 욕구가 증가했습니다. 보안 워크로드는 시스템의 구성 요소를 통해 흐르는 데이터의 기밀성을 보호하는 디자인을 기반으로 합니다.

가시성 플랫폼은 모든 유형의 데이터를 수집하여 워크로드의 상태 및 동작에 대한 인사이트를 얻습니다. 팀이 가시성 데이터의 충실도를 높이려고 할 때 원본 시스템의 데이터 마스킹과 같은 데이터 분류 제어가 가시성 플랫폼의 로그 및 로그 싱크로 확장되지 않을 위험이 증가합니다.

절충: 축소된 세분화. 액세스 및 기능을 격리하기 위한 주요 보안 접근 방식은 강력한 세분화 전략을 설계하는 것입니다. 이 디자인은 리소스 격리 및 ID 제어를 통해 구현됩니다.

  • 공유 컴퓨팅, 네트워크 및 데이터 리소스에서 서로 다른 애플리케이션 구성 요소를 공동 배치하여 관리가 더 쉽게 구분을 되돌리거나 역할 기반 구분을 달성하기 어렵게 만듭니다. 공동 배치된 구성 요소는 워크로드 ID를 공유해야 할 수도 있으며, 이로 인해 권한이 과도하게 할당되거나 추적 가능성이 부족할 수 있습니다.

  • 통합 로그 싱크에서 시스템 전체에서 모든 로그를 수집하면 경고를 더 쉽게 쿼리하고 빌드할 수 있습니다. 그러나 이렇게 하면 중요한 데이터를 필요한 감사 컨트롤로 처리하기 위해 행 기반 보안을 제공하기가 더 어렵거나 불가능할 수 있습니다.

  • 역할 및 해당 할당의 세분성을 줄여 특성 기반 또는 역할 기반 보안 관리를 간소화하면 부적절하게 광범위한 권한이 발생할 수 있습니다.

비용 최적화를 사용한 운영 우수성 절충

운영 우수성 핵심 요소는 생산성을 줄이거나 워크로드의 투자 수익을 위태롭게 하는 활동을 권장하지 않습니다. 배달 활동에서 포커스를 이동하는 것 같은 권장 사항은 워크로드 및 팀에 대한 장기적인 최선의 이익을 고려합니다. 워크로드가 일몰 날짜에 가까워지면 이러한 절충을 유발하는 권장 사항에 높은 투자를 하는 것은 의미가 없을 것입니다.

절충: 리소스 지출이 증가했습니다. 워크로드의 주요 비용 동인은 리소스 비용입니다. 더 적은 리소스를 배포하고, 리소스 크기를 적절하게 조정하고, 소비를 줄이면 일반적으로 비용을 낮게 유지하는 데 도움이 됩니다.

  • 변경 내용이 비교적 적더라도 안전한 배포 사례를 구현하면 동시에 배포되는 리소스 수가 증가할 수 있습니다. 이러한 패턴은 트래픽을 제어된 방식으로 이동할 수 있도록 애플리케이션 또는 인프라 구성 요소의 여러 동시 인스턴스를 배포해야 합니다. 이러한 증가는 변경할 수 없는 인프라 접근 방식을 사용하는 워크로드에서 더 두드러집니다.

  • 팀은 운영적으로 정렬된 클라우드 디자인 패턴 또는 워크로드 자동화를 구현하기 위해 추가 워크로드 구성 요소를 도입해야 할 수 있습니다. 예를 들어 배포 민첩성을 지원하기 위해 게이트웨이 라우팅 구성 요소를 추가할 수 있습니다. 더 나은 구성 관리를 지원하기 위해 외부 구성 저장소를 추가할 수 있습니다. 테넌트 수명 주기 이벤트를 지원하기 위해 컨트롤 플레인을 빌드할 수 있습니다. 이러한 리소스는 사전 프로덕션 환경의 비용에도 영향을 줍니다.

  • 격리를 통해 개발 및 테스트 환경을 개선하기 위해 사전 프로덕션 환경의 수를 늘리면 리소스 수도 증가합니다. 프로덕션 수요에 대한 공급을 제공하는 데 사용되지 않는 이러한 리소스는 솔루션의 비용을 증가합니다.

  • 프로덕션 환경과 함께 사전 프로덕션 환경의 패리티를 늘리면 리소스 수, SKU 및 데이터 볼륨 측면에서 품질 보증 프로세스가 향상됩니다. 패리티가 증가함에 따라 비용이 증가합니다.

  • 원격 분석 데이터는 직접 리소스가 아니지만 가시성 플랫폼의 효율성을 구현하려면 이 데이터를 유지해야 합니다. 대부분의 운영 데이터 저장소에는 수집 속도와 볼륨의 조합을 기반으로 하는 가격 책정이 있습니다. 일반적으로 대기 시간이 짧고 다양성이 높은 원격 분석의 양이 증가함에 따라 비용도 증가합니다. 다중 지역 배포의 경우 이러한 운영 데이터 싱크는 지역별로 배포되어야 하므로 리소스당 비용이 요인이 됩니다.

절충: 배달 활동에 대한 포커스가 감소했습니다. 워크로드 팀 구성원은 기능에 맞게 조정된 작업을 효율적으로 수행하여 향상된 워크로드 가치를 제공합니다.

  • 정상적이고 책임 있는 지원 구조 및 인시던트 대응을 만들고 구체화하는 데 시간을 소비하는 워크로드 팀은 워크로드 사용자에게 중요한 서비스를 제공하고 있습니다. 일반적으로 비즈니스 중요도의 변화로 인해 지원 활동(예: 공식 온-콜 회전)이 증가함에 따라 이러한 활동의 비용이 증가합니다. 이러한 비용 증가는 직원 증가의 결과이거나 배달 활동에서 지원 기능으로 이동하는 관심의 형태로 간접적으로 발생할 수 있습니다.

  • 교육은 워크로드 팀의 개인 지속적인 개선 프로세스에서 중요한 부분입니다. 이 교육은 개인 보강 시간 동안 공식적이거나 자기 지시가 될 수 있습니다. 학습 시간이 늘어나면 워크로드를 직접 개발하는 데 사용할 수 있는 시간이 줄어듭니다. 학습이 역할 기반이 아니거나 워크로드 또는 미래와 특별히 관련이 없는 경우 학습에 대한 투자가 감소합니다.

  • 워크로드의 안정성, 보안 및 성능 효율성을 보호하기 위한 표준화된 일상적인 운영 작업은 정의, 구체화 및 수행하는 데 시간이 걸립니다. 이 시간은 배달에 직접 소비되지 않습니다. 이러한 작업의 몇 가지 예는 포괄적인 변경 영향 분석, 변경 제어 프로세스, 철저한 테스트 및 향상된 패치 관리입니다. 이러한 작업의 빈도, 포괄적 또는 운영 부담이 증가함에 따라 투자 시간도 증가합니다.

절충: 도구 요구 및 다양성이 증가했습니다. 비용 최적화 핵심 요소는 도구 스프롤의 감소, 공급업체 통합 및 모든 도구 구매에 적합한 크기의 접근 방식을 권장합니다.

워크로드 팀은 계획 및 디자인, 개발 및 테스트 및 모니터링을 포함하여 전체 SDLC(소프트웨어 개발 수명 주기) 동안 수행되는 활동을 지원하기 위해 도구와 하드웨어를 구매합니다. 이 공간의 도구를 위한 마켓플레이스가 성장하고 있습니다. 도구는 일반적으로 도구의 기능과 일치하는 다양한 가격대에서 제공됩니다. 무료 제품을 제외하고 이러한 도구는 초기 라이선스 비용이 발생하며 이는 사용자당 또는 사이트 전체일 수 있습니다. 또한 지속적인 유지 관리 계약이 필요한 경우가 많습니다. 새 공급업체 관계를 설정해야 할 수도 있습니다. 다음은 운영 우수성 원칙과 관련된 예상 도구 또는 하드웨어 지출의 몇 가지 예입니다.

  • 요구 사항 및 백로그 관리
  • 아키텍처 디자인 도구
  • UI/UX 디자인 도구
  • 코드 및 자산 호스팅
  • 코드 및 로우 코드 개발 환경
  • 자동화 도구
  • 개발 및 품질 보증 워크스테이션
  • 개발 및 배포 파이프라인
  • 테스트 실행 및 추적
  • 가시성 도구

성능 효율성과의 운영 우수성 절충

절충: 리소스 사용률이 증가했습니다. 성능 효율성 핵심 요소는 사용 가능한 컴퓨팅 및 네트워크를 워크로드 요구 사항에 최대한 많이 할당할 것을 권장합니다.

  • 워크로드의 가시성 프레임워크를 사용하려면 아키텍처의 구성 요소가 로그 및 메트릭을 만들고, 수집하고, 스트리밍할 시간과 리소스를 할당해야 합니다. 이러한 데이터 요소는 안정성, 보안 및 성능에 효과적인 경고 및 모니터링이 가능하도록 하는 데 도움이 됩니다. 계측 수준이 증가함에 따라 시스템 리소스에 대한 부담도 증가할 수 있습니다.

  • 워크로드가 안전한 배포에 사용할 수 있는 파란색/녹색 배포와 같은 일부 배포 모델은 프로덕션 애플리케이션 플랫폼에 병렬 배포를 도입할 수 있습니다. 이러한 배포에는 향후 수요를 충족하기에 충분한 공급을 제공하거나 롤백을 지원하기 위해 일정 기간 동안 휴면 배포를 유지하려면 선제적 크기 조정이 필요합니다.

절충: 대기 시간이 증가했습니다. 성능이 좋은 워크로드를 만들기 위해 팀은 워크로드가 작업을 수행하는 데 사용하는 시간과 리소스를 줄이는 방법을 찾습니다.

  • 많은 배포 모델에는 대기 시간이 발생할 수 있는 게이트웨이 라우팅 액세스 패턴을 사용해야 합니다. 이 대기 시간은 관련 흐름에 대한 성능 목표 예산에 대해 그립니다.

  • 증분 개선의 이상을 지원하기 위해 "시간에 따른 독립적인 변화" 접근 방식을 지원하는 일부 클라우드 디자인 패턴은 추가 구성 요소의 통과로 인해 대기 시간을 발생시키는 경우도 있습니다. 이 대기 시간은 게이트웨이, 메시징 브로커 또는 손상 방지 계층에서 도입할 수 있습니다.

다른 핵심 요소에 대한 절충을 살펴봅니다.