From e8a26b08bb97acbc257e073e8da27929fb4650e1 Mon Sep 17 00:00:00 2001 From: Firman Rosdiansyah Date: Fri, 11 Sep 2020 07:57:12 +0700 Subject: [PATCH] Add ID translation for Exposing Your App tutorial Apply suggestions from code review Co-authored-by: Aris Cahyadi Risdianto Update [id] explore-interactive.html link to Module 5 & Katacoda embed Update [id] k8s basic tutorial index links to current localized pages Apply suggestions from code review Co-authored-by: Aris Cahyadi Risdianto Co-authored-by: Giri Kuncoro Update [id] k8s basic tutorial index links to deploy app --- .../tutorials/kubernetes-basics/_index.html | 46 ++++++-- .../explore/explore-interactive.html | 4 +- .../kubernetes-basics/expose/_index.md | 4 + .../expose/expose-interactive.html | 38 ++++++ .../expose/expose-intro.html | 109 ++++++++++++++++++ 5 files changed, 187 insertions(+), 14 deletions(-) create mode 100644 content/id/docs/tutorials/kubernetes-basics/expose/_index.md create mode 100644 content/id/docs/tutorials/kubernetes-basics/expose/expose-interactive.html create mode 100644 content/id/docs/tutorials/kubernetes-basics/expose/expose-intro.html diff --git a/content/id/docs/tutorials/kubernetes-basics/_index.html b/content/id/docs/tutorials/kubernetes-basics/_index.html index 7abc15c771..baec152977 100644 --- a/content/id/docs/tutorials/kubernetes-basics/_index.html +++ b/content/id/docs/tutorials/kubernetes-basics/_index.html @@ -23,13 +23,13 @@ card:

Panduan Dasar Kubernetes

-

Tutorial ini menyediakan panduan dasar mekanisme orkestrasi klaster Kubernetes. Setiap modul memliki beberapa informasi mengenai latar belakang bagi konsep mendasar dan feature Kubernetes, termasuk mode interaktif yang dapat digunakan sebagai metode pembelajaran online. Mode tutorial interaktif ini memberikan kesempatan pengguna untuk melakukan manajemen klaster sederhana beserta aplikasi dalam kontainer yang kamu miliki.

+

Tutorial ini menyediakan panduan dasar mekanisme orkestrasi klaster Kubernetes. Setiap modul memliki beberapa informasi mengenai latar belakang bagi konsep mendasar dan feature Kubernetes, termasuk mode interaktif yang dapat digunakan sebagai metode pembelajaran online. Mode tutorial interaktif ini memberikan kesempatan pengguna untuk melakukan manajemen klaster sederhana beserta aplikasi terkontainerisasi yang kamu miliki.

Dengan menggunakan mode tutorial interaktif ini, pengguna diharapkan dapat memahami:

    -
  • Deployi> sebuah aplikasi yang sudah dikontainerisasi pada klaster
  • +
  • Deploy sebuah aplikasi yang sudah dikontainerisasi pada klaster
  • Melakukan scale deployment
  • -
  • Meng-update aplikasi yang sudah dikontainerisasi dengan menggunakan versi aplikasi terbaru
  • -
  • Men-debug aplikasi yang sudah dikontainerisasi
  • +
  • Memperbarui aplikasi yang sudah dikontainerisasi dengan menggunakan versi aplikasi terbaru
  • +
  • Men-debug aplikasi yang sudah dikontainerisasi

Tutorial ini menggunakan Katakoda untuk menjalankan terminal virtual diatas Minikube pada web browser kamu. Dengan demikian, kamu tidak perlu melakukan instalasi perangkat lunak apa pun, segala modul yang ada dijalankan secara langsung melalui web browser yang kamu miliki.

@@ -44,32 +44,34 @@ card:
+
+ diff --git a/content/id/docs/tutorials/kubernetes-basics/explore/explore-interactive.html b/content/id/docs/tutorials/kubernetes-basics/explore/explore-interactive.html index a6439aa789..0379fb7230 100644 --- a/content/id/docs/tutorials/kubernetes-basics/explore/explore-interactive.html +++ b/content/id/docs/tutorials/kubernetes-basics/explore/explore-interactive.html @@ -24,12 +24,12 @@ weight: 20 Untuk berinteraksi dengan Terminal, tolong gunakan dalam desktop/tablet -
+
diff --git a/content/id/docs/tutorials/kubernetes-basics/expose/_index.md b/content/id/docs/tutorials/kubernetes-basics/expose/_index.md new file mode 100644 index 0000000000..a00eab636c --- /dev/null +++ b/content/id/docs/tutorials/kubernetes-basics/expose/_index.md @@ -0,0 +1,4 @@ +--- +title: Mengekspos Aplikasimu Secara Publik +weight: 40 +--- diff --git a/content/id/docs/tutorials/kubernetes-basics/expose/expose-interactive.html b/content/id/docs/tutorials/kubernetes-basics/expose/expose-interactive.html new file mode 100644 index 0000000000..0e6e1c752b --- /dev/null +++ b/content/id/docs/tutorials/kubernetes-basics/expose/expose-interactive.html @@ -0,0 +1,38 @@ +--- +title: Tutorial Interaktif - Mengekspos Aplikasimu +weight: 20 +--- + + + + + + + + + + + +
+ +
+ +
+
+ Untuk berinteraksi dengan Terminal, harap gunakan desktop/tablet +
+
+
+
+ + +
+ +
+ + + diff --git a/content/id/docs/tutorials/kubernetes-basics/expose/expose-intro.html b/content/id/docs/tutorials/kubernetes-basics/expose/expose-intro.html new file mode 100644 index 0000000000..a395834016 --- /dev/null +++ b/content/id/docs/tutorials/kubernetes-basics/expose/expose-intro.html @@ -0,0 +1,109 @@ +--- +title: Menggunakan Service untuk Mengekspos Aplikasimu +weight: 10 +--- + + + + + + + + + +
+ +
+ +
+
+

Tujuan

+
    +
  • Belajar tentang Service di Kubernetes
  • +
  • Memahami bagaimana label dan objek LabelSelector berhubungan dengan sebuah Service
  • +
  • Mengekspos sebuah aplikasi keluar klaster Kubernetes menggunakan sebuah Service
  • +
+
+ +
+

Ikhtisar Service Kubernetes

+ +

Pod-Pod Kubernetes itu fana. Pod pada kenyataannya punya siklus hidup. Ketika sebuah Node pekerja mati, Pod yang berjalan dalam Node itu juga hilang. ReplicaSet mungkin kemudian secara dinamis mendorong klaster kembali ke keadaan yang diinginkan melalui penciptaan Pod baru untuk memastikan aplikasimu berjalan. Contoh lainnya, katakanlah ada backend pengolahan citra dengan 3 replika. Replika tersebut dapat ditukar; sistem front-end seharusnya tidak peduli tentang replika backend atau bahkan jika Pod hilang dan dibuat ulang. Walaupun demikian, tiap Pod dalam sebuah klaster Kubernetes memiliki alamat IP unik, meskipun Pod-Pod itu berada dalam satu Node yang sama, sehingga seharusnya ada jalan untuk mencocokan perubahan antara Pod-Pod itu sehingga aplikasimu tetap berfungsi.

+ +

Service di Kubernetes merupakan abstraksi yang mendefinisikan satu set Pod secara logis dan aturan untuk mengakses mereka. Service memungkinkan keterkaitan renggang antara Pod-Pod. Sebuah Service didefinisikan menggunakan YAML (lebih disukai) atau JSON, sebagaimana semua objek Kubernetes. Kumpulan Pod yang ditargetkan oleh Service biasanya ditentukan oleh LabelSelector (lihat di bawah mengapa kamu mungkin ingin Service tanpa selector dalam spec).

+ +

Meskipun tiap Pod memiliki alamat IP unik, IP tersebut tidak diekpos ke luar klaster tanpa sebuah Service. Service memperbolehkan aplikasimu untuk menerima kunjungan. Service dapat diekspos dengan cara yang berbeda menggunakan type di ServiceSpec: +

    +
  • ClusterIP (bawaan) - Mengekspos Service dengan internal IP dalam klaster. Type ini membuat Service hanya bisa diakses dalam klaster.
  • +
  • NodePort - Mengekspos Service dengan porta yang sama untuk tiap Node dalam klaster menggunakan NAT. Ini membuat Service dapat diakses dari luar dengan <NodeIP>:<NodePort>. Superset dari ClusterIP.
  • +
  • LoadBalancer - Membuat load balancer eksternal di cloud saat ini (jika didukung) dan memberikan IP eksternal tetap kepada Service. Superset dari NodePort.
  • +
  • ExternalName - Mengekpos Service menggunakan nama sesuai keinginan (ditentukan oleh externalName dalam spec) dengan mengembalikan catatan CNAME dengan nama tersebut. Tidak menggunakan proksi. Type ini membutuhkan kube-dns versi v1.7 atau lebih tinggi.
  • +
+

Informasi lebih tentang type Service berbeda dapat ditemukan di tutorial Menggunakan IP pengirim. Lihat juga Menghubungkan aplikasi dengan Service.

+

Selain itu, catat bahwa ada kasus penggunaan Service yang tidak mendefinisikan selector di spec. Sebuah Service yang dibuat tanpa selector juga tidak akan membuat objek Endpoint yang sesuai. Ini mengizinkan pengguna untuk memetakan Service secara manual ke endpoint spesifik. Kemungkinan lain kenapa dimungkinan tanpa selector adalah kamu dengan tegas menggunakan type: ExternalName.

+
+
+
+

Ringkasan

+
    +
  • Mengekspos Pod ke kunjungan eksternal
  • +
  • Load balancing kunjungan melintasi beberapa Pod
  • +
  • Menggunakan label
  • +
+
+
+

Service Kubernetes adalah lapisan abstraksi yang mendefinisikan kumpulan Pod secara logis dan mengijinkan paparan kunjungan eksternal, load balancing, dan service discovery untuk Pod-Pod tersebut.

+
+
+
+
+ +
+
+

Service dan Label

+
+
+ +
+
+

+
+
+ +
+
+

Service mengarahkan kunjungan melintasi sekumpulan Pod. Service merupakan abstraksi yang mengizinkan Pod-Pod untuk mati dan replikasi dalam Kubernetes tanpa memengaruhi aplikasimu. Menemukan dan routing antara Pod dependen (seperti komponen frontend dan backend) yang ditangani oleh Service Kubernetes.

+

Service mencocokan satu set Pod menggunakan label dan selektor, mengelompokan primitif yang mengizinkan operasi logika pada objek-objek dalam Kubernetes. Label adalah pasangan key/value yang melekat pada objek-objek dan dapat digunakan untuk beberapa tujuan:

+
    +
  • Menandai objek-objek untuk lingkungan development, test, dan production
  • +
  • Melekatkan label versi
  • +
  • Klasifikasi sebuah objek dengan label-label
  • +
+
+ +
+ +
+ +
+
+

+
+
+
+
+
+

Label-label dapat dilekatkan pada objek-objek pada waktu pembuatan ataupun setelahnya. Mereka dapat diubah kapanpun. Mari kita ekspos aplikasi kita sekarang dengan sebuah Service dan menerapkan beberapa label.

+
+
+
+ +
+
+ + +