Skip to content

Commit

Permalink
feat(privatek8s): add an arm64 nodepool (#533)
Browse files Browse the repository at this point in the history
as per jenkins-infra/helpdesk#3823

---------

Co-authored-by: Damien Duportal <[email protected]>
Co-authored-by: Hervé Le Meur <[email protected]>
  • Loading branch information
3 people authored Dec 4, 2023
1 parent f3b400c commit 95f3282
Showing 1 changed file with 32 additions and 0 deletions.
32 changes: 32 additions & 0 deletions privatek8s.tf
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,38 @@ resource "azurerm_kubernetes_cluster_node_pool" "infracipool" {
tags = local.default_tags
}

resource "azurerm_kubernetes_cluster_node_pool" "infraciarm64" {
name = "arm64small"
vm_size = "Standard_D4pds_v5" # 4 vCPU, 16 GB RAM, local disk: 150 GB and 19000 IOPS
os_disk_type = "Ephemeral"
os_disk_size_gb = 150 # Ref. Cache storage size at https://learn.microsoft.com/en-us/azure/virtual-machines/dpsv5-dpdsv5-series#dpdsv5-series (depends on the instance size)
orchestrator_version = local.kubernetes_versions["privatek8s"]
kubernetes_cluster_id = azurerm_kubernetes_cluster.privatek8s.id
enable_auto_scaling = true
min_count = 0
max_count = 10
zones = [1]
vnet_subnet_id = data.azurerm_subnet.privatek8s_tier.id

# Spot instances
priority = "Spot"
eviction_policy = "Delete"
spot_max_price = "-1" # in $, -1 = On demand pricing
# Note: label and taint added automatically when in "Spot" priority, putting it here to explicit them
node_labels = {
"kubernetes.azure.com/scalesetpriority" = "spot"
}
node_taints = [
"jenkins=infra.ci.jenkins.io:NoSchedule",
"kubernetes.azure.com/scalesetpriority=spot:NoSchedule",
]
lifecycle {
ignore_changes = [node_count]
}

tags = local.default_tags
}

resource "azurerm_kubernetes_cluster_node_pool" "releasepool" {
name = "releasepool"
vm_size = "Standard_D8s_v3" # 8 vCPU 32 GiB RAM
Expand Down

0 comments on commit 95f3282

Please sign in to comment.