Google Cloud Platform Monitoring

개요

  • GCP에서 제공되는 Stackdriver를 통한 Project 별 Instance 정보를 모니터링합니다.

Connection GCP

  • GCP를 Project별로 추가, 수정, 삭제 합니다.

GCP 추가

  • 입력항목

Name

Comment

Project

GCP의 Project

Service Account Email Address

GCP의 Service Account Email Address

Service Account Private Key

GCP의 Service Account Private Key

  • “Cloud” 탭 버튼을 클릭하면 Cloud Tree List 화면으로 변경됩니다.

  • “Google Cloud Platform에 마우스 오버시 Add Project 버튼이 활성화 됩니다.

  • “Add Project” 버튼을 클릭하면 ADD PROJECT 등록 팝업이 실행됩니다.

  • GCP 정보를 입력후 “Save Project” 버튼을 클릭하면 GCP Project가 추가됩니다.

GCP 수정

 

  • Project에 마우스 오버시 수정 버튼이 활성화됩니다.

  • 수정 버튼 클릭시 Update Project 팝업이 실행되고 해당 Project 정보가 출력됩니다.

  • Project 정보를 수정하고 Update Project 버튼을 클릭하면 Project 정보가 수정됩니다.

GCP 삭제

 

  • Project에 마우스 오버시 삭제 버튼이 활성화됩니다.

  • 삭제 버튼 클릭시 해당 Project 정보가 삭제됩니다.

GCP 정보 조회

  • GCP의 Instance의 정보를 Topology를 통해 시계열 데이터를 시각화하여 제공하고 Instance의 각종 Detail 정보를 제공합니다.

GCP 시계열 데이터

  • Topology에서 해당 Instance를 선택하면 시계열 데이터를 시각화하여 하단에 표시에 줍니다.

  • Get from 사용해 Agent 및 StackDriver를 필터링 하여 확인 할 수 있습니다.

GCP Instance Detail 정보

  • Topology에서 해당 Instance를 선택하고 Detail 탭으로 이동하면 해당 Instance의 Detail 정보를 확인할 수 있습니다.

GCP Inventory Topology Draw 기능

  • Google Cloud Platform에 추가된 Project를 Drag&Drop 하면 해당 Project의 모든 Instance가 Topology에 그려집니다.

 

Host 탭에서 GCP 정보 조회

  • Host에서 GCP 탭을 선택하면 Inventory Topology에서 등록한 GCP Instance의 상태 및 시계열 데이터를 시각화하여 제공합니다.

  • Get from 사용해 Agent 및 StackDriver를 필터링 하여 확인 할 수 있습니다.

Stackdriver Google Cloud Monitoring Input Plugin

이 플러그인은 Google Stackdriver에서 통계 지표를 가져옵니다.

GCP 서비스 계정 키 생성

  1. Cloud Console에서 만든 서비스 계정의 이메일 주소를 클릭합니다.

  2. 를 클릭합니다.

  3. 키 추가를 클릭한 후 새 키 만들기를 클릭합니다.

  4. 만들기를 클릭합니다. JSON 키 파일이 컴퓨터에 다운로드됩니다.

  5. 닫기를 클릭합니다.

자세한 내용 링크 참조 https://cloud.google.com/docs/authentication/getting-started

Telegraf Service 파일에 GCP 환경 변수 설정

telegraf service path : $ vim /usr/lib/systemd/system/telegraf.service

Telegraf Service 파일의 [Service]Environment="GOOGLE_APPLICATION_CREDENTIALS=<KEY_PATH>" 추가합니다.

[Unit] Description=The plugin-driven server agent for reporting metrics into InfluxDB Documentation=https://github.com/influxdata/telegraf After=network.target [Service] Environment="GOOGLE_APPLICATION_CREDENTIALS=<KEY_PATH>" EnvironmentFile=-/etc/default/telegraf User=telegraf ExecStart=/usr/bin/telegraf -config /etc/telegraf/telegraf.conf -config-directory /etc/telegraf/telegraf.d $TELEGRAF_OPTS ExecReload=/bin/kill -HUP $MAINPID Restart=on-failure RestartForceExitStatus=SIGPIPE KillMode=control-group [Install] WantedBy=multi-user.target $ systemctl daemon-reload $ systemctl restart telegraf

Telegraf Stackdriver Input Plugin (Sample)

  • Stackdriver 데이터를 수집할 Minion의 Collector.conf 에 아래와 같이 Plugin을 추가합니다.

[[inputs.stackdriver]] project = <GCP-Project ID> metric_type_prefix_include = [ "compute.googleapis.com", "agent.googleapis.com", "networking.googleapis.com" ] interval = "1m"

자세한 내용은 링크 참조 Stackdriver Input Plugin