로그 기록 및 모니터링

Last reviewed 2024-04-19 UTC

이 섹션에서는 개발자 플랫폼 및 애플리케이션 모두에 대해 엔터프라이즈 애플리케이션 청사진의 로깅 및 모니터링 작동 방식을 설명합니다. GKE용 Google Cloud Observability는 청사진 애플리케이션에 사용되는 Cloud Logging 및 Cloud Monitoring 서비스를 제공합니다.

기본적으로 애플리케이션 템플릿의 기본 소스 코드는 로그를 stdout에 전송합니다. stdout를 통해 플랫폼에서 애플리케이션 로그를 처리할 수 있으므로 stdout를 사용하는 것이 컨테이너화된 애플리케이션을 위한 권장사항입니다. 애플리케이션 코드는 Prometheus 클라이언트 라이브러리로 계측되어 애플리케이션별 측정항목을 내보냅니다. GKE는 Kubernetes 상태 측정항목, 리소스 사용률, SRE 골든 측정항목, 데이터베이스 인스턴스 측정항목을 포함하여 각 애플리케이션의 측정항목을 자동으로 제공합니다. 개발자 플랫폼팀을 위해 이 플랫폼은 인프라, 사용량, 애플리케이션 간 트래픽 측정항목을 제공합니다.

Logging 스토리지

GKE용 Cloud 운영을 사용하면 시스템 및 애플리케이션 로그를 중앙 로그 버킷으로 수집할 수도 있습니다. 청사진에는 로그 저장에 사용되는 각 환경 폴더의 프로젝트도 포함됩니다. 엔터프라이즈 기반 청사진에는 전체 Google Cloud 조직의 집계 Cloud 감사 로그를 내보내는 별도의 로깅 프로젝트가 있습니다. 테넌트에 가장 필요한 로그 유형도 테넌트로 구분됩니다. 예를 들어 frontend 애플리케이션에서 작업하는 애플리케이션 개발자는 frontend 컨테이너 로그 및 포드 로그에만 액세스할 수 있으며, 개발 및 비프로덕션 환경에서만 액세스 가능합니다.

다음 표에는 로그 유형, 위치, 액세스 제어 세부사항이 나와 있습니다.

액세스 제어 세부사항 로그 유형 로그 스토리지 위치

개발자 플랫폼

멀티 테넌트 인프라 로그

프로젝트: eab-infra-cicd

애플리케이션 팩토리 로그

프로젝트: eab-app-factory

환경별

  • 노드
  • 클러스터 제어 영역
  • 비테넌트 컨테이너 또는 포드

프로젝트: eab-gke-{env}

버킷: _Default

  • GKE에서 사용하는 Compute Engine 리소스
  • Anthos Service Mesh 트래픽

프로젝트: eab-gke-{env}

환경 및 테넌트별

테넌트 컨테이너 또는 포드

프로젝트: eab-gke-{env}

버킷: 테넌트별(범위)

  • Alloy DB 세션
  • 다른 테넌트 소유 리소스

프로젝트: eab-app-{appname}-{env}

테넌트별

  • 애플리케이션 빌드
  • 애플리케이션 배포

프로젝트: eab-app-cicd-{appname}

애플리케이션 모니터링

GKE용 Google Cloud Observability는 GKE용으로 사전 정의된 모니터링 대시보드를 제공합니다. 또한 이 청사진은 Prometheus 내보내기 도구에서 측정항목을 수집하고 PromQL을 사용하여 전역적으로 데이터를 쿼리할 수 있게 해주는 Google Cloud Managed Service for Prometheus를 사용 설정합니다. PromQL은 Grafana 대시보드 및 PromQL 기반 알림과 같은 익숙한 도구를 사용할 수 있음을 의미합니다. Anthos Service Mesh는 Google Cloud 콘솔에서 서비스 간 및 테넌트 간 상호작용을 관찰하고 문제를 해결할 수 있는 대시보드를 제공하도록 사용 설정됩니다. 청사진에는 멀티 프로젝트 모니터링 측정항목 범위의 프로젝트도 포함됩니다.

위협 및 취약점 모니터링

Security Command Center는 청사진의 전반적인 보안 상태에 대한 유용한 정보를 제공합니다. Security Command Center 프리미엄 등급은 GKE의 활성 컨테이너 기반 워크로드에 대한 Container Threat Detection을 제공합니다. Web Security Scanner는 인터넷 연결 서비스의 취약점을 감지하는 데 사용됩니다. Web Security Scanner는 HTTP 서비스를 크롤링하고 기준 URL부터 시작하여 모든 링크를 따라 취약점을 감지합니다. 그러면 Web Security Scanner가 최대한 많은 사용자 입력과 이벤트 핸들러를 실행합니다.

다음 단계