class documentation

Undocumented

Class __OneOfClass_pricing_model__ Default is on_demand.
Class __OneOfClass_pricing_model_follows_spot_price__ The preemptible VM accepts the current spot price.
Class __OneOfClass_pricing_model_on_demand__ A regular, non-preemptible VM.
Class __OneOfClass_pricing_model_spot_pricing_policy__ The preemptible VM accepts the current spot price unless it exceeds the maximum price specified by the selected pricing policy. When the spot price exceeds that maximum price, the VM is preempted.
Method __init__ Create a message from a source message and field values.
Method boot_disk.setter Set or clear the generated boot_disk field.
Method cloud_init_user_data.setter Set or clear the generated cloud_init_user_data field.
Method filesystems.setter Set or clear the generated filesystems field.
Method follows_spot_price.setter Set or clear the generated follows_spot_price field.
Method gpu_cluster.setter Set or clear the generated gpu_cluster field.
Method gpu_settings.setter Set or clear the generated gpu_settings field.
Method instance_metadata.setter Set or clear the generated instance_metadata field.
Method local_disks.setter Set or clear the generated local_disks field.
Method max_pods.setter Set or clear the generated max_pods field.
Method metadata.setter Set or clear the generated metadata field.
Method network_interfaces.setter Set or clear the generated network_interfaces field.
Method nvlink.setter Set or clear the generated nvlink field.
Method on_demand.setter Set or clear the generated on_demand field.
Method os.setter Set or clear the generated os field.
Method preemptible.setter Set or clear the generated preemptible field.
Method reservation_policy.setter Set or clear the generated reservation_policy field.
Method resources.setter Set or clear the generated resources field.
Method service_account_id.setter Set or clear the generated service_account_id field.
Method spot_pricing_policy.setter Set or clear the generated spot_pricing_policy field.
Method taints.setter Set or clear the generated taints field.
Property boot_disk Parameters of a Node Nebius Compute Instance boot disk.
Property cloud_init_user_data cloud-init user-data Should contain at least one SSH key.
Property filesystems Static attachments of Compute Filesystem. Can be used as a workaround, until CSI for Compute Disk and Filesystem will be available.
Property follows_spot_price The preemptible VM accepts the current spot price.
Property gpu_cluster Nebius Compute GPUCluster ID that will be attached to node.
Property gpu_settings GPU-related settings.
Property instance_metadata Metadata propagated to the Compute Instances in the NodeGroup.
Property local_disks local_disks enables the provisioning of fast local drives. This type of storage is strictly ephemeral: on node restart, all data is erased, similar to RAM.
Property max_pods The maximum number of Pods per node for your cluster. If omitted, MK8S assigns the default value of 110. When you configure the maximum number of Pods per node for the cluster, MK8S uses this value to allocate a CIDR range for every node in group...
Property metadata Undocumented
Property network_interfaces Undocumented
Property nvlink NVLinkSpec configures NVLink settings for the NodeGroup.
Property on_demand A regular, non-preemptible VM.
Property os OS version that will be used to create the boot disk of Compute Instances in the NodeGroup. Supported OS depend on the platform and Kubernetes version. To get the up-to-date list of supported OS for a given Kubernetes version and platform, run: nebius mk8s node-group get-compatibility-matrix --cluster-kubernetes-version VERSION --platform PLATFORM...
Property preemptible Configures whether the nodes in the group are preemptible. Set to empty value to enable preemptible nodes.
Property pricing_model Default is on_demand.
Property reservation_policy reservation_policy is an interface of the "capacity block" (or "capacity block group") mechanism of Nebius Compute.
Property resources Resources that will have Nebius Compute Instance where Node kubelet will run.
Property service_account_id the Nebius service account whose credentials will be available on the nodes of the group. With these credentials, it is possible to make nebius CLI or public API requests from the nodes without the need for extra authentication...
Property spot_pricing_policy The preemptible VM accepts the current spot price unless it exceeds the maximum price specified by the selected pricing policy. When the spot price exceeds that maximum price, the VM is preempted.
Property taints Kubernetes Node taints. For now change will not be propagated to existing nodes, so will be applied only to Kubernetes Nodes created after the field change. That behaviour may change later. So, for now you will need to manually set them to existing nodes, if that is needed...

Inherited from Message:

Class Method from_json Create a message from protobuf JSON mapping.
Class Method FromString Create a message by parsing protobuf wire-format bytes.
Class Method get_descriptor Return the message descriptor from the registry.
Class Method is_credentials Return True if a Python field contains credentials.
Class Method is_sensitive Return True if a Python field has the sensitive annotation.
Method __dir__ List generated fields, oneofs, and nested declarations.
Method __repr__ Render non-default fields without disclosing annotated secrets.
Method ByteSize Return the serialized protobuf wire size in bytes.
Method check_presence Check presence using a generated Python field name.
Method Clear Clear all fields, extensions, unknown fields, and the reset mask.
Method clear_extension Clear an extension value.
Method ClearField Clear a protobuf field or oneof and record it in the reset mask.
Method CopyFrom Replace this message with an independent copy of another message.
Method FindInitializationErrors Return paths of missing required fields.
Method get_extension Return an extension value.
Method get_full_update_reset_mask Create a reset mask from the current protobuf state.
Method get_mask Return the reset mask for field changes.
Method has_extension Return True if an extension has explicit presence.
Method HasField Return True if a protobuf field or oneof has explicit presence.
Method is_default Return True if a generated field has its default value.
Method IsInitialized Return True if every required field is initialized.
Method MergeFrom Merge fields from another message of the same generated type.
Method MergeFromString Merge protobuf wire-format bytes into this message.
Method ParseFromString Parse protobuf wire-format bytes and replace this message.
Method SerializeToString Serialize the message using protobuf wire format.
Method set_extension Set an extension value.
Method set_mask Set the reset mask for this message.
Method to_json Serialize this message using protobuf JSON mapping.
Method which_field_in_oneof Return the selected Python field name for a protobuf oneof.
Method WhichOneof Return the selected protobuf field name for a oneof.
Constant __DEPRECATION_DETAILS__ Undocumented
Constant __EXTENSION_REGISTRY__ Registry that decodes protobuf extensions.
Constant __FIELDS__ Runtime field data that the generator creates.
Constant __MAX_NESTING_DEPTH__ Maximum protobuf nesting depth for serialization, parsing, and initialization checks.
Constant __PB2_DESCRIPTOR__ Alias for code that expects a protobuf descriptor.
Constant __PROTO_DESCRIPTOR__ Message descriptor from the registry.
Constant __PY_TO_PB2__ Mapping from Python names to protobuf names.
Constant __REGISTRY__ Registry for the message and its descriptor.
Class Variable __PROTO_FULL_NAME__ Fully qualified protobuf message name.
Property Extensions Provide protobuf-compatible mapping access to extension values.
Class Method _fields_by_number Undocumented
Class Method _fields_by_proto_name Undocumented
Class Method _fields_by_python_name Undocumented
Class Method _from_string Deserialize internally without invoking generated user warnings.
Class Method _oneof_python_name Undocumented
Class Method _public_fields_by_proto_name Undocumented
Class Method _public_fields_by_python_name Undocumented
Static Method _format_map_key Undocumented
Static Method _repr_field Undocumented
Method _bind_child Undocumented
Method _bind_mutation Undocumented
Method _check_same_type Undocumented
Method _child_changed Undocumented
Method _clear_state Undocumented
Method _closed_enum_unknown Undocumented
Method _converted_view Undocumented
Method _decode_map_entry Undocumented
Method _detach_child Undocumented
Method _field_has_value Undocumented
Method _field_is_default Undocumented
Method _find_initialization_errors Undocumented
Method _get_field Undocumented
Method _initialize Initialize message state, optionally suppressing generated warnings.
Method _map Undocumented
Method _merge_from_string Undocumented
Method _nesting_limit Undocumented
Method _notify Undocumented
Method _record_reset Undocumented
Method _repeated Undocumented
Method _select Undocumented
Method _serialize_to_string Undocumented
Method _set_field Undocumented
Method _suspend_mutation Undocumented
Method _suspend_reset_mask Undocumented
Method _try_decode_field Undocumented
Method _write_field Undocumented
Instance Variable _extensions Undocumented
Instance Variable _mutation_suspended Undocumented
Instance Variable _on_mutation Undocumented
Instance Variable _oneofs Undocumented
Instance Variable _present Undocumented
Instance Variable _reset_mask Undocumented
Instance Variable _reset_mask_suspended Undocumented
Instance Variable _unknown_fields Undocumented
Instance Variable _values Undocumented
Instance Variable _views Undocumented
def __init__(self, initial_message: SerializableMessage | None = None, *, metadata: NodeMetadataTemplate | None | UnsetType = ..., taints: Iterable[NodeTaint] | None | UnsetType = ..., resources: ResourcesSpec | None | UnsetType = ..., boot_disk: DiskSpec | None | UnsetType = ..., gpu_settings: GpuSettings | None | UnsetType = ..., os: str | None | UnsetType = ..., gpu_cluster: GpuClusterSpec | None | UnsetType = ..., network_interfaces: Iterable[NetworkInterfaceTemplate] | None | UnsetType = ..., filesystems: Iterable[AttachedFilesystemSpec] | None | UnsetType = ..., cloud_init_user_data: str | None | UnsetType = ..., service_account_id: str | None | UnsetType = ..., instance_metadata: InstanceMetadataTemplate | None | UnsetType = ..., preemptible: PreemptibleSpec | None | UnsetType = ..., nvlink: NVLinkSpec | None | UnsetType = ..., reservation_policy: ReservationPolicy | None | UnsetType = ..., local_disks: LocalDisksSpec | None | UnsetType = ..., max_pods: int | None | UnsetType = ..., on_demand: OnDemandSpec | None | UnsetType = ..., follows_spot_price: FollowsSpotPriceSpec | None | UnsetType = ..., spot_pricing_policy: SpotPricingPolicySpec | None | UnsetType = ...): (source)

Create a message from a source message and field values.

@boot_disk.setter
def boot_disk(self, value: DiskSpec | None): (source)

Set or clear the generated boot_disk field.

@cloud_init_user_data.setter
def cloud_init_user_data(self, value: str | None): (source)

Set or clear the generated cloud_init_user_data field.

Set or clear the generated filesystems field.

@follows_spot_price.setter
def follows_spot_price(self, value: FollowsSpotPriceSpec | None): (source)

Set or clear the generated follows_spot_price field.

@gpu_cluster.setter
def gpu_cluster(self, value: GpuClusterSpec | None): (source)

Set or clear the generated gpu_cluster field.

@gpu_settings.setter
def gpu_settings(self, value: GpuSettings | None): (source)

Set or clear the generated gpu_settings field.

Set or clear the generated instance_metadata field.

@local_disks.setter
def local_disks(self, value: LocalDisksSpec | None): (source)

Set or clear the generated local_disks field.

@max_pods.setter
def max_pods(self, value: int | None): (source)

Set or clear the generated max_pods field.

Set or clear the generated metadata field.

Set or clear the generated network_interfaces field.

@nvlink.setter
def nvlink(self, value: NVLinkSpec | None): (source)

Set or clear the generated nvlink field.

@on_demand.setter
def on_demand(self, value: OnDemandSpec | None): (source)

Set or clear the generated on_demand field.

@os.setter
def os(self, value: str | None): (source)

Set or clear the generated os field.

@preemptible.setter
def preemptible(self, value: PreemptibleSpec | None): (source)

Set or clear the generated preemptible field.

@reservation_policy.setter
def reservation_policy(self, value: ReservationPolicy | None): (source)

Set or clear the generated reservation_policy field.

@resources.setter
def resources(self, value: ResourcesSpec | None): (source)

Set or clear the generated resources field.

@service_account_id.setter
def service_account_id(self, value: str | None): (source)

Set or clear the generated service_account_id field.

@spot_pricing_policy.setter
def spot_pricing_policy(self, value: SpotPricingPolicySpec | None): (source)

Set or clear the generated spot_pricing_policy field.

@taints.setter
def taints(self, value: Iterable[NodeTaint] | None): (source)

Set or clear the generated taints field.

Parameters of a Node Nebius Compute Instance boot disk.

@property
cloud_init_user_data: str = (source)

cloud-init user-data Should contain at least one SSH key.

Static attachments of Compute Filesystem. Can be used as a workaround, until CSI for Compute Disk and Filesystem will be available.

The preemptible VM accepts the current spot price.

Nebius Compute GPUCluster ID that will be attached to node.

GPU-related settings.

Metadata propagated to the Compute Instances in the NodeGroup.

local_disks enables the provisioning of fast local drives. This type of storage is strictly ephemeral: on node restart, all data is erased, similar to RAM.

The maximum number of Pods per node for your cluster. If omitted, MK8S assigns the default value of 110. When you configure the maximum number of Pods per node for the cluster, MK8S uses this value to allocate a CIDR range for every node in group. The node CIDR prefix is calculated as 32 - ceil(log2(2 * max_pods)), i.e. the smallest IPv4 subnet whose total address count is at least 2 * max_pods. Not all IPs are usable for workload Pods because some of them are consumed by system Pods.

NVLinkSpec configures NVLink settings for the NodeGroup.

A regular, non-preemptible VM.

OS version that will be used to create the boot disk of Compute Instances in the NodeGroup. Supported OS depend on the platform and Kubernetes version. To get the up-to-date list of supported OS for a given Kubernetes version and platform, run: nebius mk8s node-group get-compatibility-matrix --cluster-kubernetes-version VERSION --platform PLATFORM

Configures whether the nodes in the group are preemptible. Set to empty value to enable preemptible nodes.

@property
pricing_model: __OneOfClass_pricing_model_on_demand__ | __OneOfClass_pricing_model_follows_spot_price__ | __OneOfClass_pricing_model_spot_pricing_policy__ | None = (source)

Default is on_demand.

reservation_policy is an interface of the "capacity block" (or "capacity block group") mechanism of Nebius Compute.

Resources that will have Nebius Compute Instance where Node kubelet will run.

@property
service_account_id: str = (source)

the Nebius service account whose credentials will be available on the nodes of the group. With these credentials, it is possible to make nebius CLI or public API requests from the nodes without the need for extra authentication. This service account is also used to make requests to container registry.

resource.serviceaccount.issueAccessToken permission is required to use this field.

The preemptible VM accepts the current spot price unless it exceeds the maximum price specified by the selected pricing policy. When the spot price exceeds that maximum price, the VM is preempted.

Kubernetes Node taints. For now change will not be propagated to existing nodes, so will be applied only to Kubernetes Nodes created after the field change. That behaviour may change later. So, for now you will need to manually set them to existing nodes, if that is needed. Field change will NOT trigger NodeGroup roll out.