Mengelola resource dan aktivitas cloud pribadi

Setelah membuat cloud pribadi, Anda dapat melihat informasi mendetail tentangnya, mengelola resource dan aktivitasnya, serta mengakses peralatan pengelolaan VMware-nya. Setiap cloud pribadi berisi satu atau beberapa cluster, dan setiap cluster berisi node yang terkait dengan host ESXi.

Kebijakan penskalaan otomatis yang diterapkan ke cluster di cloud pribadi memantau konsumsi resource dan secara otomatis menambahkan atau menghapus node dari cluster. Anda juga dapat memperluas atau menciutkan cloud pribadi secara manual dengan menambahkan atau menghapus node dari cluster di cloud pribadi tersebut. Misalnya, Anda dapat membuat cloud pribadi berdasarkan kebutuhan saat ini, lalu memperluas cloud pribadi dengan menambahkan node seiring meningkatnya konsumsi.

Untuk melihat daftar cloud pribadi Anda, mulailah dengan mengakses halaman ringkasan resource-nya:

  1. Akses portal Google Cloud VMware Engine.
  2. Dari navigasi utama, buka Resource.
  3. Pilih cloud pribadi yang ingin Anda kelola dari daftar cloud pribadi.

Persyaratan gcloud dan API

Untuk menggunakan alat command line gcloud atau API guna mengelola resource VMware Engine, sebaiknya konfigurasikan alat seperti yang dijelaskan di bawah.

gcloud

  1. Setel ID project default Anda:

    gcloud config set project PROJECT_ID
    
  2. Menetapkan region dan/atau zona default:

    gcloud config set compute/region REGION
    gcloud config set compute/zone ZONE

Untuk mengetahui informasi selengkapnya tentang alat gcloud vmware, meninjau dokumen referensi Cloud SDK.

API

Contoh API dalam kumpulan dokumentasi ini menggunakan alat command line cURL untuk membuat kueri API. Token akses yang valid diperlukan sebagai bagian dari permintaan cURL. Ada banyak cara untuk mendapatkan token akses yang valid. Langkah berikut akan menggunakan alat gcloud untuk membuat token akses:

  1. Login ke Google Cloud

    gcloud auth login
    
  2. Buat token akses dan ekspor ke TOKEN

    export TOKEN=`gcloud auth print-access-token`
    
  3. Memverifikasi bahwa TOKEN telah disetel dengan benar

    echo $TOKEN
    
    Output:
    TOKEN
    

Sekarang, gunakan token otorisasi dalam permintaan Anda ke API. Contoh:

curl -X GET -H "Authorization: Bearer \"$TOKEN\""  -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations

Python

Contoh kode Python dalam dokumentasi ini menggunakan library VMware Engine untuk berkomunikasi dengan API. Agar dapat menggunakan pendekatan ini, library perlu diinstal dan Kredensial Default Aplikasi harus dikonfigurasi.

  1. Mendownload dan menginstal library Python

     pip install google-cloud-vmwareengine
    
  2. Konfigurasikan informasi ADC dengan menjalankan perintah tersebut di shell Anda

      gcloud auth application-default login
    

    atau gunakan file kunci Akun Layanan

      export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
    

Untuk mengetahui informasi selengkapnya tentang library ini, kunjungi halaman referensi atau lihat contoh kode di GitHub.

Memverifikasi versi tata letak alamat IP

Cloud pribadi yang dibuat setelah November 2022 mematuhi alokasi subnet versi 2.0 tata letak alamat IP (Paket IP). Hampir semua cloud pribadi yang dibuat sebelum November 2022 mematuhi alokasi subnet Paket IP versi 1.0.

Untuk mengetahui versi yang dipatuhi oleh cloud pribadi Anda, selesaikan langkah-langkah berikut:

  1. Akses portal Google Cloud VMware Engine.
  2. Di halaman Resource, klik Summary.

Nomor versi ditampilkan dengan versi Paket IP.

Melihat ringkasan cloud pribadi

Ringkasan ini memberikan informasi tentang cloud pribadi Anda, termasuk namanya, jumlah cluster vSphere, jumlah node, lokasi, status operasional, dan lainnya. Halaman ringkasan ini juga berisi server DNS yang di-deploy di cloud pribadi.

Dari halaman ringkasan cloud pribadi, Anda dapat melakukan tindakan berikut:

Menambahkan node ke cloud pribadi

Cloud pribadi terdiri dari satu atau beberapa cluster vSphere, yang masing-masing berisi beberapa node. Saat menambahkan node ke cloud pribadi, Anda dapat menambahkan node ke cluster yang ada atau membuat cluster baru. Cloud pribadi dapat diperluas beberapa kali, asalkan Anda tetap berada dalam batas node keseluruhan. Setiap kali memperluas cloud pribadi, Anda menambahkan cluster yang ada atau membuat cluster baru.

Sebagai bagian dari konfigurasi cluster baru, Google mengonfigurasi infrastruktur VMware. Setelan ini mencakup setelan penyimpanan untuk grup disk vSAN, Ketersediaan Tinggi VMware, dan Penjadwal Resource Terdistribusi (DRS).

Untuk menambahkan node ke cloud pribadi, lakukan langkah berikut:

Konsol

  1. Di halaman ringkasan private cloud, klik Add Nodes.
  2. Pilih apakah akan menambahkan node ke salah satu cluster yang ada atau membuat cluster vSphere baru. Saat Anda membuat perubahan, informasi ringkasan di halaman akan diperbarui.
  3. Untuk menambahkan node ke salah satu cluster yang ada, pilih Add nodes to existing. Pilih cluster yang ingin diperluas, lalu masukkan jumlah node yang akan ditambahkan.
  4. Untuk menambahkan cluster baru, pilih Buat baru. Kemudian, berikan detail berikut:
    1. Masukkan nama untuk cluster.
    2. Pilih pusat data vSphere yang ada atau masukkan nama untuk membuat pusat data baru.
    3. Pilih jumlah node. Setiap cluster baru harus memiliki setidaknya tiga node.
    4. Opsional: Klik tombol Customize Cores jika Anda ingin mengurangi jumlah core yang tersedia untuk setiap node di cluster pengelolaan. Untuk mengetahui detailnya, lihat Jumlah inti kustom.
  5. Klik Submit.

gcloud

Perintah update memungkinkan Anda mengubah jumlah total node untuk cluster. Perintah ini memerlukan nama cluster dan cloud pribadi.

  1. Buat daftar cluster.

    gcloud vmware private-clouds clusters list \
     --private-cloud=PC_NAME \
     --location=ZONE
  2. Update cluster. Misalnya, perintah berikut mengubah jumlah node menjadi 4.

    gcloud vmware private-clouds clusters update CLUSTER_NAME \
    --location=ZONE \
    --private-cloud=PC_NAME --node-type-config=type=standard-72,count=4

    Ganti kode berikut:

    • CLUSTER_NAME: nama cluster yang akan diperbarui di cloud pribadi ini
    • ZONE: zona untuk cloud pribadi
    • PC_NAME: nama untuk cloud pribadi
    • PROJECT_ID: project ID untuk permintaan ini

API

API update memungkinkan Anda mengubah jumlah total node untuk cluster. Perintah ini memerlukan nama cluster dan cloud pribadi.

  1. Buat daftar cluster.

    curl -L -X GET -H "Authorization: Bearer TOKEN" "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PC_NAME/clusters"
    
  2. Update cluster. Misalnya, perintah berikut akan memperbarui cluster menjadi standard-72 dan mengubah jumlah node menjadi 4.

    curl -L -X PATCH -H "Authorization: Bearer TOKEN" \
    -H "Content-Type: application/json" \
    "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PC_NAME/clusters/CLUSTER_NAME?updateMask=node_type_configs.*.node_count" \
    -d '{
    "nodeTypeConfigs": {
      "standard-72" : {
        "nodeCount": 4
      }
    }
    }'

    Ganti kode berikut:

    • PROJECT_ID: project ID untuk permintaan ini
    • ZONE: zona untuk cloud pribadi
    • PC_NAME: nama untuk cloud pribadi
    • CLUSTER_NAME: nama cluster yang akan diperbarui di cloud pribadi ini

Python

Metode update cluster memungkinkan Anda mengubah jumlah total node untuk cluster. Metode ini memerlukan nama cluster dan cloud pribadi.

  1. Buat daftar cluster.
from typing import Iterable

from google.cloud import vmwareengine_v1

def list_clusters(
    project_id: str, zone: str, private_cloud_name: str
) -> Iterable[vmwareengine_v1.Cluster]:
    """
    Retrieves a list of clusters in private cloud.

    Args:
        project_id: name of the project hosting the private cloud.
        zone: zone in which the private cloud is located.
        private_cloud_name: name of the cloud of which you want to list cluster.

    Returns:
        An iterable collection of Cluster objects.
    """
    client = vmwareengine_v1.VmwareEngineClient()
    return client.list_clusters(
        parent=f"projects/{project_id}/locations/{zone}/privateClouds/{private_cloud_name}"
    )

  1. Update cluster. Metode berikut memungkinkan Anda mengubah jumlah node standard-72 dalam cluster.
from google.api_core import operation
from google.cloud import vmwareengine_v1

def update_cluster_node_count(
    project_id: str,
    zone: str,
    private_cloud_name: str,
    cluster_name: str,
    node_count: int,
) -> operation.Operation:
    """
    Modify the number of nodes in a cluster in a private cloud.

    Modifying a cluster is a long-running operation and it may take over an hour.

    Args:
        project_id: name of the project you want to use.
        zone: zone in which your private cloud is located.
        private_cloud_name: name of the private cloud hosting the cluster.
        cluster_name: name of the cluster.
        node_count: desired number of nodes in the cluster.

    Returns:
        An Operation object related to cluster modification operation.
    """
    if node_count < 3:
        raise RuntimeError("Cluster needs to have at least 3 nodes")
    client = vmwareengine_v1.VmwareEngineClient()
    request = vmwareengine_v1.UpdateClusterRequest()
    request.cluster = vmwareengine_v1.Cluster()
    request.cluster.name = (
        f"projects/{project_id}/locations/{zone}/privateClouds/{private_cloud_name}"
        f"/clusters/{cluster_name}"
    )
    request.cluster.node_type_configs = {
        "standard-72": vmwareengine_v1.NodeTypeConfig()
    }
    request.cluster.node_type_configs["standard-72"].node_count = node_count
    request.update_mask = "nodeTypeConfigs.*.nodeCount"
    return client.update_cluster(request)

Menambahkan cluster baru ke cloud pribadi

Untuk menambahkan cluster baru ke cloud pribadi yang ada, lakukan langkah berikut:

gcloud

Tambahkan cluster baru dan beri nama. Contoh:

gcloud vmware private-clouds clusters create CLUSTER_NAME \
   --location=ZONE --private-cloud=PC_NAME \
   --node-type-config=type=standard-72,count=4

API

Tambahkan cluster baru dan beri nama. Contoh:

curl -L -X POST -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" \
"https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PC_NAME/clusters?clusterId=CLUSTER_NAME" \
-d '{
  "nodeTypeConfigs": {
    "standard-72": {
      "nodeCount": 4
      }
  }
}'

Python

Tambahkan cluster baru dan beri nama.

from google.api_core import operation
from google.cloud import vmwareengine_v1

def create_cluster(
    project_id: str,
    zone: str,
    private_cloud_name: str,
    cluster_name: str,
    node_count: int = 4,
) -> operation.Operation:
    """
    Create a new cluster in a private cloud.

    Creation of a new cluster is a long-running operation and it may take over an hour.

    Args:
        project_id: name of the project you want to use.
        zone: region in which your private cloud is located.
        private_cloud_name: name of the private cloud hosting the new cluster.
        cluster_name: name of the new cluster.
        node_count: number of nodes in the new cluster. (Must be >= 3)

    Returns:
        An Operation object related to started cluster creation operation.

    Raises:
        ValueError in case an incorrect number of nodes is provided.
    """
    if node_count < 3:
        raise ValueError("Cluster needs to have at least 3 nodes")

    request = vmwareengine_v1.CreateClusterRequest()
    request.parent = (
        f"projects/{project_id}/locations/{zone}/privateClouds/{private_cloud_name}"
    )

    request.cluster = vmwareengine_v1.Cluster()
    request.cluster.name = cluster_name

    # Currently standard-72 is the only supported node type.
    request.cluster.node_type_configs = {
        "standard-72": vmwareengine_v1.NodeTypeConfig()
    }
    request.cluster.node_type_configs["standard-72"].node_count = node_count

    client = vmwareengine_v1.VmwareEngineClient()
    return client.create_cluster(request)

Buat cluster baru dengan konfigurasi jumlah inti kustom

Untuk membuat cluster baru dengan konfigurasi jumlah core kustom, lakukan langkah berikut:

gcloud

Tambahkan cluster baru dan tentukan konfigurasi jumlah inti. Misalnya, metode berikut akan membuat cluster baru jenis node standard-72 dengan 3 node dan jumlah inti kustom 28.

gcloud vmware private-clouds clusters create CLUSTER_NAME \
    --location=ZONE \
    --private-cloud=PC_NAME \
    --node-type-config=type=standard-72,count=4,custom-core-count=28

API

Tambahkan cluster baru dan tentukan konfigurasi jumlah inti. Misalnya, metode berikut membuat cluster baru jenis node standard-72 dengan 4 node dan jumlah inti kustom 28.

curl -L -X POST -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" \
"https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PROJECT_ID/clusters?clusterId=CLUSTER_NAME" \
-d '{
      "nodeTypeConfigs": {
      "standard-72": {
        "nodeCount": 4,
        "customCoreCount": 28
        }
    }
}'

Python

Tambahkan cluster baru dan tentukan konfigurasi jumlah inti. Misalnya, kode berikut akan membuat cluster baru dari jenis node standard-72 dengan jumlah node dan jumlah inti yang dapat dikonfigurasi.

from google.api_core import operation
from google.cloud import vmwareengine_v1

def create_custom_cluster(
    project_id: str,
    zone: str,
    private_cloud_name: str,
    cluster_name: str,
    node_count: int = 4,
    core_count: int = 28,
) -> operation.Operation:
    """
    Create a new cluster with custom number of cores in its nodes
    in a private cloud.

    Creation of a new cluster is a long-running operation and it may take over an hour.

    Args:
        project_id: name of the project you want to use.
        zone: region in which your private cloud is located.
        private_cloud_name: name of the private cloud hosting the new cluster.
        cluster_name: name of the new cluster.
        node_count: number of nodes in the new cluster.
        core_count: number of CPU cores in the new cluster nodes.

    Returns:
        An Operation object related to started cluster creation operation.

    Raises:
        ValueError in case an incorrect number of nodes is provided.
    """
    if node_count < 3:
        raise ValueError("Cluster needs to have at least 3 nodes")

    request = vmwareengine_v1.CreateClusterRequest()
    request.parent = (
        f"projects/{project_id}/locations/{zone}/privateClouds/{private_cloud_name}"
    )

    request.cluster = vmwareengine_v1.Cluster()
    request.cluster.name = cluster_name

    # Currently standard-72 is the only supported node type.
    request.cluster.node_type_configs = {
        "standard-72": vmwareengine_v1.NodeTypeConfig()
    }
    request.cluster.node_type_configs["standard-72"].node_count = node_count
    request.cluster.node_type_configs["standard-72"].custom_core_count = core_count

    client = vmwareengine_v1.VmwareEngineClient()
    return client.create_cluster(request)

Menghapus node atau menghapus cluster

Saat menghapus node dari cloud pribadi, Anda menghapus node dari cluster yang ada atau menghapus seluruh cluster.

Untuk menghapus node dari cloud pribadi, perbarui cluster dengan sejumlah node.

Konsol

  1. Di halaman ringkasan cloud pribadi, klik Remove nodes.
  2. Pilih cluster yang ingin diciutkan atau dihapus.
  3. Pilih Hapus satu node.
  4. Verifikasi kapasitas cluster.
  5. Klik Submit untuk memulai proses penghapusan node.

Untuk memantau progres, pilih Aktivitas > Tasks. Proses ini memerlukan sinkronisasi ulang di vSAN dan dapat memerlukan waktu beberapa jam, bergantung pada datanya.

gcloud

gcloud vmware private-clouds clusters update CLUSTER_NAME \
  --location=ZONE \
  --private-cloud=PC_NAME --node-type-config=type=standard-72,count=3

API

curl -L -X PATCH -H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json" \
"https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PC_NAME/clusters/CLUSTER_NAME?update_mask=node_type_configs.*.node_count" \
-d '{
  "nodeTypeConfigs": {
    "standard-72" : {
      "nodeCount": 3
    }
  }
}'

Python

from google.api_core import operation
from google.cloud import vmwareengine_v1

def update_cluster_node_count(
    project_id: str,
    zone: str,
    private_cloud_name: str,
    cluster_name: str,
    node_count: int,
) -> operation.Operation:
    """
    Modify the number of nodes in a cluster in a private cloud.

    Modifying a cluster is a long-running operation and it may take over an hour.

    Args:
        project_id: name of the project you want to use.
        zone: zone in which your private cloud is located.
        private_cloud_name: name of the private cloud hosting the cluster.
        cluster_name: name of the cluster.
        node_count: desired number of nodes in the cluster.

    Returns:
        An Operation object related to cluster modification operation.
    """
    if node_count < 3:
        raise RuntimeError("Cluster needs to have at least 3 nodes")
    client = vmwareengine_v1.VmwareEngineClient()
    request = vmwareengine_v1.UpdateClusterRequest()
    request.cluster = vmwareengine_v1.Cluster()
    request.cluster.name = (
        f"projects/{project_id}/locations/{zone}/privateClouds/{private_cloud_name}"
        f"/clusters/{cluster_name}"
    )
    request.cluster.node_type_configs = {
        "standard-72": vmwareengine_v1.NodeTypeConfig()
    }
    request.cluster.node_type_configs["standard-72"].node_count = node_count
    request.update_mask = "nodeTypeConfigs.*.nodeCount"
    return client.update_cluster(request)

Untuk menghapus seluruh cluster, lakukan langkah berikut:

Konsol

  1. Di halaman ringkasan cloud pribadi, klik Remove nodes.
  2. Pilih cluster yang ingin diciutkan atau dihapus.
  3. Pilih Hapus seluruh cluster.
  4. Verifikasi kapasitas cluster.
  5. Klik Submit untuk memulai proses penghapusan node.

gcloud

gcloud vmware private-clouds clusters delete CLUSTER_NAME \
  --location=ZONE \
  --private-cloud=PC_NAME

API

curl -L -X DELETE -H "Authorization: Bearer TOKEN" \
-H "Content-Type: application/json" \
"https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PC_NAME/clusters/CLUSTER_NAME"

Python

from google.api_core import operation
from google.cloud import vmwareengine_v1

def delete_cluster(
    project_id: str, zone: str, private_cloud_name: str, cluster_name: str
) -> operation.Operation:
    """
    Delete a cluster from private cloud.

    Deleting a cluster is a long-running operation and it may take over an hour..

    Args:
        project_id: name of the project you want to use.
        zone: region in which your private cloud is located.
        private_cloud_name: name of the private cloud hosting the new cluster.
        cluster_name: name of the new cluster.

    Returns:
        An Operation object related to started cluster deletion operation.
    """
    client = vmwareengine_v1.VmwareEngineClient()
    request = vmwareengine_v1.DeleteClusterRequest()
    request.name = (
        f"projects/{project_id}/locations/{zone}/privateClouds/{private_cloud_name}"
        f"/clusters/{cluster_name}"
    )
    return client.delete_cluster(request)

Pembatasan

Proses menghapus node dari cloud pribadi Anda memiliki batasan berikut:

  • Cluster vSphere harus memiliki setidaknya tiga node. Anda tidak dapat menghapus node dari cluster yang memiliki 3 node atau kurang.
  • Total penyimpanan yang terpakai tidak boleh melebihi total kapasitas setelah menghapus node dari cluster.
  • Anda tidak dapat menghapus cluster pertama yang dibuat saat cloud pribadi dibuat.
  • Jika aturan DRS vSphere (afinitas dan anti-afinitas) diterapkan ke semua node cluster, node tidak dapat dihapus dari cluster. Anda dapat menghapus aturan tersebut dan mencoba lagi operasi penghapusan node.

Melihat subnet

Untuk melihat daftar subnet pengelolaan yang ditentukan untuk cloud pribadi Anda, pilih tab Subnet. Daftar ini mencakup subnet HCX yang dibuat saat private cloud dibuat. Daftar subnet juga menyertakan tabel firewall terlampir untuk setiap subnet.

Melihat informasi aktivitas

Untuk melihat informasi aktivitas untuk cloud pribadi Anda, pilih tab Aktivitas. Informasi yang ditampilkan adalah daftar semua aktivitas yang difilter untuk cloud pribadi Anda. Halaman ini menampilkan hingga 25 aktivitas terbaru. Untuk daftar lengkap aktivitas dan tindakan terkait, lihat Memantau aktivitas VMware Engine.

Melihat jaringan pengelolaan vSphere

Untuk melihat daftar resource pengelolaan VMware dan virtual machine yang saat ini dikonfigurasi di cloud pribadi Anda, pilih tab vSphere Management Network. Informasi mencakup versi software, nama domain yang sepenuhnya memenuhi syarat (FQDN), dan alamat IP resource.