Menambahkan domain ke sertifikat server API

Nama alternatif subjek (SAN) adalah fitur sertifikat SSL yang memungkinkan Anda menentukan nama domain dan subdomain yang dilindungi oleh sertifikat. Pada Cluster Google Distributed Cloud, SAN default untuk server Kubernetes API mencakup alamat IP dan VIP node bidang kontrol dan Nama DNS Kubernetes. Dengan fitur SAN ekstra sertifikat server API khusus, Anda dapat menambahkan domain, subdomain, dan alamat IP tambahan sebagai SAN ke Sertifikat server Kubernetes API untuk cluster.

Guna menentukan SAN khusus untuk sertifikat server API, gunakan metode controlPlane.apiServerCertExtraSANs di spesifikasi konfigurasi cluster. Kolom ini mengambil daftar nama domain dan alamat IP internalnya. Kolom ini bersifat opsional dan dapat diubah. Anda dapat menambahkan {i>field <i}ini dan memperbaruinya saat Anda membuat cluster atau kapan saja setelahnya.

...
kind: Cluster
metadata:
  name: sample001
  namespace: cluster-sample001
spec:
  type: user
  ...
  controlPlane:
    apiServerCertExtraSANs:
    - "demo-dns.example.com"
    - "sample-dns.com"
    nodePoolSpec:
      nodes:
      - address: 10.200.0.20
  clusterNetwork:
  ...

Menambahkan domain selama pembuatan cluster

Saat Anda menambahkan SAN ekstra saat membuat cluster, server Kubernetes API mencakup domain dan alamat IP tambahan tertentu saat cluster yang tersedia.

Menambahkan atau memperbarui domain untuk cluster yang ada

Karena kolom apiServerCertExtraSANs dapat diubah, Anda dapat menambahkan atau memperbarui kapan saja untuk cluster yang ada. Saat Anda mengubah Kolom apiServerCertExtraSANs di cluster ini, memicu hal berikut aktivitas:

  • Pengontrol cluster Google Distributed Cloud membuat ulang server API sertifikat untuk menyertakan domain tambahan yang dimodifikasi.

  • Pengontrol cluster memulai ulang server API untuk memuat ulang CA {i>root<i}.

  • Nilai baru apiServerCertExtraSANs diverifikasi oleh webhook untuk pastikan bahwa mereka sesuai dengan nama domain RFC 1035 yang sesuai.

  • Kumpulan node bidang kontrol memasuki status rekonsiliasi.

    Control Plane Node Pool Status:
      Anthos Bare Metal Version:  1.28.0-gke.435
      Anthos Bare Metal Versions:
        1.28.0-gke.435:  3
      Conditions:
        ...
        Last Transition Time:  2023-11-15T18:23:49Z
        Observed Generation:   1
        Reason:                Reconciling
        Status:                True
        Type:                  Reconciling
    
  • Kumpulan node akan siap setelah perubahan diterapkan ke Kubernetes Server API di setiap node bidang kontrol.

    Control Plane Node Pool Status:
      Anthos Bare Metal Version:  1.28.0-gke.435
      Anthos Bare Metal Versions:
        1.28.0-gke.435:  3
      Conditions:
        . . .
        Last Transition Time:  2023-11-15T18:32:25Z
        Observed Generation:   1
        Reason:                ReconciliationCompleted
        Status:                False
        Type:                  Reconciling
    

Anda mungkin akan mengalami periode nonaktif saat mengupdate tambahan sertifikat server API Kolom SAN pada cluster yang sedang berjalan:

  • Pada cluster ketersediaan tinggi (HA), instance server API dimulai ulang secara berurutan. Anda masih dapat berinteraksi dengan cluster selama sertifikat karena load balancer mendistribusikan permintaan ke setiap server API. Namun, Anda mungkin melihat respons yang menunjukkan bahwa server API dinonaktifkan ke bawah. Jika Anda melihat respons ini, coba lagi permintaan tersebut.

  • Pada cluster non-HA, mungkin terjadi pemadaman layanan singkat sekitar satu menit saat server API dimulai ulang untuk memuat ulang sertifikat baru.

Perubahan ini membutuhkan waktu 5-20 menit untuk diterapkan ke semua server API, bergantung pada jumlah node bidang kontrol di cluster, dan beban cluster.