class documentation

Undocumented

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 gpu_cluster.setter Set or clear the generated gpu_cluster field.
Method gpu_settings.setter Set or clear the generated gpu_settings 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 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 taints.setter Set or clear the generated taints field.
Constant __PROTO_DESCRIPTOR__ Protobuf message descriptor from the registry.
Constant __PROTO_FULL_NAME__ Fully qualified protobuf message name.
Constant __PY_TO_PB2__ Mapping from Python member names to protobuf names.
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 gpu_cluster Nebius Compute GPUCluster ID that will be attached to node.
Property gpu_settings GPU-related settings.
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 os OS version that will be used to create the boot disk of Compute Instances in the NodeGroup. Supported platform / Kubernetes version / OS / driver presets combinations
Property preemptible Configures whether the nodes in the group are preemptible. Set to empty value to enable preemptible nodes.
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 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 __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 __REGISTRY__ Registry for the message and its descriptor.
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 _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 = _NEBIUS_UNSET, taints: Iterable[NodeTaint] | None | UnsetType = _NEBIUS_UNSET, resources: ResourcesSpec | None | UnsetType = _NEBIUS_UNSET, boot_disk: DiskSpec | None | UnsetType = _NEBIUS_UNSET, gpu_settings: GpuSettings | None | UnsetType = _NEBIUS_UNSET, os: str | None | UnsetType = _NEBIUS_UNSET, gpu_cluster: GpuClusterSpec | None | UnsetType = _NEBIUS_UNSET, network_interfaces: Iterable[NetworkInterfaceTemplate] | None | UnsetType = _NEBIUS_UNSET, filesystems: Iterable[AttachedFilesystemSpec] | None | UnsetType = _NEBIUS_UNSET, cloud_init_user_data: str | None | UnsetType = _NEBIUS_UNSET, service_account_id: str | None | UnsetType = _NEBIUS_UNSET, preemptible: PreemptibleSpec | None | UnsetType = _NEBIUS_UNSET, nvlink: NVLinkSpec | None | UnsetType = _NEBIUS_UNSET, reservation_policy: ReservationPolicy | None | UnsetType = _NEBIUS_UNSET, local_disks: LocalDisksSpec | None | UnsetType = _NEBIUS_UNSET, max_pods: int | None | UnsetType = _NEBIUS_UNSET): (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.

@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.

@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.

@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.

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

Set or clear the generated taints field.

__PROTO_DESCRIPTOR__ = (source)

Protobuf message descriptor from the registry.

Value
REGISTRY.message_descriptor('nebius.mk8s.v1.NodeTemplate')
__PROTO_FULL_NAME__: str = (source)

Fully qualified protobuf message name.

Value
'nebius.mk8s.v1.NodeTemplate'
__PY_TO_PB2__: dict[str, str] = (source)

Mapping from Python member names to protobuf names.

Value
{'metadata': 'metadata',
 'taints': 'taints',
 'resources': 'resources',
 'boot_disk': 'boot_disk',
 'gpu_settings': 'gpu_settings',
 'os': 'os',
 'gpu_cluster': 'gpu_cluster',
...
@_NebiusProperty
boot_disk: DiskSpec = (source)

Parameters of a Node Nebius Compute Instance boot disk.

@_NebiusProperty
cloud_init_user_data: str = (source)

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

@_NebiusProperty
filesystems: MutableSequence[AttachedFilesystemSpec] = (source)

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

@_NebiusProperty
gpu_cluster: GpuClusterSpec = (source)

Nebius Compute GPUCluster ID that will be attached to node.

@_NebiusProperty
gpu_settings: GpuSettings = (source)

GPU-related settings.

@_NebiusProperty
local_disks: LocalDisksSpec = (source)

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.

@_NebiusProperty
max_pods: int = (source)

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.

@_NebiusProperty
metadata: NodeMetadataTemplate = (source)

Undocumented

@_NebiusProperty
network_interfaces: MutableSequence[NetworkInterfaceTemplate] = (source)

Undocumented

@_NebiusProperty
nvlink: NVLinkSpec = (source)

NVLinkSpec configures NVLink settings for the NodeGroup.

@_NebiusProperty
os: str = (source)

OS version that will be used to create the boot disk of Compute Instances in the NodeGroup. Supported platform / Kubernetes version / OS / driver presets combinations

  • gpu-l40s-a, gpu-l40s-d, gpu-h100-sxm, gpu-h200-sxm, cpu-e1, cpu-e2, cpu-d3:
    • drivers_preset: ""
      • version: 1.30 → "ubuntu22.04"
      • version: 1.31 → "ubuntu22.04" (default), "ubuntu24.04"
  • gpu-l40s-a, gpu-l40s-d, gpu-h100-sxm, gpu-h200-sxm:
    • drivers_preset: "cuda12" (CUDA 12.4)
      • version: 1.30, 1.31 → "ubuntu22.04"
    • drivers_preset: "cuda12.4"
      • version: 1.31 → "ubuntu22.04"
    • drivers_preset: "cuda12.8"
      • version: 1.31 → "ubuntu24.04"
  • gpu-b200-sxm:
    • drivers_preset: ""
      • version: 1.30, 1.31 → "ubuntu24.04"
    • drivers_preset: "cuda12" (CUDA 12.8)
      • version: 1.30, 1.31 → "ubuntu24.04"
    • drivers_preset: "cuda12.8"
      • version: 1.31 → "ubuntu24.04"
  • gpu-b200-sxm-a:
    • drivers_preset: ""
      • version: 1.31 → "ubuntu24.04"
    • drivers_preset: "cuda12.8"
      • version: 1.31 → "ubuntu24.04"
@_NebiusProperty
preemptible: PreemptibleSpec = (source)

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

@_NebiusProperty
reservation_policy: ReservationPolicy = (source)

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

@_NebiusProperty
resources: ResourcesSpec = (source)

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

@_NebiusProperty
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.

@_NebiusProperty
taints: MutableSequence[NodeTaint] = (source)

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.