비용 최적화 절충

재무 제약 조건 하에서 ROI(투자 수익률)를 최대화하기 위해 워크로드를 설계할 때 먼저 명확하게 정의된 기능 및 비기능적 요구 사항이 필요합니다. 작업 및 노력 우선 순위 지정 전략은 필수적입니다. 재단은 재정적 책임이 강한 팀입니다. 팀은 사용 가능한 기술 및 청구 모델을 잘 이해해야 합니다.

워크로드의 ROI를 이해한 후에는 워크로드 개선을 시작할 수 있습니다. ROI를 개선하려면 비용 최적화 디자인 원칙 에 따른 결정과 비용 최적화를 위한 디자인 검토 검사 목록 의 권장 사항이 다른 Azure Well-Architected Framework 핵심 요소의 목표 및 최적화에 미치는 영향을 고려합니다. 비용 최적화의 경우 더 저렴한 솔루션에 집중하지 않는 것이 중요합니다. 지출을 최소화하는 데만 초점을 맞춘 선택은 워크로드의 비즈니스 목표와 평판을 훼손할 위험을 증가시킬 수 있습니다. 이 문서에서는 비용 최적화를 위한 대상 설정, 디자인 및 작업을 고려할 때 워크로드 팀이 발생할 수 있는 절충 사례에 대해 설명합니다.

안정성을 사용한 비용 최적화 절충

서비스 중단 비용은 서비스 중단을 방지하거나 복구하는 비용에 대해 측정해야 합니다. 중단 비용이 안정성 설계 비용을 초과하는 경우 중단을 방지하거나 완화하기 위해 더 많은 투자를 해야 합니다. 반대로, 안정성 노력의 비용은 규정 준수 요구 사항 및 평판과 같은 요인을 포함하여 중단 비용보다 더 많을 수 있습니다. 이 시나리오에서만 안정성 디자인의 전략적 매각을 고려해야 합니다.

절충: 복원력 감소. 워크로드는 특정 유형의 오작동을 방지하고 견딜 수 있도록 복원력 측정값을 통합합니다.

  • 비용을 절약하기 위해 워크로드 팀은 구성 요소를 과소 프로비전하거나 크기 조정을 과도하게 제한하여 갑작스러운 수요 급증 중에 구성 요소가 실패할 가능성이 높아질 수 있습니다.

  • 비용 최적화를 위해 워크로드 리소스(밀도 증가)를 통합하면 수요가 급증하는 동안 및 업데이트와 같은 유지 관리 작업 중에 개별 구성 요소가 실패할 가능성이 높아집니다.

  • 메시지 버스와 같은 복원력 디자인 패턴을 지원하는 구성 요소를 제거하고 직접 종속성을 만들면 자체 보존 기능이 줄어듭니다.

  • 중복성을 줄여 비용을 절감하면 동시 오작동을 처리하는 워크로드의 기능이 제한될 수 있습니다.

  • 예산 SKU를 사용하면 워크로드가 도달할 수 있는 최대 SLO(서비스 수준 목표)를 제한할 수 있습니다.

  • 하드 지출 한도를 설정하면 워크로드가 합법적인 수요를 충족하기 위해 스케일링되지 않도록 방지할 수 있습니다.

  • 안정성 테스트 도구 또는 테스트가 없으면 워크로드의 안정성을 알 수 없으며 안정성 목표를 달성할 가능성이 적습니다.

절충: 제한된 복구 전략. 신뢰할 수 있는 워크로드에는 재해 시나리오에 대한 테스트된 인시던트 대응 및 복구 계획이 있습니다.

  • 워크로드의 재해 복구 계획의 테스트 또는 드릴링이 감소하면 복구 작업의 속도와 효율성에 영향을 줄 수 있습니다.

  • 백업을 더 적게 만들거나 유지하면 가능한 복구 지점이 줄어들고 데이터가 손실 될 가능성이 높아질 수 있습니다.

  • 비용이 적게 드는 지원 계약은 기술 지원의 잠재적 지연으로 인해 워크로드 복구 시간을 늘릴 수 있습니다.

절충: 복잡성이 증가했습니다. 간단한 접근 방식을 사용하고 불필요하거나 지나치게 복잡한 복잡성을 방지하는 워크로드는 일반적으로 안정성 측면에서 더 쉽게 관리할 수 있습니다.

  • 비용 최적화 클라우드 패턴을 사용하면 CDN(콘텐츠 배달 네트워크)과 같은 새 구성 요소를 추가하거나 워크로드가 안정성 목표를 제공해야 하는 에지 및 클라이언트 디바이스로 업무를 이동할 수 있습니다.

  • 이벤트 기반 크기 조정은 리소스 기반 크기 조정보다 조정하고 유효성을 검사하는 것이 더 복잡할 수 있습니다.

  • 수명 주기 이벤트 전에 집계된 데이터 요소를 구현하는 것과 함께 데이터 수명 주기 작업을 통해 데이터 볼륨을 줄이고 데이터를 계층화하면 워크로드에서 고려해야 할 안정성 요소가 도입됩니다.

  • 다른 지역을 사용하여 비용을 최적화하면 관리, 네트워킹 및 모니터링이 더 어려워질 수 있습니다.

보안을 사용한 비용 최적화 절충

워크로드의 기밀성, 무결성 및 가용성에 대한 손상 비용은 항상 이러한 손상을 방지하기 위한 노력의 비용과 균형을 유지해야 합니다. 보안 인시던트는 광범위한 재무 및 법적 영향을 미칠 수 있으며 회사의 평판에 해를 끼칠 수 있습니다. 보안에 투자하는 것은 위험 완화 활동입니다. 위험을 경험하는 비용은 투자와 균형을 이겨야 합니다. 일반적으로 보안이 손상되지 않도록 하여 책임 지점 이하의 비용 최적화를 확보하고 위험 완화에 합의합니다. 솔루션의 권한을 부여하여 보안 비용을 최적화하는 것은 중요한 최적화 방법이지만, 이렇게 할 때 다음과 같은 장단점에 유의해야 합니다.

절충: 보안 제어를 줄입니다. 보안 제어는 심층 방어를 제공하기 위해 여러 계층에 걸쳐 설정되며, 때로는 중복적으로 설정됩니다.

한 가지 비용 최적화 전술은 단위 또는 운영 비용을 발생시키는 구성 요소 또는 프로세스를 제거하는 방법을 찾는 것입니다. 비용을 절약하기 위해 다음 예제와 같은 보안 구성 요소를 제거하면 보안에 영향을 줍니다. 이러한 영향에 대한 위험 분석을 신중하게 수행해야 합니다.

  • 인증 및 권한 부여 기술을 줄이거나 단순화하면 제로 트러스트 아키텍처의 명시적으로 확인 원칙이 손상됩니다. 이러한 간소화의 예로는 업계 OAuth 접근 방식을 배우기 위해 시간을 투자하는 대신 미리 공유된 키와 같은 기본 인증 체계를 사용하거나 관리 오버헤드를 줄이기 위해 간소화된 역할 기반 액세스 제어 할당을 사용하는 것이 포함됩니다.

  • 전송 중 또는 미사용 암호화를 제거하여 인증서 및 해당 운영 프로세스에 대한 비용을 줄이면 데이터가 잠재적 무결성 또는 기밀성 위반에 노출됩니다.

  • 관련 비용 및 시간 투자로 인해 보안 검사 또는 검사 도구 또는 보안 테스트를 제거하거나 줄이면 도구 및 테스트가 보호하려는 기밀성, 무결성 또는 가용성에 직접적인 영향을 줄 수 있습니다.

  • 카탈로그화 및 패치 수행에 투자된 운영 시간으로 인해 보안 패치 빈도를 줄이면 진화하는 위협을 해결하는 워크로드의 기능에 영향을 줍니다.

  • 방화벽과 같은 네트워크 컨트롤을 제거하면 악의적인 인바운드 및 아웃바운드 트래픽을 차단하지 못할 수 있습니다.

절충: 워크로드 노출 영역이 증가했습니다. 보안 핵심 요소는 공격 벡터 및 보안 제어 관리를 최소화하기 위해 축소되고 포함된 노출 영역의 우선 순위를 지정합니다.

비용을 최적화하는 클라우드 디자인 패턴은 경우에 따라 추가 구성 요소를 도입해야 하는 경우가 있습니다. 이러한 추가 구성 요소는 워크로드의 노출 영역을 증가합니다. 구성 요소와 해당 구성 요소 내의 데이터는 시스템에서 아직 사용되지 않는 방식으로 보호되어야 합니다. 이러한 구성 요소와 데이터에는 종종 규정 준수가 적용됩니다. 구성 요소를 도입할 수 있는 패턴의 예는 다음과 같습니다.

  • 정적 콘텐츠 호스팅 패턴을 사용하여 데이터를 새 CDN 구성 요소로 오프로드합니다.

  • Valet 키 패턴을 사용하여 처리를 오프로드하고 클라이언트 컴퓨팅에 대한 리소스 액세스를 보호합니다.

  • Queue-Based 부하 평준화 패턴을 사용하여 메시지 버스를 도입하여 비용을 원활하게 합니다.

절충: 구분이 제거되었습니다. 보안 핵심 요소는 대상 보안 컨트롤의 적용을 지원하고 폭발 반경을 제어하기 위해 강력한 세분화의 우선 순위를 지정합니다.

다중 테넌트 상황에서 리소스를 공유하거나 공유 애플리케이션 플랫폼에서 여러 애플리케이션을 공동 배치하는 방법은 밀도를 높이고 관리 표면을 줄여 비용을 절감하는 방법입니다. 이러한 밀도가 증가하면 다음과 같은 보안 문제가 발생할 수 있습니다.

  • 리소스를 공유하는 구성 요소 간의 횡적 이동이 더 쉽습니다. 애플리케이션 플랫폼 호스트 또는 개별 애플리케이션의 가용성을 손상시키는 보안 이벤트도 더 큰 폭발 반경을 가합니다.

  • 공동 배치된 리소스는 워크로드 ID를 공유하고 액세스 로그에 덜 의미 있는 감사 내역을 가질 수 있습니다.

  • 네트워크 보안 컨트롤은 모든 공동 배치 리소스를 포함할 수 있을 만큼 광범위해야 합니다. 이 구성은 일부 리소스에 대한 최소 권한 원칙을 위반할 수 있습니다.

  • 공유 호스트에서 서로 다른 애플리케이션 또는 데이터를 공동 배치하면 규정 준수 요구 사항 및 보안 제어를 애플리케이션 또는 scope 벗어난 데이터로 확장할 수 있습니다. 이러한 scope 확대하려면 공동 배치된 구성 요소에 대한 추가 보안 조사 및 감사 노력이 필요합니다.

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

절충: 손상된 SDLC(소프트웨어 개발 수명 주기) 용량. 워크로드의 SDLC 프로세스는 워크로드의 관리를 변경하기 위한 엄격한 일관성, 특이성 및 우선 순위를 제공합니다.

  • 시간을 절약하기 위한 테스트 노력과 테스트 담당자, 리소스 및 도구와 관련된 비용을 줄이면 프로덕션에서 더 많은 버그가 발생할 수 있습니다.

  • 새로운 기능에 인력의 노력을 집중하기 위해 기술 부채 상환을 지연하면 개발 주기가 느려지고 전반적인 민첩성이 감소할 수 있습니다.

  • 제품 개발에 대한 직원의 노력을 집중하기 위해 설명서의 범위를 벗어나면 신입 사원의 온보딩 시간이 길어지고 인시던트 대응의 효과에 영향을 미치며 규정 준수 요구 사항이 손상될 수 있습니다.

  • 교육에 대한 투자가 부족하면 기술이 정체되어 팀이 최신 기술과 사례를 채택할 수 있는 능력이 줄어듭니다.

  • 비용을 절약하기 위해 자동화 도구를 제거하면 직원이 더 이상 자동화되지 않는 작업에 더 많은 시간을 소비할 수 있습니다. 또한 오류 및 불일치의 위험도 증가합니다.

  • 범위 지정 및 활동 우선 순위 지정과 같은 계획 활동을 줄이면 모호한 사양과 잘못된 구현으로 인해 재작업 가능성이 높아질 수 있습니다.

  • 회고 및 인시던트 후 보고서와 같은 지속적인 개선 활동을 피하거나 줄이면 워크로드 팀이 배달에 집중할 수 있으므로 루틴, 계획되지 않은 비상 프로세스를 최적화할 기회를 놓칠 수 있습니다.

절충: 가시성 감소. 워크로드가 의미 있는 경고와 성공적인 인시던트 대응을 갖도록 하려면 가시성이 필요합니다.

  • 스토리지 및 전송 비용을 절약하기 위해 로그 및 메트릭 볼륨을 줄이면 시스템 가시성이 감소하고 다음이 발생할 수 있습니다.

    • 안정성, 보안 및 성능과 관련된 경고를 만들기 위한 데이터 요소가 줄어듭니다.
    • 인시던트 대응 활동의 적용 범위 간격.
    • 보안 또는 규정 준수와 관련된 상호 작용 또는 경계에 대한 제한된 가시성.
  • 비용 최적화 디자인 패턴은 워크로드에 구성 요소를 추가하여 복잡성을 높일 수 있습니다. 워크로드 모니터링 전략에는 이러한 새 구성 요소가 포함되어야 합니다. 예를 들어 일부 패턴은 여러 구성 요소에 걸쳐 있거나 서버에서 클라이언트로 프로세스를 이동하는 흐름을 도입할 수 있습니다. 이러한 변경은 정보의 상관 관계 및 추적 복잡성을 증가시킬 수 있습니다.

  • 가시성 도구에 대한 투자를 줄이고 효과적인 대시보드를 유지 관리하면 프로덕션에서 학습하고, 디자인 선택 사항의 유효성을 검사하고, 제품 디자인을 알리는 기능을 줄일 수 있습니다. 이러한 감소는 인시던트 대응 활동을 방해하고 복구 시간 목표 및 SLO를 충족하기 어렵게 만들 수도 있습니다.

절충: 지연된 유지 관리. 워크로드 팀은 적시에 질서 정연한 방식으로 코드, 도구, 소프트웨어 패키지 및 운영 체제를 패치하고 최신 상태로 유지해야 합니다.

  • 도구 공급업체와의 유지 관리 계약이 만료되면 최적화 기능, 버그 확인 및 보안 업데이트가 누락 될 수 있습니다.

  • 시간을 절약하기 위해 시스템 패치 사이의 시간을 늘리면 버그 수정 누락 또는 진화하는 보안 위협에 대한 보호 부족이 발생할 수 있습니다.

성능 효율성을 사용한 비용 최적화 절충

비용 최적화 및 성능 효율성 핵심 요소는 모두 워크로드의 가치를 극대화하는 데 우선 순위를 줍니다. 성능 효율성은 필요 이상으로 지출하지 않고 성능 목표를 충족하는 것을 강조합니다. 비용 최적화는 성능 목표를 초과하지 않고 워크로드의 리소스에서 생성되는 가치를 극대화하는 것을 강조합니다. 결과적으로 비용 최적화는 종종 성능 효율성을 향상시킵니다. 그러나 비용 최적화와 관련된 성능 효율성 절충이 있습니다. 이러한 절충은 성능 목표에 도달하기 어렵게 만들고 지속적인 성능 최적화를 방해할 수 있습니다.

절충: 과소 프로비전되거나 축소된 리소스입니다. 성능 효율적인 워크로드에는 수요를 처리할 수 있는 충분한 리소스가 있지만 사용 패턴이 변동하는 경우에도 사용하지 않는 과도한 오버헤드가 없습니다.

  • 리소스를 축소하여 비용을 줄이면 리소스 애플리케이션이 박탈될 수 있습니다. 애플리케이션이 상당한 사용 패턴 변동을 처리하지 못할 수 있습니다.

  • 한도 또는 비용을 줄이기 위해 크기 조정을 제한하거나 지연하면 수요를 충족하기 위한 공급이 부족할 수 있습니다.

  • 비용을 줄이기 위해 적극적으로 축소하는 자동 크기 조정 설정은 갑작스런 수요 급증에 대비하지 못한 서비스를 남기거나 빈번한 크기 조정 변동(플래핑)을 일으킬 수 있습니다.

절충: 시간이 지남에 따라 최적화가 부족합니다. 기능 변경, 사용 패턴의 변경, 새로운 기술 및 워크로드에 대한 다양한 접근 방식의 영향을 평가하는 것은 효율성을 높이는 한 가지 방법입니다.

  • 배달의 우선 순위를 지정하기 위해 성능 최적화에 대한 전문 지식을 개발하는 데 중점을 두면 리소스 사용 효율성을 개선할 기회를 놓칠 수 있습니다.

  • 액세스 성능 테스트 또는 모니터링 도구를 제거하면 검색되지 않은 성능 문제의 위험이 증가합니다. 또한 워크로드 팀이 측정/개선 주기에서 실행할 수 있는 기능도 제한합니다.

  • 데이터 저장소와 같이 성능 저하가 발생하기 쉬운 영역을 무시하면 쿼리 성능이 점차 저하되고 전체 시스템 사용량이 향상됩니다.

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