

 **Bantu tingkatkan halaman ini** 

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Untuk berkontribusi pada panduan pengguna ini, pilih **Edit halaman ini pada GitHub** tautan yang terletak di panel kanan setiap halaman.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengelola CoreDNS untuk DNS di klaster Amazon EKS
<a name="managing-coredns"></a>

**Tip**  
Dengan Amazon EKS Auto Mode, Anda tidak perlu menginstal atau meningkatkan add-on jaringan. Mode Otomatis mencakup jaringan pod dan kemampuan load balancing.  
Untuk informasi selengkapnya, lihat [Mengotomatiskan infrastruktur klaster dengan Mode Otomatis EKS](automode.md).

CoreDNS adalah server DNS yang fleksibel dan dapat diperluas yang dapat berfungsi sebagai DNS klaster Kubernetes. Saat Anda meluncurkan klaster Amazon EKS dengan setidaknya satu simpul, dua replika citra CoreDNS di-deploy secara default, terlepas dari jumlah simpul yang di-deploy di klaster Anda. Pod-pod CoreDNS menyediakan resolusi nama untuk semua Pod di dalam klaster. Pod CoreDNS dapat di-deploy ke node Fargate jika klaster Anda menyertakan Profil Fargate dengan namespace yang cocok dengan [namespace](fargate-profile.md) untuk CoreDNS. `deployment` Untuk informasi selengkapnya tentang CoreDNS, lihat [Using CoreDNS for Service Discovery](https://kubernetes.io/docs/tasks/administer-cluster/coredns/) dalam dokumentasi Kubernetes.

## Versi CoreDNS
<a name="coredns-versions"></a>

Tabel berikut mencantumkan versi terbaru dari jenis add-on Amazon EKS untuk setiap versi Kubernetes.


| Versi Kubernetes | Versi CoreDNS | 
| --- | --- | 
| 1,35 | v1.14.2-eksbuild.4 | 
| 1,34 | v1.13.2-eksbuild.7 | 
| 1.33 | v1.13.2-eksbuild.7 | 
| 1.32 | v1.11.4-eksbuild.33 | 
| 1.31 | v1.11.4-eksbuild.33 | 
| 1.30 | v1.11.4-eksbuild.33 | 

**penting**  
Jika Anda mengelola sendiri add-on ini, versi dalam tabel mungkin tidak sama dengan versi yang dikelola sendiri yang tersedia. Untuk informasi selengkapnya tentang memperbarui jenis pengaya yang dikelola sendiri, lihat. [Perbarui add-on yang dikelola sendiri CoreDNS Amazon EKS](coredns-add-on-self-managed-update.md)

## Pertimbangan peningkatan CoreDNS yang penting
<a name="coredns-upgrade"></a>
+ Pembaruan CoreDNS memanfaatkan PodDisruptionBudget a untuk membantu menjaga ketersediaan layanan DNS selama proses pembaruan.
+ Untuk meningkatkan stabilitas dan ketersediaan Penerapan CoreDNS, `v1.9.3-eksbuild.6` versi dan yang lebih baru `v1.10.1-eksbuild.3` dan digunakan dengan file. `PodDisruptionBudget` Jika Anda telah menerapkan yang sudah ada`PodDisruptionBudget`, pemutakhiran Anda ke versi ini mungkin gagal. Jika pemutakhiran gagal, menyelesaikan salah satu tugas berikut akan menyelesaikan masalah:
  + Saat melakukan pemutakhiran add-on Amazon EKS, pilih untuk mengganti pengaturan yang ada sebagai opsi resolusi konflik Anda. Jika Anda telah membuat pengaturan khusus lainnya ke Deployment, pastikan untuk mencadangkan pengaturan Anda sebelum memutakhirkan sehingga Anda dapat menerapkan kembali pengaturan kustom Anda yang lain setelah upgrade.
  + Hapus yang sudah ada `PodDisruptionBudget` dan coba upgrade lagi.
+ Dalam versi add-on EKS `v1.9.3-eksbuild.3` dan yang lebih baru `v1.10.1-eksbuild.6` dan yang lebih baru, CoreDNS Deployment menetapkan `readinessProbe` untuk menggunakan titik akhir. `/ready` Titik akhir ini diaktifkan dalam file `Corefile` konfigurasi untuk CoreDNS.

  Jika Anda menggunakan kustom`Corefile`, Anda harus menambahkan `ready` plugin ke konfigurasi, sehingga `/ready` titik akhir aktif di CoreDNS agar probe dapat digunakan.
+ Dalam versi add-on EKS `v1.9.3-eksbuild.7` dan yang lebih baru `v1.10.1-eksbuild.4` dan yang lebih baru, Anda dapat mengubah file. `PodDisruptionBudget` Anda dapat mengedit add-on dan mengubah pengaturan ini di **Pengaturan konfigurasi opsional** menggunakan bidang dalam contoh berikut. Contoh ini menunjukkan default`PodDisruptionBudget`.

  ```
  {
      "podDisruptionBudget": {
          "enabled": true,
          "maxUnavailable": 1
          }
  }
  ```

  Anda dapat mengatur `maxUnavailable` atau`minAvailable`, tetapi Anda tidak dapat mengatur keduanya dalam satu`PodDisruptionBudget`. Untuk informasi selengkapnya`PodDisruptionBudgets`, lihat [Menentukan a PodDisruptionBudget dalam dokumentasi](https://kubernetes.io/docs/tasks/run-application/configure-pdb/#specifying-a-poddisruptionbudget) *Kubernetes*.

  Perhatikan bahwa jika Anda menyetel `enabled` ke`false`, `PodDisruptionBudget` tidak dihapus. Setelah Anda mengatur bidang ini`false`, Anda harus menghapus `PodDisruptionBudget` objek. Demikian pula, jika Anda mengedit add-on untuk menggunakan versi add-on yang lebih lama (menurunkan versi add-on) setelah memutakhirkan ke versi dengan a`PodDisruptionBudget`, add-on tidak dihapus. `PodDisruptionBudget` Untuk menghapus`PodDisruptionBudget`, Anda dapat menjalankan perintah berikut:

  ```
  kubectl delete poddisruptionbudget coredns -n kube-system
  ```
+ Dalam versi add-on EKS `v1.10.1-eksbuild.5` dan yang lebih baru, ubah toleransi default dari `node-role.kubernetes.io/master:NoSchedule` menjadi `node-role.kubernetes.io/control-plane:NoSchedule` mematuhi KEP 2067. *Untuk informasi lebih lanjut tentang KEP 2067, lihat [KEP-2067: Ganti nama label “master” kubeadm dan taint di Kubernetes](https://github.com/kubernetes/enhancements/tree/master/keps/sig-cluster-lifecycle/kubeadm/2067-rename-master-label-taint#renaming-the-node-rolekubernetesiomaster-node-taint) Enhancement Proposals (KEPs) di.* GitHub

  Dalam versi add-on EKS `v1.8.7-eksbuild.8` dan yang lebih baru `v1.9.3-eksbuild.9` dan yang lebih baru, kedua toleransi diatur agar kompatibel dengan setiap versi Kubernetes.
+ Dalam versi add-on EKS `v1.9.3-eksbuild.11` `v1.10.1-eksbuild.7` dan yang lebih baru, CoreDNS Deployment menetapkan nilai default untuk. `topologySpreadConstraints` Nilai default memastikan bahwa Pod CoreDNS tersebar di Availability Zone jika ada node di beberapa Availability Zone yang tersedia. Anda dapat menetapkan nilai kustom yang akan digunakan sebagai pengganti nilai default. Nilai default berikut:

  ```
  topologySpreadConstraints:
    - maxSkew: 1
      topologyKey: topology.kubernetes.io/zone
      whenUnsatisfiable: ScheduleAnyway
      labelSelector:
        matchLabels:
          k8s-app: kube-dns
  ```

### `v1.11`CoreDNS meningkatkan pertimbangan
<a name="coredns-upgrade-1"></a>
+ Dalam versi add-on EKS `v1.11.1-eksbuild.4` dan yang lebih baru, gambar kontainer didasarkan pada [gambar dasar minimal](https://gallery.ecr.aws/eks-distro-build-tooling/eks-distro-minimal-base) yang dikelola oleh Amazon EKS Distro, yang berisi paket minimal dan tidak memiliki cangkang. Untuk informasi selengkapnya, lihat [Amazon EKS Distro](https://distro.eks.amazonaws.com/). Penggunaan dan pemecahan masalah gambar CoreDNS tetap sama.