|
| 1 | +--- |
| 2 | +title: Dual-stack IPv4/IPv6 |
| 3 | +feature: |
| 4 | + title: Dual-stack IPv4/IPv6 |
| 5 | + description: > |
| 6 | + Pengalokasian alamat IPv4 dan IPv6 untuk Pod dan Service |
| 7 | +
|
| 8 | +content_template: templates/concept |
| 9 | +weight: 70 |
| 10 | +--- |
| 11 | + |
| 12 | +{{% capture overview %}} |
| 13 | + |
| 14 | +{{< feature-state for_k8s_version="v1.16" state="alpha" >}} |
| 15 | + |
| 16 | +_Dual-stack_ IPv4/IPv6 memungkinkan pengalokasian alamat IPv4 dan IPv6 untuk |
| 17 | +{{< glossary_tooltip text="Pod" term_id="pod" >}} dan {{< glossary_tooltip text="Service" term_id="service" >}}. |
| 18 | + |
| 19 | +Jika kamu mengaktifkan jaringan _dual-stack_ IPv4/IPv6 untuk klaster Kubernetes |
| 20 | +kamu, klaster akan mendukung pengalokasian kedua alamat IPv4 dan IPv6 secara |
| 21 | +bersamaan. |
| 22 | + |
| 23 | +{{% /capture %}} |
| 24 | + |
| 25 | +{{% capture body %}} |
| 26 | + |
| 27 | +## Fitur-fitur yang didukung |
| 28 | + |
| 29 | +Mengaktifkan _dual-stack_ IPv4 / IPv6 pada klaster Kubernetes kamu untuk |
| 30 | +menyediakan fitur-fitur berikut ini: |
| 31 | + |
| 32 | +* Jaringan Pod _dual-stack_ (pengalokasian sebuah alamat IPv4 dan IPv6 untuk setiap Pod) |
| 33 | +* Service yang mendukung IPv4 dan IPv6 (setiap Service hanya untuk satu keluarga alamat) |
| 34 | +* Perutean Pod ke luar klaster (misalnya Internet) melalui antarmuka IPv4 dan IPv6 |
| 35 | + |
| 36 | +## Prasyarat |
| 37 | + |
| 38 | +Prasyarat berikut diperlukan untuk menggunakan _dual-stack_ IPv4/IPv6 pada |
| 39 | +klaster Kubernetes : |
| 40 | + |
| 41 | +* Kubernetes versi 1.16 atau yang lebih baru |
| 42 | +* Dukungan dari penyedia layanan untuk jaringan _dual-stack_ (Penyedia layanan _cloud_ atau yang lainnya harus dapat menyediakan antarmuka jaringan IPv4/IPv6 yang dapat dirutekan) untuk Node Kubernetes |
| 43 | +* Sebuah _plugin_ jaringan yang mendukung _dual-stack_ (seperti Kubenet atau Calico) |
| 44 | +* Kube-proxy yang berjalan dalam mode IPVS |
| 45 | + |
| 46 | +## Mengaktifkan _dual-stack_ IPv4/IPv6 |
| 47 | + |
| 48 | +Untuk mengaktifkan _dual-stack_ IPv4/IPv6, aktifkan [gerbang fitur (_feature gate_)](/docs/reference/command-line-tools-reference/feature-gates/) `IPv6DualStack` |
| 49 | +untuk komponen-komponen yang relevan dari klaster kamu, dan tetapkan jaringan |
| 50 | +_dual-stack_ pada klaster: |
| 51 | + |
| 52 | + * kube-controller-manager: |
| 53 | + * `--feature-gates="IPv6DualStack=true"` |
| 54 | + * `--cluster-cidr=<IPv4 CIDR>,<IPv6 CIDR>` misalnya `--cluster-cidr=10.244.0.0/16,fc00::/24` |
| 55 | + * `--service-cluster-ip-range=<IPv4 CIDR>,<IPv6 CIDR>` |
| 56 | + * `--node-cidr-mask-size-ipv4|--node-cidr-mask-size-ipv6` nilai bawaannya adalah /24 |
| 57 | + untuk IPv4 dan /64 untuk IPv6 |
| 58 | + * kubelet: |
| 59 | + * `--feature-gates="IPv6DualStack=true"` |
| 60 | + * kube-proxy: |
| 61 | + * `--proxy-mode=ipvs` |
| 62 | + * `--cluster-cidr=<IPv4 CIDR>,<IPv6 CIDR>` |
| 63 | + * `--feature-gates="IPv6DualStack=true"` |
| 64 | + |
| 65 | +{{< caution >}} |
| 66 | +Jika kamu menentukan blok alamat IPv6 yang lebih besar dari /24 melalui |
| 67 | +`--cluster-cidr` pada baris perintah, maka penetapan tersebut akan gagal. |
| 68 | +{{< /caution >}} |
| 69 | + |
| 70 | +## Service |
| 71 | + |
| 72 | +Jika klaster kamu mengaktifkan jaringan _dual-stack_ IPv4/IPv6, maka kamu dapat |
| 73 | +membuat {{<glossary_tooltip text ="Service" term_id ="service">}} dengan |
| 74 | +alamat IPv4 atau IPv6. Kamu dapat memilih keluarga alamat untuk clusterIP |
| 75 | +Service kamu dengan mengatur bagian, `.spec.ipFamily`, pada Service tersebut. |
| 76 | +Kamu hanya dapat mengatur bagian ini saat membuat Service baru. Mengatur bagian |
| 77 | +`.spec.ipFamily` bersifat opsional dan hanya boleh digunakan jika kamu berencana |
| 78 | +untuk mengaktifkan {{<glossary_tooltip text ="Service "term_id ="service">}} |
| 79 | +dan {{<glossary_tooltip text ="Ingress "term_id ="ingress">}} IPv4 dan IPv6 |
| 80 | +pada klaster kamu. Konfigurasi bagian ini bukanlah syarat untuk lalu lintas |
| 81 | +[_egress_] (#lalu-lintas-egress). |
| 82 | + |
| 83 | +{{< note >}} |
| 84 | +Keluarga alamat bawaan untuk klaster kamu adalah keluarga alamat dari rentang |
| 85 | +clusterIP Service pertama yang dikonfigurasi melalui opsi |
| 86 | +`--service-cluster-ip-range` pada kube-controller-manager. |
| 87 | +{{< /note >}} |
| 88 | + |
| 89 | +Kamu dapat mengatur `.spec.ipFamily` menjadi salah satu dari: |
| 90 | + |
| 91 | + * `IPv4`: Dimana server API akan mengalokasikan IP dari `service-cluster-ip-range` yaitu `ipv4` |
| 92 | + * `IPv6`: Dimana server API akan mengalokasikan IP dari `service-cluster-ip-range` yaitu `ipv6` |
| 93 | + |
| 94 | +Spesifikasi Service berikut ini tidak memasukkan bagian `ipFamily`. |
| 95 | +Kubernetes akan mengalokasikan alamat IP (atau yang dikenal juga sebagai |
| 96 | +"_cluster IP_") dari `service-cluster-ip-range` yang dikonfigurasi pertama kali |
| 97 | +untuk Service ini. |
| 98 | + |
| 99 | +{{< codenew file="service/networking/dual-stack-default-svc.yaml" >}} |
| 100 | + |
| 101 | +Spesifikasi Service berikut memasukkan bagian `ipFamily`. Sehingga Kubernetes |
| 102 | +akan mengalokasikan alamat IPv6 (atau yang dikenal juga sebagai "_cluster IP_") |
| 103 | +dari `service-cluster-ip-range` yang dikonfigurasi untuk Service ini. |
| 104 | + |
| 105 | +{{< codenew file="service/networking/dual-stack-ipv6-svc.yaml" >}} |
| 106 | + |
| 107 | +Sebagai perbandingan, spesifikasi Service berikut ini akan dialokasikan sebuah alamat |
| 108 | +IPv4 (atau yang dikenal juga sebagai "_cluster IP_") dari `service-cluster-ip-range` |
| 109 | +yang dikonfigurasi untuk Service ini. |
| 110 | + |
| 111 | +{{< codenew file="service/networking/dual-stack-ipv4-svc.yaml" >}} |
| 112 | + |
| 113 | +### Tipe _LoadBalancer_ |
| 114 | + |
| 115 | +Penyedia layanan _cloud_ yang mendukung IPv6 untuk pengaturan beban eksternal, |
| 116 | +Mengatur bagian `type` menjadi` LoadBalancer` sebagai tambahan terhadap mengatur bagian |
| 117 | +`ipFamily` menjadi `IPv6` menyediakan sebuah _cloud load balancer_ untuk Service kamu. |
| 118 | + |
| 119 | +## Lalu lintas _egress_ |
| 120 | + |
| 121 | +Penggunaan blok alamat IPv6 yang dapat dirutekan dan yang tidak dapat dirutekan |
| 122 | +secara publik diperbolehkan selama {{<glossary_tooltip text="CNI" term_id= "cni">}} |
| 123 | +dari penyedia layanan dapat mengimplementasikan transportasinya. Jika kamu memiliki |
| 124 | +Pod yang menggunakan IPv6 yang dapat dirutekan secara publik dan ingin agar Pod |
| 125 | +mencapai tujuan di luar klaster (misalnya Internet publik), kamu harus mengatur |
| 126 | +IP samaran untuk lalu lintas keluar dan balasannya. [_ip-masq-agent_](https://github.com/kubernetes-incubator/ip-masq-agent) |
| 127 | +bersifat _dual-stack aware_, jadi kamu bisa menggunakan ip-masq-agent untuk |
| 128 | +_masquerading_ IP dari klaster _dual-stack_. |
| 129 | + |
| 130 | +## Masalah-masalah yang diketahui |
| 131 | + |
| 132 | +* Kubenet memaksa pelaporan posisi IP untuk IPv4,IPv6 IP (--cluster-cidr) |
| 133 | + |
| 134 | +{{% /capture %}} |
| 135 | + |
| 136 | +{{% capture whatsnext %}} |
| 137 | + |
| 138 | +* [Validasi jaringan _dual-stack_ IPv4/IPv6](/docs/tasks/network/validate-dual-stack) |
| 139 | + |
| 140 | +{{% /capture %}} |
0 commit comments