Attributes of HyperAI Native Nodes

This document provides an overview of the key attributes associated with NativeNodes in HyperAI.

interfaceName

Description: The interfaceName attribute refers to the specific network interface used by the node, e.g. eth0, to communicate with the control plane.

Kubernetes Type: Annotation

Implementation: See interface_name_and_type

monetaryCost

Description: The monetaryCost attribute stores the predicted monetary cost of a HyperAI node. The value is inferred from the node CPU and memory using the packaged cost regression model.

Kubernetes Type: Annotation

Kubernetes Key: hyperai.eu/node-monetary-cost

Implementation: See get_monetary_cost_annotation

monetaryCostCategory

Description: The monetaryCostCategory attribute stores the qualitative cost label assigned from the predicted monetary cost value only. Supported labels are very low, low, medium, high and very high.

Kubernetes Type: Annotation

Kubernetes Key: hyperai.eu/node-monetary-cost-category

Implementation: See get_monetary_cost_annotation

geolocation

Description: The geolocation attribute is split in three fields (city, region, country) used for selection from the HyperAI scheduler. It uses the node’s public IP address to determine them.

Kubernetes Type: Labels

Implementation: See geolocation

bandwidth

Description: Bandwidth is the maximum rate of data transfer across a network path. This attribute is split in two fields (download speed, upload speed). Each value is categorized into one of the following classes based on its measured speed:

  • Class A: ≥ 100 Mbps

  • Class B: ≥ 50 Mbps and < 100 Mbps

  • Class C: ≥ 10 Mbps and < 50 Mbps

  • Class D: < 10 Mbps

Kubernetes Type: Annotations

Implementation : See bandwidth

latency

Description: Latency is the time it takes for a packet of data to travel from its source to its destination.

Kubernetes Type: Annotation

Implementation : See latency

packetLoss

Description: The packetLoss occurs when one or more packets of data travelling across a computer network fail to reach their destination.

Kubernetes Type: Annotation

Implementation : See packetLoss

nodeCategory

Description: The nodeCategory will be a short and representative string of the nodes computing capacity and accelerators.

Kubernetes Type: Annotation

Implementation : See nodeCategory

uptime

Description: Uptime refers to the duration for which the node has been running without interruption.

Kubernetes Type: Label

Implementation : See uptime

TPU

Description: This attribute will describe the total TPUs in the node.

Kubernetes Type: Label

Implementation : See TPU

Accelarators

Description: This attribute will describe the available accelerators for future scheduling.

Kubernetes Type: Label

Implementation : See Accelerators

nodePool

Description: The nodePool is a custom tag, for logical clustering, that will group the nodes into groups. The separation can be done with respact to the node’s purpose (e.g. production/testing) , special features (GPU pool) or any other criterion.

Kubernetes Type: Label

Implementation : See NodePool

networkType

Description: The networkType attribute refers to the specific technology or protocol used for network communication. It can be Ethernet, Wi-Fi or unknown.

Kubernetes Type: Annotation

Implementation: See interface_name_and_type

energyEfficiency

Description: The energyEfficiency attribute stores the estimated energy-efficiency value of the node. HyperTool first tries to obtain this value from the labelled hardware dataset using CPU core count and clock speed. The FLOPs and TDP regressors are used only as a fallback when no usable hardware match is available.

Kubernetes Type: Annotation

Kubernetes Key: hyperai.eu/node-energy-efficiency

Implementation: See energy_efficiency_annotation

energyEfficiencyCategory

Description: The energyEfficiencyCategory attribute stores the qualitative energy-efficiency label assigned from the final energy-efficiency value. Supported labels are very low, low, medium, high and very high.

Kubernetes Type: Annotation

Kubernetes Key: hyperai.eu/node-energy-efficiency-category

Implementation: See energy_efficiency_annotation

energyEfficiencySource

Description: The energyEfficiencySource attribute shows how the energy-efficiency value was obtained. Possible values are hardware_exact, hardware_nearest, model_fallback and unknown.

Kubernetes Type: Annotation

Kubernetes Key: hyperai.eu/node-energy-efficiency-source

Implementation: See energy_efficiency_annotation

flopsPerSec

Description: he flops_per_sec attribute represents the computational performance of the node.

Kubernetes type: Annotation

Kubernetes Key: hyperai.eu/node-flops-per-sec

Implementation: See flops_per_sec

trustScore

Description: The trustScore attribute depicts how trustworthy a node is. It is computed from a weighted set of runtime-health signals that the node observes about itself locally.

Kubernetes type: Annotation

Kubernetes Key: hyperai.eu/node-trust-level

Implementation: See trust_level

securityLevel

Description: The securityLevel attribute describes how secure a node is against malicious outside attacks. It is computed from a weighted set of observable security signals.

Kubernetes type: Annotation

Kubernetes Key: hyperai.eu/node-security-level

Implementation: See security_level

name

Description: The name of the node is a unique identifier for the node within the Kubernetes cluster.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

uid

Description: The uid of the node is a unique identifier for the node, which is generated by Kubernetes when the node is created.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

ownerReferences

Description: The ownerReferences establishes a parent-child relationship between Kubernetes objects, indicating that one object (the dependent) is managed by another (the owner). This relationship is helpful for garbage collection, proper resource management, etc.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

finalizers

Description: The finalizers are an optional attribute that is used to ensure that certain cleanup actions are performed before the node is deleted.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

resourceVersion

Descpition: The resourceVersion is a string that represents the version of the node’s resource.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

creationTimestamp

Description: The creationTimestamp of the node is the time when the node was created in/joined the Kubernetes cluster.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

podCIDR

Description: The podCIDR of the node is the Classless Inter-Domain Routing range assigned to the node for pod networking.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

podCIDRs

Description: The podCIDRs of the node is a list of Classless Inter-Domain Routing ranges assigned to the node for pod networking.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

providerID

Description: The providerID of the node is a unique identifier for the node provided by the cloud provider or infrastructure where the node is running.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

unschedulable

Description: The unschedulable taint indicates whether the node is schedulable or not.

Kubernetes Type: Taint

Implementation: From Kubernetes v1.33 in node_v1_core

conditions

Description: The conditions attribute is an array of current observed node conditions

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

allocatable

Descpition: The allocatable attribute represents the resources of a node that are available for scheduling. Defaults to Capacity.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

addresses

Description: This attribute is a list of addresses reachable to the node. It can be queried from cloud provider, if available.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

daemonEndpoints

Description: This attribute is a list of ports opened by daemons running on the Node.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

nodeInfo

Description: This attribute is a set of ids/uuids to uniquely identify the node.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

images

Descpription: This attribute is a list of container images on this node

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

volumesAttached

Descpription: This attribute is a list of volumes that are attached to the node.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

volumesInUse

Descpription: This attribute is a list of attachable volumes in use (mounted) by the node.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

config

Descpription: Status of the config assigned to the node via the dynamic Kubelet config feature.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

cpuArchitecture

Description: This attribute refers to the design of the CPU, which can be x86, ARM, or other architectures.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core

capacity

Description: This attribute entails the nodes computing resources. The cpu cores, emphemeral storage and the memory of the node.

Kubernetes Type: Field

Implementation: From Kubernetes v1.33 in node_v1_core