Nodes
A set of machine which are responsible for carrying out the work in a kube cluster
Last updated
A set of machine which are responsible for carrying out the work in a kube cluster
Last updated
in AWS one can create a empty cluster and add nodes later. For Azure, there must be one default/system pool should be created along with the cluster. This is required for azure to run some Refer azure doc
System pool requirement
System node pools require a VM SKU of at least 2 vCPUs and 4GB memory
Must be Linux.
must contain at least one node.
add node using cli
request.json is a node specification file with the following field. refer example
You can add nodes to cluster using the following node specification
Field | Type | Description | Default |
---|---|---|---|
MachineType
Use generic machine type to pick instance from different provder, spawner provides the following t shirt size and its spec.
instances picked for provider as per above machine type
Type | Minimum CPU cores | Minimum RAM | GPU |
---|---|---|---|
provider*
string
provder where the cluster is located. one of aws
, azure
region*
string
region where the cluster is hosted
accountName
string
Netbook connect account name. Optional in local run
nodeSpec.diskSize*
number
Disk size which is attached to node. azure requires min 30GB of disk size
nodeSpec.name*
string
nodename, refer provider guideline to name instances.
nodeSpec.instance
string
instance name as provider spec. Aws spec https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html Azure spec https://docs.microsoft.com/en-us/azure/virtual-machines/sizes
nodeSpec.machineType
string
This is a shirt size types for choosing instances. You can use this and ignore the instance field.
If instance field is specified, the priority is given to it.
Ex: s
, m
, l
etc.
For machine type refer table below
nodeSpec.count
number
Number of nodes in a pool
1
nodeSpec.labels
map
set of pair of key values. The node will be tagged with this ex: { created_at: sometime, by: bob}
{}
nodeSpec.gpuEnabled
bool
creates the aws node pool with gpu AMI, In azure, choosing gpou instance will suffice to create GPU node.
false
nodeSpec.migProfile
enum/string
azure mig profile to be used along with GPU instance. Refer https://docs.microsoft.com/en-us/azure/aks/gpu-multi-instance
Values can be one of
{ MIG1g = 1
, MIG2g = 2
, MIG3g = 3
, MIG4g = 4
, MIG7g = 5 }
MIG1g
nodeSpec.capacityType
enum/string
capacity type as per provider offer.
one of ON_DEMAND
or SPOT
ON_DEMAND
nodeSpec.spotInstances
list
when the capacityType is set SPOT
, need to pass multiple instances to create a spot request.
[]
s
1
1 GB
-
m
8
16 GB
-
l
32
64 GB
-
xl
64
128 GB
-
m+t4
4
16 GB
1 NVIDIA Tesla T4
m+k80
4
53 GB
1 NVIDIA Tesla K80
l+k80
12
112 GB
2 NVIDIA Tesla K80
xl+k80
24
212 GB
4 NVIDIA Tesla K80
m+v100
4
61 GB
1 NVIDIA Tesla V100
l+v100
12
224 GB
2 NVIDIA Tesla V100
xl+v100
24
448 GB
4 NVIDIA Tesla V100
Type
s
t2.micro
Standard_B1s
g1-small
cpu: 1
memory: 1G
m
m5.2xlarge
Standard_F8s_v2
e2-custom-8-32768
cpu: 8
memory: 32G
l
m5.8xlarge
Standard_F32s_v2
e2-custom-32-131072
cpu: 32
memory: 128G
xl
m5.16xlarge
Standard_F64s_v2
n2-custom-64-262144
cpu: 64
memory: 256G
m+t4
g4dn.xlarge
Standard_NC4as_T4_v3
n1-standard-4
cpu: 4
memory: 16G
1 nvidia-tesla-t4
m+k80
p2.xlarge
Standard_NC6
custom-8-53248
cpu: 4
memory: 64G
1 nvidia-tesla-k80
l+k80
p2.8xlarge
Standard_NC12
custom-32-131072
cpu: 32
memory: 512G
8 nvidia-tesla-k80
xl+k80
p2.16xlarge
Standard_NC24
custom-64-212992-ext
cpu: 64
memory: 768G
16 nvidia-tesla-k80
m+v100
p3.xlarge
Standard_NC6s_v3
custom-8-65536-ext
cpu: 8
memory: 64G
1 nvidia-tesla-v100
l+v100
p3.8xlarge
Standard_NC12s_v3
custom-32-262144-ext
cpu: 32
memory: 256G
4 nvidia-tesla-v100
xl+v100
p3.16xlarge
Standard_NC24s_v3
custom-64-524288-ext
cpu: 64
memory: 512G
8 nvidia-tesla-v100