Cloud Operations for GKE 지원 설치

Google Kubernetes Engine(GKE)에는 Cloud Monitoring 및 Cloud Logging과의 통합이 포함됩니다. 이 통합을 통해 실행 중인 GKE 클러스터를 모니터링하고, 시스템 및 디버그 로그를 관리하고, 고급 프로파일링 및 추적 기능을 사용하여 시스템 성능을 분석할 수 있습니다.

이 페이지에서는 다음 작업을 수행하는 방법을 설명합니다.

  • 새 클러스터를 만들고 GKE 또는 기존 Logging 및 Monitoring을 위한 클라우드 작업을 구성합니다.

  • 애플리케이션 로그 수집 여부를 선택합니다.

  • 클러스터에서 Cloud Monitoring 및 Cloud Logging을 사용 중지합니다.

Cloud Operations for GKE는 클러스터의 Cloud Monitoring 및 Cloud Logging 모두에 대한 지원을 개선할 수 있는 단일 옵션을 제공합니다. 기존 Logging 및 Monitoring을 사용하면 Logging 없이 Monitoring을 사용 설정할 수 있지만 이 옵션은 Cloud Operations for GKE에서 지원되지 않습니다.

시작하기 전에

  • 사용할 모니터링 및 로깅 옵션을 결정합니다.

  • 애플리케이션 로그 수집 여부를 결정합니다.

  • 클러스터가 포함된 프로젝트의 소유자인지 확인하세요. 프로젝트는 작업공간과 연결되어 있어야 합니다.

애플리케이션 로그 수집 제어

기본적으로 GKE는 클러스터에 배포된 워크로드의 로그를 수집합니다. 이 도구는 애플리케이션을 계측하는 강력한 도구입니다. 하지만 이 자동 컬렉션은 선호되지 않을 수 있습니다. GKE 버전 1.15.7부터 Cloud Operations for GKE에서 시스템 로그만 캡처하고 애플리케이션 로그는 수집하지 않도록 구성할 수 있습니다.

시스템 전용 옵션을 선택하면 다음 로그가 수집됩니다.

  • 네임스페이스 kube-system, istio-system, knative-serving, gke-system, config-management-system에서 실행되는 모든 Pod

  • docker/containerd 런타임, kubelet, kubelet-monitor, node-problem-detector, kube-container-runtime-monitor 등 컨테이너화되지 않은 키 서비스

  • VM 인스턴스 메타데이터 serial-port-logging-enable이 true로 설정된 경우 노드의 직렬 포트 출력

새 클러스터의 모니터링 및 로깅 지원 구성

새 GKE 클러스터를 만들 때 Cloud Operations for GKE의 대시보드는 기본적으로 사용 설정됩니다. 버전 1.14 또는 1.15를 사용하는 경우 기존 Logging 및 Monitoring 통합을 선택할 수 있습니다. 모든 클러스터 구성에서는 Google Cloud 운영 제품군을 모두 사용 중지할 수 있습니다.

이 섹션의 클러스터 만들기 안내에서는 Cloud Operations for GKE와 관련된 옵션만 다룹니다. GKE 클러스터 만들기에 대한 자세한 안내는 클러스터 만들기를 참조하세요.

CONSOLE

  1. 프로젝트의 GKE 클러스터 페이지로 이동합니다. 다음 버튼을 클릭하면 이 페이지로 이동합니다.

    Kubernetes 클러스터로 이동

  2. 클러스터 만들기를 클릭합니다.

  3. 클러스터의 마스터 버전을 선택합니다. 선택한 버전은 사용 가능한 Cloud Monitoring 및 Cloud Logging 옵션을 변경합니다.

  4. 탐색창의 클러스터에서 기능을 클릭합니다.

  5. Operations에서 클러스터의 로깅 및 모니터링 지원을 선택합니다.

    • 새 클러스터의 경우 Cloud Operations for GKE가 기본적으로 선택됩니다.

      • 마스터 버전이 1.15.7 이상인 경우 드롭다운 목록에서 다음 옵션 중 하나를 선택할 수 있습니다.

        • 시스템 및 워크로드 로깅 및 모니터링
        • 시스템 로깅 및 모니터링만(베타)
      • 마스터 버전이 1.14 또는 1.15인 경우 기존 Logging 및 Monitoring 지원을 사용 설정할 수 있습니다.

        1. 드롭다운 목록에서 기존 Logging 및 Monitoring을 선택합니다.
        2. 기존 Monitoring 서비스 사용 설정 또는 기존 Logging 서비스 사용 설정 또는 두 옵션을 모두 선택합니다.

          기존 Monitoring 및 기존 Logging은 개별적으로 사용 설정하거나 사용 중지할 수 있습니다.

    • Cloud Operations for GKE를 사용 중지하려면 Cloud Operations for GKE 사용설정 체크박스를 선택 취소합니다.

  6. 원하는 대로 클러스터를 구성합니다.

  7. 만들기를 클릭하여 클러스터를 만듭니다.

GCLOUD

gcloud를 사용하여 클러스터를 만들려면 다음 안내를 따르세요.

  1. Cloud SDK 및 gcloud가 설치된 터미널 창을 엽니다. 이를 위한 한 가지 방법은 Cloud Shell을 사용하는 것입니다.

  2. Cloud Console에서 Cloud Shell을 활성화합니다.

    Cloud Shell 활성화

    Cloud Console 하단에 Cloud Shell 세션이 시작되고 명령줄 프롬프트가 표시됩니다. Cloud Shell은 gcloud 명령줄 도구가 포함되고 Cloud SDK가 사전 설치된 셸 환경으로, 현재 프로젝트의 값이 이미 설정되어 있습니다. 세션이 초기화되는 데 몇 초 정도 걸릴 수 있습니다.

  3. 클러스터를 만들려면 다음 명령어를 실 행합니다. 새 클러스터의 경우 Cloud Operations for GKE가 기본적으로 사용 설정됩니다.

    gcloud container clusters create [CLUSTER_NAME] \
      --zone=[ZONE] \
      --project=[PROJECT_ID] \
      --cluster-version=[CLUSTER_VERSION]
    

    이전 표현식에서 [CLUSTER_NAME]은 클러스터 이름이고 [ZONE]은 클러스터의 컴퓨팅 영역이며 [PROJECT_ID]는 프로젝트 이름이 아니라 Google Cloud 프로젝트 ID입니다.

    [CLUSTER_VERSION]은 클러스터에 설치할 GKE 버전입니다. 설치할 특정 패치 출시 버전을 입력할 수 있습니다(예: 1.16.13-gke.401). 그렇지 않으면 설치할 부 버전(예: 1.16)을 입력하면 클러스터가 최신 패치 버전으로 생성됩니다. GKE 버전 관리에 대한 자세한 내용은 버전 관리 및 업그레이드를 참조하세요.

  4. 또는 버전 1.14 또는 1.15가 있는 GKE 클러스터의 기존 Logging 및 Monitoring을 선택하려면 클러스터를 만들고 create 명령어에 --enable-cloud-logging 및/또는 --enable-cloud-monitoring 옵션을 포함합니다. 예를 들어 간단한 클러스터 만들기는 다음과 같습니다.

        gcloud container clusters create [CLUSTER_NAME] \
          --zone=[ZONE] \
          --project=[PROJECT_ID] \
          --cluster-version=[CLUSTER_VERSION] \
          --enable-cloud-logging \
          --enable-cloud-monitoring
    
    
    
    1. 또는 --no-enable-stackdriver-kubernetes 플래그를 create 명령어에 추가하여 Cloud Operations for GKE를 사용 설정하지 않고 클러스터를 만들 수 있습니다. 예를 들면 다음과 같습니다.

      gcloud container clusters create [CLUSTER_NAME] \
        --zone=[ZONE] \
        --project=[PROJECT_ID] \
        --cluster-version=[CLUSTER_VERSION] \
        --no-enable-stackdriver-kubernetes
      

기존 클러스터에 대한 모니터링 및 로깅 지원 구성

다음 섹션에서는 기존 GKE 클러스터의 모니터링 및 로깅 통합을 수정하는 방법을 자세히 설명합니다.

클러스터에서 사용하는 모니터링 및 로깅 지원 기능은 무엇인가요?

클러스터에서 사용 중인 모니터링 및 로깅 지원을 확인하려면 다음 단계를 완료합니다.

  1. Google Cloud Console에서 클러스터 이름을 클릭합니다.

    Kubernetes 클러스터로 이동

  2. 클러스트에 대한 세부정보 패널에서 Cloud Operations for GKE, 기존 모니터링기존 Logging의 상태를 확인합니다.

    클러스터 세부정보 화면

클러스터 수정

기존 클러스터의 모니터링 및 로깅 구성을 변경하려면 다음 안내를 따르세요.

CONSOLE

  1. 프로젝트의 GKE Kubernetes 클러스터 페이지로 이동합니다.

    Kubernetes 클러스터로 이동

  2. 클러스터를 버전 1.12.7 이상으로 업그레이드합니다. 자세한 내용은 클러스터 업그레이드를 참조하세요. 업그레이드를 완료하도록 허용합니다.

  3. 클러스터의 수정 을 클릭합니다.

    GKE 클러스터를 수정합니다.

  4. 클러스터에 적합한 통합 옵션을 선택합니다.

    • Cloud Operations for GKE로 변경하려면 Cloud Operations for GKE 드롭다운 메뉴에서 시스템 및 워크로드 로깅 및 모니터링을 선택합니다.

      Cloud Operations for GKE 지원을 선택합니다.

    • 시스템 로그만으로 Cloud Operations for GKE를 변경하려면 다음 안내를 따르세요.Cloud Operations for GKE 드롭다운 메뉴에서시스템 로깅 및 모니터링만 (베타) 을 엽니다.

      Cloud Operations for GKE 지원을 선택합니다.

    • 기존 Logging 및 Monitoring 지원(GKE 버전 1.14 이하)으로 변경하려면 다음 안내를 따르세요.

      1. Cloud Operations for GKE 드롭다운 메뉴에서 기존 Logging 및 Monitoring을 선택합니다.

      2. 기존 Logging 드롭다운 메뉴에서 사용 설정을 선택합니다.

      3. 기존 Monitoring 드롭다운 메뉴에서 사용 설정을 선택합니다.

        기존 Logging 및 Monitoring 지원을 선택합니다.

    • Google Cloud 운영 제품군 통합을 완전히 사용 중지하려면 Cloud Operations for GKE 드롭다운 메뉴에서 사용 중지를 선택합니다.

  5. 저장을 클릭합니다.

GCLOUD

다음 gcloud 안내는 gcloud container clusters update 명령어를 사용하여 클러스터 모니터링 및 로깅 지원을 업그레이드하는 방법을 다룹니다. 이 프로세스를 '업그레이드'라고 부르기도 하지만 upgrade 명령어가 아니라 update 명령어를 사용합니다.

  1. Cloud SDK 및 gcloud가 설치된 터미널 창을 엽니다. 이를 위한 한 가지 방법은 Cloud Shell을 사용하는 것입니다.

  2. Cloud Console에서 Cloud Shell을 활성화합니다.

    Cloud Shell 활성화

    Cloud Console 하단에 Cloud Shell 세션이 시작되고 명령줄 프롬프트가 표시됩니다. Cloud Shell은 gcloud 명령줄 도구가 포함되고 Cloud SDK가 사전 설치된 셸 환경으로, 현재 프로젝트의 값이 이미 설정되어 있습니다. 세션이 초기화되는 데 몇 초 정도 걸릴 수 있습니다.

  3. 기본값을 아직 설정하지 않은 경우 Cloud SDK에서 클러스터의 기본값을 설정합니다.

    gcloud config set project [PROJECT_ID]
    
  4. Cloud Operations for GKE를 사용 설정하려면 --enable-stackdriver-kubernetes 플래그와 함께 update 명령어를 실행합니다.

    gcloud container clusters update [CLUSTER_NAME] \
      --zone=[ZONE]  \
      --enable-stackdriver-kubernetes
      
  5. 기존 Logging 및 Monitoring을 사용 설정하려면 --logging-service logging.googleapis.com 또는 --monitoring-service monitoring.googleapis.com 플래그와 함께 update 명령어를 실행합니다. 여기에 표시된 예시는 Google Cloud 운영 제품군에 필요한 옵션만 보여줍니다.

    gcloud container clusters update [CLUSTER_NAME] \
      --zone=[ZONE]  \
      --logging-service logging.googleapis.com \
      --monitoring-service monitoring.googleapis.com
      

  6. 또는 Cloud Operations for GKE 또는 기존 Logging 및 Monitoring을 삭제하기 위해 update 명령어를 실행하고 --logging-service--monitoring-service 플래그를 none으로 설정합니다.

    gcloud container clusters update [CLUSTER_NAME] \
      --zone=[ZONE]  \
      --logging-service none \
      --monitoring-service none

다음 단계

  • 가격 책정 페이지를 참조하여 Cloud Logging과 관련된 비용에 대해 알아보세요.

  • Kubernetes에서 자주 사용되는 모니터링 도구인 Prometheus 사용법에 대해 자세히 알아보세요.

  • 기존 Logging 및 Monitoring을 사용하는 경우 Cloud Operations for GKE로 마이그레이션을 참조하여 Cloud Operations for GKE의 변경사항을 숙지하세요.