피드 구독

지난 10월 Red Hat은 Red Hat OpenShift 전력 모니터링에 대한 개발자 프리뷰를 발표했으며, 지속 가능한 컴퓨팅 업스트림 커뮤니티 이니셔티브의 필수 구성 요소인 Kepler를 공개했습니다. 이 이니셔티브 덕분에 얼리 어답터는 이 유망한 기술을 경험해 볼 수 있습니다. 발표 이후 Red Hat 팀은 Red Hat의 제품 보안 및 테스트 표준을 충족하는 파이프라인과 툴링을 구축하기 위해 노력했습니다.

오늘은 Red Hat OpenShift를 위한 전력 모니터링 의 기술 프리뷰 릴리스라는 새로운 이정표를 공유하게 되어 기쁩니다. 전력 모니터링 배포에 적극적으로 참여하고 귀중한 피드백을 아낌없이 공유해 주신 모든 얼리 어답터와 와해성(Disruptive) 기술 애호가에게 진심으로 감사드립니다.

Power monitoring for Red Hat OpenShift icon

이 기술 프리뷰는 Red Hat OpenShift 전력 모니터링을 경험할 기회를 갖지 못한 분들을 위해 OpenShift 클러스터에서 실행되는 워크로드의 전력 소비를 모니터링할 수 있는 툴 집합입니다. 해당 정보는 가장 전력을 많이 사용하는 네임스페이스를 정확히 찾아내거나 에너지 소비를 최소화하기 위한 전략적 계획을 수립하는 등 다양한 용도로 활용할 수 있습니다.

이 프리뷰 릴리스를 경험해보고 싶은 분들을 위해 아래에 시작 방법이 자세히 설명되어 있습니다. 공식 지원에 대한 자세한 내용은 기술 프리뷰 설명에서 확인할 수 있습니다.

Red Hat OpenShift용 전원 모니터링 설치

Red Hat은 통합된 경험을 제공하는 것을 목표로 하며, 아래의 설치 단계는 커뮤니티 Operator에 의존하는 이전 버전의 전력 모니터링과 매우 유사합니다.

  1. Red Hat OpenShift 도큐멘테이션에 제공된 지침에 따라 user-workload-monitoring을 활성화합니다.
  2. 불필요한 충돌을 방지하기 위해 먼저 커뮤니티 Operator 카탈로그를 통해 설치할 수 있는 이전 버전의 kepler-operator를 제거합니다.
  3. Operators -> OperatorHub로 이동하여 OpenShift 4.14 이상 콘솔에서 Operator를 설치합니다. 그런 다음 검색란을 사용하여 Red Hat OpenShift에 대한 전원 모니터링을 찾아 클릭한 다음 'Install' 상자를 누릅니다.
  4. Operator가 설치되면 View Operator'를 클릭한 다음 Kepler API에서 'Create instance'를 클릭하여 Kepler 사용자 지정 리소스 정의 인스턴스를 생성합니다.
Screenshot of view operator details

완료되었습니다. Kepler가 설치되면 OpenShift 콘솔의 Observe>Dashboards UI 탭에서 두 개의 새 대시보드를 사용할 수 있습니다.

Selecting power monitoring dashboards

전원 모니터링에 대한 자세한 내용을 보려면 OpenShift 문서에서 전원 모니터링 공식 도큐멘테이션을 확인하는 것이 좋습니다.

모니터링의 힘

이러한 대시보드를 사용하면 이제 클러스터 및 해당 워크로드에 대해 다음과 같은 인사이트를 얻을 수 있습니다.

  • 선택한 CPU 아키텍처 및 모니터링되는 노드 수 표시를 포함하여 지난 24시간 동안 클러스터에서 소비된 총 에너지를 모니터링합니다.
  • 전력을 가장 많이 소비하는 네임스페이스에 대한 분석을 확인합니다.
  • 가장 많은 전력을 소비하는 컨테이너와 포드를 파악합니다. 이 작업은 'Observe -> Metrics' 탭에서 Kepler에서 표시한 지표를 분석하여 수행할 수 있습니다.
    • 전문가 팁: 정규 표현식 { __name__ =~ "kepler.+"}를 사용하여 사용 가능한 모든 전력 모니터링 지표를 쿼리할 수 있습니다.

앞에서 언급했듯이 Kepler를 OpenShift에 통합하면 이러한 지표를 사용할 수 있습니다. Kepler에서 얻은 지표는 기반 하드웨어 및 클러스터 구성에 따라 크게 달라집니다. 현재 Kepler는 특히 베어 메탈 배포에서 RAPL( Running Average Power Limit) 및 ACPI( Advanced Configuration and Power Interface)를 노출할 수 있는 Intel 하드웨어 기반의 클라우드 구성에서 정확한 측정을 제공합니다.

다른 구성의 경우 초기 머신 러닝 모델이 제공되며, Red Hat은  머신 러닝 기반 추정기의 정확도를 한층 더 높이기 위해 더 광범위한 커뮤니티와 협력하고 있습니다. 현재 이러한 추정치는 일관성을 보여주므로 동일한 워크로드의 실행 간 변동을 표시하는 데 사용할 수 있습니다. 그러나 실제 전력 소비의 근사치라는 점에 유의해야 합니다.

사용자가 Kepler에서 기본값으로 지표 기반 값을 제공하는지 아니면 모델 기반 값을 제공하는지 더 쉽게 이해할 수 있도록 Overview 페이지의 Node - CPU Architecture 패널에 'Components Source'라는 열을 추가했습니다.

이러한 개선을 통해 투명성이 확보되어 사용자가 rapl-sysfs 또는 rapl-msr과 같은 지표의 출처를 확인할 수 있습니다. Kepler가 하드웨어 전력 소비 지표를 가져올 수 없는 경우 대신 '추정기'를 소스로 표시합니다. 이러한 경우 Kepler는 머신 러닝 모델과 결과적으로 앞서 언급한 추정기로 대체됩니다. 이러한 모델을 개선하여 정확도를 높이고 처리할 수 있는 풋프린트 범위를 확장하기 위해 지속적인 개발 노력이 집중되고 있습니다.

Node - CPU Architecture & Power Source panel with the new Component Source column

지표 탐색

지표는 어떤 형태로 표시될까요? 예를 들어 자세히 살펴보겠습니다.  공식 도큐멘테이션에 따라 Kepler를 설치한 후 HTTP/2 트래픽 생성기와 모의 요소를 설치하고 시스템에 약간의 부하를 가했습니다.

전력 소비가 OpenShift 클러스터에 미치는 영향을 살펴보겠습니다. OpenShift 콘솔에서 Observe -> Dashboards -> Power Monitoring Overview 대시보드로 이동하면 다음을 확인할 수 있습니다.

  • 아키텍처 패널에 표시된 노드는 구성 요소 소스 열에 rapl-sysfs를 표시하며 지표 기반 결과를 보고합니다.
  • 클러스터가 잠시 동안 가동되었지만 유휴 상태이므로 kWh를 많이 사용하지 않습니다.
  • 에너지 요금에서 가장 많은 부분을 차지하는 네임스페이스 목록도 표시됩니다.
Power Monitoring Overview Dashboard Example

그 외에 어떤 것이 있을까요? 전력 및 에너지 소비 프로필을 이해해야 하므로 두 번째 대시보드인 'Power Monitoring / Namespace'로 바로 이동하겠습니다. 관심 있는 네임스페이스(hermes-ns)를 선택하고 다음을 확인할 수 있습니다.

  • 가장 먼저 관찰할 수 있는 것은 몇 번의 피크 이후 시간이 지남에 따라 와트 단위의 전력 소비가 일정하며, 전력을 가장 많이 소비하는 것은 Pkg 구성 요소라는 것입니다. 패키지(PKG) 도메인은 전체 소켓의 에너지 소비를 측정합니다. 여기에는 모든 코어, 통합 그래픽은 물론 언코어 구성 요소(최종 수준의 캐시, 메모리 컨트롤러)의 사용량이 포함됩니다. 이는 올바른 것으로 보이며, 전력 소비가 에너지 비율이므로 누적된 값은 없습니다.
  • 또한 시간이 지남에 따라 에너지 소비가 늘어나고 있음을 확인할 수 있습니다. 이 경우 DRAM의 전력 사용량(통합 메모리 컨트롤러에 연결된 RAM의 에너지 소비 측정)은 무시할 만한 수준입니다. 
Power Monitoring Overview Dashboard Example

조금 더 아래로 스크롤하면 PKG 및 DRAM의 사용량을 컨테이너별로 추가 분석할 수 있습니다. 가장 먼저 눈에 띄는 점은 첫 번째 피크가 이전 워크로드로 인해 발생한 것으로 보인다는 것입니다. 흥미롭게도 애플리케이션/모의 요소에서 디버깅해야 할 수도 있습니다!

두 번째 배포가 준비되면 두 컨테이너의 전력 소비가 동일한 것을 확인할 수 있습니다.

Per-container power consumption metrics visualization

이는 무엇을 의미할까요? OpenTelemetry, 지표, 추적을 사용하여 일종의 복잡한 논리 및 계측 기능을 갖춘 트래픽 생성기가 '200 OK'를 표시하고 콘솔에 출력하는 간단한 모의 요소와 동일한 양의 에너지를 소비한다는 의미일까요? 현대적인 방법으로 확인하는 것을 선호하지만 때로는 표준 출력으로 출력해야 하는 경우가 있습니다.

func exampleHandler(w http.ResponseWriter, r *http.Request) {
	time.Sleep(2 * time.Millisecond)
	fmt.Println("Request received. URI:", r.RequestURI, "Method:", r.Method)
	w.WriteHeader(200)
}

트래픽 생성기는 C++로 작성되고 모의 요소는 Go로 작성됩니다. 최근 연구에 따르면 특정 조건에서 C++가 Go보다 2.5배 더 에너지 효율적일 수 있지만, 이에 대한 논의는 이 블로그에서 다루지 않습니다. Red Hat은 모든 언어를 존중하며 언어마다 발전할 수 있는 영역이 있습니다. 전력 모니터링이 어떻게 활용될지 기대가 됩니다. 자체 데이터를 보유하고 프로그래밍 언어/전력 소비량 전쟁에 뛰어들 수도 있습니다. 

다음 단계:

Red Hat은 고객의 피드백을 반영하고, 조정하고, 개선 사항을 도입하기 위해 최선을 다하고 있습니다. 커뮤니티와의 협업은 앞으로도 계속될 것이며, 에너지 소비를 더욱 효과적으로 모니터링하기 위해 글로벌 이니셔티브에 기여할 것입니다. 전망은 유망하며 전력 모니터링을 광범위한 지속 가능성 이니셔티브에 통합하는 것부터 OpenShift 플랫폼 내에서 개발자가 코드를 관찰하거나 OpenTelemetry를 통해 데이터를 내보내도록 지원하는 일에 이르기까지 잠재적인 계획도 있습니다. 

추가 자료


저자 소개

Jose is a Senior Product Manager at Red Hat OpenShift, with a focus on Observability and Sustainability. His work is deeply related to manage the OpenTelemetry, distributed tracing and power monitoring products in Red Hat OpenShift.

His expertise has been built from previous gigs as a Software Architect, Tech Lead and Product Owner in the telecommunications industry, all the way from the software programming trenches where agile ways of working, a sound CI platform, best testing practices with observability at the center have presented themselves as the main principles that drive every modern successful project.

With a heavy scientific background on physics and a PhD in Computational Materials Engineering, curiousity, openness and a pragmatic view are always expected. Beyond the boardroom, he is a C++ enthusiast and a creative force, contributing symphonic and electronic touches as a keyboardist in metal bands, when he is not playing videogames or lowering lap times at his simracing cockpit.

Read full bio
UI_Icon-Red_Hat-Close-A-Black-RGB

채널별 검색

automation icon

오토메이션

기술, 팀, 인프라를 위한 IT 자동화 최신 동향

AI icon

인공지능

고객이 어디서나 AI 워크로드를 실행할 수 있도록 지원하는 플랫폼 업데이트

open hybrid cloud icon

오픈 하이브리드 클라우드

하이브리드 클라우드로 더욱 유연한 미래를 구축하는 방법을 알아보세요

security icon

보안

환경과 기술 전반에 걸쳐 리스크를 감소하는 방법에 대한 최신 정보

edge icon

엣지 컴퓨팅

엣지에서의 운영을 단순화하는 플랫폼 업데이트

Infrastructure icon

인프라

세계적으로 인정받은 기업용 Linux 플랫폼에 대한 최신 정보

application development icon

애플리케이션

복잡한 애플리케이션에 대한 솔루션 더 보기

Original series icon

오리지널 쇼

엔터프라이즈 기술 분야의 제작자와 리더가 전하는 흥미로운 스토리