Fixed Wording from previous PR.

This commit is contained in:
Aris Cahyadi Risdianto
2020-04-23 00:23:14 +08:00
parent 7b637bdb06
commit b30e8d76d1
@@ -1,7 +1,7 @@
--- ---
title: Topologi Service (_Service Topology_) title: Topologi Service (Service Topology)
feature: feature:
title: Topologi Service (_Service Topology_) title: Topologi Service (Service Topology)
description: > description: >
Rute lalu lintas layanan berdasarkan topologi klaster. Rute lalu lintas layanan berdasarkan topologi klaster.
@@ -26,7 +26,7 @@ _availability zone_ yang sama.
## Pengantar ## Pengantar
Secara _default_, lalu lintas jaringan yang dikirim ke `ClusterIP` atau` NodePort` dari Service Secara bawaan lalu lintas jaringan yang dikirim ke `ClusterIP` atau` NodePort` dari Service
dapat dialihkan ke alamat _backend_ untuk Service tersebut. Sejak Kubernetes 1.7 dapat dialihkan ke alamat _backend_ untuk Service tersebut. Sejak Kubernetes 1.7
dimungkinkan untuk merutekan lalu lintas jaringan "eksternal" ke Pod yang berjalan di dimungkinkan untuk merutekan lalu lintas jaringan "eksternal" ke Pod yang berjalan di
Node yang menerima lalu lintas jaringan, tetapi fitur ini tidak didukung untuk `ClusterIP` dari Node yang menerima lalu lintas jaringan, tetapi fitur ini tidak didukung untuk `ClusterIP` dari
@@ -36,20 +36,20 @@ mengizinkan pembuat layanan untuk mendefinisikan kebijakan dalam merutekan lalu
berdasarkan label Node untuk Node-Node asal dan tujuan. berdasarkan label Node untuk Node-Node asal dan tujuan.
Dengan menggunakan label Node yang sesuai antara asal dan tujuan, operator dapat Dengan menggunakan label Node yang sesuai antara asal dan tujuan, operator dapat
menunjuk kelompok Node yang "lebih dekat" dan "lebih jauh" antara satu sama lain, menunjuk kelompok Node mana yang "lebih dekat" dan mana yang "lebih jauh" antara satu sama lain,
dengan menggunakan metrik apa pun yang masuk akal untuk memenuhi persyaratan dengan menggunakan metrik apa pun yang masuk akal untuk memenuhi persyaratan
dari operator itu. Untuk sebagian besar operator di _cloud_ publik, misalnya, ada dari operator itu. Untuk sebagian besar operator di publik _cloud_, misalnya, ada
preferensi untuk menjaga layanan lalu lintas jaringan dalam zona yang sama, karena lalu lintas jaringan preferensi untuk menjaga layanan lalu lintas jaringan dalam zona yang sama, karena lalu lintas jaringan
antar zona memiliki biaya yang dibebankan, sementara lalu lintas jaringan antar zona memiliki biaya yang dibebankan, sementara lalu lintas jaringan
dalam zona yang sama tidak ada biaya. Kebutuhan umum lainnya termasuk kemampuan untuk merutekan dalam zona yang sama tidak ada biaya. Kebutuhan umum lainnya termasuk kemampuan untuk merutekan
lalu lintas jaringan ke Pod lokal yang dikelola oleh sebuah DaemonSet, atau menjaga lalu lintas jaringan ke lalu lintas jaringan ke Pod lokal yang dikelola oleh sebuah DaemonSet, atau menjaga lalu lintas jaringan ke
Node yang terhubung ke _top-of-rack switch_ yang sama untuk mendapatkan Node yang terhubung ke _top-of-rack switch_ yang sama untuk mendapatkan
latensi terendah. latensi yang terendah.
## Menggunakan Topologi Service ## Menggunakan Topologi Service
Jika klaster kamu mengaktifkan topologi layanan kamu dapat mengontrol rute lalu lintas jaringan Service Jika klaster kamu mengaktifkan topologi Service kamu dapat mengontrol rute lalu lintas jaringan Service
dengan mengatur bagian `topologyKeys` pada spesifikasi Service. Bagian ini dengan mengatur bagian `topologyKeys` pada spesifikasi Service. Bagian ini
adalah daftar urutan label-label Node yang akan digunakan untuk mengurutkan _endpoint_ adalah daftar urutan label-label Node yang akan digunakan untuk mengurutkan _endpoint_
saat mengakses Service ini. Lalu lintas jaringan akan diarahkan ke Node yang nilai saat mengakses Service ini. Lalu lintas jaringan akan diarahkan ke Node yang nilai
@@ -62,7 +62,7 @@ sama sekali _backend_ untuk Service tersebut. Artinya, _endpoint_ dipilih
berdasarkan kunci topologi yang pertama yang tersedia pada _backend_. Jika dalam berdasarkan kunci topologi yang pertama yang tersedia pada _backend_. Jika dalam
bagian ini ditentukan dan semua entri tidak memiliki _backend_ yang sesuai dengan bagian ini ditentukan dan semua entri tidak memiliki _backend_ yang sesuai dengan
topologi klien, maka Service tidak memiliki _backend_ untuk klien dan koneksi harus topologi klien, maka Service tidak memiliki _backend_ untuk klien dan koneksi harus
digagalkan. Nilai khusus `" * "` dapat digunakan untuk mengartikan "topologi digagalkan. Nilai khusus `"*"` dapat digunakan untuk mengartikan "topologi
apa saja". Nilai _catch-all_ ini, jika digunakan, maka hanya sebagai apa saja". Nilai _catch-all_ ini, jika digunakan, maka hanya sebagai
nilai terakhir dalam daftar. nilai terakhir dalam daftar.
@@ -73,32 +73,17 @@ Seandainya sebuah klaster dengan Node yang dilabeli dengan nama _host_ ,
nama zona, dan nama wilayah mereka, maka kamu dapat mengatur nilai nama zona, dan nama wilayah mereka, maka kamu dapat mengatur nilai
`topologyKeys` dari sebuah Service untuk mengarahkan lalu lintas jaringan seperti berikut ini. `topologyKeys` dari sebuah Service untuk mengarahkan lalu lintas jaringan seperti berikut ini.
* Hanya ke _endpoint_ dalam Node yang sama, gagal jika tidak ada _endpoint_ pada * Hanya ke _endpoint_ dalam Node yang sama, gagal jika tidak ada _endpoint_ pada Node: `["kubernetes.io/hostname"]`.
Node: `[" kubernetes.io/hostname "]`. * Lebih memilih ke _endpoint_ dalam Node yang sama, jika tidak ditemukan maka ke _endpoint_ pada zona yang sama, diikuti oleh wilayah yang sama, dan selain itu akan gagal: `["kubernetes.io/hostname ", "topology.kubernetes.io/zone", "topology.kubernetes.io/region"]`. Ini mungkin berguna, misalnya, dalam kasus di mana lokalitas data sangatlah penting.
* Lebih memilih ke _endpoint_ dalam Node yang sama, jika tidak ditemukan maka ke _endpoint_ pada * Lebih memilih ke _endpoint_ dalam zona yang sama, tetapi memilih _endpoint_ mana saja yang tersedia apabila tidak ada yang tersedia dalam zona ini: `["topology.kubernetes.io/zone ","*"]`.
  zona yang sama, diikuti oleh wilayah yang sama, dan selain itu gagal:
`[" kubernetes.io/hostname ", "topology.kubernetes.io/zone", "topology.kubernetes.io/region"] `.
  Ini mungkin berguna, misalnya, dalam kasus di mana lokalitas data sangat penting.
* Lebih memilih ke _endpoint_ dalam zona yang sama, tetapi memilih _endpoint_ mana saja yang
tersedia apabila tidak ada yang tersedia dalam zona ini:
  `[" topology.kubernetes.io/zone "," * "]`.
## Batasan ## Batasan
* Topologi Service tidak kompatibel dengan `externalTrafficPolicy=Local`, dan * Topologi Service tidak kompatibel dengan `externalTrafficPolicy=Local`, dan karena itu Service tidak dapat menggunakan kedua fitur ini sekaligus. Dimungkinkan untuk menggunakan kedua fitur pada klaster yang sama untuk Service yang berbeda, bukan untuk Service yang sama.
   karena itu Service tidak dapat menggunakan kedua fitur ini sekaligus. Dimungkinkan untuk menggunakan * Untuk saat ini kunci topologi yang valid hanya terbatas pada `kubernetes.io/hostname`, `topology.kubernetes.io/zone`, dan `topology.kubernetes.io/region`, tetapi akan digeneralisasikan ke label Node yang lain di masa depan.
   kedua fitur pada klaster yang sama untuk Service yang berbeda, bukan untuk
   Service yang sama.
* Untuk saat ini kunci topologi yang valid hanya terbatas pada `kubernetes.io/hostname`,
   `topology.kubernetes.io/zone`, dan` topology.kubernetes.io/region`, tetapi akan
   digeneralisasikan ke label Node yang lain di masa depan.
* Kunci topologi harus merupakan kunci label yang valid dan paling banyak hanya 16 kunci yang dapat ditentukan. * Kunci topologi harus merupakan kunci label yang valid dan paling banyak hanya 16 kunci yang dapat ditentukan.
* Nilai _catch-all_, `"*"`, harus menjadi nilai terakhir pada kunci topologi, jika nilai itu digunakan.
* Nilai _catch-all_, `" * "`, harus menjadi nilai terakhir pada kunci topologi, jika
   nilai itu digunakan.
## Contoh ## Contoh
@@ -127,7 +112,7 @@ spec:
### Lebih memilih _endpoint_ pada Node lokal ### Lebih memilih _endpoint_ pada Node lokal
Service yang lebih memilih _endpoint_ pada Node lokal tetapi akan memilih ke _endpoint_ Service yang lebih memilih _endpoint_ pada Node lokal, namun akan memilih ke _endpoint_
dalam klaster jika _endpoint_ pada Node lokal tidak ada: dalam klaster jika _endpoint_ pada Node lokal tidak ada:
```yaml ```yaml
@@ -148,10 +133,10 @@ spec:
``` ```
### Hanya untuk _endpoint_ pada Zona atau Wilayah ### Hanya untuk _endpoint_ pada zona atau wilayah yang sama
Service yang lebih memilih _endpoint_ zona daripada wilayah. Jika tidak ada _endpoint_ pada Service yang lebih memilih _endpoint_ dalam zona yang sama daripada wilayah yang sama. Jika tidak ada _endpoint_ pada
keduanya, make lalu lintas jaringan akan dihentikan. keduanya, maka lalu lintas jaringan akan dihentikan.
```yaml ```yaml
@@ -171,10 +156,10 @@ spec:
- "topology.kubernetes.io/region" - "topology.kubernetes.io/region"
``` ```
### Lebih memilih _endpoint_ pada Node Lokal, Zonal, terakhir Regional ### Lebih memilih _endpoint_ pada Node lokal, zona yang sama, dan kemudian wilayah yang sama
Service yang lebih memilih _endpoint_ pada Node lokal, zonal, kemudian regional Service yang lebih memilih _endpoint_ pada Node lokal, zona yang sama, dan kemudian baru wilayah yang sama,
tetapi jika tetap tidak ditemukan maka akan memilih _endpoint_ diseluruh klaster. namun jika tetap tidak ditemukan maka akan memilih _endpoint_ diseluruh klaster.
```yaml ```yaml
apiVersion: v1 apiVersion: v1
@@ -195,7 +180,6 @@ spec:
- "*" - "*"
``` ```
{{% /capture %}} {{% /capture %}}
{{% capture whatsnext %}} {{% capture whatsnext %}}
@@ -203,4 +187,4 @@ spec:
* Baca tentang [mengaktifkan topologi Service](/docs/tasks/administer-cluster/enabling-service-topology) * Baca tentang [mengaktifkan topologi Service](/docs/tasks/administer-cluster/enabling-service-topology)
* Baca [menghubungkan aplikasi dengan Service](/docs/concepts/services-networking/connect-applications-service/) * Baca [menghubungkan aplikasi dengan Service](/docs/concepts/services-networking/connect-applications-service/)
{{% /capture %}} {{% /capture %}}