全部产品
Search
文档中心

Container Service for Kubernetes:Buat dan kelola kolam node Windows di kluster ACK

更新时间:Dec 09, 2025

Kolam node memungkinkan Anda mengelola grup sumber daya node dalam kluster, seperti mengelola label node dan taint secara seragam. Untuk membuat node dengan Windows sebagai sistem operasi, buatlah kolam node Windows dalam kluster ACK dan tingkatkan versi kubelet, runtime, serta gambar sistem operasi pada tingkat kolam node.

Batasan

Tabel berikut menjelaskan batasan saat membuat kolam node Windows:

Batasan

Deskripsi

Kluster

Runtime kontainer

Hanya containerd 1.6 dan versi lebih baru yang mendukung kolam node Windows.

Untuk meningkatkan versi runtime, lihat Tingkatkan kolam node.

Tipe kolam node

Hanya kolam node non-terkelola yang dapat dibuat sebagai kolam node Windows.

Tipe instans

  • Tidak semua tipe instans mendukung kolam node Windows. Saat membuat kolam node Windows, hanya tipe instans yang mendukung kolam node Windows yang dapat dipilih, seperti ecs.g6.xlarge.

  • Tipe instans harus memiliki setidaknya 4 vCPU dan 8 GB memori.

    • Kontainer Windows tidak akan mengalami OOM Killed ketika penggunaan memori melebihi batas. Sejak Mei 2021, di kluster ACK yang menjalankan V1.16 atau lebih baru, node Windows yang baru ditambahkan memesan sejumlah sumber daya tertentu (1,5 core CPU, 2,5 GB RAM, 3 GB DISK) saat startup untuk memastikan operasi stabil dari sistem operasi Windows, kubelet, dan runtime kontainer. Untuk informasi lebih lanjut tentang pemesanan sumber daya, lihat Kebijakan pemesanan sumber daya node.

      Catatan

      ACK dapat mengurangi atau mencegah node Windows menjadi sepenuhnya tidak tersedia karena alokasi berlebih beban kerja Windows melalui mekanisme pemesanan sumber daya. Namun, ketika kebocoran memori terjadi di aplikasi kontainer Windows, masih ada kemungkinan node Windows mengalami crash.

    • Kontainer Windows memiliki jejak kecil. Untuk informasi lebih lanjut, lihat Persyaratan memori untuk kontainer Windows.

Tabel berikut menjelaskan batasan saat menggunakan kolam node Windows:

Batasan

Deskripsi

Sistem operasi

Kolam node Windows mendukung Windows Server 2019, Windows Server 2022, dan Windows Server Core 2022 sebagai sistem operasi.

Catatan

Konsol ACK mendukung pemilihan Windows Server 2019, Windows Server 2022, dan Windows Server Core 2022. Untuk menggunakan Windows Server Core 2004, pilih ID gambar terbaru berdasarkan catatan rilis gambar publik ECS untuk membuat kolam node. Untuk informasi lebih lanjut, lihat 2023 catatan rilis gambar publik.

Jumlah node

Secara default, Anda dapat menerapkan paling banyak 100 node dalam sebuah kluster. Jika Anda perlu menambahkan lebih banyak node, ajukan permintaan di halaman Manajemen Kuota.

Server

Saat menambahkan server yang sudah ada, pastikan bahwa instans Elastic Compute Service (ECS) di Virtual Private Cloud (VPC) Anda disambungkan ke elastic IP addresses (EIPs), atau gateway NAT dikonfigurasi untuk VPC tersebut. Pastikan bahwa node dapat mengakses Internet; jika tidak, penambahan server akan gagal. Untuk informasi lebih lanjut tentang tindakan pencegahan dan prosedur untuk menambahkan instans ECS yang sudah ada, lihat Tambahkan node yang sudah ada.

Buat kolam node Windows

Konsol

Konsol tidak mendukung pembuatan kolam node default (default-nodepool) sebagai kolam node Windows. Lihat bagian Batasan di atas, dan buat kolam node Windows setelah membuat kluster.

  1. Masuk ke Konsol ACK. Di panel navigasi sebelah kiri, klik Clusters.

  2. Di halaman Clusters, temukan kluster yang ingin dikelola dan klik namanya. Di panel navigasi sebelah kiri, pilih Nodes > Node Pools.

  3. Di pojok kiri atas halaman Node Pools, klik Create Node Pool, konfigurasikan parameter, lalu klik Confirm.

    Untuk informasi lebih lanjut tentang parameter, lihat Buat dan Kelola Kolam Node. Tabel berikut menjelaskan beberapa parameter:

    Parameter

    Deskripsi

    Configure Managed Node Pool

    Pilih Disable.

    Container Runtime

    Pilih containerd.

    Instance Types

    • Beberapa tipe instans tidak mendukung kolam node Windows. Hanya tipe instans yang didukung yang dapat dipilih saat membuat kolam node Windows, seperti ecs.g6.xlarge.

    • Pilih tipe instans dengan setidaknya 4 vCPU dan 8 GB memori.

    • Pilih tipe instans non-GPU-accelerated.

      Untuk informasi lebih lanjut tentang tipe instans, lihat Famili instans.

    Expected Nodes

    Jumlah node yang ingin Anda pertahankan dalam kolam node. Setelah menentukan nilai ini, kolam node akan secara otomatis menyesuaikan kapasitas untuk mempertahankan jumlah node yang diinginkan.

    Operating System

    Pilih Windows.

    ECS Tags

    Tambahkan label ke instans Elastic Compute Service (ECS).

    Node Labels

    Label yang ingin Anda tambahkan ke node dalam kolam node.

    Di halaman Node Pools, ketika Status kolam node adalah Active, kolam node Windows telah dibuat.

API

Panggil operasi CreateClusterNodePool untuk membuat kolam node Windows dan mengonfigurasi parameter seperti jumlah node dan tipe instans. Contoh parameter ditunjukkan di bawah ini:

{
  "ClusterId": "ca8ed83XXXXXXXXXXXX5ec197",          // ID kluster.
  "body": { 
    "nodepool_info": {
      "name": "nodepool-fXXXXXx",                    // Nama kolam node.
      "resource_group_id": "rg-acfmXXXXXXXXsjpq"     // ID kelompok sumber daya tempat kluster berada. Parameter ini digunakan untuk mengisolasi sumber daya yang berbeda.  
    },
    "scaling_group": {
      "vswitch_ids": [                               // vSwitch tempat node kluster diterapkan. Parameter ini diperlukan saat Anda membuat kluster terkelola tanpa node. 
        "vsw-bp1XXXXXXXXXXXXX1xm84",
        "vsw-bp1XXXXXXXXXXXX2v6x0a",
        "vsw-bp1XXXXXXXXXXXXXjkxbo"
      ],
      "data_disks": [                                // Konfigurasi disk data yang dilampirkan ke node pekerja, seperti tipe disk dan ukuran disk.
        {
          "category": "cloud_essd",
          "size": 120,
          "encrypted": "false",
          "performance_level": "PL0"
        }
      ],
      "vpc_id": "vpc-bpXXXXXXXXXXXXXXXmgb6",         // ID VPC tempat kluster diterapkan.
      "instance_charge_type": "PostPaid",            // Metode penagihan node. Nilai valid: PrePaid: langganan. PostPaid: bayar sesuai penggunaan. Nilai default: PostPaid.
      "internet_max_bandwidth_out": 1,               // Bandwidth maksimum keluar alamat IP publik node. Unit: Mbit/s. Nilai valid: 1 hingga 100.
      "soc_enabled": false,                          // Menentukan apakah akan mengaktifkan penguatan keamanan MLPS. Nilai valid: true: mengaktifkan penguatan keamanan MLPS. false: menonaktifkan penguatan keamanan MLPS.
      "security_hardening_os": false,                // Menentukan apakah akan mengaktifkan penguatan keamanan untuk sistem operasi. Nilai valid: true: mengaktifkan penguatan keamanan. false: menonaktifkan penguatan keamanan. Nilai default: false.
      "instance_types": [                            // Tipe instans.
        "ecs.n2.large"
      ],
      "instance_patterns": [                         // Konfigurasi instans.
        {
          "Cores": 4,
          "Memory": 16,
          "burst_performance_option": "Exclude",     // Menentukan apakah tipe instans merupakan tipe instans burstable.  
          "excluded_instance_types": [               // Tipe instans yang ingin Anda kecualikan.
            "ecs.c6t.*"
            // ...
          ],
          "instance_type_families": [                // Famili instans yang ingin Anda tentukan.  
            "ecs.g6"
            // ...
          ]
        }
      ],
      "login_password": "XXXXXX",
      "login_as_non_root": false,
      "system_disk_category": "cloud_essd",
      "system_disk_size": 40,
      "system_disk_performance_level": "PL0",
      "system_disk_encrypted": false,
      "multi_az_policy": "BALANCE",                // Kebijakan penskalaan untuk grup penskalaan multi-zona.
      "platform": "WindowsServer2022",
      "image_id": "win2022_21H2_x64_dtc_en-us_40G_container_alibase_20240220.vhd",
      "image_type": "WindowsServer2022",
      "desired_size": 1
    },
    "kubernetes_config": {                         // Konfigurasi kluster.
      "cms_enabled": true,                         // Menentukan apakah akan menginstal Agen CloudMonitor pada node ECS. Setelah Agen CloudMonitor diinstal, Anda dapat melihat informasi pemantauan tentang instans ECS di Konsol CloudMonitor. Kami merekomendasikan Anda menginstal Agen CloudMonitor.
      "unschedulable": false,                      // Menentukan apakah akan menetapkan node yang ditambahkan ke kolam node sebagai tidak dapat dijadwalkan. Nilai valid: true: Node tidak dapat dijadwalkan setelah aktivitas skala keluar dilakukan. false: Node dapat dijadwalkan setelah aktivitas skala keluar dilakukan.
      "runtime": "containerd",                   
      "runtime_version": "2.1.1"                   // Hanya containerd 1.6 dan versi lebih baru yang mendukung kolam node Windows.
    },
    "auto_scaling": {                              // Konfigurasi penskalaan otomatis untuk kolam node. Nilai valid: true: mengaktifkan penskalaan otomatis untuk kolam node. false: menonaktifkan penskalaan otomatis.
      "enable": false
    },
    "tee_config": {                                // Konfigurasi komputasi rahasia untuk kolam node. Nilai valid: true: mengaktifkan komputasi rahasia untuk kluster. false: tidak mengaktifkan komputasi rahasia untuk kluster.
      "tee_enable": false
    },
    "node_config": {                               // Konfigurasi node.    
      "image_acceleration_config": {
        "enable_image_acceleration": false
      }
    }
  }
}

Terraform

Lihat Dokumen Ikhtisar Terraform untuk membuat kolam node Windows dan mengonfigurasi parameter seperti jumlah node dan tipe instans. Contoh konfigurasi Terraform ditunjukkan di bawah ini:

provider "alicloud" {
  region = "cn-hangzhou"
}

resource "alicloud_cs_kubernetes_node_pool" "pool" {
  tee_config {
    tee_enable = false
  }

  runtime_version   = "2.1.1"                    // Versi runtime kontainer. Hanya containerd 1.6 dan versi lebih baru yang mendukung kolam node Windows.
  resource_group_id = "rg-acXXXXXXXjpq"
  multi_az_policy   = "BALANCE"
  node_pool_name    = "nodepool-fqLfdx"
  login_as_non_root = false
  runtime_name      = "containerd"
  cluster_id        = "ca8ed83XXXXXXXXXXXXXXXXa55ec197"
  password          = "XXXXXXX"

  data_disks {
    size              = 120
    encrypted         = "false"
    performance_level = "PL0"
    category          = "cloud_essd"
  }

  instance_charge_type = "PostPaid"               // Metode penagihan node. Nilai valid: PrePaid: langganan. PostPaid: bayar sesuai penggunaan. Nilai default: PostPaid.
  desired_size         = 1
  unschedulable        = false

  scaling_config {
    enable = false
  }

  image_type    = "WindowsServer"
  vswitch_ids   = [
    "vsw-bp1XXXXXXXXXXXXXXXX84",
    "vsw-bp1XXXXXXXXXXXXXXXX0a",
    "vsw-bp1XXXXXXXXXXXXXXXXXo"
  ]
  
  instance_types = [                             // Tipe instans. Tipe instans node dalam kolam node. Ketika sistem menambahkan node ke kolam node, sistem memilih yang paling sesuai dari tipe instans yang ditentukan untuk node.
    "ecs.g6.large" 
  ]
  soc_enabled                   = false          // Menentukan apakah akan mengaktifkan penguatan keamanan MLPS. Nilai valid: true: mengaktifkan penguatan keamanan MLPS. false: menonaktifkan penguatan keamanan MLPS.
  internet_max_bandwidth_out    = 1              // Bandwidth maksimum keluar alamat IP publik node. Unit: Mbit/s. Nilai valid: 1 hingga 100.
  system_disk_encrypted         = false          // Menentukan apakah akan mengenkripsi disk sistem. Nilai valid: true: Disk sistem dienkripsi. false: Disk sistem tidak dienkripsi.
  system_disk_size              = 40
  install_cloud_monitor         = true
  system_disk_category          = "cloud_essd"
  system_disk_performance_level = "PL0"
  image_id                      = "win2022_21H2_x64_dtc_en-us_40G_container_alibase_20240220.vhd"
  security_hardening_os         = false
}

Tingkatkan kolam node Windows

Meningkatkan kolam node Windows mencakup pembaruan kubelet dan runtime kontainer. Sebelum meningkatkan kolam node, pastikan Anda telah meningkatkan lapisan kontrol ke versi target.

  • Peningkatan kubelet: Semua node dalam kolam node akan ditingkatkan ke versi yang sama dengan lapisan kontrol.

  • Peningkatan runtime kontainer: Saat versi runtime kontainer baru dirilis, Anda dapat memperbarui runtime kontainer pada node dalam kolam node.

Untuk informasi lebih lanjut tentang tindakan pencegahan dan langkah-langkah peningkatan, lihat Tingkatkan Kolam Node. Saat mengonfigurasi metode peningkatan, kolam node Windows harus ditingkatkan dengan mengganti disk sistem node.

Tingkatkan gambar sistem operasi kolam node Windows

Untuk meningkatkan gambar sistem operasi kolam node ke versi terbaru dan memanfaatkan fitur baru, optimasi, serta perbaikan bug, lihat Ganti Sistem Operasi.

Untuk informasi lebih lanjut tentang versi gambar OS terbaru, lihat Sistem Operasi.

Referensi