Compute Advisor로 GKE 클러스터 설계 및 최적화

이 문서에서는 Gemini를 기반으로 하는 AI 기반 인터페이스인 Compute Advisor에 프롬프트를 표시하여 클러스터를 계획하고 설계하는 방법을 설명합니다. GKE 클러스터를 만들기 전이나 만들 때 구성해야 하는 구성요소에 대한 자세한 내용은 GKE 개요를 참조하세요.

Compute Advisor를 사용하면 하드웨어 옵션을 평가하고, 배포 비용을 추정하고, 클러스터에 권장되는 구성을 볼 수 있습니다. 권장사항을 맞춤설정하기 위해 Compute Advisor는 할당량 한도, 기존 예약, 약정 사용 할인 (CUD), 기본 리전 및 영역, 및 모든 리소스 위치 제약조건을 확인하여 Google Cloud 프로젝트를 평가합니다. Compute Advisor를 사용하여 계획을 세우면 GKE 클러스터를 만들거나 수정하기 전에 워크로드에 최적화된 구성을 달성할 수 있습니다.

제한사항

콘솔 Google Cloud 에서 Compute Advisor에 프롬프트를 표시할 때는 리소스를 직접 만들거나 수정하거나 삭제할 수 없습니다.

시작하기 전에

콘솔 Google Cloud 을 사용하여서비스 Google Cloud 및 API에 액세스할 때는 인증을 설정할 필요가 없습니다.

필요한 역할

Gemini에 액세스하고 프롬프트를 표시하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트의 Kubernetes Engine 클러스터 뷰어 (roles/container.clusterViewer) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

이 사전 정의된 역할에는 Gemini에 액세스하고 프롬프트를 표시하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.

필수 권한

Gemini에 액세스하고 프롬프트를 표시하려면 다음 권한이 필요합니다.

  • 클러스터 목록을 보려면 container.clusters.list

커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한 을 부여받을 수도 있습니다.

콘솔 Google Cloud 에서 Compute Advisor에 액세스

콘솔 Google Cloud 에서 Compute Advisor에 액세스하려면 다음 단계를 완료하세요.

  1. Google Cloud 콘솔에서 개요 페이지로 이동합니다.

    개요로 이동

  2. Compute Advisor로 인프라 설계 섹션에서 다음을 볼 수 있습니다.

    Compute Advisor 페이지의 인터페이스 요소

    이전 스크린샷에 표시된 UI 요소는 다음과 같습니다.

    • 빠른 작업 프롬프트 카드: 각각 샘플 프롬프트를 포함하는 카드 세트입니다. 카드를 클릭하면 Google Cloud 콘솔에서 프롬프트 상자가 샘플 프롬프트로 자동 채워집니다.

    • 프롬프트 상자: 이 필드에서 프롬프트를 입력하고 제출할 수 있습니다. 프롬프트를 제출하려면 프롬프트 제출 을 클릭합니다.

    • 이전 대화 보기: 이 기능을 사용하면 이전 대화의 세부정보를 보고 다시 시작하거나 더 이상 필요하지 않은 경우 대화를 삭제할 수 있습니다.

    • 대화 기록 측면 패널: 최근 채팅을 표시합니다. 이 패널은 개요 페이지에서 프롬프트를 표시한 후에만 표시됩니다. 이 패널은 다음과 같이 상호작용할 수 있습니다.

      • 새 대화를 시작하려면 새 채팅 을 클릭합니다.

      • 최근 대화를 다시 시작하려면 최근 채팅 섹션에서 대화를 클릭합니다.

      • 모든 대화 목록을 보려면 모두 보기 를 클릭합니다. 내 기록 페이지에서 이전 대화의 세부정보를 보고 다시 시작하거나 더 이상 필요하지 않은 경우 대화를 삭제할 수 있습니다.

Compute Advisor에 프롬프트 표시

프롬프트를 제출하면 Compute Advisor에서 응답 생성을 시작합니다. 다음 스크린샷과 같이 창이 나타나고 Google Cloud 콘솔에서 프롬프트에 대한 응답이 창에 표시됩니다.

Compute Advisor 창에 생성된 추천 응답

프롬프트에 따라 응답 창에는 다음 요소가 포함됩니다.

  • 상황별 근거: Compute Advisor는 할당량 한도, 기존 예약, CUD, 기본 리전 및 영역, 리소스 위치 제약조건 등 고도로 맞춤설정된 권장사항을 제공하기 위해 프로젝트 컨텍스트를 자동으로 평가합니다.

  • 대화형 코드 스니펫: Compute Advisor는 gcloud 명령어, REST API 메서드 또는 Terraform 리소스를 생성합니다. 이러한 코드 스니펫을 복사하여 붙여넣거나 Cloud Shell에서 실행할 수 있습니다.

  • 시각적 캔버스: Compute Advisor는 권장사항 을 구조화된 표와 나란히 비교하여 정리합니다. 이 뷰를 사용하면 제품 기능과 아키텍처 접근 방식을 평가할 수 있습니다. 또한 사용 사례에 대한 구현 계획을 제공합니다.

다음 섹션에서는 프롬프트 작성에 대한 권장사항과 GKE 클러스터를 만들거나 수정하기 전에 사용할 수 있는 프롬프트 예시를 간략하게 설명합니다.

프롬프트 권장사항

Compute Advisor에서 가장 정확하고 실행 가능한 권장사항을 얻으려면 코드 블록과 동일한 방식으로 프롬프트를 구성하는 것이 좋습니다. 이 접근 방식은 명확한 매개변수 선언, 역할 정의, 구체적인 안내, 명시적인 출력 형식을 사용하여 생성형 AI를 안내합니다.

Compute Advisor에 프롬프트를 표시할 때는 다음 권장사항을 고려하세요.

  • 설계 및 계획에 집중: Compute Advisor에 GKE 클러스터 오류 문제 해결을 위한 프롬프트를 표시하지 않는 것이 좋습니다. 이러한 오류를 해결하려면 대신 GKE 문제 해결을 참조하세요.

  • 페르소나 또는 역할 지정: Compute Advisor가 채택할 대상 역할 또는 페르소나(예: IT 관리자, AI 연구원, 플랫폼 엔지니어 )를 선언합니다. 이 접근 방식은 결과 권장사항의 어조, 깊이, 전문성 수준을 안내합니다.

  • 명시적이고 번호가 매겨진 안내 제공: 목표를 구체적인 단계별 질문 또는 작업으로 세분화합니다. 이 접근 방식은 Compute Advisor의 추론 프로세스를 구조화하고 Compute Advisor가 모든 요구사항을 해결하도록 지원합니다.

  • 특정 출력 형식 정의: 둘러보기 설명, Markdown 비교 표, 바로 사용할 수 있는 gcloud 코드 블록 등 권장사항의 형식을 지정하는 방법을 명시적으로 설명합니다.

  • 자동 컨텍스트 근거 활용: 기본 리전 또는 영역, 사용 가능한 할당량, CUD, 리소스 위치 제약조건을 프롬프트에 포함할 필요가 없습니다. Compute Advisor는 프로젝트 Google Cloud 에서 이 정보에 액세스할 수 있습니다.

  • 설계 반복 개선: 새 프롬프트를 전송하여 Compute Advisor에서 생성한 응답 을 수정하거나 확장할 수 있습니다. 예를 들어 새 대화를 시작하지 않고도 어시스턴트에게 배포 계획에 네트워킹 권장사항을 추가하거나 스토리지 요구사항을 수정하도록 요청할 수 있습니다.

프롬프트 예시

다음은 GKE 클러스터를 설계하고 최적화하는 데 도움이 되는 프롬프트의 예시입니다.

  • 클러스터 토폴로지 및 노드 풀 구성: 워크로드에 최적화된 GKE 모드, 머신 유형, 노드 풀 구성을 결정하려면 다음과 같은 프롬프트를 사용합니다.

    Act as a cloud architect. I need to design a GKE cluster topology for a
    scalable microservices application that requires both GPU nodes for AI
    inference and CPU nodes for general-purpose APIs.
    
    Please provide the following:
    1. A comparison of running this workload on GKE Autopilot versus GKE Standard.
    2. Recommendations for GKE machine types for the GPU node pool.
    3. The optimal autoscaling and auto-provisioning settings.
    4. A YAML manifest that configures tolerations for GPU taints, which are required for AI workloads.
    
    Format the comparison as a Markdown table, and provide the cluster creation
    steps as a ready-to-use gcloud CLI command.
    
  • 프로비저닝 모델 및 비용 최적화: 일괄 처리 워크로드의 프로비저닝 모델을 평가하고 리소스 사용률을 최적화하려면 다음과 같은 프롬프트를 사용합니다.

    Act as an IT administrator. I need to design a cost-optimized GKE cluster
    to run large-scale batch processing workloads that are fault-tolerant.
    
    Please provide the following:
    1. A cost and reliability comparison of using Spot VMs versus standard VMs
       in GKE node pools.
    2. An explanation of how to configure Kueue for queueing training jobs.
    3. A warning about the risk of latency for real-time inference when using Spot VMs.
    4. A YAML manifest to deploy the workloads onto Spot VM nodes.
    
    Format the comparison as a Markdown table, and provide the manifest as a
    ready-to-use code block.
    
  • 상태 저장 디스크 토폴로지: GKE의 고가용성 데이터베이스에 최적화된 영구 스토리지 아키텍처를 찾으려면 다음과 같은 프롬프트를 사용합니다.

    Act as a storage engineer. I need to design a StatefulSet topology in
    GKE for a distributed database that relies on Persistent Disks.
    
    Please provide the following:
    1. A comparison of regional Persistent Disks versus zonal Persistent Disks.
    2. An explanation of how the standard-rwo StorageClass prevents deadlocks in zonal Persistent Disks.
    3. A YAML manifest that shows how to deploy a stateful workload with the "volumeBindingMode: WaitForFirstConsumer" field.
    
    Format the response with Markdown headers, and provide the deployment
    manifest as a ready-to-use code block.
    
  • Karpenter 마이그레이션 프롬프트: AWS Karpenter에서 GKE 자동 확장 기능으로의 마이그레이션을 계획하려면 다음과 같은 프롬프트를 사용합니다.

    Act as a Kubernetes migration specialist. I am migrating an EKS cluster
    that uses Karpenter to GKE. Please translate my AWS Karpenter
    NodePool into a GKE custom ComputeClass.
    
    Please provide the following:
    1. A summary that maps Karpenter concepts to GKE Node Auto-Provisioning (NAP) and ComputeClasses.
    2. A YAML manifest that shows how a ComputeClass provides the same variety of instance types and weighting for  Spot VMs as Karpenter.
    3. The changes required in the Pod manifest to use the new ComputeClass.
    
    Format the mapping as a Markdown table, and provide the GKE
    manifests as code blocks that are ready to use.
    

다음 단계