

 **Bantu meningkatkan 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 GitHub ** tautan ** Edit halaman ini di 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.

# Gunakan Anotasi Layanan untuk mengonfigurasi Penyeimbang Beban Jaringan
<a name="auto-configure-nlb"></a>

Pelajari cara mengonfigurasi Network Load Balancers (NLB) di Amazon EKS menggunakan anotasi layanan Kubernetes. Topik ini menjelaskan anotasi yang didukung oleh Mode Otomatis EKS untuk menyesuaikan perilaku NLB, termasuk aksesibilitas internet, pemeriksaan kesehatan, SSL/TLS penghentian, dan mode penargetan IP.

Saat Anda membuat layanan jenis Kubernetes `LoadBalancer` dalam Mode Otomatis EKS, EKS secara otomatis menyediakan dan mengonfigurasi AWS Network Load Balancer berdasarkan anotasi yang Anda tentukan. Pendekatan deklaratif ini memungkinkan Anda mengelola konfigurasi penyeimbang beban secara langsung melalui manifes Kubernetes Anda, mempertahankan infrastruktur sebagai praktik kode.

EKS Auto Mode menangani penyediaan Network Load Balancer secara default untuk semua jenis layanan LoadBalancer - tidak diperlukan instalasi atau konfigurasi pengontrol tambahan. `loadBalancerClass: eks.amazonaws.com/nlb`Spesifikasi secara otomatis ditetapkan sebagai default cluster, merampingkan proses penerapan sambil mempertahankan kompatibilitas dengan beban kerja Kubernetes yang ada.

**catatan**  
Mode Otomatis EKS memerlukan tag subnet untuk mengidentifikasi subnet publik dan pribadi.  
Jika Anda membuat cluster Anda dengan`eksctl`, Anda sudah memiliki tag ini.  
Pelajari cara [Tag subnet untuk Mode Otomatis EKS](tag-subnets-auto.md).

## Layanan Sampel
<a name="_sample_service"></a>

Untuk informasi selengkapnya tentang `Service` sumber daya Kubernetes, lihat [ Dokumentasi Kubernetes. ](https://kubernetes.io/docs/concepts/services-networking/service/)

Tinjau sumber `Service` daya sampel di bawah ini:

```
apiVersion: v1
kind: Service
metadata:
  name: echoserver
  annotations:
    # Specify the load balancer scheme as internet-facing to create a public-facing Network Load Balancer (NLB)
    service.beta.kubernetes.io/aws-load-balancer-scheme: internet-facing
spec:
  selector:
    app: echoserver
  ports:
    - port: 80
      targetPort: 8080
      protocol: TCP
  type: LoadBalancer
  # Specify the new load balancer class for NLB as part of EKS Auto Mode feature
  # For clusters with Auto Mode enabled, this field can be omitted as it's the default
  loadBalancerClass: eks.amazonaws.com/nlb
```

## Anotasi yang umum digunakan
<a name="_commonly_used_annotations"></a>

Tabel berikut mencantumkan anotasi yang umum digunakan yang didukung oleh Mode Otomatis EKS. Perhatikan bahwa Mode Otomatis EKS mungkin tidak mendukung semua anotasi.

**Tip**  
Semua anotasi berikut harus diawali dengan `service.beta.kubernetes.io/` 


| Bidang | Deskripsi | Contoh | 
| --- | --- | --- | 
|  `aws-load-balancer-type`  | Menentukan jenis penyeimbang beban. Gunakan `external` untuk penerapan baru. |  `external`  | 
|  `aws-load-balancer-nlb-target-type`  | Menentukan apakah akan merutekan lalu lintas ke instance node atau langsung ke IP pod. Gunakan `instance` untuk penerapan standar atau `ip` untuk routing pod langsung. |  `instance`  | 
|  `aws-load-balancer-scheme`  | Mengontrol apakah penyeimbang beban bersifat internal atau menghadap ke internet. |  `internet-facing`  | 
|  `aws-load-balancer-healthcheck-protocol`  | Protokol pemeriksaan kesehatan untuk kelompok sasaran. Opsi umum adalah `TCP` (default) atau`HTTP`. |  `HTTP`  | 
|  `aws-load-balancer-healthcheck-path`  | Jalur HTTP untuk pemeriksaan kesehatan saat menggunakan HTTP/HTTPS protokol. |  `/healthz`  | 
|  `aws-load-balancer-healthcheck-port`  | Pelabuhan digunakan untuk pemeriksaan kesehatan. Bisa berupa nomor port tertentu atau`traffic-port`. |  `traffic-port`  | 
|  `aws-load-balancer-subnets`  | Menentukan subnet mana yang akan dibuat penyeimbang beban. Dapat menggunakan subnet ID atau nama. |  `subnet-xxxx, subnet-yyyy`  | 
|  `aws-load-balancer-ssl-cert`  | ARN dari sertifikat SSL dari Manajer AWS Sertifikat untuk HTTPS/TLS. |  ` arn:aws: acm:region:account:certificate/cert-id`  | 
|  `aws-load-balancer-ssl-ports`  | Menentukan port mana yang harus digunakan SSL/TLS. |  `443, 8443`  | 
|  `load-balancer-source-ranges`  | Rentang CIDR diizinkan untuk mengakses penyeimbang beban. |  `10.0.0.0/24, 192.168.1.0/24`  | 
|  `aws-load-balancer-additional-resource-tags`  |  AWS Tag tambahan untuk diterapkan pada penyeimbang beban dan sumber daya terkait. |  `Environment=prod,Team=platform`  | 
|  `aws-load-balancer-ip-address-type`  | Menentukan apakah load balancer menggunakan IPv4 atau dual-stack (IPv4 \+ IPv6). |  `ipv4` atau `dualstack`  | 
|  `aws-load-balancer-listener-attributes.${Protocol}-${Port}`  | Menentukan atribut pendengar untuk diterapkan ke pendengar. |  `tcp.idle_timeout.seconds=350`  | 

## Pertimbangan-pertimbangan
<a name="_considerations"></a>
+ Anda harus memperbarui Peran IAM Cluster untuk mengaktifkan propagasi tag dari Kubernetes ke AWS sumber daya Load Balancer. Untuk informasi selengkapnya, lihat [Khusus AWS tag untuk EKS Sumber daya otomatis](auto-cluster-iam-role.md#tag-prop).
+ Untuk informasi tentang mengaitkan sumber daya dengan Mode Otomatis EKS atau Load Balancer Controller yang dikelola sendiri AWS , lihat. [Referensi migrasi](migrate-auto.md#migration-reference)
+ Untuk informasi tentang memperbaiki masalah dengan penyeimbang beban, lihat[Memecahkan Masalah Mode Otomatis EKS](auto-troubleshoot.md).
+ Untuk pertimbangan lebih lanjut tentang menggunakan kemampuan penyeimbangan beban Mode Otomatis EKS, lihat[Penyeimbangan beban](auto-networking.md#auto-lb-consider).

Saat bermigrasi ke Mode Otomatis EKS untuk penyeimbangan beban, beberapa perubahan dalam anotasi layanan dan konfigurasi sumber daya diperlukan. Tabel berikut menguraikan perbedaan utama antara implementasi sebelumnya dan baru, termasuk opsi yang tidak didukung dan alternatif yang direkomendasikan.

### Anotasi layanan
<a name="_service_annotations"></a>


| Sebelumnya | Baru | Deskripsi | 
| --- | --- | --- | 
|  `service.beta.kubernetes.io/load-balancer-source-ranges`  | Tidak didukung | Gunakan `spec.loadBalancerSourceRanges` pada Layanan | 
|  `service.beta.kubernetes.io/aws-load-balancer-type`  | Tidak didukung | Gunakan `spec.loadBalancerClass` pada Layanan | 
|  `service.beta.kubernetes.io/aws-load-balancer-internal`  | Tidak didukung | Gunakan `service.beta.kubernetes.io/aws-load-balancer-scheme`  | 
|  `service.beta.kubernetes.io/aws-load-balancer-proxy-protocol`  | Tidak didukung | Gunakan sebagai `service.beta.kubernetes.io/aws-load-balancer-target-group-attributes` gantinya | 
| Berbagai atribut penyeimbang beban | Tidak didukung | Gunakan `service.beta.kubernetes.io/aws-load-balancer-attributes`  | 
|  `service.beta.kubernetes.io/aws-load-balancer-access-log-enabled`  | Tidak didukung | Gunakan sebagai `service.beta.kubernetes.io/aws-load-balancer-attributes` gantinya | 
|  `service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-name`  | Tidak didukung | Gunakan sebagai `service.beta.kubernetes.io/aws-load-balancer-attributes` gantinya | 
|  `service.beta.kubernetes.io/aws-load-balancer-access-log-s3-bucket-prefix`  | Tidak didukung | Gunakan sebagai `service.beta.kubernetes.io/aws-load-balancer-attributes` gantinya | 
|  `service.beta.kubernetes.io/aws-load-balancer-cross-zone-load-balancing-enabled`  | Tidak didukung | Gunakan sebagai `service.beta.kubernetes.io/aws-load-balancer-attributes` gantinya | 

Untuk bermigrasi dari anotasi atribut load balancer yang tidak digunakan lagi, gabungkan pengaturan ini ke dalam anotasi. `service.beta.kubernetes.io/aws-load-balancer-attributes` Anotasi ini menerima daftar pasangan kunci-nilai yang dipisahkan koma untuk berbagai atribut penyeimbang beban. Misalnya, untuk menentukan logging akses, dan penyeimbangan beban lintas zona, gunakan format berikut:

```
service.beta.kubernetes.io/aws-load-balancer-attributes: access_logs.s3.enabled=true,access_logs.s3.bucket=my-bucket,access_logs.s3.prefix=my-prefix,load_balancing.cross_zone.enabled=true
```

Format konsolidasi ini menyediakan cara yang lebih konsisten dan fleksibel untuk mengonfigurasi atribut penyeimbang beban sekaligus mengurangi jumlah anotasi individual yang diperlukan. Tinjau konfigurasi Layanan yang ada dan perbarui untuk menggunakan format gabungan ini.

### TargetGroupBinding
<a name="_targetgroupbinding"></a>


| Sebelumnya | Baru | Deskripsi | 
| --- | --- | --- | 
|  `elbv2.k8s.aws/v1beta1`  |  `eks.amazonaws.com/v1`  | Perubahan versi API | 
|  `spec.targetType`opsional |  `spec.targetType`diperlukan | Spesifikasi tipe target eksplisit | 
|  `spec.networking.ingress.from`  | Tidak didukung | Tidak lagi mendukung NLB tanpa grup keamanan | 

Catatan: Untuk menggunakan TargetGroupBinding fitur kustom, Anda harus menandai grup target dengan `eks:eks-cluster-name` tag dengan nama cluster untuk memberikan pengontrol izin IAM yang diperlukan. Ketahuilah bahwa pengontrol akan menghapus grup target ketika TargetGroupBinding sumber daya atau cluster dihapus.