BindPlane을 사용하여 온프레미스 리소스 모니터링

이 문서는 온프레미스 인프라 및 앱을 포함하도록 Cloud Logging 및 Cloud Monitoring 확장에 관한 2부로 구성된 시리즈의 한 파트입니다.

  • Cloud Logging: Cloud Logging이 온프레미스 리소스의 로깅을 지원하는 방법에 대해 알아보세요.
  • Cloud Monitoring(이 문서): Cloud Monitoring이 온프레미스 리소스 모니터링을 지원하는 방법에 대해 알아보세요.

다음과 같은 이유로 온프레미스 리소스의 로깅 및 모니터링에 Logging 및 Monitoring을 사용할 수 있습니다.

  • 인프라를 Google Cloud로 이전할 때 임시 솔루션이 필요하며, 리소스가 사용 중지될 때까지 온프레미스 리소스를 모니터링해야 합니다.
  • 여러 클라우드와 온프레미스 리소스가 있는 다양한 컴퓨팅 환경이 있을 수 있습니다.

두 경우 모두 Logging, Monitoring API, BindPlane을 사용하면 온프레미스 리소스를 확인할 수 있습니다. 이 문서는 Google Cloud의 리소스와 나머지 온프레미스 인프라 및 앱에 대한 모니터링 전략에 관심이 있는 DevOps 실무자, 관리자, 경영진을 대상으로 합니다.

Monitoring으로 측정항목 수집

다음 두 가지 방법으로 측정항목을 Monitoring으로 가져올 수 있습니다.

  • observIQ의 BindPlane 도구를 사용하여 온프레미스 또는 기타 클라우드 소스에서 측정항목을 수집합니다.
  • OpenCensus를 사용하여 Cloud Monitoring API에 씁니다.

BindPlane을 사용하여 측정항목 수집

다음 다이어그램은 BindPlane을 사용하여 측정항목을 수집하는 방법과 이러한 측정항목을 Monitoring에 수집하는 방법에 대한 아키텍처를 보여줍니다.

Monitoring 및 BindPlane을 사용하여 온프레미스 리소스 모니터링 아키텍처

observIQ는 오픈소스(자체 호스팅), SaaS, 엔터프라이즈와 같은 여러 버전의 BindPlane을 제공합니다. 이러한 버전에 대한 자세한 내용은 BindPlane 비교 페이지를 참조하세요.

장점:

  • 앱 조정은 필요 없으며 구성만 필요합니다. 이는 구현 시간을 단축합니다.
  • Monitoring 사용 비용에 포함됩니다.
  • Monitoring 제품 및 지원을 통해 지원되는 구성입니다.
  • 기본 구성에서 제공하지 않는 측정항목으로 확장할 수 있습니다.

단점:

  • Monitoring에 측정항목을 릴레이하려면 observIQ BindPlane 도구를 사용해야 하므로 전체 시스템이 복잡해질 수 있습니다.

이 옵션은 최소한의 노력만 필요하므로 권장되는 방법입니다. 이 솔루션에는 개발은 필요 없으며 구성만 필요합니다.

OpenCensus를 사용하여 API에 기록

다음 다이어그램은 OpenCensus를 사용하여 측정항목을 수집하는 방법과 이러한 측정항목을 Monitoring에 수집하는 방법에 대한 아키텍처를 보여줍니다.

Monitoring API를 사용하여 온프레미스 리소스 직접 모니터링 아키텍처

Monitoring API를 직접 사용하려면 앱을 조정하여 측정항목을 API에 직접 전송해야 합니다. 이는 Monitoring API를 사용하여 측정항목을 기록하거나, OpenCensus용 Monitoring 내보내기를 사용하여 앱을 조정하는 방식으로 직접 수행할 수 있습니다. OpenCensus는 trace 및 측정항목의 표준 데이터 구조를 정의하는 오픈소스 프로젝트입니다. OpenCensus를 사용하면 Monitoring을 포함한 여러 백엔드를 지원할 수 있는 이점이 있습니다. 또한 OpenCensus를 사용하면 Monitoring API 사용에 관한 낮은 수준의 모든 기술 세부정보를 구현할 수 있습니다.

장점:

  • OpenCensus 내보내기를 사용하여 필요한 조정을 쉽게 구현할 수 있으므로 유연성을 제공합니다.

단점:

  • 커스텀 에이전트 작성과 같은 인프라 측정항목을 위한 별도의 솔루션이 필요합니다.
  • 구현하는 데 많은 비용이 소요될 수 있는 앱 조정이 필요합니다.
  • 오픈소스 라이브러리가 필요합니다.

이 옵션은 최대한의 노력이 요구되며 인프라 측정항목을 포함하지 않으므로 권장되는 방법이 아닙니다.

BindPlane 사용

이 문서에서는 observIQ의 BindPlane 도구를 사용하여 측정항목을 Monitoring으로 수집하는 방법을 설명합니다. BindPlane 서비스는 일련의 소스를 정의하고 해당 측정항목을 수집한 다음 측정항목을 대상으로 사용할 Monitoring으로 전송하여 작동합니다. BindPlane은 Compute Engine, Amazon Elastic Compute Cloud(Amazon EC2), Linux, Windows, Kubernetes 소스를 지원합니다.

소스, 수집기, 대상

BindPlane에는 다음과 같은 기능이 있습니다.

  • 소스: Google Kubernetes Engine(GKE), Kubernetes용 Amazon Elastic Container Service(Amazon EKS), Microsoft Azure Container Service와 같은 측정항목을 생성하는 항목입니다.
  • 수집기: 환경을 원격으로 모니터링하고 측정항목 데이터를 BindPlane에 전달하는 간단한 프로세스입니다.
  • 대상: BindPlane이 측정항목을 전달하는 서비스입니다. 이 경우 대상은 Monitoring API를 사용하여 Monitoring에 측정항목을 쓰는 BindPlane의 프로세스입니다.

소스, 수집기, 대상에 대한 자세한 내용은 BindPlane 소개를 참조하세요.

사용 사례 예시

예를 들어 ExampleOrganization에는 Google Cloud, Microsoft Azure에 배포된 리소스와 vSphere를 사용하여 배포된 온프레미스 리소스가 있습니다. Google Cloud에는 회사의 웹사이트를 실행하는 간단한 데모 앱과 GKE 클러스터가 배포되어 있습니다. Microsoft Azure 환경에서는 Azure Kubernetes Service(AKS)가 일련의 마이크로서비스를 실행하면서 외부 개발자에게 REST API 엔드포인트를 제공합니다. vSphere 환경에서는 MySQL, Oracle, Microsoft SQL Server가 여러 개의 기업 앱을 지원합니다.

ExampleOrganization은 구성 요소가 배포된 위치에 상관없이 각 환경에서 리소스를 사용하여 각 구성 요소를 모니터링하려고 합니다. BindPlane을 사용하여 각 환경의 측정항목을 Logging 및 Monitoring에 전송하면 모니터링 및 알림 목적으로 모든 측정항목이 단일 위치에 수집됩니다.

BindPlane에서 Monitoring으로 측정항목 전송

BindPlane이 설정되고 측정항목을 전송하기 시작하면 해당 측정항목이 Monitoring Workspace에 전송됩니다. 그러면 Monitoring에서 모든 측정항목 또는 시계열에 수행할 수 있는 것과 마찬가지로, Monitoring을 사용하여 시계열에서 대시보드를 보고 구성하며 알림을 실행하고 빌드할 수 있습니다. 자세한 내용은 측정항목, 시계열, 리소스를 참조하세요.

Monitoring에서 측정항목 사용

이전 예시에서 BindPlane은 Google Cloud, Microsoft Azure, 온프레미스 소스에서 측정항목을 전송하도록 구성되었습니다. 다음 3개 측정항목이 Monitoring에 표시됩니다.

  • GKE 클러스터 측정항목
  • AKS 클러스터 측정항목
  • vSphere 온프레미스 데이터베이스 측정항목

GKE 클러스터 측정항목

Google Kubernetes Engine 페이지에서 Monitoring의 GKE 클러스터 측정항목은 인프라, 워크로드, 서비스 등 Monitoring Workspace에서 실행되는 Kubernetes 구성 요소의 세 가지 뷰를 표시합니다. 클러스터에는 측정항목을 보고하는 네 가지 서비스가 배포되어 있습니다.

Monitoring에서 모니터링하는 네 가지 서비스 뷰

각 포드에 측정항목, 로그, 구성을 사용할 수 있습니다.

특정 서비스의 포드 세부정보 뷰

AKS 클러스터 측정항목

동일한 Monitoring 환경에서 AKS의 측정항목이 수집됩니다. 측정항목은 Monitoring에 표시되고 Monitoring에서 대시보드, 알림, 측정항목 탐색기 등 어떤 용도로도 사용할 수 있습니다.

Monitoring 측정항목 탐색기는 측정항목을 찾아서 필터링하고 차트를 빌드하는 방법을 제공합니다. BindPlane에서 전송한 측정항목에는 측정항목 이름에 workload.googleapis.com/THIRD_PARTY_APP_NAME 프리픽스가 있습니다.

리소스 유형 일반 모드가 표시된 측정항목 탐색기

측정항목 탐색기는 측정항목의 차트를 생성할 수 있습니다.

CPU 사용 측정항목 차트

Monitoring의 모든 측정항목과 마찬가지로, 해당 측정항목을 사용하여 다음 스크린샷에서와 같은 대시보드를 빌드할 수 있습니다. 대시보드는 AKS에 의해 생성되고 BindPlane에 의해 수집되어 Monitoring에 저장되고 대시보드에 표시되는 측정항목을 나타냅니다.

네 가지 차트를 표시하는 AKS 대시보드

vSphere 온프레미스 클러스터 측정항목

이 예의 마지막 부분에는 vSphere의 데이터베이스 측정항목이 나와 있습니다. vSphere의 측정항목은 Monitoring에 표시되고 Monitoring의 다른 측정항목과 같은 방식으로 사용할 수 있습니다. 측정항목 탐색기에 vSphere의 Oracle 측정항목이 표시됩니다.

Monitoring의 vSphere 측정항목

Monitoring의 모든 측정항목과 마찬가지로, 해당 측정항목을 사용하여 다음 스크린샷에서와 같은 알림을 빌드할 수 있습니다.

트리거 기반 알림 빌드의 구성 화면

알림은 vSphere에서 실행되는 Oracle에 의해 생성되고 BindPlane에 의해 수집되어 Monitoring에 저장되고 알림을 구성하는 데 사용되는 측정항목을 나타냅니다.

알림 정책 창

결론

Monitoring은 플랫폼에 대한 유용한 정보를 확보할 수 있는 대시보드, 알림, 사고 대응을 제공합니다. Monitoring과 BindPlane은 온프레미스 리소스에 대한 유용한 정보를 확보할 수 있는 기능을 제공합니다.

다음 단계