簡體   English   中英

AWS EKS 創建的 ASG 的每個 AZ 配置的多個實例類型

[英]Multiple instance types per AZ configuration for ASG created by AWS EKS

我已經使用 Terraform 部署了帶有 Spot 實例的 AWS EKS 集群。我正在使用 EKS 托管節點組,至於 Spot 實例,我想為 HA 指定每個 AZ 的多個實例類型。 如我所見,EKS 為我們創建的 ASG 已創建啟動模板,我們不應對其進行編輯(正如他們在 aws 文檔中提到的那樣)。 我想問一下,有什么方法可以在我的集群中更新這個“每個 AZ 的多個實例”。 還是我需要為其配置自定義 ASG? 我是否應該為每個 AZ 創建具有多種實例類型的 ASG 以獲得更好的空間容量可用性?

我是 EKS Spot 的新手,如果需要更多信息,請告訴我。

請參考CAS配置:

resource "helm_release" "cluster-autoscaler" {
  name        = local.app
  namespace   = var.namespace
  repository  = local.cluster_autoscaler_helm_repository
  chart       = var.cluster_autoscaler_helm_chart
  version     = var.cluster_autoscaler_helm_version

  values = [
    yamlencode({
      autoDiscovery = {
        clusterName = var.cluster_name
      }
      awsRegion = var.region
      extraArgs = {
        scan-interval = var.scan_interval
        expander = "least-waste"
        skip-nodes-with-local-storage = false
        skip-nodes-with-system-pods = false
      }
      extraVolumes = [
        {
          name             = "ssl-certs"
          hostPath = {
            path = "/etc/ssl/certs/ca-bundle.crt"
          }
        }
      ]
      extraVolumeMounts = [
        {
          name          = "ssl-certs"
          readOnly     = true
          mountPath    = "/etc/ssl/certs/ca-certificates.crt"

        }
      ]
      image = {
        repository = local.cluster_autoscaler_image
        tag        = var.cluster_autoscaler_image_version
      }
      podAnnotations = {
         "cluster-autoscaler.kubernetes.io/safe-to-evict" = "false"
      }
      podLabels = {
        app = local.app
      }
      rbac = {
        serviceAccount = {
          annotations = {
            "eks.amazonaws.com/role-arn": "arn:aws:iam::${var.account_number}:role/cluster-autoscaler"
          }
        }
      }
      replicaCount = var.replica_count

      # resources -- Pod resource requests and limits.
      resources = {
        limits = {
          cpu = var.resources_limit_cpu
          memory = var.resources_limit_memory
        }
        requests = {
          cpu = var.requests_limit_cpu
          memory = var.requests_limit_memory
        }
      }

    })]

}

對於配置點分配 startegy,我在本文檔中發現,對於 EKS 受管節點組,如果我使用的是capacity_type = "SPOT" ,則默認spotAllocationStrategy="capacity-optimized" 所以基本上,我的目的在這里得到了滿足。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM