Skip to content

Commit 41ed409

Browse files
committed
Translating controller and container overview in Concept Documentation.
Fixed formatting, Typos, and added glossary. Fixed glossary. Fixed term to solve broken Hugo build. Fixed Hugo Build problem due to Glossaty formattin. Fixed Hugo Build problem due to Glossary formatting. Fixed Hugo Build problem due to Glossary mismatch.
1 parent fca1d58 commit 41ed409

File tree

4 files changed

+258
-1
lines changed

4 files changed

+258
-1
lines changed
Lines changed: 178 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,178 @@
1+
---
2+
title: Controller
3+
content_template: templates/concept
4+
weight: 30
5+
---
6+
7+
{{% capture overview %}}
8+
9+
Dalam bidang robotika dan otomatisasi, _control loop_ atau kontrol tertutup adalah
10+
lingkaran tertutup yang mengatur keadaan suatu sistem.
11+
12+
Berikut adalah salah satu contoh kontrol tertutup: termostat di sebuah ruangan.
13+
14+
Ketika kamu mengatur suhunya, itu mengisyaratkan ke termostat
15+
tentang *keadaan yang kamu inginkan*. Sedangkan suhu kamar yang sebenarnya
16+
adalah *keadaan saat ini*. Termostat berfungsi untuk membawa keadaan saat ini
17+
mendekati ke keadaan yang diinginkan, dengan menghidupkan atau mematikan
18+
perangkat.
19+
20+
Di Kubernetes, _controller_ adalah kontrol tertutup yang mengawasi keadaan klaster
21+
{{< glossary_tooltip term_id="cluster" text="klaster" >}} kamu, lalu membuat atau meminta
22+
perubahan jika diperlukan. Setiap _controller_ mencoba untuk memindahkan status
23+
klaster saat ini mendekati keadaan yang diinginkan.
24+
25+
{{< glossary_definition term_id="controller" length="short">}}
26+
27+
{{% /capture %}}
28+
29+
30+
{{% capture body %}}
31+
32+
## Pola _controller_
33+
34+
Sebuah _controller_ melacak sekurang-kurangnya satu jenis sumber daya dari
35+
Kubernetes.
36+
[objek-objek](/docs/concepts/overview/working-with-objects/kubernetes-objects/) ini
37+
memiliki *spec field* yang merepresentasikan keadaan yang diinginkan. Satu atau
38+
lebih _controller_ untuk *resource* tersebut bertanggung jawab untuk membuat
39+
keadaan sekarang mendekati keadaan yang diinginkan.
40+
41+
_Controller_ mungkin saja melakukan tindakan itu sendiri; namun secara umum, di
42+
Kubernetes, _controller_ akan mengirim pesan ke
43+
{{< glossary_tooltip text="API server" term_id="kube-apiserver" >}} yang
44+
mempunyai efek samping yang bermanfaat. Kamu bisa melihat contoh-contoh
45+
di bawah ini.
46+
47+
{{< comment >}}
48+
Beberapa _controller_ bawaan, seperti _controller namespace_, bekerja pada objek
49+
yang tidak memiliki *spec*. Agar lebih sederhana, halaman ini tidak
50+
menjelaskannya secara detail.
51+
{{< /comment >}}
52+
53+
### Kontrol melalui server API
54+
55+
_Controller_ {{< glossary_tooltip term_id="job" >}} adalah contoh dari _controller_
56+
bawaan dari Kubernetes. _Controller_ bawaan tersebut mengelola status melalui
57+
interaksi dengan server API dari suatu klaster.
58+
59+
Job adalah sumber daya dalam Kubernetes yang menjalankan a
60+
{{< glossary_tooltip term_id="pod" >}}, atau mungkin beberapa Pod sekaligus,
61+
untuk melakukan sebuah pekerjaan dan kemudian berhenti.
62+
63+
(Setelah [dijadwalkan](../../../../en/docs/concepts/scheduling/), objek Pod
64+
akan menjadi bagian dari keadaan yang diinginkan oleh kubelet).
65+
66+
Ketika _controller job_ melihat tugas baru, maka _controller_ itu memastikan bahwa,
67+
di suatu tempat pada klaster kamu, kubelet dalam sekumpulan Node menjalankan
68+
Pod-Pod dengan jumlah yang benar untuk menyelesaikan pekerjaan. _Controller job_
69+
tidak menjalankan sejumlah Pod atau kontainer apa pun untuk dirinya sendiri.
70+
Namun, _controller job_ mengisyaratkan kepada server API untuk membuat atau
71+
menghapus Pod. Komponen-komponen lain dalam
72+
{{< glossary_tooltip text="control plane" term_id="control-plane" >}}
73+
bekerja berdasarkan informasi baru (adakah Pod-Pod baru untuk menjadwalkan dan
74+
menjalankan pekerjan), dan pada akhirnya pekerjaan itu selesai.
75+
76+
Setelah kamu membuat Job baru, status yang diharapkan adalah bagaimana
77+
pekerjaan itu bisa selesai. _Controller job_ membuat status pekerjaan saat ini
78+
agar mendekati dengan keadaan yang kamu inginkan: membuat Pod yang melakukan
79+
pekerjaan yang kamu inginkan untuk Job tersebut, sehingga Job hampir
80+
terselesaikan.
81+
82+
_Controller_ juga memperbarui objek yang mengkonfigurasinya. Misalnya: setelah
83+
pekerjaan dilakukan untuk Job tersebut, _controller job_ memperbarui objek Job
84+
dengan menandainya `Finished`.
85+
86+
(Ini hampir sama dengan bagaimana beberapa termostat mematikan lampu untuk
87+
mengindikasikan bahwa kamar kamu sekarang sudah berada pada suhu yang kamu
88+
inginkan).
89+
90+
### Kontrol Langsung
91+
92+
Berbeda dengan sebuah Job, beberapa dari _controller_ perlu melakukan perubahan
93+
sesuatu di luar dari klaster kamu.
94+
95+
Sebagai contoh, jika kamu menggunakan kontrol tertutup untuk memastikan apakah
96+
cukup {{< glossary_tooltip text="Node" term_id="node" >}}
97+
dalam kluster kamu, maka _controller_ memerlukan sesuatu di luar klaster saat ini
98+
untuk mengatur Node-Node baru apabila dibutuhkan.
99+
100+
_controller_ yang berinteraksi dengan keadaan eksternal dapat menemukan keadaan
101+
yang diinginkannya melalui server API, dan kemudian berkomunikasi langsung
102+
dengan sistem eksternal untuk membawa keadaan saat ini mendekat keadaan yang
103+
diinginkan.
104+
105+
(Sebenarnya ada sebuah _controller_ yang melakukan penskalaan node secara
106+
horizontal dalam klaster kamu. Silahkan lihat
107+
[_autoscaling_ klaster](/docs/tasks/administer-cluster/cluster-management/#cluster-autoscaling)).
108+
109+
## Status sekarang berbanding status yang diinginkan {#sekarang-banding-diinginkan}
110+
111+
Kubernetes mengambil pandangan sistem secara _cloud-native_, dan mampu menangani
112+
perubahan yang konstan.
113+
114+
Klaster kamu dapat mengalami perubahan kapan saja pada saat pekerjaan sedang
115+
berlangsung dan kontrol tertutup secara otomatis memperbaiki setiap kegagalan.
116+
Hal ini berarti bahwa, secara potensi, klaster kamu tidak akan pernah mencapai
117+
kondisi stabil.
118+
119+
Selama _controller_ dari klaster kamu berjalan dan mampu membuat perubahan yang
120+
bermanfaat, tidak masalah apabila keadaan keseluruhan stabil atau tidak.
121+
122+
## Perancangan
123+
124+
Sebagai prinsip dasar perancangan, Kubernetes menggunakan banyak _controller_ yang
125+
masing-masing mengelola aspek tertentu dari keadaan klaster. Yang paling umum,
126+
kontrol tertutup tertentu menggunakan salah satu jenis sumber daya
127+
sebagai suatu keadaan yang diinginkan, dan memiliki jenis sumber daya yang
128+
berbeda untuk dikelola dalam rangka membuat keadaan yang diinginkan terjadi.
129+
130+
Sangat penting untuk memiliki beberapa _controller_ sederhana daripada hanya satu
131+
_controller_ saja, dimana satu kumpulan monolitik kontrol tertutup saling
132+
berkaitan satu sama lain. Karena _controller_ bisa saja gagal, sehingga Kubernetes
133+
dirancang untuk memungkinkan hal tersebut.
134+
135+
Misalnya: _controller_ pekerjaan melacak objek pekerjaan (untuk menemukan
136+
adanya pekerjaan baru) dan objek Pod (untuk menjalankan pekerjaan tersebut dan
137+
kemudian melihat lagi ketika pekerjaan itu sudah selesai). Dalam hal ini yang
138+
lain membuat pekerjaan, sedangkan _controller_ pekerjaan membuat Pod-Pod.
139+
140+
{{< note >}}
141+
Ada kemungkinan beberapa _controller_ membuat atau memperbarui jenis objek yang
142+
sama. Namun di belakang layar, _controller_ Kubernetes memastikan bahwa mereka
143+
hanya memperhatikan sumbr daya yang terkait dengan sumber daya yang mereka
144+
kendalikan.
145+
146+
Misalnya, kamu dapat memiliki Deployment dan Job; dimana keduanya akan membuat
147+
Pod. _Controller Job_ tidak akan menghapus Pod yang dibuat oleh Deployment kamu,
148+
karena ada informasi ({{< glossary_tooltip term_id="label" text="labels" >}})
149+
yang dapat oleh _controller_ untuk membedakan Pod-Pod tersebut.
150+
{{< /note >}}
151+
152+
## Berbagai cara menjalankan beberapa _controller_ {#menjalankan-_controller_}
153+
154+
Kubernetes hadir dengan seperangkat _controller_ bawaan yang berjalan di dalam
155+
{{< glossary_tooltip term_id="kube-controller-manager" >}}. Beberapa _controller_
156+
bawaan memberikan perilaku inti yang sangat penting.
157+
158+
_Controller Deployment_ dan _controller Job_ adalah contoh dari _controller_ yang
159+
hadir sebagai bagian dari Kubernetes itu sendiri (_controller_ "bawaan").
160+
Kubernetes memungkinkan kamu menjalankan _control plane_ yang tangguh, sehingga
161+
jika ada _controller_ bawaan yang gagal, maka bagian lain dari _control plane_ akan
162+
mengambil alih pekerjaan.
163+
164+
Kamu juga dapat menemukan pengontrol yang berjalan di luar _control plane_, untuk
165+
mengembangkan lebih jauh Kubernetes. Atau, jika mau, kamu bisa membuat
166+
_controller_ baru sendiri. Kamu dapat menjalankan _controller_ kamu sendiri sebagai
167+
satu kumpulan dari beberapa Pod, atau bisa juga sebagai bagian eksternal dari
168+
Kubernetes. Manakah yang paling sesuai akan tergantung pada apa yang _controller_
169+
khusus itu lakukan.
170+
171+
{{% /capture %}}
172+
173+
{{% capture whatsnext %}}
174+
* Silahkan baca tentang [_control plane_ Kubernetes](/docs/concepts/#kubernetes-control-plane)
175+
* Temukan beberapa dasar tentang [objek-objek Kubernetes](/docs/concepts/#kubernetes-objects)
176+
* Pelajari lebih lanjut tentang [Kubernetes API](/docs/concepts/overview/kubernetes-api/)
177+
* Apabila kamu ingin membuat _controller_ sendiri, silakan lihat [pola perluasan](/docs/concepts/extend-kubernetes/extend-cluster/#extension-patterns) dalam memperluas Kubernetes.
178+
{{% /capture %}}

content/id/docs/concepts/containers/container-environment-variables.md renamed to content/id/docs/concepts/containers/container-environment.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
title: Variabel Environment Kontainer
2+
title: Kontainer Environment
33
content_template: templates/concept
44
weight: 20
55
---
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
---
2+
title: Ikhtisar Kontainer
3+
content_template: templates/concept
4+
weight: 1
5+
---
6+
7+
{{% capture overview %}}
8+
9+
Kontainer adalah teknologi untuk mengemas kode (yang telah dikompilasi) menjadi
10+
suatu aplikasi beserta dengan dependensi-dependensi yang dibutuhkannya pada saat
11+
dijalankan. Setiap kontainer yang Anda jalankan dapat diulang; standardisasi
12+
dengan menyertakan dependensinya berarti Anda akan mendapatkan perilaku yang
13+
sama di mana pun Anda menjalankannya.
14+
15+
Kontainer memisahkan aplikasi dari infrastruktur host yang ada dibawahnya. Hal
16+
ini membuat penyebaran lebih mudah di lingkungan cloud atau OS yang berbeda.
17+
18+
{{% /capture %}}
19+
20+
{{% capture body %}}
21+
22+
## Image-Image Kontainer
23+
24+
[Kontainer image](/docs/concepts/containers/images/) meruapakan paket perangkat lunak
25+
yang siap dijalankan, mengandung semua yang diperlukan untuk menjalankan
26+
sebuah aplikasi: kode dan setiap *runtime* yang dibutuhkan, *library* dari
27+
aplikasi dan sistem, dan nilai *default* untuk penganturan yang penting.
28+
29+
Secara desain, kontainer tidak bisa berubah: Anda tidak dapat mengubah kode
30+
dalam kontainer yang sedang berjalan. Jika Anda memiliki aplikasi yang
31+
terkontainerisasi dan ingin melakukan perubahan, maka Anda perlu membuat
32+
kontainer baru dengan menyertakan perubahannya, kemudian membuat ulang kontainer
33+
dengan memulai dari _image_ yang sudah diubah.
34+
35+
## Kontainer _runtime_
36+
37+
Kontainer *runtime* adalah perangkat lunak yang bertanggung jawab untuk
38+
menjalankan kontainer. Kubernetes mendukung beberapa kontainer *runtime*:
39+
{{< glossary_tooltip term_id="docker" >}},
40+
{{< glossary_tooltip term_id="containerd" >}},
41+
{{< glossary_tooltip term_id="cri-o" >}}, dan semua implementasi dari
42+
[Kubernetes CRI (Container Runtime Interface)](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-node/container-runtime-interface.md).
43+
44+
## Selanjutnya
45+
46+
- Baca tentang [image-image kontainer](https://kubernetes.io/docs/concepts/containers/images/)
47+
- Baca tentang [Pod](https://kubernetes.io/docs/concepts/workloads/pods/)
48+
49+
{{% /capture %}}
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
title: Controller
3+
id: controller
4+
date: 2018-04-12
5+
full_link: /docs/concepts/architecture/controller/
6+
short_description: >
7+
Kontrol tertutup yang mengawasi kondisi bersama dari klaster melalui apiserver dan membuat perubahan yang mencoba untuk membawa kondisi saat ini ke kondisi yang diinginkan.
8+
9+
aka:
10+
tags:
11+
- architecture
12+
- fundamental
13+
---
14+
Di Kubernetes, _controller_ adalah kontrol tertutup yang mengawasi kondisi
15+
{{< glossary_tooltip term_id="cluster" text="klaster">}} anda, lalu membuat atau
16+
meminta perubahan jika diperlukan.
17+
Setiap _controller_ mencoba untuk memindahkan status klaster saat ini lebih
18+
dekat ke kondisi yang diinginkan.
19+
20+
<!--more-->
21+
22+
_Controller_ mengawasi keadaan bersama dari klaster kamu melalui
23+
{{< glossary_tooltip text="apiserver" term_id="kube-apiserver" >}} (bagian dari
24+
{{< glossary_tooltip term_id="control-plane" >}}).
25+
26+
Beberapa _controller_ juga berjalan di dalam _control plane_, menyediakan
27+
kontrol tertutup yang merupakan inti dari operasi Kubernetes. Sebagai contoh:
28+
_controller Deployment_, _controller daemonset_, _controller namespace_, dan
29+
_controller volume persisten_ (dan lainnya) semua berjalan di dalam
30+
{{< glossary_tooltip term_id="kube-controller-manager" >}}.

0 commit comments

Comments
 (0)