Managed Services for Kubernetes API, gRPC: ClusterService.ListNodeGroups
- gRPC request
- ListClusterNodeGroupsRequest
- ListClusterNodeGroupsResponse
- NodeGroup
- NodeTemplate
- ResourcesSpec
- DiskSpec
- NodeAddressSpec
- OneToOneNatSpec
- DnsRecordSpec
- SchedulingPolicy
- NetworkInterfaceSpec
- PlacementPolicy
- NetworkSettings
- ContainerRuntimeSettings
- ContainerNetworkSettings
- GpuSettings
- ScalePolicy
- FixedScale
- AutoScale
- NodeGroupAllocationPolicy
- NodeGroupLocation
- DeployPolicy
- VersionInfo
- NodeGroupMaintenancePolicy
- MaintenanceWindow
- AnytimeMaintenanceWindow
- DailyMaintenanceWindow
- WeeklyMaintenanceWindow
- DaysOfWeekMaintenanceWindow
- Taint
Lists nodegroup for the specified Kubernetes cluster.
gRPC request
rpc ListNodeGroups (ListClusterNodeGroupsRequest) returns (ListClusterNodeGroupsResponse)
ListClusterNodeGroupsRequest
{
"cluster_id": "string",
"page_size": "int64",
"page_token": "string",
"filter": "string"
}
|
Field |
Description |
|
cluster_id |
string Required field. ID of the Kubernetes cluster to list node groups in. |
|
page_size |
int64 The maximum number of results per page to return. If the number of available Acceptable values are 0 to 1000, inclusive. |
|
page_token |
string Page token. To get the next page of results, set The maximum string length in characters is 100. |
|
filter |
string A filter expression that filters resources listed in the response. The maximum string length in characters is 1000. |
ListClusterNodeGroupsResponse
{
"node_groups": [
{
"id": "string",
"cluster_id": "string",
"created_at": "google.protobuf.Timestamp",
"name": "string",
"description": "string",
"labels": "map<string, string>",
"status": "Status",
"node_template": {
"name": "string",
"labels": "map<string, string>",
"platform_id": "string",
"resources_spec": {
"memory": "int64",
"cores": "int64",
"core_fraction": "int64",
"gpus": "int64"
},
"boot_disk_spec": {
"disk_type_id": "string",
"disk_size": "int64"
},
"metadata": "map<string, string>",
"v4_address_spec": {
"one_to_one_nat_spec": {
"ip_version": "IpVersion"
},
"dns_record_specs": [
{
"fqdn": "string",
"dns_zone_id": "string",
"ttl": "int64",
"ptr": "bool"
}
]
},
"scheduling_policy": {
"preemptible": "bool"
},
"network_interface_specs": [
{
"subnet_ids": [
"string"
],
"primary_v4_address_spec": {
"one_to_one_nat_spec": {
"ip_version": "IpVersion"
},
"dns_record_specs": [
{
"fqdn": "string",
"dns_zone_id": "string",
"ttl": "int64",
"ptr": "bool"
}
]
},
"primary_v6_address_spec": {
"one_to_one_nat_spec": {
"ip_version": "IpVersion"
},
"dns_record_specs": [
{
"fqdn": "string",
"dns_zone_id": "string",
"ttl": "int64",
"ptr": "bool"
}
]
},
"security_group_ids": [
"string"
]
}
],
"placement_policy": {
"placement_group_id": "string"
},
"network_settings": {
"type": "Type"
},
"container_runtime_settings": {
"type": "Type"
},
"container_network_settings": {
"pod_mtu": "int64"
},
"gpu_settings": {
"gpu_cluster_id": "string",
"gpu_environment": "GpuEnvironment"
}
},
"scale_policy": {
// Includes only one of the fields `fixed_scale`, `auto_scale`
"fixed_scale": {
"size": "int64"
},
"auto_scale": {
"min_size": "int64",
"max_size": "int64",
"initial_size": "int64"
}
// end of the list of possible fields
},
"allocation_policy": {
"locations": [
{
"zone_id": "string",
"subnet_id": "string"
}
]
},
"deploy_policy": {
"max_unavailable": "int64",
"max_expansion": "int64"
},
"instance_group_id": "string",
"node_version": "string",
"version_info": {
"current_version": "string",
"new_revision_available": "bool",
"new_revision_summary": "string",
"version_deprecated": "bool"
},
"maintenance_policy": {
"auto_upgrade": "bool",
"auto_repair": "bool",
"maintenance_window": {
// Includes only one of the fields `anytime`, `daily_maintenance_window`, `weekly_maintenance_window`
"anytime": "AnytimeMaintenanceWindow",
"daily_maintenance_window": {
"start_time": "google.type.TimeOfDay",
"duration": "google.protobuf.Duration"
},
"weekly_maintenance_window": {
"days_of_week": [
{
"days": [
"DayOfWeek"
],
"start_time": "google.type.TimeOfDay",
"duration": "google.protobuf.Duration"
}
]
}
// end of the list of possible fields
}
},
"allowed_unsafe_sysctls": [
"string"
],
"node_taints": [
{
"key": "string",
"value": "string",
"effect": "Effect"
}
],
"node_labels": "map<string, string>"
}
],
"next_page_token": "string"
}
|
Field |
Description |
|
node_groups[] |
List of node groups for the specified Kubernetes cluster. |
|
next_page_token |
string This token allows you to get the next page of results for list requests. If the number of results |
NodeGroup
|
Field |
Description |
|
id |
string ID of the node group. |
|
cluster_id |
string ID of the cluster that the node group belongs to. |
|
created_at |
Creation timestamp. |
|
name |
string Name of the node group. |
|
description |
string Description of the node group. 0-256 characters long. |
|
labels |
object (map<string, string>) Resource labels as |
|
status |
enum Status Status of the node group.
|
|
node_template |
Node template that specifies parameters of the compute instances for the node group. |
|
scale_policy |
Scale policy of the node group. For more information, see Scaling policy. |
|
allocation_policy |
Allocation policy by which resources for node group are allocated to zones and regions. |
|
deploy_policy |
Deploy policy according to which the updates are rolled out. |
|
instance_group_id |
string ID of the managed instance group associated with this node group. |
|
node_version |
string Version of Kubernetes components that runs on the nodes. |
|
version_info |
Detailed information about the Kubernetes version that is running on the node. |
|
maintenance_policy |
Maintenance policy of the node group. |
|
allowed_unsafe_sysctls[] |
string Support for unsafe sysctl parameters. For more details see documentation |
|
node_taints[] |
Taints that are applied to the nodes of the node group at creation time. |
|
node_labels |
object (map<string, string>) Labels that are assigned to the nodes of the node group at creation time. |
NodeTemplate
|
Field |
Description |
|
name |
string Name of the instance. The maximum string length in characters is 128. |
|
labels |
object (map<string, string>) these labels will be assigned to compute nodes (instances), created by the nodegroup No more than 32 per resource. The maximum string length in characters for each value is 128. The string length in characters for each key must be 1-63. Each key must match the regular expression |
|
platform_id |
string ID of the hardware platform configuration for the node. |
|
resources_spec |
Computing resources of the node such as the amount of memory and number of cores. |
|
boot_disk_spec |
Specification for the boot disk that will be attached to the node. |
|
metadata |
object (map<string, string>) The metadata as For more information, see Connecting to a node over SSH. No more than 64 per resource. The maximum string length in characters for each value is 131072. The string length in characters for each key must be 1-63. Each key must match the regular expression |
|
v4_address_spec |
Specification for the create network interfaces for the node group compute instances. |
|
scheduling_policy |
Scheduling policy configuration. |
|
network_interface_specs[] |
New api, to specify network interfaces for the node group compute instances. |
|
placement_policy |
Placement policy configuration that controls physical placement of node group instances |
|
network_settings |
this parameter allows to specify type of network acceleration used on nodes (instances) |
|
container_runtime_settings |
Container runtime settings for the node template. |
|
container_network_settings |
Container network settings for the node template. |
|
gpu_settings |
GPU settings |
ResourcesSpec
|
Field |
Description |
|
memory |
int64 Amount of memory available to the node, specified in bytes. The minimum value is 0. |
|
cores |
int64 Number of cores available to the node. The minimum value is 0. |
|
core_fraction |
int64 Baseline level of CPU performance with the possibility to burst performance above that baseline level. Acceptable values are 0 to 100, inclusive. |
|
gpus |
int64 Number of GPUs available to the node. The minimum value is 0. |
DiskSpec
|
Field |
Description |
|
disk_type_id |
string ID of the disk type. Value must match the regular expression |
|
disk_size |
int64 Size of the disk, specified in bytes. Acceptable values are 0 to 4398046511104, inclusive. |
NodeAddressSpec
|
Field |
Description |
|
one_to_one_nat_spec |
One-to-one NAT configuration. Setting up one-to-one NAT ensures that public IP addresses are assigned to nodes, and therefore internet is accessible for all nodes of the node group. If the field is not set, NAT will not be set up. |
|
dns_record_specs[] |
Internal DNS configuration. |
OneToOneNatSpec
|
Field |
Description |
|
ip_version |
enum IpVersion IP version for the public IP address.
|
DnsRecordSpec
|
Field |
Description |
|
fqdn |
string Required field. FQDN (required). |
|
dns_zone_id |
string DNS zone id (optional, if not set, private zone is used). |
|
ttl |
int64 DNS record ttl, values in 0-86400 (optional). Acceptable values are 0 to 86400, inclusive. |
|
ptr |
bool When set to true, also create PTR DNS record (optional). |
SchedulingPolicy
|
Field |
Description |
|
preemptible |
bool True for preemptible compute instances. Default value is false. Preemptible compute instances are stopped at least once every 24 hours, and can be stopped at any time |
NetworkInterfaceSpec
|
Field |
Description |
|
subnet_ids[] |
string IDs of the subnets. |
|
primary_v4_address_spec |
Primary IPv4 address that is assigned to the instance for this network interface. |
|
primary_v6_address_spec |
Primary IPv6 address that is assigned to the instance for this network interface. |
|
security_group_ids[] |
string IDs of security groups. |
PlacementPolicy
|
Field |
Description |
|
placement_group_id |
string Identifier of placement group |
NetworkSettings
|
Field |
Description |
|
type |
enum Type Required field. Network type that specifies the network configuration for the node group instances.
|
ContainerRuntimeSettings
|
Field |
Description |
|
type |
enum Type Required field. Type of container runtime.
|
ContainerNetworkSettings
|
Field |
Description |
|
pod_mtu |
int64 MTU (Maximum Transmission Unit) size for pod network interfaces. |
GpuSettings
|
Field |
Description |
|
gpu_cluster_id |
string GPU cluster id, that mk8s node will join. |
|
gpu_environment |
enum GpuEnvironment GPU environment configured on node.
|
ScalePolicy
|
Field |
Description |
|
fixed_scale |
Fixed scale policy of the node group. Includes only one of the fields |
|
auto_scale |
Auto scale policy of the node group. Includes only one of the fields |
FixedScale
|
Field |
Description |
|
size |
int64 Number of nodes in the node group. Acceptable values are 0 to 100, inclusive. |
AutoScale
|
Field |
Description |
|
min_size |
int64 Minimum number of nodes in the node group. Acceptable values are 0 to 100, inclusive. |
|
max_size |
int64 Maximum number of nodes in the node group. Acceptable values are 0 to 100, inclusive. |
|
initial_size |
int64 Initial number of nodes in the node group. Acceptable values are 0 to 100, inclusive. |
NodeGroupAllocationPolicy
|
Field |
Description |
|
locations[] |
List of locations where resources for the node group will be allocated. |
NodeGroupLocation
|
Field |
Description |
|
zone_id |
string Required field. ID of the availability zone where the nodes may reside. |
|
subnet_id |
string ID of the subnet. If a network chosen for the Kubernetes cluster has only one subnet in the specified zone, subnet ID may be omitted. |
DeployPolicy
|
Field |
Description |
|
max_unavailable |
int64 The maximum number of running instances that can be taken offline (i.e., Acceptable values are 0 to 100, inclusive. |
|
max_expansion |
int64 The maximum number of instances that can be temporarily allocated above Acceptable values are 0 to 100, inclusive. |
VersionInfo
|
Field |
Description |
|
current_version |
string Current Kubernetes version, format: major.minor (e.g. 1.15). |
|
new_revision_available |
bool Newer revisions may include Kubernetes patches (e.g 1.15.1 -> 1.15.2) as well |
|
new_revision_summary |
string Description of the changes to be applied when updating to the latest |
|
version_deprecated |
bool The current version is on the deprecation schedule, component (master or node group) |
NodeGroupMaintenancePolicy
|
Field |
Description |
|
auto_upgrade |
bool If set to true, automatic updates are installed in the specified period of time with no interaction from the user. |
|
auto_repair |
bool If set to true, automatic repairs are enabled. Default value is false. |
|
maintenance_window |
Maintenance window settings. Update will start at the specified time and last no more than the specified duration. |
MaintenanceWindow
|
Field |
Description |
|
anytime |
Updating the master at any time. Includes only one of the fields Maintenance policy. |
|
daily_maintenance_window |
Updating the master on any day during the specified time window. Includes only one of the fields Maintenance policy. |
|
weekly_maintenance_window |
Updating the master on selected days during the specified time window. Includes only one of the fields Maintenance policy. |
AnytimeMaintenanceWindow
|
Field |
Description |
|
Empty |
|
DailyMaintenanceWindow
|
Field |
Description |
|
start_time |
Required field. Window start time, in the UTC timezone. |
|
duration |
Window duration. |
WeeklyMaintenanceWindow
|
Field |
Description |
|
days_of_week[] |
Days of the week and the maintenance window for these days when automatic updates are allowed. The number of elements must be in the range 1-7. |
DaysOfWeekMaintenanceWindow
|
Field |
Description |
|
days[] |
enum DayOfWeek Days of the week when automatic updates are allowed. The number of elements must be in the range 1-7.
|
|
start_time |
Required field. Window start time, in the UTC timezone. |
|
duration |
Window duration. |
Taint
|
Field |
Description |
|
key |
string The taint key to be applied to a node. |
|
value |
string The taint value corresponding to the taint key. |
|
effect |
enum Effect The effect of the taint on pods that do not tolerate the taint.
|