Manage private cloud resources and activity
After you create a private cloud, you can view detailed information about it, manage its resources and activity, and access its VMware management appliances. Each private cloud contains one or more clusters, and each cluster contains nodes that correspond to ESXi hosts.
To view a list of your private clouds, start by accessing its resource summary page:
In the Google Cloud console, go to the Private clouds page.
Select the private cloud you want to manage from the list of private clouds.
gcloud and API requirements
To use the gcloud
command line tool or the API to manage your VMware Engine
resources, we recommend configuring the tools as described below.
gcloud
Set your default project ID:
gcloud config set project PROJECT_ID
Set a default region and zone:
gcloud config set compute/region REGION
gcloud config set compute/zone ZONE
For more information on the gcloud vmware
tool,
see the Cloud SDK reference docs.
API
API examples in this documentation set use the cURL
command-line tool to
query the API. A valid access token is required as part of the cURL
request. There are many ways to get a valid access token; the following
steps use the gcloud
tool to generate a access token:
Login to Google Cloud:
gcloud auth login
Generate access token and export to TOKEN:
export TOKEN=`gcloud auth print-access-token`
Verify that TOKEN is set properly:
echo $TOKEN
Now, use the authorization token in your requests to the API. For example:
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
Python code samples in this documentation use the VMware Engine library to communicate with the API. To be able to use this approach, the library needs to be installed and the Application Default Credentials should be configured.
Download and install the Python library:
pip install google-cloud-vmwareengine
Configure the ADC information by executing those command in your shell:
gcloud auth application-default login
Or, use a Service Account key file:
export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
For more information about the library, visit the reference page or view code samples on GitHub.
Verify IP address layout version
Private clouds created after November 2022 adhere to IP address layout (IP Plan) version 2.0 subnet allocations. Almost all private clouds created before November 2022 adhere to IP Plan version 1.0 subnet allocations.
To find out which version your private cloud adheres to, complete the following steps:
In the Google Cloud console, go to the Private clouds page.
Select the name of the private cloud you want to check. The version number is displayed with IP Plan version.
Viewing a private cloud summary
The summary provides information about your private cloud including its name, number of vSphere clusters, number of nodes, location, operational state, and more. The summary page also includes the DNS servers deployed on the private cloud.
From the private cloud summary page, you can perform the following actions:
- Launch vSphere Client. Access the vCenter for this private cloud.
- Add nodes. Add nodes to this private cloud.
- Add cluster. Add a new cluster to this private cloud.
- Create a cluster with custom core count configuration. Create a new cluster with custom core count configuration.
- Remove nodes. Remove nodes from this private cloud.
- Delete the private cloud. Delete a private cloud, including all of the VMs, vCenter configuration, and data. Before deleting, back up all systems and data.
- Change vSphere privileges. Elevate your privileges to perform a particular task on this private cloud.
- Copy IP addresses of DNS servers. Get a list of DNS servers on your private cloud. You can set up DNS forwarding from on-premises DNS servers to your private Cloud DNS servers. For more information about DNS forwarding, see Configuring DNS for name resolution for private cloud vCenter access from on-premises workstations.
Adding nodes to a private cloud
A private cloud consists of one or more vSphere clusters, each containing multiple nodes. When adding nodes to a private cloud, you add nodes to the existing cluster or create a new cluster. A private cloud can be expanded multiple times, provided that you stay within the overall node limits. Each time you expand a private cloud, you add to the existing cluster or create a new one.
As part of the new cluster configuration, Google configures the VMware infrastructure. The settings include storage settings for vSAN disk groups, VMware high availability, and Distributed Resource Scheduler (DRS).
Console
To add nodes to a private cloud using the Google Cloud console, follow these steps:
In the Google Cloud console, go to the Private clouds page.
On the private clouds summary page, click Add Nodes.
Choose whether to add nodes to one of your existing clusters or create a new vSphere cluster. As you make changes, the summary information on the page updates.
To add nodes to one of your existing clusters, select Add nodes to existing. Select the cluster you want to expand and enter the number of nodes to add.
To add a new cluster, select Create new. Then, provide the following details:
- Enter a name for the cluster.
- Select an existing vSphere data center or enter a name to create a new data center.
- Select the number of nodes. Each new cluster must have at least three nodes.
- Optional: Click the Customize Cores toggle if you want to reduce the number of available cores for each node in the management cluster. For details, see Custom core counts.
Click Submit.
gcloud
The update command lets you change the total node count for the cluster. This command requires the name of the cluster and private cloud.
List the clusters by entering the
gcloud vmware private-clouds clusters list
command:gcloud vmware private-clouds clusters list \ --private-cloud=PRIVATE_CLOUD_ID \ --location=ZONE
Replace the following:
PRIVATE_CLOUD_ID
: the name for the private cloudZONE
: the zone for the private cloud
Update the cluster by running the
gcloud vmware private-clouds clusters update
command:gcloud vmware private-clouds clusters update CLUSTER_ID \ --location=ZONE \ --private-cloud=PRIVATE_CLOUD_ID \ --update-nodes-config=type=NODE_TYPE,count=NODE_COUNT
Replace the following:
CLUSTER_ID
: the cluster ID to update in this private cloud.ZONE
: the zone for the private cloud.PRIVATE_CLOUD_ID
: the private cloud ID for this request.NODE_TYPE
: the node type. For more information, see Node types.NODE_COUNT
: the number of nodes to add.
API
The update API lets you change the total node count for the cluster. This command requires the name of the cluster and private cloud.
List the clusters by making a
GET
request:curl -L -X GET -H "Authorization: Bearer TOKEN" "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/clusters"
Replace the following:
PROJECT_ID
: the project ID for this requestZONE
: the zone for the private cloudPRIVATE_CLOUD_ID
: the private cloud ID for this request
Update the clusters by making a
PATCH
request. For example, the following updates the cluster tostandard-72
node type.curl -L -X PATCH -H "Authorization: Bearer TOKEN" \ -H "Content-Type: application/json" \ "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/clusters/CLUSTER_ID?updateMask=node_type_configs.*.node_count" \ -d '{ "nodeTypeConfigs": { "standard-72" : { "nodeCount": NODE_COUNT } } }'
Replace the following:
PROJECT_ID
: the project ID for this requestZONE
: the zone for the private cloudPRIVATE_CLOUD_ID
: the private cloud ID for the private cloudCLUSTER_ID
: the cluster ID for the cluster to update in this private cloudNODE_COUNT
: the number of nodes to add
Python
The cluster update method lets you change the total node count for the cluster. This method requires the name of the cluster and private cloud.
- List the clusters.
- Update the clusters. The following method lets you modify the number of
standard-72
nodes in the cluster.
Add a new cluster to a private cloud
To add a new cluster to an existing private cloud, do the following:
gcloud
Add the new cluster and give it a name by running the
gcloud vmware private-clouds clusters create
command:
For example:
gcloud vmware private-clouds clusters create CLUSTER_ID \ --location=ZONE \ --private-cloud=PRIVATE_CLOUD_ID \ --node-type-config=type=NODE_TYPE,count=NODE_COUNT
Replace the following:
CLUSTER_ID
: the cluster ID for the cluster that you are adding to the private cloud.ZONE
: the zone for the private cloud.PRIVATE_CLOUD_ID
: the private cloud ID for the private cloud.NODE_TYPE
: the node type. For more information, see Node types.NODE_COUNT
: the number of nodes to add.
API
Add the new cluster and give it a name by making a POST
request. For example:
curl -L -X POST -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" \ "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/clusters?clusterId=CLUSTER_ID" \ -d '{ "nodeTypeConfigs": { "standard-72": { "nodeCount": NODE_COUNT } } }'
Replace the following:
CLUSTER_ID
: the cluster ID for the cluster that you are adding to the private cloudZONE
: the zone for the private cloudPRIVATE_CLOUD_ID
: the private cloud ID for the private cloudNODE_COUNT
: the number of nodes to add
Python
Add the new cluster and give it a name.
Create a new cluster with custom core count configuration
To create a new cluster with custom core count configuration, do the following:
gcloud
Add the new cluster and specify the core count configuration by running the
gcloud vmware private-clouds clusters create
command:
The following example creates a new cluster with a standard-72
node type.
gcloud vmware private-clouds clusters create CLUSTER_ID \ --location=ZONE \ --private-cloud=PRIVATE_CLOUD_ID \ --node-type-config=type=standard-72,count=NODE_COUNT,custom-core-count=CORE_COUNT
Replace the following:
CLUSTER_ID
: the cluster ID for the cluster that you are adding to the private cloudZONE
: the zone for the private cloudPRIVATE_CLOUD_ID
: the private cloud ID for the private cloudNODE_COUNT
: the number of nodes to addCORES_COUNT
: the number of custom cores to add
API
Add the new cluster and specify the core count configuration by making a
POST
request. The following example creates a new cluster of standard-72
node type.
curl -L -X POST -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json" \ "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/clusters?clusterId=CLUSTER_ID" \ -d '{ "nodeTypeConfigs": { "standard-72": { "nodeCount": NODE_COUNT, "customCoreCount": CORE_COUNT } } }'
Replace the following:
PROJECT_ID
: the project ID for the private cloudCLUSTER_ID
: the cluster ID for the cluster that you are adding to the private cloudZONE
: the zone for the private cloudPRIVATE_CLOUD_ID
: the private cloud ID for the private cloudNODE_COUNT
: the number of nodes to addCORES_COUNT
: the number of custom cores to add
Python
Add the new cluster and specify the core count configuration. For example,
the following creates a new cluster of standard-72
node type with configurable
amount of nodes and core count.
Remove nodes or delete a cluster
When removing nodes from a private cloud, you remove nodes from the existing cluster or delete the entire cluster.
Console
To remove nodes from a private cloud using the Google Cloud console by updating the cluster with fewer nodes, do the following:
In the Google Cloud console, go to the Private clouds page.
On the private clouds summary page, click Remove nodes.
Select the cluster that you want to shrink or delete.
Click Remove one node.
Verify the cluster capacity.
Click Submit to begin the process of removing nodes.
To monitor the progress, select Activity > Tasks. This process requires resynchronization in vSAN and can take a few hours, depending on the data.
gcloud
To remove a node from a private cloud using the Google Cloud CLI,
use the
gcloud vmware private-clouds clusters update
command:
gcloud vmware private-clouds clusters update CLUSTER_ID \ --location=ZONE \ --private-cloud=PRIVATE_CLOUD_ID \ --update-nodes-config=type=NODE_TYPE,count=NODE_COUNT
Replace the following:
CLUSTER_ID
: the cluster ID for the cluster to update in this private cloud.ZONE
: the zone for the private cloud.PRIVATE_CLOUD_ID
: the private cloud ID for the private cloud.NODE_TYPE
: the node type. For more information, see Node types.NODE_COUNT
: the new node count. This new value must be one less than the current value.
API
To remove a node from a private cloud using the VMware Engine API,
make a PATCH
request:
curl -L -X PATCH -H "Authorization: Bearer TOKEN" \ -H "Content-Type: application/json" \ "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/clusters/CLUSTER_ID?update_mask=node_type_configs.*.node_count" \ -d '{ "nodeTypeConfigs": { "standard-72" : { "nodeCount": NODE_COUNT } } }'
Replace the following:
CLUSTER_ID
: the cluster ID for the cluster to update in this private cloudZONE
: the zone for the private cloudPRIVATE_CLOUD_ID
: the private cloud ID for the private cloudNODE_COUNT
: the new node count. This new value must be one less than the current value
Python
Delete a cluster
To delete a whole cluster, do the following:
Console
In the Google Cloud console, go to the Private clouds page.
On the private clouds summary page, click Remove nodes.
Select the cluster that you want to shrink or delete.
Select Delete the whole cluster.
Verify the cluster capacity.
Click Submit to begin the process of removing nodes.
gcloud
To delete a whole cluster using the Google Cloud CLI, use the
gcloud vmware private-clouds clusters delete
command:
gcloud vmware private-clouds clusters delete CLUSTER_ID \ --location=ZONE \ --private-cloud=PRIVATE_CLOUD_ID
Replace the following:
CLUSTER_ID
: the cluster ID for the cluster to update in this private cloudZONE
: the zone for the private cloudPRIVATE_CLOUD_ID
: the private cloud ID for the private cloud
API
To delete a whole cluster using the VMware Engine API, make a DELETE
request:
curl -L -X DELETE -H "Authorization: Bearer TOKEN" \ -H "Content-Type: application/json" \ "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/clusters/CLUSTER_ID"
Replace the following:
PROJECT_ID
: the project ID for the private cloudZONE
: the zone for the private cloudPRIVATE_CLOUD_ID
: the private cloud ID for the private cloudCLUSTER_ID
: the cluster ID for the cluster to update in this private cloud
Python
List nodes
To list the nodes of a particular private cloud's cluster and get information about multiple nodes or a specific node using the Google Cloud console, Google Cloud CLI or VMware Engine API, do the following.
Console
To list the nodes of one or multiple private clouds using the Google Cloud console, follow these steps:
In the Google Cloud console, go to the Private clouds page.
On the private clouds summary page, click the name of the private cloud.
On the cluster details page, click the Clusters tab.
Under the clusters tab, click the name of the cluster. All nodes in the cluster are listed in the cluster nodes table.
gcloud
To list the nodes of one or multiple private clouds using the Google Cloud CLI, do the following:
List all nodes that are bound to a particular private cloud's PRIVATE_CLOUD_ID by running the
gcloud vmware private-clouds clusters node list
command:gcloud vmware private-clouds clusters node list \ --project=PROJECT_ID\ --location=ZONE \ --private-cloud=PRIVATE_CLOUD_ID \ --cluster=CLUSTER_ID
Replace the following:
PROJECT_ID
: the project name for this request.ZONE
: the zone where this network is located.PRIVATE_CLOUD_ID
: the network ID for this request.CLUSTER_ID
: the cluster ID for this request.
API
To list the nodes of one or multiple private clouds using the VMware Engine API, do the following:
List all nodes that are bound to a particular private cloud's PRIVATE_CLOUD_ID by making a
GET
request:GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/clusters/CLUSTER_ID/nodes"
Replace the following:
PROJECT_ID
: the project name for this request.ZONE
: the zone where this network is located.PRIVATE_CLOUD_ID
: the network ID for this request.CLUSTER_ID
: the cluster ID for this request.
Describe nodes
To get a description of a node or nodes using the Google Cloud console, Google Cloud CLI or VMware Engine API, do the following:
Console
To list the nodes of one or multiple private clouds using the Google Cloud console, follow these steps:
In the Google Cloud console, go to the Private clouds page.
On the private clouds summary page, click the name of the private cloud.
On the cluster details page, click the Clusters tab.
Under the clusters tab, click the name of the cluster. Node details are listed in the cluster nodes table.
gcloud
If you want to get the description of a node or nodes using the Google Cloud CLI.
Optional: Find the name of the node by running the
gcloud vmware private-clouds clusters node list
command:gcloud vmware private-clouds clusters node list \ --project=PROJECT_ID\ --location=ZONE \ --private-cloud=PRIVATE_CLOUD_ID \ --cluster=CLUSTER_ID
Replace the following:
PROJECT_ID
: the project name for this request.ZONE
: the zone where this network is located.PRIVATE_CLOUD_ID
: the network ID for this request.CLUSTER_ID
: the cluster ID for this request.
Get the description of a specific node by running the
gcloud vmware private-clouds clusters nodes describe
command:gcloud vmware private-clouds clusters nodes describe NODE_NAME \ --project=PROJECT_ID\ --location=ZONE \ --private-cloud=PRIVATE_CLOUD_ID \ --cluster=CLUSTER_ID
Replace the following:
NODE_NAME
: the node name returned from the previous command. For example,esxi-1435-f4d250
.PROJECT_ID
: the project name for this request.ZONE
: the zone where this network is located.PRIVATE_CLOUD_ID
: the network ID for this request.CLUSTER_ID
: the cluster ID for this request.
API
If you want to get the description of a node or nodes using the VMware Engine API.
Optional: Find the name of the node by making a
GET
request:GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/clusters/CLUSTER_ID/nodes"
Replace the following:
PROJECT_ID
: the project name for this request.ZONE
: the zone where this network is located.PRIVATE_CLOUD_ID
: the network ID for this request.CLUSTER_ID
: the cluster ID for this request.
Get the description of a specific node by making a
GET
request:GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/clusters/CLUSTER_ID/nodes/NODE_NAME"
Replace the following:
NODE_NAME
: the node name returned from the previous command. For example,esxi-1435-f4d250
.PROJECT_ID
: the project name for this request.ZONE
: the zone where this network is located.PRIVATE_CLOUD_ID
: the network ID for this request.CLUSTER_ID
: the cluster ID for this request.
Restrictions
The process of removing nodes from your private cloud has the following restrictions:
- The vSphere cluster must have at least three nodes. You can't remove nodes from a vSphere cluster with three nodes.
- Whether you are using the Google Cloud console, the gcloud CLI, or the VMware Engine API, you can only remove one node at a time with each remove node request.
- The total storage consumed can't exceed the total capacity after removing nodes from a cluster.
- You can't delete the first cluster that was created when the private cloud was created.
- If vSphere DRS rules (affinity and anti-affinity) are applied to all the nodes of a cluster, nodes cannot be removed from the cluster. You can delete the rules and retry the node removal operation.
Viewing subnets
To view the list of defined management subnets for your private cloud, select the Subnets tab. The list includes the HCX subnets created when the private cloud was created.
Viewing activity information
To view the activity information for your private cloud, click Go to Logs Viewer. For a full list of activities and associated actions, see Monitoring VMware Engine activity.
Viewing vSphere management network
To view the list of VMware management resources and virtual machines that are configured on your private cloud, select the vSphere Management Network tab. Information includes the software version, fully qualified domain name (FQDN), and IP address of the resources.