Redis 워크로드용 에이전트 설정

이 문서에서는 Compute Engine 인스턴스에 컴퓨팅 워크로드용 에이전트를 설치하고 해당 컴퓨팅 인스턴스에서 실행되는 Redis 워크로드와 연결하도록 에이전트를 구성하는 방법을 보여줍니다.

에이전트를 설치하고 구성하면 Redis 워크로드와 기본 컴퓨팅 인스턴스에서 측정항목을 수집하여 워크로드 관리자로 전송합니다. 그런 다음 워크로드 관리자 평가를 사용하여 인프라, 운영체제, 워크로드 구성에 관한 권장사항과의 편차를 Redis 워크로드에서 스캔할 수 있습니다.

시작하기 전에

컴퓨팅 워크로드용 에이전트를 설치하고 구성하기 전에 다음 기본 요건을 충족해야 합니다.

에이전트에 필요한 IAM 역할

컴퓨팅 워크로드용 에이전트는 인증을 위해 컴퓨팅 인스턴스에 연결된 서비스 계정을 사용하고 Google Cloud 리소스에 액세스합니다.

보안을 강화하려면 Compute Engine 기본 서비스 계정을 사용하는 대신 단일 용도 서비스 계정을 사용하는 것이 좋습니다.

서비스 계정에 Compute 워크로드용 에이전트가Google Cloud 로 인증하고 Google Cloud 리소스에 액세스할 수 있도록 하는 데 필요한 권한이 있는지 확인하려면 관리자에게 서비스 계정에 프로젝트에 대한 다음 IAM 역할을 부여해 달라고 요청하세요.

역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

관리자는 커스텀 역할이나 다른 사전 정의된 역할을 통해 서비스 계정에 필요한 권한을 부여할 수도 있습니다.

Cloud API 액세스 사용 설정

Compute Engine은 모든 Cloud API에 대한 모든 액세스 범위를 허용하도록 인스턴스를 구성하고, 인스턴스 서비스 계정의 IAM 권한만 사용하여Google Cloud 리소스에 대한 액세스를 제어할 것을 권장합니다. 자세한 내용은 사용자 관리형 서비스 계정을 사용하는 VM 만들기를 참조하세요.

Cloud API에 대한 액세스를 제한하는 경우 컴퓨팅 워크로드용 에이전트에는 호스트 컴퓨팅 인스턴스에 최소한 다음과 같은 Cloud API 액세스 범위가 필요합니다.

https://www.googleapis.com/auth/cloud-platform

자세한 내용은 범위 권장사항을 참고하세요.

외부 IP 주소가 없는 컴퓨팅 인스턴스에서 Redis 워크로드를 실행하는 경우 컴퓨팅 워크로드용 에이전트가 Google API 및 서비스에 액세스할 수 있도록 인스턴스의 서브넷에서 비공개 Google 액세스를 사용 설정해야 합니다. 비공개 Google 액세스를 사용 설정하는 방법은 비공개 Google 액세스 구성을 참고하세요.

패키지 관리자를 사용하여 에이전트 설치 및 구성

이 섹션에서는 패키지 관리자를 사용하여 컴퓨팅 인스턴스에 Compute 워크로드용 에이전트를 설치하고 Redis 인스턴스에 연결하도록 구성하는 방법을 보여줍니다.

컴퓨팅 워크로드용 에이전트를 설치하려면 다음 단계를 완료하세요.

RHEL

Red Hat Enterprise Linux (RHEL)에서는 yum 패키지 관리 명령어를 사용하여 컴퓨팅 워크로드용 에이전트를 설치합니다. 이 명령어는 다음 작업을 완료합니다.

  • 최신 버전의 에이전트를 다운로드합니다.
  • google-cloud-workload-agent이라는 에이전트의 systemd 서비스를 만듭니다.
  • google-cloud-workload-agent 서비스를 사용 설정하고 시작합니다.

RHEL 기반 컴퓨팅 인스턴스에 컴퓨팅 워크로드용 에이전트를 설치하고 구성하려면 다음 단계를 완료하세요.

  1. 컴퓨팅 인스턴스와 SSH 연결을 설정합니다.

  2. 터미널에서 에이전트를 설치합니다.

    sudo tee /etc/yum.repos.d/google-cloud-workload-agent.repo << EOM
    [google-cloud-workload-agent]
    name=Google Cloud Agent for Compute Workloads
    baseurl=https://packages.cloud.google.com/yum/repos/google-cloud-workload-agent-$basearch
    enabled=1
    gpgcheck=0
    repo_gpgcheck=1
    gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
    EOM
    sudo yum install google-cloud-workload-agent
    
  3. 에이전트의 구성 파일을 엽니다.

    /etc/google-cloud-workload-agent/configuration.json
    
  4. 구성 매개변수에 설명된 대로 모든 필수 매개변수의 값을 지정합니다.

  5. 구성 파일 저장

  6. 변경사항이 적용되도록 에이전트를 다시 시작합니다.

SLES

SUSE Linux Enterprise Server (SLES)에서는 zypper 패키지 관리 명령어를 사용하여 컴퓨팅 워크로드용 에이전트를 설치합니다. 이 명령어는 다음 작업을 완료합니다.

  • 최신 버전의 에이전트를 다운로드합니다.
  • google-cloud-workload-agent이라는 에이전트의 systemd 서비스를 만듭니다.
  • google-cloud-workload-agent 서비스를 사용 설정하고 시작합니다.

SLES 기반 컴퓨팅 인스턴스에 컴퓨팅 워크로드용 에이전트를 설치하고 구성하려면 다음 단계를 완료하세요.

  1. 컴퓨팅 인스턴스와 SSH 연결을 설정합니다.

  2. 터미널에서 에이전트를 설치합니다.

    sudo zypper addrepo --refresh https://packages.cloud.google.com/yum/repos/google-cloud-workload-agent-$basearch
    google-cloud-workload-agent
    sudo zypper install google-cloud-workload-agent
    
  3. 에이전트의 구성 파일을 엽니다.

    /etc/google-cloud-workload-agent/configuration.json
    
  4. 구성 매개변수에 설명된 대로 모든 필수 매개변수의 값을 지정합니다.

  5. 구성 파일 저장

  6. 변경사항이 적용되도록 에이전트를 다시 시작합니다.

Debian

Debian에서는 apt 패키지 관리 명령어를 사용하여 컴퓨팅 워크로드용 에이전트를 설치합니다. 이 명령어는 다음 작업을 완료합니다.

  • 최신 버전의 에이전트를 다운로드합니다.
  • google-cloud-workload-agent이라는 에이전트의 systemd 서비스를 만듭니다.
  • google-cloud-workload-agent 서비스를 사용 설정하고 시작합니다.

Debian 기반 컴퓨팅 인스턴스에 컴퓨팅 워크로드용 에이전트를 설치하고 구성하려면 다음 단계를 완료하세요.

  1. 컴퓨팅 인스턴스와 SSH 연결을 설정합니다.

  2. 터미널에서 에이전트를 설치합니다.

    echo 'deb https://packages.cloud.google.com/apt google-cloud-workload-agent-x86-64-apt main' | sudo tee -a /etc/apt/sources.list.d/google-cloud-workload-agent.list
    sudo apt-get update
    sudo apt-get install google-cloud-workload-agent
    
  3. 에이전트의 구성 파일을 엽니다.

    /etc/google-cloud-workload-agent/configuration.json
    
  4. 구성 매개변수에 설명된 대로 모든 필수 매개변수의 값을 지정합니다.

  5. 구성 파일 저장

  6. 변경사항이 적용되도록 에이전트를 다시 시작합니다.

Windows

Windows에서는 googet 패키지 관리 명령어를 사용하여 컴퓨팅 워크로드용 에이전트를 설치합니다. 이 명령어는 다음 작업을 완료합니다.

  • 최신 버전의 에이전트를 다운로드합니다.
  • google-cloud-workload-agent라는 Windows 서비스를 만듭니다.
  • 1분마다 실행되는 예약 태스크를 만들어 서비스가 실행 중인지 확인하고 필요한 경우 서비스를 다시 시작합니다.

Windows 기반 컴퓨팅 인스턴스에 컴퓨팅 워크로드용 에이전트를 설치하고 구성하려면 다음 단계를 완료하세요.

  1. RDP를 사용하여 컴퓨팅 인스턴스와 연결합니다.

    이 작업을 실행하는 방법은 RDP를 사용하여 Windows VM에 연결을 참고하세요.

  2. 관리자 권한으로 PowerShell에서 다음 명령어를 실행합니다.

    googet addrepo google-cloud-workload-agent  https://packages.cloud.google.com/yuck/repos/google-cloud-workload-agent-windows-x86_64
    googet install google-cloud-workload-agent
    
  3. 에이전트의 구성 파일을 엽니다.

    %ProgramFiles%\Google\google-cloud-workload-agent\conf\configuration.json
    
  4. 구성 매개변수에 설명된 대로 모든 필수 매개변수의 값을 지정합니다.

  5. 구성 파일 저장

  6. 변경사항이 적용되도록 에이전트를 다시 시작합니다.

VM 확장 프로그램 관리자를 사용하여 VM Fleet에 에이전트 설치 및 관리

이 섹션에서는 VM 확장 프로그램 관리자를 사용하여 VM Fleet에 컴퓨팅 워크로드용 에이전트를 설치하고 관리하는 방법을 보여줍니다.

VM 확장 프로그램 관리자 정책을 사용하면 다음과 같은 작업을 실행할 수 있습니다.

  • 전체 설치: 다음 항목에 컴퓨팅 워크로드용 에이전트를 설치합니다.
    • Google Cloud 프로젝트의 모든 VM 또는 라벨로 식별된 VM의 하위 집합입니다.
    • 영역 내의 모든 VM 또는 라벨로 식별된 VM의 하위 집합
  • 구성 관리: 정책으로 관리되는 모든 VM의 에이전트에 맞춤 구성을 적용합니다.

VM 확장 프로그램 관리자에 대한 자세한 내용은 VM 확장 프로그램 관리자 정보를 참고하세요.

VM 확장 프로그램 관리자 설정

VM 확장 프로그램 관리자를 설정하려면 다음 단계를 완료하세요.

VM Fleet에 에이전트 설치 및 구성

VM 확장 프로그램 관리자 정책을 사용하여 VM에 Compute 워크로드용 에이전트의 최신 버전을 설치하려면 해당 섹션을 참고하세요.

Google Cloud 프로젝트 내 VM에 에이전트 설치 및 구성

VM 확장 프로그램 관리자 정책을 사용하여 Google Cloud 프로젝트의 모든 VM 또는 라벨로 식별된 VM의 하위 집합에 에이전트를 설치하려면 다음 단계를 완료하세요.

콘솔

  1. Google Cloud 콘솔에서 VM 확장 프로그램 정책 페이지로 이동합니다.

    VM 확장 프로그램 정책으로 이동

  2. 확장 프로그램 정책 만들기를 클릭합니다.

  3. 이름 필드에 정책 이름을 입력합니다.

  4. 선택사항: 설명 필드에 정책에 대한 설명을 입력합니다.

  5. 우선순위 필드에서 정책 간 충돌을 해결할 우선순위 번호를 지정합니다. 숫자가 낮을수록 우선순위가 높습니다. 기본값은 1000입니다.

  6. 범위 섹션에서 전역 출시를 선택합니다.

  7. 확장 프로그램 관리 섹션에서 확장 프로그램 추가를 클릭한 후 다음을 수행합니다.

    1. 확장 프로그램 목록에서 Google Cloud의 컴퓨팅 워크로드용 확장 프로그램을 선택합니다.
    2. 버전 필드는 비워둡니다.

      이렇게 하면 정책에서 컴퓨팅 워크로드용 에이전트의 최신 버전을 설치하도록 지시합니다.

    3. 구성 파일 콘텐츠 필드에 에이전트에 적용할 구성을 입력합니다.

      Redis 워크로드용 에이전트에서 지원하는 구성 매개변수에 대한 자세한 내용은 구성 매개변수를 참고하세요.

    4. 완료를 클릭합니다.

    5. 출시 필드에서 사용할 출시 계획 옵션(점진적 출시(권장) 또는 빠른 출시)을 선택합니다.

      출시 계획에 대한 자세한 내용은 출시 계획 정보를 참고하세요.

  8. 선택사항: 정책 출시를 필요한 VM으로 제한하려면 다음 단계를 따르세요.

    1. 라벨 추가를 클릭하고 필요한 VM을 식별하는 라벨을 포함합니다.
    2. 완료를 클릭합니다.
  9. 만들기를 클릭합니다.

gcloud

터미널 또는 Cloud Shell에서 gcloud compute global-vm-extension-policies create 명령어를 실행합니다.

gcloud compute global-vm-extension-policies create POLICY_NAME \
    --project=PROJECT_ID \
    --extensions=google-cloud-workload-extension  \
    --rollout-predefined-plan=ROLL_OUT_SPEED \
    [--description="<var>DESCRIPTION</var>" \]
    [--inclusion-labels=KEY1=VALUE1,KEY2=VALUE2 \]
    [--config-from-file=google-cloud-workload-extension="CONFIG_FILE_PATH" \]
    [--priority=PRIORITY]

다음을 바꿉니다.

  • POLICY_NAME: VM 확장 프로그램 정책의 고유한 이름입니다.
  • PROJECT_ID: 정책을 만들려는Google Cloud 프로젝트의 프로젝트 ID
  • ROLL_OUT_SPEED: 정책을 얼마나 빨리 출시할지 지원되는 값은 slow_rollout (권장) 및 fast_rollout입니다. 자세한 내용은 출시 계획 정보를 참고하세요.

  • 또는 --rollout-custom-plan 옵션을 지정하여 맞춤 출시 계획을 사용할 수 있습니다. 자세한 내용은 출시 계획 정보를 참고하세요.

  • --rollout-predefined-plan 또는 --rollout-custom-plan 중 하나를 사용할 수 있지만 동일한 명령어에서 둘 다 사용할 수는 없습니다.

  • DESCRIPTION: 정책에 대한 설명입니다(선택사항).

  • CONFIG_FILE_PATH: 컴퓨팅 워크로드용 에이전트의 구성이 포함된 JSON 파일의 로컬 경로입니다.

    • 또는 구성을 인라인 문자열로 제공하려면 --config-from-file 대신 --config 플래그를 사용하세요. 예를 들면 --config=google-cloud-workload-extension="CONFIG"입니다.
    • --config-from-file 또는 --config 중 하나를 사용할 수 있지만 동일한 명령어에서 둘 다 사용할 수는 없습니다.
    • 에이전트에서 지원하는 구성 매개변수에 대한 자세한 내용은 구성 매개변수를 참고하세요.
  • KEY_1=VALUE_1: 정책이 VM을 타겟팅하는 데 사용하는 라벨을 정의하는 쉼표로 구분된 키-값 쌍 목록입니다.

    • VM이 정책의 타겟이 되려면 VM에 지정된 라벨이 모두 있어야 합니다.
    • --inclusion-labels를 여러 번 지정하면 정책은 제공된 선택기 중 하나라도 일치하는 VM을 타겟팅합니다 (논리 OR). 이 플래그를 생략하면 정책은 프로젝트의 모든 VM을 타겟팅합니다.
  • PRIORITY: 정책의 우선순위를 정의하는 0~65535 범위의 정수입니다. 숫자가 낮을수록 우선순위가 높습니다. 기본값은 1000입니다. 자세한 내용은 정책 우선순위 및 충돌 해결을 참고하세요.

특정 영역 내 VM에 에이전트 설치 및 구성

VM 확장 프로그램 관리자 정책을 사용하여 특정 영역 내 VM Fleet에 최신 버전의 컴퓨팅 워크로드용 에이전트를 설치하고 구성하려면 다음 단계를 완료하세요.

콘솔

  1. Google Cloud 콘솔에서 VM 확장 프로그램 정책 페이지로 이동합니다.

    VM 확장 프로그램 정책으로 이동

  2. 확장 프로그램 정책 만들기를 클릭합니다.

  3. 이름 필드에 정책 이름을 입력합니다.

  4. 선택사항: 설명 필드에 정책에 대한 설명을 입력합니다.

  5. 우선순위 필드에서 정책 간 충돌을 해결할 우선순위 번호를 지정합니다. 숫자가 낮을수록 우선순위가 높습니다. 기본값은 1000입니다.

  6. 리전 및 영역 목록에서 이 정책을 적용할 영역을 선택합니다.

  7. 확장 프로그램 관리 섹션에서 확장 프로그램 추가를 클릭한 후 다음을 수행합니다.

    1. 확장 프로그램 목록에서 Google Cloud의 컴퓨팅 워크로드용 확장 프로그램을 선택합니다.
    2. 버전 필드는 비워둡니다.

      이렇게 하면 정책에서 컴퓨팅 워크로드용 에이전트의 최신 버전을 설치하도록 지시합니다.

    3. 구성 파일 콘텐츠 필드에 에이전트에 적용할 구성을 입력합니다.

      Redis 워크로드용 에이전트에서 지원하는 구성 매개변수에 대한 자세한 내용은 구성 매개변수를 참고하세요.

    4. 완료를 클릭합니다.

  8. 선택사항: 정책 출시를 필요한 VM으로 제한하려면 다음 단계를 따르세요.

    1. 라벨 추가를 클릭하고 필요한 VM을 식별하는 라벨을 포함합니다.
    2. 완료를 클릭합니다.
  9. 만들기를 클릭합니다.

gcloud

gcloud compute zone-vm-extension-policies create POLICY_NAME \
    --zone=ZONE \
    --extensions=google-cloud-workload-extension \
    --config-from-file=google-cloud-workload-extension=CONFIG_FILE_PATH \
    [--description="DESCRIPTION" \]
    [--inclusion-labels=KEY_1=VALUE_1 \]
    [--inclusion-labels=KEY_2=VALUE_2,KEY_3=VALUE_3 \]
    [--priority=PRIORITY]

다음을 바꿉니다.

  • POLICY_NAME: VM 확장 프로그램 정책의 이름입니다.

    지정된 이름의 정책이 영역에 이미 있는 경우 명령어는 실패합니다.

  • ZONE: 이 정책을 적용할 영역입니다.

  • CONFIG_FILE_PATH: 컴퓨팅 워크로드용 에이전트가 Redis 워크로드에 연결하는 데 필요한 구성이 포함된 JSON 파일의 로컬 경로입니다.

    • 또는 구성을 인라인 문자열로 제공하려면 --config-from-file 대신 --config 플래그를 사용하세요. 예를 들면 --config=google-cloud-workload-extension="CONFIG"입니다. Google Cloud 에서는 --config-from-file을 사용할 것을 권장합니다.
    • --config-from-file 또는 --config 중 하나를 사용할 수 있지만 동일한 명령어에서 둘 다 사용할 수는 없습니다.
    • Redis 워크로드용 에이전트에서 지원하는 구성 매개변수에 대한 자세한 내용은 구성 매개변수를 참고하세요.
  • DESCRIPTION: 정책에 대한 설명입니다(선택사항).

  • KEY_1=VALUE_1: 정책이 VM을 타겟팅하는 데 사용하는 라벨을 정의하는 쉼표로 구분된 키-값 쌍 목록입니다.

    • VM이 정책의 타겟이 되려면 VM에 지정된 라벨이 모두 있어야 합니다.
    • --inclusion-labels를 여러 번 지정하면 정책은 제공된 선택기 중 하나라도 일치하는 VM을 타겟팅합니다 (논리 OR). 이 플래그를 생략하면 정책은 지정된 영역의 모든 VM을 타겟팅합니다.
  • PRIORITY: 정책의 우선순위를 정의하는 0~65535 범위의 정수입니다. 숫자가 낮을수록 우선순위가 높습니다. 기본값은 1000입니다.

예:

다음 명령어는 test-project라는Google Cloud 프로젝트에 test-agent-policy라는 정책을 만듭니다. 이 정책은 us-centrail-f 영역에 배포된 모든 VM에 컴퓨팅 워크로드용 에이전트의 최신 버전을 설치합니다. agent-config.json에 지정된 구성이 에이전트에 적용됩니다.

gcloud compute zone-vm-extension-policies create test-agent-policy  \
    --project=test-project \
    --zone=us-central1-f \
    --extensions=google-cloud-workload-extension \
    --config-file-path=google-cloud-workload-extension="/usr/agent-config.json"

VM Fleet에서 에이전트 관리

VM 확장 프로그램 관리자 정책에서 컴퓨팅 워크로드용 에이전트를 관리하는 방식을 변경하려면 정책을 업데이트하세요. 정책을 업데이트하면 VM 확장 프로그램 관리자가 일반적으로 1분 이내에 적용 가능한 모든 VM에 변경사항을 출시합니다. 포함 라벨을 수정하면 VM이 업데이트된 라벨과 일치하는지에 따라 컴퓨팅 워크로드용 에이전트가 새 VM에 설치되거나 기존 VM에서 제거될 수 있습니다.

다음 섹션에서는 컴퓨팅 워크로드용 에이전트를 관리하여 다음 작업을 수행하는 방법을 보여줍니다.

VM Fleet에서 에이전트 구성 수정

VM 확장 프로그램 관리자 정책을 사용하여 VM Fleet에 설치한 컴퓨팅 워크로드용 에이전트 인스턴스의 구성을 수정하려면 해당 정책을 수정해야 합니다.

VM Fleet에서 에이전트 구성을 수정하려면 다음 단계를 완료하세요.

콘솔

  1. Google Cloud 콘솔에서 VM 확장 프로그램 정책 페이지로 이동합니다.

    VM 확장 프로그램 정책으로 이동

  2. 수정할 정책을 클릭합니다.

  3. 확장 프로그램 정책 세부정보 페이지에서 수정을 클릭합니다.

  4. 확장 프로그램 관리 섹션에서 컴퓨팅 워크로드용 Google Cloud 확장 프로그램을 전환합니다.

  5. 구성 파일 콘텐츠 필드에 에이전트에 적용할 구성을 입력합니다.

    에이전트에서 지원하는 구성 매개변수에 대한 자세한 내용은 구성 매개변수를 참고하세요.

  6. 완료를 클릭합니다.

  7. 저장을 클릭합니다.

gcloud

VM Fleet에서 컴퓨팅 워크로드용 에이전트의 구성을 수정하려면 gcloud compute zone-vm-extension-policies update 명령어를 실행합니다. gcloud를 사용하여 정책을 업데이트하면 요청이 완전한 대체 역할을 합니다. 생략한 선택적 필드는 수정된 정책의 기존 값을 유지하는 대신 기본값으로 되돌아갑니다.

에이전트 구성을 수정하려면 다음 단계를 따르세요.

gcloud compute zone-vm-extension-policies update POLICY_NAME \
    --zone=ZONE \
    --extensions=google-cloud-workload-extension \
    --config-from-file=google-cloud-workload-extension="CONFIG_FILE_PATH" \
    [--inclusion-labels=KEY_1=VALUE_1 \]
    [--inclusion-labels=KEY_2=VALUE_2,KEY_3=VALUE_3 \]
    [--priority=PRIORITY_NUMBER \]
    [--description="DESCRIPTION"]

다음을 바꿉니다.

  • POLICY_NAME: 수정하려는 VM 확장 프로그램 정책의 이름입니다.
  • ZONE: 정책이 적용되는 Google Cloud 영역입니다.
  • CONFIG_FILE_PATH: 컴퓨팅 워크로드용 에이전트의 구성이 포함된 JSON 파일의 로컬 경로입니다.

    • --config-from-file 대신 --config 플래그를 사용하여 에이전트 구성을 인라인 문자열로 제공할 수도 있습니다. 예를 들면 --config=google-cloud-workload-extension="CONFIG"입니다. Google Cloud 에서는 --config-from-file을 사용할 것을 권장합니다.
    • --config-from-file 또는 --config 중 하나를 사용할 수 있지만 동일한 명령어에서 둘 다 사용할 수는 없습니다.
    • 에이전트에서 지원하는 구성 매개변수에 대한 자세한 내용은 구성 매개변수를 참고하세요.
  • KEY_1=VALUE_1: 정책이 VM을 타겟팅하는 데 사용하는 라벨을 정의하는 쉼표로 구분된 키-값 쌍 목록입니다.

    • VM이 정책의 타겟이 되려면 VM에 지정된 라벨이 모두 있어야 합니다.
    • --inclusion-labels를 여러 번 지정하면 정책은 제공된 선택기 중 하나라도 일치하는 VM을 타겟팅합니다 (논리 OR). 이 플래그를 생략하면 정책은 지정된 영역의 모든 VM을 타겟팅합니다.
  • PRIORITY_NUMBER: 정책에 설정할 우선순위입니다. 0~65535 사이의 정수를 지정할 수 있습니다.

  • DESCRIPTION: VM 확장 프로그램 정책에 대한 설명입니다.

새 영역을 포함하도록 전역 정책 업데이트

글로벌 정책을 만들고 출시한 후 새 영역에 VM을 만들면 VM 확장 프로그램 관리자가 새 영역의 VM에 정책을 자동으로 적용하지 않습니다. 새 영역에 VM을 포함하려면 전역 정책 출시를 다시 시작해야 합니다.

전역 정책 출시를 다시 시작하려면 다음 단계를 완료하세요.

  • 터미널 또는 Cloud Shell에서 gcloud compute global-vm-extension-policies update 명령어를 실행하고 다음과 같이 --rollout-entry-uuid 옵션을 제공합니다.

    gcloud compute global-vm-extension-policies update POLICY_NAME \
        --project=PROJECT_ID \
        --extensions=google-cloud-workload-extension  \
        --rollout-predefined-plan=ROLL_OUT_SPEED \
        --config-from-file=google-cloud-workload-extension="CONFIG_FILE_PATH" \
        --rollout-retry-uuid=UUID
    

    다음을 바꿉니다.

    • UUID: 재시도 요청을 식별하는 범용 고유 식별자 (UUID)입니다. UUID 생성기를 사용하여 만들 수 있습니다. 자세한 내용은 출시 재시도를 참고하세요.
    • ROLL_OUT_SPEED: 정책을 얼마나 빨리 출시할지 지원되는 값은 slow_rollout (권장) 및 fast_rollout입니다. 자세한 내용은 출시 계획 정보를 참고하세요.

    • 또는 --rollout-custom-plan 옵션을 지정하여 맞춤 출시 계획을 사용할 수 있습니다. 자세한 내용은 출시 계획 정보를 참고하세요.

    • --rollout-predefined-plan 또는 --rollout-custom-plan 중 하나를 사용할 수 있지만 동일한 명령어에서 둘 다 사용할 수는 없습니다.

영역을 제외하도록 전역 정책 업데이트

영역을 제외하도록 전역 정책을 업데이트하려면 다음 단계를 완료하세요.

  • 터미널 또는 Cloud Shell에서 gcloud compute global-vm-extension-policies update 명령어를 실행하고 정책을 적용할 영역을 지정하는 맞춤 출시 계획을 제공합니다.

    gcloud compute global-vm-extension-policies update POLICY_NAME \
        --project=PROJECT_ID \
        --extensions=google-cloud-workload-extension  \
        --rollout-custom-plan=projects/PROJECT_ID/locations/global/rolloutPlans/NEW_CUSTOM_PLAN_NAME \
        --rollout-retry-uuid=UUID
    

    다음을 바꿉니다.

    • NEW_CUSTOM_PLAN_NAME: 정책을 적용할 영역을 식별하는 새 맞춤 출시 계획의 이름입니다. 맞춤 출시 계획을 만드는 방법에 대한 자세한 내용은 출시 계획 정보를 참고하세요.
    • UUID: 재시도 요청을 식별하는 범용 고유 식별자 (UUID)입니다. UUID 생성기를 사용하여 만들 수 있습니다. 자세한 내용은 출시 재시도를 참고하세요.

VM Fleet에서 에이전트 제거

VM 플릿에서 Compute 워크로드용 에이전트를 제거하려면 VM 플릿을 관리하는 VM 확장 프로그램 관리자 정책을 삭제해야 합니다.

정책을 삭제하는 동안 우선순위가 낮은 다른 활성 정책이 VM에 적용되고 컴퓨팅 워크로드용 에이전트를 선언하면 우선순위가 낮은 정책에 따라 에이전트가 해당 VM에 설치된 상태로 유지됩니다.

VM 확장 프로그램 관리자는 정책 삭제 후 1분 이내에 액세스 가능한 모든 VM에서 에이전트를 삭제합니다. 게스트 에이전트가 삭제되거나 VM이 삭제되어 VM에 액세스할 수 없는 경우 VM 확장 프로그램 관리자는 Compute 워크로드용 에이전트 삭제를 건너뜁니다. 이러한 VM을 다시 사용할 수 있게 되면 VM 확장 프로그램 관리자가 해당 시점에 컴퓨팅 워크로드용 에이전트를 삭제합니다.

VM Fleet에서 컴퓨팅 워크로드용 에이전트를 제거하려면 다음 단계를 완료하세요.

콘솔

  1. Google Cloud 콘솔에서 VM 확장 프로그램 정책 페이지로 이동합니다.

    VM 확장 프로그램 정책으로 이동

  2. VM Fleet에서 컴퓨팅 워크로드용 에이전트를 관리하는 정책을 클릭합니다.

  3. 확장 프로그램 정책 세부정보 페이지에서 삭제를 클릭하고 삭제를 확인합니다.

gcloud

gcloud compute zone-vm-extension-policies delete POLICY_NAME \
    --project=PROJECT_ID \
    --zone=ZONE

다음을 바꿉니다.

  • POLICY_NAME: 삭제하려는 VM 확장 프로그램 정책의 이름입니다.
  • PROJECT_ID: 정책이 있는 Google Cloud 프로젝트의 ID입니다.
  • ZONE: 정책이 있는 Google Cloud 영역

에이전트 설치 확인

에이전트가 예상대로 실행되는지 확인하려면 다음 단계를 완료하세요.

RHEL

  1. 컴퓨팅 인스턴스와 SSH 연결을 설정합니다.

  2. 에이전트 패키지의 상태를 확인합니다.

    systemctl status google-cloud-workload-agent
    

    에이전트 패키지가 예상대로 실행되면 출력에 active (running)가 포함됩니다. 예를 들면 다음과 같습니다.

    google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads
    Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled)
    Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago
    Main PID: 14412 (google_cloud_sq)
      Tasks: 7
    Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M)
    CGroup: /system.slice/google-cloud-workload-agent.service
            └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run

SLES

  1. 컴퓨팅 인스턴스와 SSH 연결을 설정합니다.

  2. 에이전트 패키지의 상태를 확인합니다.

    systemctl status google-cloud-workload-agent
    

    에이전트 패키지가 예상대로 실행되면 출력에 active (running)가 포함됩니다. 예를 들면 다음과 같습니다.

    google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads
    Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled)
    Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago
    Main PID: 14412 (google_cloud_sq)
      Tasks: 7
    Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M)
    CGroup: /system.slice/google-cloud-workload-agent.service
            └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run

Debian

  1. 컴퓨팅 인스턴스와 SSH 연결을 설정합니다.

  2. 에이전트 패키지의 상태를 확인합니다.

    systemctl status google-cloud-workload-agent
    

    에이전트 패키지가 예상대로 실행되면 출력에 active (running)가 포함됩니다. 예를 들면 다음과 같습니다.

    google-cloud-workload-agent.service - Google Cloud Agent for Compute Workloads
    Loaded: loaded (/usr/lib/systemd/system/google-cloud-workload-agent.service; enabled; vendor preset: disabled)
    Active: active (running) since Sun 2025-07-30 18:59:12 UTC; 10s ago
    Main PID: 14412 (google_cloud_sq)
      Tasks: 7
    Memory: 12.9M (max: 1.0G limit: 1.0G available: 1011.0M)
    CGroup: /system.slice/google-cloud-workload-agent.service
            └─ 14412 /usr/bin/google_cloud_sql_server_agent --action=run

Windows

  1. RDP를 사용하여 컴퓨팅 인스턴스와 연결합니다.

    이 작업을 실행하는 방법은 RDP를 사용하여 Windows VM에 연결을 참고하세요.

  2. 관리자 권한으로 PowerShell에서 다음 명령어를 실행합니다.

    $(Get-Service -Name 'google-cloud-workload-agent' -ErrorAction Ignore).Status
    

    에이전트가 예상대로 실행되면 상태가 Running으로 표시됩니다.

구성 파일 예시

다음은 컴퓨팅 워크로드용 에이전트가 Redis 인스턴스에 연결할 수 있도록 하는 구성의 예입니다. 인증에는 Redis 인스턴스가 실행되는 동일한 Google Cloud 프로젝트에 저장된 Secret Manager 보안 비밀이 사용됩니다.

{
  "log_level": "INFO",
  "common_discovery": {
    "collection_frequency": "10800s"
  },
  "redis_configuration": {
    "enabled": true,
    "connection_parameters": {
      "username": "db_user_name",
      "secret": {
        "secret_name": "db_pwd_secret_name",
        "project_id": ""
      },
      "host": "localhost",
      "port": 1433
    }
  }
}

구성 매개변수

다음 표에서는 Redis 워크로드 평가를 지원하는 컴퓨팅 워크로드용 에이전트의 구성 매개변수를 설명합니다.

매개변수
log_level

String

에이전트의 로깅 수준을 설정하려면 필수 값을 설정하세요. 사용 가능한 로그 수준은 다음과 같습니다.

  • DEBUG
  • INFO
  • WARNING
  • ERROR

기본 로그 수준은 INFO입니다. Cloud Customer Care에서 별도로 안내하지 않는 한 로깅 수준을 변경하지 마세요.

log_to_cloud

Boolean

에이전트 로그를 Cloud Logging으로 리디렉션하려면 true를 지정합니다. 기본값은 true입니다.

agent_properties.log_usage_metrics

Boolean

에이전트의 상태 측정항목 로깅을 사용 설정하려면 값을 true로 설정합니다. 기본값은 false입니다.

common_discovery.collection_frequency

Duration

에이전트의 워크로드 검색 서비스가 실행되는 빈도(초)를 지정합니다. 기본값은 10800s입니다.

이 매개변수의 값이 소문자 s로 끝나는지 확인합니다.

redis_configuration.enabled

Boolean

에이전트가 Redis 인스턴스에서 측정항목을 수집하도록 하려면 값을 true으로 설정합니다. 기본값은 false입니다.

redis_configuration.connection_parameters.username

String

에이전트가 Redis 인스턴스를 쿼리하는 데 사용할 사용자 계정을 지정합니다.

redis_configuration.connection_parameters.password

String

에이전트가 Redis 인스턴스를 쿼리하는 데 사용하는 사용자 계정의 일반 텍스트 비밀번호를 지정합니다.

일반 텍스트 비밀번호를 지정하는 대신 secret.name 및 secret.project_id 매개변수를 사용하는 것이 좋습니다.

인증의 경우 에이전트는 다음과 같은 우선순위를 사용합니다. 지정된 경우 secret 매개변수 집합이 password 매개변수보다 우선합니다. 에이전트의 구성 파일에서 인증 옵션 하나만 설정하는 것이 좋습니다.

redis_configuration.connection_parameters.secret.secret_name

String

(선택사항) 에이전트가 Redis 인스턴스를 쿼리하는 데 사용하는 사용자 계정의 비밀번호를 안전하게 제공하려면 비밀번호가 포함된 Secret Manager 보안 비밀의 이름을 지정합니다.

인증의 경우 에이전트는 다음과 같은 우선순위를 사용합니다. 지정된 경우 secret 매개변수 집합이 password 매개변수보다 우선합니다. 에이전트의 구성 파일에서 인증 옵션 하나만 설정하는 것이 좋습니다.

redis_configuration.connection_parameters.secret.project_id

String

(선택사항) 지정된 사용자 계정을 인증하는 데 secret.secret_name 파라미터를 사용하려면 Secret Manager 보안 비밀이 저장된 Google Cloud 프로젝트의 프로젝트 ID를 지정합니다.

보안 비밀과 워크로드가 동일한 Google Cloud 프로젝트에 있는 경우 이 매개변수의 값을 빈 문자열 ("")로 설정합니다.

redis_configuration.connection_parameters.host

String

Redis 호스트 이름을 지정합니다.

redis_configuration.connection_parameters.port

Int

Redis 인스턴스가 쿼리를 허용하는 포트를 지정합니다.

다음 단계