클라우드 네이티브의 지속가능성 랜드스케이프(Cloud Native Sustainability Landscape, v0.1)

https://tag-env-sustainability.cncf.io/about/landscape/

이 문서는 클라우드 네이티브 환경 내에서 알려진 지속 가능성 노력과 진행 중인 노력을 파악하고 도전 과제를 설명합니다. 이 문서는 0.1 버전이며 향후 버전에서 해결될 미진한 부분이 포함되어 있습니다. 여러분의 의견을 환영합니다!

클라우드 컴퓨팅은 데이터를 저장하고 처리하는 방식을 혁신적으로 변화시켜 조직의 민첩성, 효율성, 확장성을 향상시켰습니다. 그러나 기업이 지속 가능성 요건을 충족하기 위해 비즈니스 모델을 혁신하면서 클라우드 컴퓨팅의 환경적 지속 가능성에 대한 우려도 커지고 있습니다. 클라우드 컴퓨팅은 에너지 소비로 인해 간접적으로 막대한 양의 탄소 배출을 유발하기 때문에 클라우드 컴퓨팅의 탄소 발자국이 논의의 주제가 되었습니다. 따라서 환경에 미치는 영향을 완화하기 위해 클라우드 컴퓨팅과 관련된 탄소 배출량을 정량화하고 줄이는 것이 필수적이 되었습니다.

운영 탄소 배출량을 정량화하는 것은 가시성과 관리 책임을 위한 도구를 배포하는 것만큼 간단하지 않습니다. 특히 클라우드 컴퓨팅의 경우 서버에 포함된 여러 하드웨어 구성 요소, 클라우드 인프라의 다양한 하드웨어 세대/아키텍처/공급업체, 서비스의 종속성, 가상화/컨테이너화된 환경에서 실행되는 서비스, 서버의 별도 팬/냉각 컨트롤러, 누락된 데이터, 원격 측정 및 가시성, AI/ML 워크로드, 기밀 워크로드 등이 존재하기 때문에 더욱 그러합니다. 이러한 문제로 인해 클라우드 컴퓨팅과 관련된 탄소 배출량을 정확하게 측정하기가 어렵습니다.

이 백서에서는 클라우드 컴퓨팅의 탄소 및 에너지 회계와 관련된 과제를 살펴보고 퍼블릭 및 프라이빗 클라우드에서 탄소 배출량을 정량화하는 데 따르는 복잡성에 대한 인사이트를 제공합니다. 또한 이 백서에서는 통신 산업과 같은 부문별 과제를 살펴봅니다.

기여자

이 문서에 기여해주신 분들께 특별히 감사드립니다. 콘텐츠를 개선하고 강화하는 데 관심이 있으신 분은 저장소에 PR을 제출하고 아래에서 자신을 기여자로 추가해 주세요!

Huamin Chen, Marlow Weston, Niki Manoledaki, Eun Kyung Lee, Chen Wang, Chris Lloyd-Jones, Parul Singh, Przemysław Perycz, Christopher Cantalupo, Patricia Cahill, Jochen Joswig, Emily Fox, Leonard Pahlke

지속 가능한 클라우드 시스템의 기초

지속 가능한 클라우드 및 클라우드 네이티브 시스템은 세 가지 기반이 존재할 때만 구축할 수 있습니다. 이러한 기반은 클라우드 및 클라우드 네이티브 아키텍처에서 정보에 입각한 설계, 의사 결정, 책임의 기초를 형성합니다.

클라우드의 탄소 배출량

정보 및 통신 기술(약칭: ICT) 시스템의 탄소 배출량은 다음과 같이 분류되고 구성됩니다:

  • 운영 배출량: ICT 시스템의 운영 또는 사용 단계에서 배출되는 탄소 배출량입니다. 이러한 배출은 대부분 이러한 시스템에 필요한 전기를 생산하기 위한 화석 연료의 연소로 인해 발생합니다.

  • 내재된 배출량: ICT 시스템의 하드웨어(약칭: HW) 및 물리적 구성 요소(예: 디바이스, 서버, 케이블, 건물 등)의 생성 및 폐기 과정에서 배출되는 탄소량입니다. 내재화된 배출은 임베디드 배출이라고도 합니다.

클라우드 및 클라우드 네이티브 시스템도 ICT 시스템의 범주에 속하기 때문에 환경적으로 지속 가능한 컴퓨팅을 보장하기 위한 탄소 배출량 산정에서 예외가 될 수 없습니다.

그린 컴퓨팅

그린 컴퓨팅은 리소스 소비를 모니터링 및 최적화하고, 환경에 미치는 영향을 줄이며, 지속 가능성을 개선하는 동시에 사용자와 이해관계자에게 유용한 서비스를 제공하는 소프트웨어 및 시스템의 아키텍처와 설계를 말합니다.

탄소/에너지 회계

탄소 및 에너지 회계는 탄소 및 에너지 소비를 추적하고 설명하기 위한 시스템, 서비스 및 방법론을 말합니다.

지속 가능한 클라우드 시스템 구축의 과제

그린 컴퓨팅과 탄소 및 에너지 회계는 다양한 산업 분야에서 관심을 갖고 빠르게 발전하는 분야로, 지속 가능한 클라우드 시스템의 구축 및 유지 관리와 관련된 과제는 여전히 밝혀지고 있습니다. 이러한 기술의 도입과 성숙도가 높아짐에 따라 더 많은 과제와 해결책이 발견될 것으로 예상됩니다. 그러나 아래 섹션에서는 두 기반 전반에 걸쳐 현재 직면한 과제를 파악하려고 합니다. 탄소 회계에 널리 사용되는 표준은 온실가스 프로토콜(약칭: 온실가스 프로토콜, GHGP)입니다.

탄소/에너지 회계의 어려움

운영 탄소 배출량 정량화

클라우드 네이티브 워크로드의 성능에 대한 관찰 가능성은 조직이 아키텍처가 어떻게 운영되고 있는지에 대한 가시성과 이해를 높이기 위해 다양한 텔레메트리 데이터 항목에 대한 가치를 알게 되면서 인기가 높아졌습니다. 더 많은 조직이 리소스 활용과 에너지 소비에서 실질적인 가치를 달성하는 방법을 고려하기 시작하면서, 운영 탄소 배출량을 정량화하는 것이 가시성과 책임성을 위한 도구를 배포하는 것만큼 간단하지 않다는 사실을 깨닫고 있습니다. 운영 탄소 배출량을 정량화하는 것은 다음과 같은 여러 가지 이유로 쉽지 않습니다:

  • 서버에 포함된 여러 하드웨어(HW) 구성 요소 - 정확한 정량화/추정을 위해 다양한 HW 구성 요소(예: CPU, 메모리, GPU, 스토리지, I/O)에 대한 전력 모델링이 필요합니다.

  • HW는 여러 사용자/계정이 동시에 사용하므로 사용자별(예: 멀티 소프트웨어 스레드) 전력 모델링은 완전히 다른 문제입니다. 여기서 이해해야 할 중요한 문제는 에너지 비례성(Energy Proportionality)입니다. 전력 모델링을 위해서는 SW/HW 상호 작용을 잘 이해해야 합니다.

  • 클라우드 인프라의 다양한 세대/아키텍처/공급업체 - Intel vs. AMD vs. ARM, Skylake vs. Sapphire Rapids, and ConnectX-5 vs. ConnectX-6 등 다양한 세대/아키텍처/공급업체에 대한 전력 모델링이 필요합니다.

  • 서비스의 종속성 - 서비스마다 다른 서비스를 사용할 수 도 있습니다. (예: 쿠버네티스는 COS 서비스를 사용함) 애플리케이션이 데이터센터와 클라우드에 분산되어 있을 수 있습니다.

  • 가상화/컨테이너화된 환경에서 실행되는 서비스 - 가상화/컨테이너화된 환경에는 전력 모델링이 필요하므로 모델링의 복잡성이 증가합니다.

  • 서버에 별도의 팬/냉각 컨트롤러가 있는 경우 - 팬 및 기타 냉각 구성 요소는 별도의 컨트롤러로 제어되는 경우가 많으므로 추가적인 모델링이 필요합니다.

  • 누락된 데이터 - 클라우드의 내부 데이터 노출 제한으로 인해 운영 배출량 계산을 위한 주요 데이터에 대한 액세스가 금지됩니다. 온프레미스(On-premise) 데이터 센터에는 전력 측정 기술이 부족한 경우가 있습니다.

  • 텔레메트리 및 관측 가능성 - 사용자가 여러 HW를 동시에 사용하는 경우가 많기 때문에 신뢰할 수 있고 세분화된 텔레메트리가 더욱 중요해집니다. 그러나 서버/클라우드에서 실행되는 서비스에 비해 텔레메트리/관측 가능성 오버헤드가 낮아야 합니다.

  • AI/ML 워크로드 - 인공지능(AI)/머신러닝(ML) 워크로드 사용이 급격히 증가함에 따라 전용 GPU 기반 클러스터의 필요성이 커지고 있습니다. 이러한 워크로드의 특성은 기존 워크로드와 다르며 전력 소비량이 훨씬 높습니다.

  • 기밀 워크로드 - VM 사용 사례를 통해서 확인한 결과 기밀 컨테이너(SGX/SEV/TDX)로 발전하고, TEE(신뢰할 수 있는 실행 환경)를 사용하면서, bounce buffer/SWIOTLB를 사용하면 에너지 비용이 더 많이 들 수 있습니다. 그러나 기밀 워크로드는 보안에 대한 우려로 인해 관찰하기 어렵습니다.

제조 세부 정보('내재된 배출량')가 제조 기술 소비자의 전체적 정량화를 위한 정보에 통합되지 않기 때문에 내재된 탄소 배출량을 정량화하는 것도 매우 어렵습니다. 이는 이 백서의 범위를 벗어나는 것이지만, 관심 있는 독자는 이 TAG 저장소에 이슈 또는 PR을 제출하여 이러한 배출량을 정량화하기 위한 지침, 모범 사례, 방법, 메커니즘을 제안해 주시기 바랍니다.

클라우드

퍼블릭 클라우드의 과제

AWS, Azure, GCP와 같은 퍼블릭 클라우드 제공업체는 사용자가 지속 가능성 관련 메트릭에 액세스하는 것과 관련하여 내릴 수 있는 결정을 제한하기 때문에 소비 및 배출 데이터를 상당히 제한적으로 제공하는 경우가 많습니다. 지속 가능성 관련 지표에는 에너지 소비량, 하드웨어, 전원, 데이터 센터 PUE 등과 같은 데이터 포인트가 포함됩니다.

제공업체는 일상적인 비용, 에너지 사용량 및 배출량을 낮추기 위해 노력하지만 사용자에게 노출되는 기능은 상당히 제한적일 수 있습니다. 이는 부분적으로는 클라우드 컴퓨팅이 설계된 공유 책임 모델에 기인하는 것으로, 조직이 자체 데이터 센터를 운영할 때 책임져야 할 운영상의 복잡성을 줄여줍니다.

또한, 앞서 언급한 정량화 문제는 특정 사용자의 탄소 비용을 계산하는 데 더 큰 어려움을 야기하는데, 탄소 계산은 사용자가 개별 작업 유형에 연결해야 하는 것보다 훨씬 더 오래 걸릴 수 있기 때문입니다. 위에서 언급한 하이퍼스케일러는 탄소 대시보드 또는 API를 통해 클라우드 리소스의 탄소 배출량에 대한 인사이트를 제공합니다. 그러나 이러한 방법은 매우 제한적이거나 사용자가 조치를 취할 수 있는 시간 내에 탄소 배출량 데이터를 사용할 수 있게 되기까지 상당한 시간 지연이 발생할 수 있습니다. 또한 탄소 배출량 계산에 사용되는 방법론이 클라우드 제공업체마다 다를 수 있으므로 사용자가 제공업체를 비교할 수 있는 능력이 떨어집니다. 이러한 정보를 측정하거나 추정하는 방법은 종종 모호하고 일관성이 없으며 업계 합의가 없는 경우가 많습니다. 대부분의 신흥 기술 분야와 마찬가지로, 업계가 이러한 배출량을 측정하고 표현하기 위한 공동의 스키마 또는 프레임워크를 중심으로 움직일 때까지 근본적인 구현의 다양성은 계속될 것입니다.

클라우드 서비스 제공업체의 사용자

사용자는 자신의 워크로드가 조직의 탄소 발자국에 어떤 영향을 미치는지 인식하지 못하고 경험이 부족한 경우가 많습니다. 환경에 미치는 영향에 관심이 있는 사용자들도 개별 워크로드를 탄소 비용과 연결하는 데 어려움을 겪습니다.

프라이빗 클라우드의 과제

프라이빗 클라우드는 특정 회사나 대학에서 해당 회사나 대학의 구성원만 사용할 수 있도록 운영하는 클라우드입니다. 이러한 클라우드는 사용자가 워크로드를 실행하는 클라우드의 관리자 또는 관리자에게 책임을 지도록 하기 때문에 더 신뢰할 수 있는 환경인 경우가 많습니다. 프라이빗 클라우드의 특수한 목적으로 인해 환경 지속 가능성, 그린 컴퓨팅, 배출량에 대한 책임은 설계, 운영, 심지어 비용에 있어서도 최우선 순위가 아니기 때문에 프라이빗 클라우드만의 또 다른 과제를 안고 있습니다. 이러한 문제는 아직 해결되지 않았습니다.

업종별 과제

통신(Telco)

통신 고객은 고객에게 높은 안정성과 빠른 속도의 서비스를 제공해야 하는 고유한 요구 사항으로 인해 까다로운 경우가 많습니다. 통신사는 시스템이 매우 안정적이어야 하고 트래픽이 빠르고 안정적이어야 합니다. 일부 시스템은 전력 변조가 트래픽에 영향을 미칠 수 있고 이에 대한 허용 오차가 낮기 때문에 완전히 최대 전력으로 유지됩니다. 통신사가 트래픽에 영향을 미치지 않을 것이라고 확신하는 전력을 줄이는 시스템을 구축하는 것은 어려운 일입니다.

금융(Finance)

금융 분야에서는 업무 외 시간에 시뮬레이션을 실행할 수 있으며, 이러한 시뮬레이션은 AI/ML 워크로드처럼 보일 수 있습니다. 그러나 트랜잭션과 빠른 트래픽의 경우, 금융 분야는 예측 가능한 사용 시간대(시장 개장 시간대)가 있습니다. 따라서 금융에서 운영하는 대부분의 클러스터에 대한 시간대 조정은 제한적일 수 있습니다. 그러나 거래 시간은 실제 금액에 영향을 미치므로 이러한 환경에서는 전력 사용량보다 빠른 속도가 우선시됩니다. 이러한 고객들이 지속 가능한 옵션을 사용하도록 하려면 수익에 미치는 영향을 제한하는 데 주의를 기울여야 합니다. 추가적인 고도의 보안 및 규제 요건은 로깅, 모니터링 및 기타 요인의 증가로 인해 금융 워크로드의 사용률과 탄소 배출량을 증가시킬 수 있습니다.

워크로드별 과제

AI/ML

위에서 파악한 과제 외에도 인공 지능(AI) 및 머신 러닝(ML) 워크로드는 클라우드 서비스 제공업체에서 스케줄링 가능한 컴퓨팅으로 존재하거나 베어메탈 환경 내에 존재합니다. 두 경우 모두 AI/Ml 클러스터에는 XPU 또는 가속기의 복잡성이 추가되는 경우가 많습니다. 이러한 가속기는 실행하는 데 상당한 양의 전력이 필요하며, 일반 컴퓨터 칩보다 훨씬 더 많은 전력을 필요로 합니다. 또한 이러한 클러스터의 일부 워크로드(예: 정보 집합 학습, training sets of information)는 시간에 민감하지 않은 반면, 인식 시스템의 추론 작업(inference jobs for recognition systems)과 같이 시간에 민감한 워크로드도 있습니다.

솔루션 계층

지속 가능한 클라우드 시스템의 세 가지 토대를 보완하는 솔루션을 고려할 때 고려해야 할 사항을 세 가지 일반적인 영역으로 나눌 수 있습니다:

  1. 사용할 수 있는 옵션이 여러 개 있는 경우 어떤 데이터센터를 사용할지에 대해서

  2. 데이터 센터를 선택한 후 워크로드를 어디에 배치할지에 대해서

  3. 워크로드를 실행하기 위해 할당된 노드에서 리소스를 관리하는 방법

이러한 모든 요소는 개별적으로 더 자세히 조사하면 다음과 같습니다.

현재 업계 연구 및 개발

지속 가능한 컴퓨팅 분야에는 수많은 개발과 연구가 진행 중입니다. 여기에 소개되지 않은 것을 알고 계신다면 기고해 주시면 감사하겠습니다!

런타임 시스템 전력 측정

에너지 절약 및 탄소 저감

튜닝, 확장 및 구성

런타임 시 워크로드에 의해 소비되는 에너지는 HW 수준에서 DVFS 기반 스케일링을 통해, SW 수준에서 런타임 파라미터 튜닝 및 재구성을 통해, 또는 오케스트레이션 수준에서 스케일 투 제로 자동화를 통해 줄일 수 있습니다.

그린 시스템 아키텍처

그린 HW/SW 시스템은 하위 시스템 효율성을 개선하거나 계산 수행 방식을 변경합니다.

예를 들어, 에너지 효율적인 언어로 작성되거나 보다 최적화된 런타임에서 실행되는 프로그램은 일반적으로 "환경친화적"입니다.

반면, 유휴 전력 및 데이터센터 냉각 등은 환경 친화적인 아키택처로 에너지 낭비의 근본 원인을 해결하는 것으로 평가됩니다. 예를 들어, 페더레이션 학습은 값비싼 냉각이 필요하지 않은 기기에 모델 학습을 확산하여 탄소 발자국을 총체적으로 줄이는 것으로 평가됩니다.

현재 지속 가능한 클라우드 컴퓨팅 환경

아래 다이어그램은 지속 가능한 클라우드 컴퓨팅 환경의 차원을 보여주며, 다음 섹션에서 자세히 설명합니다.

데이터 센터

스마트 데이터 센터

ECO-Qube - 엣지 컴퓨팅 애플리케이션의 하드웨어 및 소프트웨어 구성 요소를 모두 조율하여 에너지 효율성과 냉각 성능을 향상시키는 것을 목표로 하는 종합적인 관리 시스템

Patchwork Kilt - 지속 가능한 데이터 센터를 위한 청사진

Open Compute Sustainability Project - OCP 커뮤니티의 전문성을 활용하여 재사용성과 순환성을 촉진하는 업계 모범 사례를 배포할 수 있도록 OCP 회원사 및 데이터센터 업계(벤더, 공급업체, 최종 사용자)를 위한 개방형 프레임워크와 리소스를 제공

냉각 / BMC

데이터센터 운영자는 일반적으로 피크 수요를 충족할 수 있는 충분한 버퍼를 확보하기 위해 시설 용량을 과도하게 프로비저닝합니다. 과도한 프로비저닝은 데이터센터의 총소유비용(TCO)에 큰 부담을 줍니다. 오늘날 데이터센터 관리 스택은 데이터센터 런타임 상태 모니터링을 위해 널리 배포되어 전력, 온도, 리소스 사용률 전반에 걸쳐 수많은 데이터를 수집합니다. 이러한 데이터는 데이터 인텔리전스를 통해 데이터센터 효율성을 최적화할 수 있는 기회를 창출합니다. 이 백서에서는 클라우드 환경에서 전력 추세 예측을 사용하여 냉각 효율을 개선한 사례를 소개했습니다. 한편, 이 백서에서는 하이퍼스케일 데이터센터에서 IT 플랫폼 데이터 기반 시설 제어를 구현할 때 원격 측정 수집, 메시징 메커니즘, 관리 API 등 몇 가지 주요 과제와 설계 고려 사항에 대해 설명했습니다. 솔루션 배포를 위해서는 IT 장치, 시설 및 관리 시스템 간의 효과적인 상호 운용성이 매우 중요하며, 오픈 컴퓨트 프로젝트 설계와 Redfish API를 채택하면 시스템 수준 통합이 쉬워지고 다양한 시스템과 다양한 제조업체에 대한 배포 비용을 절감할 수 있습니다.

방법론

측정 방법론

소프트웨어 탄소 집약도(SCI, Software Carbon Intensity ) 표준 - 소프트웨어 애플리케이션의 탄소 집약도를 계산하는 방법을 설명하는 사양입니다.

그린 소프트웨어 패턴 - 그린 소프트웨어 재단에서 다양한 범주에 걸쳐 검토하고 선별한 소프트웨어 패턴의 온라인 오픈 소스 데이터베이스입니다.

SCI 지침 - SCI 지침 프로젝트는 SCI 계산의 핵심 구성 요소인 에너지, 탄소 집약도, 구체화된 배출량 및 기능 단위값을 계산하는 데 사용할 수 있는 다양한 방법론을 이해하는 방법에 대한 다양한 접근 방식을 자세히 설명합니다.

런타임(Runtime) - 시스템 전력 소비량 추정 런타임을 통해 시스템 및 하위 시스템 수준의 전력 소비량에 대한 런타임 예측

관측 가능성 방법론

OpenTelemetry CNCF 인큐베이팅 프로젝트는 서비스 및 소프트웨어에서 원격 분석 데이터를 생성 및 수집한 다음 이를 다양한 분석 도구로 전달하도록 설계되었습니다. OpenTelemetry는 Spring, ASP.NET Core, Express, Quarkus 등과 같은 널리 사용되는 라이브러리 및 프레임워크와 통합됩니다.

관측 가능성 도구

아래 다이어그램은 지속 가능한 클라우드 컴퓨팅 환경의 인프라 부문을 보여줍니다.

무료 셀프 서비스 오픈 소스인 gProfiler는 기업이 지속적인 프로파일링을 통해 애플리케이션 성능을 개선하여 비용을 절감하고 탄소 발자국을 최소화할 수 있도록 지원합니다. 세분화된 사용자는 CO2 절감량 측정기를 통해 비용 및 리소스 절감과 함께 gCenter 대시보드에서 탄소 배출량 감소를 모니터링할 수 있습니다.

이 애플리케이션은 주요 클라우드 제공업체로부터 사용 데이터(컴퓨팅, 스토리지, 네트워킹 등)를 가져와 예상 에너지(와트시)와 온실가스 배출량을 이산화탄소 환산량( 메트릭 톤 CO2e)으로 표시하여 계산합니다. 이러한 시각화를 대시보드에 표시하여 개발자, 지속 가능성 리더 및 조직의 기타 이해관계자가 보고 조치를 취할 수 있도록 합니다. 현재 AWS, Google Cloud 및 Microsoft Azure를 지원합니다.

인프라 도구

아래 다이어그램은 지속 가능한 클라우드 컴퓨팅 환경의 인프라 부문을 보여줍니다.

클러스터 수준에서의 스케줄링

클러스터 수준 스케줄링 단계에서는 데이터센터의 탄소 발자국, 열 온도 및 냉각, 캐싱 감지, 서버 전력 효율을 인식하는 지능형 스케줄러를 통해 워크로드에 소비되는 에너지를 줄일 수 있습니다. 전력 비용(탄소, 비용 등)에 따른 일괄 스케줄링.

스케일링

온-노드 전력 관리 튜닝

지역과 노드가 선택되면 관리자와 사용자는 워크로드를 실행하는 데 필요한 전력량을 최소화하도록 노드를 추가로 조정할 수 있습니다. 이렇게 하면 노드당 전력을 30% 이상 줄일 수 있습니다.

지속 가능성 관련 활동

여러 가지 지속 가능성 활동이 진행 중이며, 누락된 항목이 있다면 PR을 제출하여 이 목록이 업데이트 될 수 있도록 도와주세요.

조직

컨퍼런스

탄소 배출량 보고서

SCI 보고 - SCI 점수를 저장, 호스팅 및 공개적으로 보고하기 위한 인프라와 프로세스를 생성하고, SCI 사양 내에서 기타 관련 보고 요건을 충족합니다.

넷 제로 / 탄소 중립

프로그래밍 언어 효율성 분석

Last updated