Melihat dan menerapkan rekomendasi tentang VM yang tidak ada aktivitas

Halaman ini menjelaskan cara menggunakan rekomendasi tentang VM yang tidak ada aktivitas untuk mengidentifikasi dan menghentikan instance VM yang tidak ada aktivitas guna mengurangi pemborosan resource dan mengurangi tagihan komputasi pada project Anda.

Sebelum memulai

  • Tinjau batasan untuk memeriksa apakah VM Anda mendukung rekomendasi tentang VM yang tidak ada aktivitas.
  • Jika Anda belum melakukannya, siapkan autentikasi. Autentikasi adalah proses yang digunakan untuk memverifikasi identitas Anda untuk mengakses Trusted Cloud by S3NS layanan dan API. Untuk menjalankan kode atau sampel dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine dengan memilih salah satu opsi berikut:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Trusted Cloud console to access Trusted Cloud by S3NS services and APIs, you don't need to set up authentication.

    gcloud

    1. Instal Google Cloud CLI, lalu login ke gcloud CLI dengan identitas gabungan Anda. Setelah login, lakukan inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:

      gcloud init
    2. Set a default region and zone.

    REST

    Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, Anda menggunakan kredensial yang Anda berikan ke gcloud CLI.

      Instal Google Cloud CLI, lalu login ke gcloud CLI dengan identitas gabungan Anda. Setelah login, lakukan inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:

      gcloud init

    Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Trusted Cloud .

Harga

Rekomendasi tentang VM yang tidak ada aktivitas tersedia tanpa biaya. Menggunakan rekomendasi untuk mengurangi penggunaan resource dapat menghemat biaya.

Melihat rekomendasi tentang instance VM yang tidak ada aktivitas

Untuk melihat rekomendasi tentang VM yang tidak ada aktivitas, gunakan gcloud CLI atau REST.

gcloud

Gunakan perintah gcloud recommender recommendations list dengan --recommender=google.compute.instance.IdleResourceRecommender:

gcloud recommender recommendations list \
  --project=PROJECT_ID \
  --location=ZONE \
  --recommender=google.compute.instance.IdleResourceRecommender \
  --format=yaml

Ganti kode berikut:

  • PROJECT_ID: ID project Anda
  • ZONE: zona yang berisi instance untuk mencantumkan rekomendasi

Contoh:

gcloud recommender recommendations list \
  --project=my-project \
  --location=us-central1-c \
  --recommender=google.compute.instance.IdleResourceRecommender \
  --format=yaml

Jika tidak ada VM yang tidak ada aktivitas di lokasi, respons akan kosong. Jika tidak, respons akan menyertakan kolom berikut untuk setiap rekomendasi:


---
content:
...
operationGroups:
- operations:
  - action: test
    path: /status
    resource: //compute.googleapis.com/projects/my-project/zones/us-central1-c/instances/vm-name
    resourceType: compute.googleapis.com/Instance
    value: RUNNING
  - action: replace
    path: /status
    resource: //compute.googleapis.com/projects/my-project/zones/us-central1-c/instances/vm-name
    resourceType: compute.googleapis.com/Instance
    value: TERMINATED
description: Save cost by stopping Idle VM 'vm-name'.
etag: '"83da314c23f634e1"'
lastRefreshTime: '2020-02-24T07:56:40Z'
name: projects/141732092341/locations/us-central1-c/recommenders/google.compute.instance.IdleResourceRecommender/recommendations/0e061a3a-f921-4216-b1b4-62e16942cd1a
primaryImpact:
category: COST
costProjection:
  cost:
    currencyCode: USD
    nanos: -91533961
    units: '-262'
  duration: 2592000s
recommenderSubtype: STOP_VM
stateInfo:
state: ACTIVE

Pelajari lebih lanjut cara menggunakan rekomendasi menggunakan gcloud di contoh gcloud.

REST

Panggil metode recommendations.list dan gunakan jenis rekomendasi berikut:

  • google.compute.instance.IdleResourceRecommender

Panggilan API terlihat seperti ini:

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/recommendations

Ganti kode berikut:

  • PROJECT_ID: ID project Anda.
  • ZONE: zona yang berisi instance untuk mencantumkan rekomendasi.

Contoh berikut menunjukkan cara mengirim permintaan dengan curl, dan contoh respons terkait.

PROJECT_ID=my-project
ZONE=us-central1-c
RECOMMENDER_ID=google.compute.instance.IdleResourceRecommender

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "x-goog-user-project: $PROJECT_ID" \
  https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$ZONE/recommenders/$RECOMMENDER_ID/recommendations

Contoh respons JSON untuk rekomendasi tentang VM yang tidak ada aktivitas:

{
"description" : "Save cost by stopping Idle VM `vm-name`",
"name": "projects/1574864402/locations/us-central1-c/recommenders/"
        "google.compute.instance.IdleResourceRecommender/"
        "recommendations/0fd31b24-cc05-4132-8431-ed54a22dd4f1",
"lastRefreshTime": {
  "seconds": 1543912652
},
"primaryImpact": {
  "category": COST,
  "costProjection": {
    "cost": {"currencyCode": "USD", "units": -50},
    "duration": { "seconds": 2592000 }
  }
},
"stateInfo": ACTIVE,
"content":
  "groups" : [
    {
      "operations" : [
      {
        "action": "test",
        "resourceType": "compute.googleapis.com/Instance",
        "resource": "//compute.googleapis.com/projects/my-project/"
                    "zones/us-central1-c/instances/vm-name",
        "path": "/status",
        "value": "RUNNING"
      },
      {
        "action": "replace",
        "resourceType": "compute.googleapis.com/Instance",
        "resource": "//compute.googleapis.com/projects/my-project/"
                    "zones/us-central1-c/instances/vm-name",
        "path": "/status",
        "value": "TERMINATED"
      }
      ]
    }
  ]
},
"etag" : "cb0e6ac2cfc0b591"
}

Anda dapat menemukan detail selengkapnya tentang setiap kolom dalam dokumentasi API Pemberi Rekomendasi.

Menafsirkan respons rekomendasi

Setiap rekomendasi yang Anda terima melalui gcloud CLI atau REST berisi grup operasi, dengan operasi yang dapat Anda lakukan secara berangkai untuk menerapkan rekomendasi. Grup operasi rekomendasi tentang VM yang tidak ada aktivitas mencakup dua operasi:

  1. Operasi pengujian untuk memverifikasi status VM saat ini. Contoh:

     {
       "action": "test",
       "resourceType": "compute.googleapis.com/Instance",
       "resource" : "//compute.googleapis.com/projects/my-project/zones/us-central1-c/instances/vm-name",
       "path": "/status",
       "value": "RUNNING"
     }
    
  2. Operasi penggantian untuk mengubah status VM. Contoh:

     {
       "action": "replace",
       "resourceType": "compute.googleapis.com/Instance",
       "resource" : "//compute.googleapis.com/projects/my-project/zones/us-central1-c/instances/vm-name",
       "path": "/status",
       "value": "TERMINATED"
     }
    

Operasi pertama adalah test, yang berarti Anda harus menguji bahwa resource masih RUNNING. Anda dapat melakukannya dengan memeriksa status VM.

Operasi kedua, replace, berarti Anda harus mengganti status resource dengan nilai baru, TERMINATED. Anda dapat melakukannya dengan menghentikan VM, yang dijelaskan di bawah ini.

Menerapkan rekomendasi tentang VM yang tidak ada aktivitas

Setelah Anda menerima rekomendasi tentang VM yang tidak ada aktivitas dan memutuskan bahwa Anda tidak lagi memerlukan instance tersebut, gunakan Trusted Cloud console, gcloud CLI, atau REST untuk menghentikan dan secara opsional menghapus instance.

Jika Anda menghentikan, tetapi tidak menghapus instance dan disk-nya, Anda tetap perlu membayar disk-nya.

Konsol

  1. Di konsol Trusted Cloud , buka halaman VM instances.

    Buka halaman VM instances

  2. Pilih instance yang ingin Anda hentikan.
  3. Klik Hentikan untuk menghentikan VM. Jika tidak ada opsi Hentikan, klik Tindakan lainnya > Hentikan.

gcloud

Gunakan perintah instances stop dan tentukan VM_NAME yang ingin Anda hentikan.

gcloud compute instances stop VM_NAME --zone=ZONE

Ganti kode berikut:

  • VM_NAME: nama instance VM yang ingin Anda hentikan
  • ZONE: zona yang berisi instance yang ingin Anda hentikan

REST

Buat permintaan POST untuk menghentikan instance.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/stop

Ganti kode berikut:

  • PROJECT_ID: ID project Anda
  • ZONE: zona yang berisi instance yang ingin Anda hentikan
  • VM_NAME: nama instance VM yang ingin Anda hentikan

Jika Anda yakin bahwa instance VM dan disk-nya dapat dihapus, Anda dapat menghapus instance.

Langkah berikutnya