Remove trailing spaces from ID documents(#16742) (#16789)

This commit is contained in:
Yushiro FURUKAWA
2019-10-10 13:48:52 +09:00
committed by Kubernetes Prow Robot
parent 99619d3414
commit 520caa1264
51 changed files with 1250 additions and 1250 deletions
@@ -122,7 +122,7 @@ tidak bisa terbuat.
Pada kluster [Multi-Zona](/docs/setup/multiple-zones), Pod dapat tersebar di banyak Zona
pada sebuah Region. Penyimpanan dengan *backend* Zona-Tunggal seharusnya disediakan pada
Zona-Zona dimana Pod dijalankan. Hal ini dapat dicapai dengan mengatur
Zona-Zona dimana Pod dijalankan. Hal ini dapat dicapai dengan mengatur
[Mode Volume Binding](/docs/concepts/storage/storage-classes/#volume-binding-mode).
{{% /capture %}}
@@ -85,7 +85,7 @@ Name: hostpath
Namespace: default
StorageClass: example-hostpath
Status: Terminating
Volume:
Volume:
Labels: <none>
Annotations: volume.beta.kubernetes.io/storage-class=example-hostpath
volume.beta.kubernetes.io/storage-provisioner=example.com/hostpath
@@ -103,19 +103,19 @@ Annotations: <none>
Finalizers: [kubernetes.io/pv-protection]
StorageClass: standard
Status: Available
Claim:
Claim:
Reclaim Policy: Delete
Access Modes: RWO
Capacity: 1Gi
Message:
Message:
Source:
Type: HostPath (bare host directory volume)
Path: /tmp/data
HostPathType:
HostPathType:
Events: <none>
```
### Melakukan Reklaim
### Melakukan Reklaim
Ketika seorang pengguna telah selesai dengan volumenya, ia dapat menghapus objek PVC dari API yang memungkinkan untuk reklamasi dari sumber daya tersebut. Kebijakan reklaim dari sebuah `PersistentVolume` (PV) menyatakan apa yang dilakukan kluster setelah volume dilepaskan dari klaimnya. Saat ini, volume dapat dipertahankan (_Retained_), didaur ulang (_Recycled_), atau dihapus (_Deleted_).
@@ -168,7 +168,7 @@ Namun, alamat yang dispesifikasikan pada templat _recycler pod_ kustom pada bagi
{{< feature-state for_k8s_version="v1.11" state="beta" >}}
Dukungan untuk memperluas PersistentVolumeClaim (PVC) sekarang sudah diaktifkan sejak awal. Kamu dapat memperluas
Dukungan untuk memperluas PersistentVolumeClaim (PVC) sekarang sudah diaktifkan sejak awal. Kamu dapat memperluas
tipe-tipe volume berikut:
* gcePersistentDisk
@@ -199,7 +199,7 @@ allowVolumeExpansion: true
```
Untuk meminta volume yang lebih besar pada sebuah PVC, ubah objek PVC dan spesifikasikan ukuran yang lebih
besar. Hal ini akan memicu perluasan dari volume yang berada di balik `PersistentVolume` (PV). Sebuah
besar. Hal ini akan memicu perluasan dari volume yang berada di balik `PersistentVolume` (PV). Sebuah
`PersistentVolume` (PV) baru tidak akan dibuat untuk memenuhi klaim tersebut. Sebaliknya, volume yang sudah ada akan diatur ulang ukurannya.
#### Perluasan Volume CSI
@@ -209,7 +209,7 @@ besar. Hal ini akan memicu perluasan dari volume yang berada di balik `Persisten
Perluasan volume CSI mengharuskan kamu untuk mengaktifkan gerbang fitur `ExpandCSIVolumes` dan juga membutuhkan _driver_ CSI yang spesifik untuk mendukung perluasan volume. Silakan merujuk pada dokumentasi _driver_ spesifik CSI untuk informasi lebih lanjut.
#### Mengubah ukuran sebuah volume yang memiliki _file system_
#### Mengubah ukuran sebuah volume yang memiliki _file system_
Kamu hanya dapat mengubah ukuran volume yang memiliki _file system_ jika _file system_ tersebut adalah XFS, Ext3, atau Ext4.
@@ -223,8 +223,8 @@ kubectl describe pvc <pvc_name>
Jika `PersistentVolumeClaim` (PVC) memiliki status `FileSystemResizePending`, maka berarti aman untuk membuat ulang _pod_ menggunakan PersistentVolumeClaim (PVC) tersebut.
FlexVolumes mengizinkan pengubahan ukuran jika _driver_ diatur dengan kapabilitas `RequiresFSResize` menjadi "_true_".
FlexVolume dapat diubah ukurannya pada saat _pod_ mengalami _restart_.
FlexVolumes mengizinkan pengubahan ukuran jika _driver_ diatur dengan kapabilitas `RequiresFSResize` menjadi "_true_".
FlexVolume dapat diubah ukurannya pada saat _pod_ mengalami _restart_.
{{< feature-state for_k8s_version="v1.11" state="alpha" >}}
@@ -236,8 +236,8 @@ PVC manapun yang sedang digunakan secara otomatis menjadi tersedia untuk _pod_ y
Fitur ini tidak memiliki efek pada PVC yang tidak sedang digunakan oleh _Pod_ atau _deployment_. Kamu harus membuat sebuah _Pod_ yang
menggunakan PVC sebelum perluasan dapat selesai dilakukan.
Memperluas PVC yang sedang digunakan sudah ditambahkan pada rilis 1.13. Untuk mengaktifkan fitur ini gunakan `ExpandInUsePersistentVolumes` dan gerbang fitur `ExpandPersistentVolumes`. Gerbang fitur `ExpandPersistentVolumes` sudah diaktifkan sejak awal. Jika `ExpandInUsePersistentVolumes` sudah terpasang, FlexVolume dapat diubah ukurannya secara langsung tanpa perlu melakukan _restart_ pada _pod_.
Memperluas PVC yang sedang digunakan sudah ditambahkan pada rilis 1.13. Untuk mengaktifkan fitur ini gunakan `ExpandInUsePersistentVolumes` dan gerbang fitur `ExpandPersistentVolumes`. Gerbang fitur `ExpandPersistentVolumes` sudah diaktifkan sejak awal. Jika `ExpandInUsePersistentVolumes` sudah terpasang, FlexVolume dapat diubah ukurannya secara langsung tanpa perlu melakukan _restart_ pada _pod_.
{{< note >}}
Pengubahan ukuran FlexVolume hanya mungkin dilakukan ketika _driver_ yang menjalankannya mendukung pengubahan ukuran.
{{< /note >}}
@@ -365,7 +365,7 @@ Dahulu, anotasi `volume.beta.kubernetes.io/storage-class` digunakan sebagai gant
atribut `storageClassName`. Anotasi ini masih dapat bekerja, namun
akan dihilangkan sepenuhnya pada rilis Kubernetes mendatang.
### Kebijakan Reklaim
### Kebijakan Reklaim
Kebijakan-kebijakan reklaim saat ini antara lain:
@@ -375,7 +375,7 @@ Kebijakan-kebijakan reklaim saat ini antara lain:
Saat ini, hanya NFS dan HostPath yang mendukung daur ulang. AWS EBS, GCE PD, Azure Disk, dan Cinder Volume mendukung penghapusan.
### Opsi Pemasangan
### Opsi Pemasangan
Seorang administrator Kubernetes dapat menspesifikasi opsi pemasangan tambahan untuk ketika sebuah _Persistent Volume_ dipasangkan pada sebuah _node_.
@@ -405,7 +405,7 @@ Dahulu, anotasi `volume.beta.kubernetes.io/mount-options` digunakan sebagai gant
atribut `mountOptions`. Anotasi ini masih dapat bekerja, namun
akan dihilangkan sepenuhnya pada rilis Kubernetes mendatang.
### Afinitas Node
### Afinitas Node
{{< note >}}
Untuk kebanyakan tipe volume, kamu tidak perlu memasang kolom ini. Kolom ini secara otomatis terisi untuk tipe blok volume [AWS EBS](/docs/concepts/storage/volumes/#awselasticblockstore), [GCE PD](/docs/concepts/storage/volumes/#gcepersistentdisk) dan [Azure Disk](/docs/concepts/storage/volumes/#azuredisk). Kamu harus mengaturnya secara eksplisit untuk volume [lokal](/docs/concepts/storage/volumes/#local).
@@ -413,7 +413,7 @@ Untuk kebanyakan tipe volume, kamu tidak perlu memasang kolom ini. Kolom ini sec
Sebuah PV dapat menspesifikasi [afinitas node](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#volumenodeaffinity-v1-core) untuk mendefinisikan batasan yang membatasi _node_ mana saja yang dapat mengakses volume tersebut. _Pod_ yang menggunakan sebuah PV hanya akan bisa dijadwalkan ke _node_ yang dipilih oleh afinitas _node_.
### Fase
### Fase
Sebuah volume akan berada dalam salah satu fase di bawah ini:
@@ -448,11 +448,11 @@ spec:
- {key: environment, operator: In, values: [dev]}
```
### Mode Akses
### Mode Akses
Klaim menggunakan penulisan yang sama dengan volume ketika meminta _storage_ dengan mode akses tertentu.
### Mode Volume
### Mode Volume
Klaim menggunakan penulisan yang sama dengan volume untuk mengindikasikan konsumsi dari volume sebagai _filesystem_ ataupun perangkat _block_.
@@ -578,7 +578,7 @@ spec:
lun: 0
readOnly: false
```
### _Persistent Volume Claim_ meminta Volume _Raw Block_
### _Persistent Volume Claim_ meminta Volume _Raw Block_
```yaml
apiVersion: v1
kind: PersistentVolumeClaim
@@ -6,9 +6,9 @@ weight: 30
{{% capture overview %}}
Dokumen ini mendeskripsikan konsep StorageClass yang ada pada Kubernetes.
Sebelum lanjut membaca, sangat dianjurkan untuk memiliki pengetahuan terhadap
[volumes](/docs/concepts/storage/volumes/) dan
Dokumen ini mendeskripsikan konsep StorageClass yang ada pada Kubernetes.
Sebelum lanjut membaca, sangat dianjurkan untuk memiliki pengetahuan terhadap
[volumes](/docs/concepts/storage/volumes/) dan
[peristent volume](/docs/concepts/storage/persistent-volumes) terlebih dahulu.
{{% /capture %}}
@@ -17,29 +17,29 @@ Sebelum lanjut membaca, sangat dianjurkan untuk memiliki pengetahuan terhadap
## Pengenalan
Sebuah StorageClass menyediakan cara bagi administrator untuk
mendeskripsikan "kelas" dari penyimpanan yang mereka sediakan.
Kelas yang berbeda bisa saja memiliki perbedaan dari segi kualitas
servis yang disediakan, pemulihan (_backup_) kebijakan, atau kebijakan lain yang ditentukan
oleh administrator kluster. Kubernetes sendiri tidak dipengaruhi oleh
kelas apakah yang digunakan pada mekanisme penyimpanan yang digunakan.
Mekanisme ini seringkali disebut sebagai _"profiles"_ pada sistem penyimpanan
Sebuah StorageClass menyediakan cara bagi administrator untuk
mendeskripsikan "kelas" dari penyimpanan yang mereka sediakan.
Kelas yang berbeda bisa saja memiliki perbedaan dari segi kualitas
servis yang disediakan, pemulihan (_backup_) kebijakan, atau kebijakan lain yang ditentukan
oleh administrator kluster. Kubernetes sendiri tidak dipengaruhi oleh
kelas apakah yang digunakan pada mekanisme penyimpanan yang digunakan.
Mekanisme ini seringkali disebut sebagai _"profiles"_ pada sistem penyimpanan
yang lain.
## Sumber daya StorageClass
Setiap StorageClass (kelas penyimpanan) memiliki _field-field_ mendasar seperti
`provisioner`, `parameters`, dan `reclaimPolicy`, yang digunakan ketika
Setiap StorageClass (kelas penyimpanan) memiliki _field-field_ mendasar seperti
`provisioner`, `parameters`, dan `reclaimPolicy`, yang digunakan ketika
`PersistentVolume` yang dimiliki oleh kelas tersebut perlu disediakan (di-_provision_).
Nama yang digunakan oleh suatu StorageClass sifatnya penting, karena
ini merupakan cara yang digunakan oleh pengguna untuk meminta
penyimpanan dengan kelas tertentu. Administrator dapat menentukan
nama dan parameter lain dari suatu kelas ketika membuat suatu objek `StorageClass`,
Nama yang digunakan oleh suatu StorageClass sifatnya penting, karena
ini merupakan cara yang digunakan oleh pengguna untuk meminta
penyimpanan dengan kelas tertentu. Administrator dapat menentukan
nama dan parameter lain dari suatu kelas ketika membuat suatu objek `StorageClass`,
dan objek yang sudah dibuat tidak dapat diubah lagi definisinya.
Administrator dapat memberikan spesifikasi StorageClass _default_ bagi
PVC yang tidak membutuhkan kelas tertentu untuk dapat melakukan mekanisme _bind_:
Administrator dapat memberikan spesifikasi StorageClass _default_ bagi
PVC yang tidak membutuhkan kelas tertentu untuk dapat melakukan mekanisme _bind_:
kamu dapat membaca [bagian `PersistentVolumeClaim`](/docs/concepts/storage/persistent-volumes/#class-1)
untuk penjelasan lebih lanjut.
@@ -59,8 +59,8 @@ volumeBindingMode: Immediate
### _Provisioner_
Setiap kelas penyimpanan (_storage class_) memiliki sebuah _provisioner_ yang
menentukan _plugin_ manakah yang digunakan ketika sebuah PV disediakan (di-_provision_).
Setiap kelas penyimpanan (_storage class_) memiliki sebuah _provisioner_ yang
menentukan _plugin_ manakah yang digunakan ketika sebuah PV disediakan (di-_provision_).
_Field_ ini haruslah didefinisikan.
| Plugin Volume | Provisioner Internal| Contoh Konfigurasi |
@@ -85,104 +85,104 @@ _Field_ ini haruslah didefinisikan.
| StorageOS | &#x2713; | [StorageOS](#storageos) |
| Local | - | [Local](#local) |
Kamu tidak dibatasi untuk hanya menggunakan _provisioner_ internal yang disediakan
pada list yang tersedia (yang memiliki nama dengan prefix "kubernetes.io" dan
didistribusikan bersamaan dengan Kubernetes). Kamu juga dapat menjalankan dan
mendefinisikan _provisioner_ eksternal yang merupakan program independen selama
Kamu tidak dibatasi untuk hanya menggunakan _provisioner_ internal yang disediakan
pada list yang tersedia (yang memiliki nama dengan prefix "kubernetes.io" dan
didistribusikan bersamaan dengan Kubernetes). Kamu juga dapat menjalankan dan
mendefinisikan _provisioner_ eksternal yang merupakan program independen selama
program tersebut menerapkan [spesifikasi](https://git.k8s.io/community/contributors/design-proposals/storage/volume-provisioning.md)
yang didefinisikan oleh Kubernetes. Penulis dari _provisioner_ eksternal Kubernetes
memiliki kuasa penuh akan tempat dimana kode sumber yang mereka tulis, bagaimana
mekanisme penyediaan (_provisioning_) dilakukan, serta bagaimana hal tersebut dapat dijalankan,
serta _plugin_ volume apakah yang digunakan (termasuk Flex), dkk.
yang didefinisikan oleh Kubernetes. Penulis dari _provisioner_ eksternal Kubernetes
memiliki kuasa penuh akan tempat dimana kode sumber yang mereka tulis, bagaimana
mekanisme penyediaan (_provisioning_) dilakukan, serta bagaimana hal tersebut dapat dijalankan,
serta _plugin_ volume apakah yang digunakan (termasuk Flex), dkk.
Repositori [kubernetes-incubator/external-storage](https://github.com/kubernetes-incubator/external-storage)
menyimpan _library_ yang dibutukan untuk menulis _provisioner_ eksternal
yang mengimplementasi spesifikasi serta beberapa _provisioner_ eksternal yang
menyimpan _library_ yang dibutukan untuk menulis _provisioner_ eksternal
yang mengimplementasi spesifikasi serta beberapa _provisioner_ eksternal yang
dipelihara oleh komunitas.
Sebagai contoh, NFS tidak menyediakan _provisioner_ internal, tetapi
sebuah _provisioner_ eksternal dapat digunakan. Beberapa _provisioner_ eksternal
Sebagai contoh, NFS tidak menyediakan _provisioner_ internal, tetapi
sebuah _provisioner_ eksternal dapat digunakan. Beberapa _provisioner_ eksternal
dapat ditemukan di bawah repositori [kubernetes-incubator/external-storage](https://github.com/kubernetes-incubator/external-storage).
Di sana juga terdapat beberapa kasus dimana vendor penyimpanan _3rd party_
menyediakan _provisioner_ eksternal yang mereka sediakan sendiri.
### Perolehan Kembali untuk Kebijakan (_Reclaim Policy_)
_Persistent Volumes_ yang secara dinamis dibuat oleh sebuah kelas penyimpanan
akan memiliki _reclaim policy_ yang didefinisikan di dalam _field_ `reclaimPolicy`
dari kelas tersebut, yang nilainya dapat diisi dengan `Delete` atau `Retain`.
Jika tidak terdapat `reclaimPolicy` yang dispesifikasikan ketika sebuah objek
_Persistent Volumes_ yang secara dinamis dibuat oleh sebuah kelas penyimpanan
akan memiliki _reclaim policy_ yang didefinisikan di dalam _field_ `reclaimPolicy`
dari kelas tersebut, yang nilainya dapat diisi dengan `Delete` atau `Retain`.
Jika tidak terdapat `reclaimPolicy` yang dispesifikasikan ketika sebuah objek
StorageClass dibuat, maka nilai default bagi kelas tersebut adalah `Delete`.
PersistentVolume yang dibuat secara manual dan diatur dengan menggunakan
kelas penyimpanan akan menggunakan _reclaim policy_ apapun yang diberikan
PersistentVolume yang dibuat secara manual dan diatur dengan menggunakan
kelas penyimpanan akan menggunakan _reclaim policy_ apapun yang diberikan
pada saat objek tersebut dibuat.
### Pilihan _Mount_
PersistentVolume yang secara dinamis dibuat oleh sebuah kelas penyimpanan
akan memiliki pilihan _mount_ yang dapat dispesifikasikan pada _field_
PersistentVolume yang secara dinamis dibuat oleh sebuah kelas penyimpanan
akan memiliki pilihan _mount_ yang dapat dispesifikasikan pada _field_
`mountOptions` dari kelas tersebut.
Jika sebuah _plugin_ volume tidak mendukung pilihan _mount_
yang dispesifikasikan, mekanisme penyediaan (_provision_) akan digagalkan. Pilihan _mount_
yang akan divalidasi pada kelas penyimpanan maupun PV, maka _mount_ tersebut
Jika sebuah _plugin_ volume tidak mendukung pilihan _mount_
yang dispesifikasikan, mekanisme penyediaan (_provision_) akan digagalkan. Pilihan _mount_
yang akan divalidasi pada kelas penyimpanan maupun PV, maka _mount_ tersebut
akan gagal apabila salah satu dari keduanya bersifat invalid.
### Mode Volume _Binding_
_Field_ `volumeBindingMode` mengontrol kapan mekanisme [_binding_ volume dan
_provisioning_ dinamis](/docs/concepts/storage/persistent-volumes/#provisioning)
harus dilakukan.
_Field_ `volumeBindingMode` mengontrol kapan mekanisme [_binding_ volume dan
_provisioning_ dinamis](/docs/concepts/storage/persistent-volumes/#provisioning)
harus dilakukan.
Secara _default_, ketika mode `Immediate` yang mengindikasikan
terjadinya volume _binding_ dan _provisioning_ dinamis terjadi ketika
PersistentVolumeClaim dibuat. Untuk _backend_ penyimpanan yang dibatasi oleh
topologi tertentu dan tidak dapat diakses secara global dari semua Node
yang ada di kluster, PersistentVolume akan di-_bound_ atau di-_provision_
tanpa perlu memenuhi persyaratan _scheduling_ dari Pod. Hal ini dapat menyebabkan
adanya Pod yang tidak mendapatkan mekanisme _scheduling_.
Secara _default_, ketika mode `Immediate` yang mengindikasikan
terjadinya volume _binding_ dan _provisioning_ dinamis terjadi ketika
PersistentVolumeClaim dibuat. Untuk _backend_ penyimpanan yang dibatasi oleh
topologi tertentu dan tidak dapat diakses secara global dari semua Node
yang ada di kluster, PersistentVolume akan di-_bound_ atau di-_provision_
tanpa perlu memenuhi persyaratan _scheduling_ dari Pod. Hal ini dapat menyebabkan
adanya Pod yang tidak mendapatkan mekanisme _scheduling_.
Seorang administrator kluster dapat mengatasi hal tersebut dengan cara memberikan
spesifikasi mode `WaitForFirstConsumer` yang akan memperlambat mekanisme _provisioning_
dan _binding_ dari sebuah PersistentVolume hingga sebuah Pod yang menggunakan
PersistentVolumeClaim dibuat. PersistentVolume akan dipilih atau di-_provisioning_
sesuai dengan topologi yang dispesifikasikan oleh limitasi yang diberikan
oleh mekanisme _scheduling_ Pod. Hal ini termasuk, tetapi tidak hanya terbatas pada,
Seorang administrator kluster dapat mengatasi hal tersebut dengan cara memberikan
spesifikasi mode `WaitForFirstConsumer` yang akan memperlambat mekanisme _provisioning_
dan _binding_ dari sebuah PersistentVolume hingga sebuah Pod yang menggunakan
PersistentVolumeClaim dibuat. PersistentVolume akan dipilih atau di-_provisioning_
sesuai dengan topologi yang dispesifikasikan oleh limitasi yang diberikan
oleh mekanisme _scheduling_ Pod. Hal ini termasuk, tetapi tidak hanya terbatas pada,
[persyaratan sumber daya](/docs/concepts/configuration/manage-compute-resources-container),
[_node selector_](/docs/concepts/configuration/assign-pod-node/#nodeselector),
[afinitas dan
anti-afinitas Pod](/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity),
serta [_taint_ dan _toleration_](/docs/concepts/configuration/taint-and-toleration).
Beberapa _plugin_ di bawah ini mendukung `WaitForFirstConsumer` dengan _provisioning_
Beberapa _plugin_ di bawah ini mendukung `WaitForFirstConsumer` dengan _provisioning_
dinamis:
* [AWSElasticBlockStore](#aws-ebs)
* [GCEPersistentDisk](#gce-pd)
* [AzureDisk](#azure-disk)
Beberapa _plugin_ di bawah ini mendukung `WaitForFirstConsumer` dengan _binding_
Beberapa _plugin_ di bawah ini mendukung `WaitForFirstConsumer` dengan _binding_
PersistentVolume yang terlebih dahulu dibuat:
* Semua hal di atas
* [Lokal](#lokal)
{{< feature-state state="beta" for_k8s_version="1.14" >}}
[Volume-volume CSI](/docs/concepts/storage/volumes/#csi) juga didukung
dengan adanya _provisioning_ dinamis serta PV yang telah terlebih dahulu dibuat,
meskipun demikian, akan lebih baik apabila kamu melihat dokumentasi
untuk driver spesifik CSI untuk melihat topologi _key_ yang didukung
[Volume-volume CSI](/docs/concepts/storage/volumes/#csi) juga didukung
dengan adanya _provisioning_ dinamis serta PV yang telah terlebih dahulu dibuat,
meskipun demikian, akan lebih baik apabila kamu melihat dokumentasi
untuk driver spesifik CSI untuk melihat topologi _key_ yang didukung
beserta contoh penggunaannya. _Feature gate_ `CSINodeInfo` haruslah diaktifkan.
### Topologi yang Diizinkan
Ketika sebuah operator kluster memberikan spesifikasi `WaitForFirstConsumer` pada
mode `binding` volume, mekanisme pembatasan (restriksi) `provisioning` tidak lagi dibutuhkan
pada sebagian besar kasus. Meskipun begitu, apabila hal tersebut masih dibutuhkan,
Ketika sebuah operator kluster memberikan spesifikasi `WaitForFirstConsumer` pada
mode `binding` volume, mekanisme pembatasan (restriksi) `provisioning` tidak lagi dibutuhkan
pada sebagian besar kasus. Meskipun begitu, apabila hal tersebut masih dibutuhkan,
`field` `allowedTopologies` dapat dispesifikasikan.
Contoh ini memberikan demonstrasi bagaimana cara membatasi topologi
dari volume yang di-_provision_ pada suatu zona spesifik serta harus digunakan
Contoh ini memberikan demonstrasi bagaimana cara membatasi topologi
dari volume yang di-_provision_ pada suatu zona spesifik serta harus digunakan
sebagai pengganti parameter `zone` dam `zones` untuk `plugin` yang akan digunakan.
```yaml
@@ -204,11 +204,11 @@ allowedTopologies:
## Parameter-Parameter
Kelas-kelas penyimpanan memiliki parameter yang mendeskripsikan
volume yang dimiliki oleh kelas penyimpanan tersebut. Parameter yang berbeda
bisa saja diterima bergantung pada `provisioner`. Sebagai contohnya, nilai `io1`,
untuk parameter `type`, dan parameter `iopsPerGB` spesifik terhadap EBS.
Ketika sebuah parameter diabaikan, beberapa nilai _default_ akan digunakan sebagai
Kelas-kelas penyimpanan memiliki parameter yang mendeskripsikan
volume yang dimiliki oleh kelas penyimpanan tersebut. Parameter yang berbeda
bisa saja diterima bergantung pada `provisioner`. Sebagai contohnya, nilai `io1`,
untuk parameter `type`, dan parameter `iopsPerGB` spesifik terhadap EBS.
Ketika sebuah parameter diabaikan, beberapa nilai _default_ akan digunakan sebagai
gantinya.
### AWS EBS
@@ -225,29 +225,29 @@ parameters:
fsType: ext4
```
* `type`: `io1`, `gp2`, `sc1`, `st1`. Lihat
* `type`: `io1`, `gp2`, `sc1`, `st1`. Lihat
[dokumentasi AWS](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html)
untuk detail lebih lanjut. Nilai _default_: `gp2`.
* `zone` (_deprecated_): zona AWS. Jika tidak terdapat nilai `zone` atau `zones`
yang dispesifikasikan, volume secara generik dijadwalkan dengan menggunakan
penjadwalan `round-robin-ed` pada semua zona aktif yang ada pada kluster Kubernetes
* `zone` (_deprecated_): zona AWS. Jika tidak terdapat nilai `zone` atau `zones`
yang dispesifikasikan, volume secara generik dijadwalkan dengan menggunakan
penjadwalan `round-robin-ed` pada semua zona aktif yang ada pada kluster Kubernetes
yang memiliki _node_.
* `zones` (_deprecated_): Nilai terpisahkan koma yang merupakan barisan zona pada AWS.
Jika tidak terdapat nilai `zone` atau `zones` yang dispesifikasikan,
volume secara generik dijadwalkan dengan menggunakan penjadwalan
`round-robin-ed` pada semua zona aktif yang ada pada kluster Kubernetes
* `zones` (_deprecated_): Nilai terpisahkan koma yang merupakan barisan zona pada AWS.
Jika tidak terdapat nilai `zone` atau `zones` yang dispesifikasikan,
volume secara generik dijadwalkan dengan menggunakan penjadwalan
`round-robin-ed` pada semua zona aktif yang ada pada kluster Kubernetes
yang memiliki _node_.
* `iopsPerGB`: hanya untuk volume `io1`. Operasi per detik per GiB. Volume _plugin_
AWS mengalikan nilai ini dengan ukuran volume yang dibutuhkan untuk menghitung IOPS
dari volume (nilai maksimum yang didukung adalah 20,000 IOPS baca [dokumentasi
* `iopsPerGB`: hanya untuk volume `io1`. Operasi per detik per GiB. Volume _plugin_
AWS mengalikan nilai ini dengan ukuran volume yang dibutuhkan untuk menghitung IOPS
dari volume (nilai maksimum yang didukung adalah 20,000 IOPS baca [dokumentasi
AWS](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html).
Nilai masukan yang diharapkan merupakan string, misalnya `"10"`, bukan `10`.
* `fsType`: fsType yang didukung oleh Kubernetes. Nilai _default_-nya adalah: `"ext4"`.
* `encrypted`: menyatakan dimana volume EBS harus dienkripsi atau tidak.
Nilai yang valid adalah `"true"` atau `"false"` (dalam string bukan boolean i.e. `"true"`, bukan `true`).
* `kmsKeyId`: opsional. Merupakan nama dari Amazon Resource Name dari _key_ yang digunakan
untuk melakukan enkripsi volume. Jika nilai ini tidak disediakan tetapi nilai dari
_field_ `encrypted` adalah _true_, sebuah _key_ akan dibuat oleh AWS. Perhatikan dokumentasi AWS
* `kmsKeyId`: opsional. Merupakan nama dari Amazon Resource Name dari _key_ yang digunakan
untuk melakukan enkripsi volume. Jika nilai ini tidak disediakan tetapi nilai dari
_field_ `encrypted` adalah _true_, sebuah _key_ akan dibuat oleh AWS. Perhatikan dokumentasi AWS
untuk mengetahui nilai yang valid bagi ARN.
{{< note >}}
@@ -269,28 +269,28 @@ parameters:
```
* `type`: `pd-standard` atau `pd-ssd`. Nilai _default_: `pd-standard`
* `zone` (_deprecated_): zona GCE. Jika tidak terdapat nilai `zone` atau `zones`
yang dispesifikasikan, volume secara generik dijadwalkan dengan menggunakan
penjadwalan `round-robin-ed` pada semua zona aktif yang ada pada kluster Kubernetes
* `zone` (_deprecated_): zona GCE. Jika tidak terdapat nilai `zone` atau `zones`
yang dispesifikasikan, volume secara generik dijadwalkan dengan menggunakan
penjadwalan `round-robin-ed` pada semua zona aktif yang ada pada kluster Kubernetes
yang memiliki _node_.
* `zones` (_deprecated_): Nilai terpisahkan koma yang merupakan barisan zona.
Jika tidak terdapat nilai `zone` atau `zones` yang dispesifikasikan,
volume secara generik dijadwalkan dengan menggunakan penjadwalan
`round-robin-ed` pada semua zona aktif yang ada pada kluster Kubernetes
* `zones` (_deprecated_): Nilai terpisahkan koma yang merupakan barisan zona.
Jika tidak terdapat nilai `zone` atau `zones` yang dispesifikasikan,
volume secara generik dijadwalkan dengan menggunakan penjadwalan
`round-robin-ed` pada semua zona aktif yang ada pada kluster Kubernetes
yang memiliki _node_.
* `replication-type`: `none` atau `regional-pd`. Nilai _default_: `none`.
Jika `replication-type` diubah menjadi `none`, sebuah PD reguler (zonal) akan
Jika `replication-type` diubah menjadi `none`, sebuah PD reguler (zonal) akan
di-_provisioning_.
Jika `replication-type` diubah menjadi `regional-pd`, sebuah
[_Persistent_ Disk Regional (PD Regional)](https://cloud.google.com/compute/docs/disks/#repds)
akan di-_provisioning_. Pada kasus ini, pengguna harus menggunakan `zones`
dan bukan `zone` untuk menspesifikasikan zona replikasi yang diinginkan. Jika terdapat
tepat dua zona yang dispesifikasikan, PD Regional akan di-_provisioning_ pada
zona replikasi yang diinginkan. Jika terdapat lebih dari 2 zona yang dispesifikasikan,
Kubernetes akan memilih secara acak zona dari zona-zona yang dispesifikasikan. Jika
parameter `zones` tidak diinisialisasi, Kubernetes akan memilih secara acak dari
akan di-_provisioning_. Pada kasus ini, pengguna harus menggunakan `zones`
dan bukan `zone` untuk menspesifikasikan zona replikasi yang diinginkan. Jika terdapat
tepat dua zona yang dispesifikasikan, PD Regional akan di-_provisioning_ pada
zona replikasi yang diinginkan. Jika terdapat lebih dari 2 zona yang dispesifikasikan,
Kubernetes akan memilih secara acak zona dari zona-zona yang dispesifikasikan. Jika
parameter `zones` tidak diinisialisasi, Kubernetes akan memilih secara acak dari
zona yang diatur oleh kluster Kubernetes.
{{< note >}}
@@ -318,28 +318,28 @@ parameters:
volumetype: "replicate:3"
```
* `resturl`: Servis REST Gluster/URL servis Heketi yang digunakan untuk
melakukan _provisioning_ volume gluster sesuai dengan kebutuhan. Format secara umum
haruslah dalam bentuk `IPaddress:Port` dan hal ini merupakan parameter wajib untuk
_provisioner_ dinamis GlusterFS. Jika servis Heketi diekspos sebagai servis yang dapat
melakukan _routing_ pada pengaturan openshift/kubernetes, ini dapat memiliki
* `resturl`: Servis REST Gluster/URL servis Heketi yang digunakan untuk
melakukan _provisioning_ volume gluster sesuai dengan kebutuhan. Format secara umum
haruslah dalam bentuk `IPaddress:Port` dan hal ini merupakan parameter wajib untuk
_provisioner_ dinamis GlusterFS. Jika servis Heketi diekspos sebagai servis yang dapat
melakukan _routing_ pada pengaturan openshift/kubernetes, ini dapat memiliki
format yang sesuai dengan `http://heketi-storage-project.cloudapps.mystorage.com`
dimana fqdn yang ada merupakan URL servis Heketi yang dapat di-_resolve_.
* `restauthenabled` : Servis REST Gluster menyediakan nilai boolean yang dapat digunakan
untuk mengajukan `authentication` untuk server REST yang ada. Jika nilai yang disediakan
adalah `"true"`, dengan kondisi dimana `restuser` dan `restuserkey` atau `secretNamespace` + `secretName`
harus diisi. Opsi ini sudah_deprecated_, mekanisme otentikasi akan diizinkan apabila
* `restauthenabled` : Servis REST Gluster menyediakan nilai boolean yang dapat digunakan
untuk mengajukan `authentication` untuk server REST yang ada. Jika nilai yang disediakan
adalah `"true"`, dengan kondisi dimana `restuser` dan `restuserkey` atau `secretNamespace` + `secretName`
harus diisi. Opsi ini sudah_deprecated_, mekanisme otentikasi akan diizinkan apabila
salah satu dari _field_ `restuser`, `restuserkey`, `secretName` atau `secretNamespace` diterapkan.
* `restuser` : Pengguna servis REST Gluster/Heketi yang memiliki akses
* `restuser` : Pengguna servis REST Gluster/Heketi yang memiliki akses
untuk membuat volume di dalam Trusted Pool Gluster.
* `restuserkey` : Password pengguna servis REST Gluster/Heketi
yang digunakan untuk mekanisme otentikasi server REST. Parameter ini _deprecated_
* `restuserkey` : Password pengguna servis REST Gluster/Heketi
yang digunakan untuk mekanisme otentikasi server REST. Parameter ini _deprecated_
dan digantikan dengan parameter `secretNamespace` + `secretName`.
* `secretNamespace`, `secretName` : Identifikasi instans Secret yang mengandung
password pengguna yang digunakan untuk berkomunikasi dengan servis REST Gluster.
Parameter ini dianggap opsional, password kosong dapat digunakan ketika
nilai dari `secretNamespace` dan `secretName` tidak dispesifikasikan.
Secret yang disediakan haruslah memiliki tipe `"kubernetes.io/glusterfs"`,
* `secretNamespace`, `secretName` : Identifikasi instans Secret yang mengandung
password pengguna yang digunakan untuk berkomunikasi dengan servis REST Gluster.
Parameter ini dianggap opsional, password kosong dapat digunakan ketika
nilai dari `secretNamespace` dan `secretName` tidak dispesifikasikan.
Secret yang disediakan haruslah memiliki tipe `"kubernetes.io/glusterfs"`,
yang dapat dibuat dengan menggunakan mekanisme dibawah ini:
```
@@ -348,38 +348,38 @@ parameters:
--namespace=default
```
Contoh Secret dapat ditemukan pada berkas berikut
Contoh Secret dapat ditemukan pada berkas berikut
[glusterfs-provisioning-secret.yaml](https://github.com/kubernetes/examples/tree/master/staging/persistent-volume-provisioning/glusterfs/glusterfs-secret.yaml).
* `clusterid`: `630372ccdc720a92c681fb928f27b53f` merupakan ID dari kluster
yang akan digunakan oleh Heketi ketikan melakukan _provisioning_ volume. ID ini juga
dapat berupa serangkaian list, misalnya: `"8452344e2becec931ece4e33c4674e4e,42982310de6c63381718ccfa6d8cf397"`.
* `clusterid`: `630372ccdc720a92c681fb928f27b53f` merupakan ID dari kluster
yang akan digunakan oleh Heketi ketikan melakukan _provisioning_ volume. ID ini juga
dapat berupa serangkaian list, misalnya: `"8452344e2becec931ece4e33c4674e4e,42982310de6c63381718ccfa6d8cf397"`.
Parameter ini merupakan parameter opsional.
* `gidMin`, `gidMax` : Nilai minimum dan maksimum dari GID untuk kelas penyimpanan (_storage class_).
Sebuah nilai unik dari GID di dalam _range_ ( gidMin-gidMax ) ini akan digunakan untuk melakukan
_provisioning_ volume secara dinamis. Nilai ini bersifat opsional. Jika tidak dispesifikasikan,
volume akan secara default di-_provisioning_ dalam _range_ 2000-2147483647 yang merupakan nilai default
Sebuah nilai unik dari GID di dalam _range_ ( gidMin-gidMax ) ini akan digunakan untuk melakukan
_provisioning_ volume secara dinamis. Nilai ini bersifat opsional. Jika tidak dispesifikasikan,
volume akan secara default di-_provisioning_ dalam _range_ 2000-2147483647 yang merupakan nilai default
dari gidMin dan gidMax.
* `volumetype` : Tipe volume beserta paremeter-nya dapat diatur dengan menggunakan nilai opsional
berikut. Jika tipe dari volume tidak dispesifikasikan, maka _provisioner_ akan memutuskan tipe
volume apakah yang akan digunakan.
* `volumetype` : Tipe volume beserta paremeter-nya dapat diatur dengan menggunakan nilai opsional
berikut. Jika tipe dari volume tidak dispesifikasikan, maka _provisioner_ akan memutuskan tipe
volume apakah yang akan digunakan.
Sebagai contoh:
* Volume replika: `volumetype: replicate:3` dimana '3' merupakan jumlah replika.
* Persebaran (_Disperse_)/EC volume: `volumetype: disperse:4:2` dimana'4' merupakan data dan '2' merupakan jumlah redundansi.
* Distribusi volume: `volumetype: none`
Untuk tipe volume apa saja yang tersedia dan berbagai opsi administrasi yang ada, kamu dapat membaca
Untuk tipe volume apa saja yang tersedia dan berbagai opsi administrasi yang ada, kamu dapat membaca
[Petunjuk Administrasi](https://access.redhat.com/documentation/en-US/Red_Hat_Storage/3.1/html/Administration_Guide/part-Overview.html).
Untuk informasi lebih lanjut, kamu dapat membaca
[Bagaimana Cara Mengatur Heketi](https://github.com/heketi/heketi/wiki/Setting-up-the-topology).
Ketika PersistentVolume di-_provisioning_ secara dinamis, plugin Gluster secara otomatis
akan membuat _endpoint_ serta sebuah servis _headless_ dengan nama `gluster-dynamic-<claimname>`.
Ketika PersistentVolume di-_provisioning_ secara dinamis, plugin Gluster secara otomatis
akan membuat _endpoint_ serta sebuah servis _headless_ dengan nama `gluster-dynamic-<claimname>`.
_Endpoint_ dinamis dan servis secara otomatis akan dihapus ketika PVC dihapus.
### OpenStack Cinder
@@ -394,8 +394,8 @@ parameters:
availability: nova
```
* `availability`: Zona _Availability_. Jika tidak dispesifikasikan, secara umum volume akan
diatur dengan menggunakan algoritma _round-robin_ pada semua zona aktif
* `availability`: Zona _Availability_. Jika tidak dispesifikasikan, secara umum volume akan
diatur dengan menggunakan algoritma _round-robin_ pada semua zona aktif
dimana kluster Kubernetes memiliki sebuah node.
{{< note >}}
@@ -433,9 +433,9 @@ _Provisioner_ internal OpenStack ini sudah _deprecated_. Kamu dapat menggunakan
```
`datastore`: Pengguna juga dapat menspesifikasikan _datastore_ pada StorageClass.
Volume akan dibuat pada datastore yang dispesifikasikan pada kelas penyimpanan,
dalam hal ini adalah `VSANDatastore`. _Field_ ini bersifat opsional. Jika _datastore_
tidak dispesifikasikan, maka volume akan dibuat dengan menggunakan _datastore_ yang dispesifikasikan
Volume akan dibuat pada datastore yang dispesifikasikan pada kelas penyimpanan,
dalam hal ini adalah `VSANDatastore`. _Field_ ini bersifat opsional. Jika _datastore_
tidak dispesifikasikan, maka volume akan dibuat dengan menggunakan _datastore_ yang dispesifikasikan
pada berkas konfigurasi vSphere yang digunakan untuk menginisialisasi penyedia layanan cloud vSphere.
3. Manajemen Kebijakan Penyimpanan di dalam Kubernetes
@@ -443,29 +443,29 @@ _Provisioner_ internal OpenStack ini sudah _deprecated_. Kamu dapat menggunakan
* Menggunakan kebijakan (_policy_) yang ada pada vCenter
Salah satu dari fitur paling penting yang ada pada vSphere untuk manajemen penyimpanan
adalah manajemen bebasis _policy_. Storage Policy Based Management (SPBM) adalah _framework_
yang menyediakan sebuah _control plane_ terpadu pada _data service_ yang meluas dan
solusi penyimpanannya yang tersedia. SPBM memungkinkan administrator vSphere menghadapi
permasalahan yang mungkin muncul seperti _capacity planning_, membedakan level servis, dan
adalah manajemen bebasis _policy_. Storage Policy Based Management (SPBM) adalah _framework_
yang menyediakan sebuah _control plane_ terpadu pada _data service_ yang meluas dan
solusi penyimpanannya yang tersedia. SPBM memungkinkan administrator vSphere menghadapi
permasalahan yang mungkin muncul seperti _capacity planning_, membedakan level servis, dan
melakukan manajemen _headroom capacity_.
_Policy_ SPBM dapat dispesifikasikan pada StorageClass menggunakan parameter
_Policy_ SPBM dapat dispesifikasikan pada StorageClass menggunakan parameter
`storagePolicyName`.
* Dukungan _policy_ SAN virtual di dalam Kubernetes
Administrator _Vsphere Infrastructure_ (VI) akan memiliki kemampuan
untuk menspesifikasikan Virtual SAN Storage Capabilities khusus
selama masa _provisioning_ volume secara dinamis. Persyaratan kapabilitas
penyimpanan diubah menjadi sebuah _policy_ Virtual SAN yang nantinya akan
dimasukkan ke dalam lapisan Virtual SAN ketika sebuah _persitent volume_ (penyimpanan
virtual) dibuat. Penyimpanan virtual kemudian akan didistribusikan pada semua
Administrator _Vsphere Infrastructure_ (VI) akan memiliki kemampuan
untuk menspesifikasikan Virtual SAN Storage Capabilities khusus
selama masa _provisioning_ volume secara dinamis. Persyaratan kapabilitas
penyimpanan diubah menjadi sebuah _policy_ Virtual SAN yang nantinya akan
dimasukkan ke dalam lapisan Virtual SAN ketika sebuah _persitent volume_ (penyimpanan
virtual) dibuat. Penyimpanan virtual kemudian akan didistribusikan pada semua
_datastore_ Virtual SAN untuk memenuhi kebutuhan ini.
Kamu dapat melihat [_Policy_ Penyimpanan Berdasarkan Manajemen untuk _Provisioning_ Dinamis Volume](https://vmware.github.io/vsphere-storage-for-kubernetes/documentation/policy-based-mgmt.html)
untuk detil lebih lanjut mengenai penggunaan _policy_ penyimpanan untuk manajemen _persistent volume_.
Terdapat beberapa
Terdapat beberapa
[contoh vSphere](https://github.com/kubernetes/examples/tree/master/staging/volumes/vsphere)
yang dapat kamu gunakan untuk mencoba manajemen _persistent volume_ di dalam Kubernetes untuk vSpehere.
@@ -498,10 +498,10 @@ parameters:
Secret yang dibutuhkan haruslah memiliki tipe "kubernetes.io/rbd".
* `adminSecretNamespace`: Namespace untuk `adminSecretName`. Nilai _default_-nya adalah "default".
* `pool`: Pool Ceph RBD. Nilai _default_-nya adalah "rbd".
* `userId`: Klien ID Ceph yang digunakan untuk melakukan pemetaan image RBD. Nilai _default_-nya sama dengan
* `userId`: Klien ID Ceph yang digunakan untuk melakukan pemetaan image RBD. Nilai _default_-nya sama dengan
`adminId`.
* `userSecretName`: Nama Secret Ceph untuk `userId` yang digunakan untuk memetakan image RBD.
Secret ini harus berada pada namespace yang sama dengan PVC. Parameter ini dibutuhkan.
* `userSecretName`: Nama Secret Ceph untuk `userId` yang digunakan untuk memetakan image RBD.
Secret ini harus berada pada namespace yang sama dengan PVC. Parameter ini dibutuhkan.
Secret yang disediakan haruslah memiliki tipe "kubernetes.io/rbd", dibuat dengan cara:
```shell
@@ -512,7 +512,7 @@ parameters:
* `userSecretNamespace`: Namespace untuk `userSecretName`.
* `fsType`: fsType yang didukung oleh kubernetes. Nilai _default_-nya adalah: `"ext4"`.
* `imageFormat`: Format image Ceph RBD, nilai yang mungkin adalah "1" atau "2". Nilai _default_-nya adalah "2".
* `imageFeatures`: Parameter ini bersifat opsional dan hanya dapat digunakan jika kamu mengganti nilai
* `imageFeatures`: Parameter ini bersifat opsional dan hanya dapat digunakan jika kamu mengganti nilai
dari `imageFormat` ke "2". Saat ini fitur yang didukung hanyalah `layering`.
Nilai _default_-nya adalah "", dan tidak ada fitur yang diaktifkan.
@@ -535,16 +535,16 @@ parameters:
quobyteTenant: "DEFAULT"
```
* `quobyteAPIServer`: API Server dari Quobyte dalam format
* `quobyteAPIServer`: API Server dari Quobyte dalam format
`"http(s)://api-server:7860"`
* `registry`: Registri Quobyte yang digunakan untuk melakukan _mount_ volume. Kamu dapat menspesifikasikan
registri yang kamu inginkan dengan format pasangan ``<host>:<port>`` atau jika kamu ingin mendefinisikan
beberapa registri sekaligus kamu dapat menempatkan koma diantara setiap pasangan ``<host>:<port>`` yang ada,
* `registry`: Registri Quobyte yang digunakan untuk melakukan _mount_ volume. Kamu dapat menspesifikasikan
registri yang kamu inginkan dengan format pasangan ``<host>:<port>`` atau jika kamu ingin mendefinisikan
beberapa registri sekaligus kamu dapat menempatkan koma diantara setiap pasangan ``<host>:<port>`` yang ada,
misalnya ``<host1>:<port>,<host2>:<port>,<host3>:<port>``.
Host dapat berupa alamat IP atau DNS.
* `adminSecretNamespace`: Namespace `adminSecretName`. Nilai default-nya adalah "default".
* `adminSecretName`: Secret yang mengandung informasi mengenai pengguna Quobyte dan
password yang digunakan untuk melakukan otentikasi API server. Secret yang digunakan
* `adminSecretName`: Secret yang mengandung informasi mengenai pengguna Quobyte dan
password yang digunakan untuk melakukan otentikasi API server. Secret yang digunakan
haruslah memiliki tipe "kubernetes.io/quobyte", yang dibuat dengan mekanisme berikut:
```shell
@@ -553,11 +553,11 @@ parameters:
--namespace=kube-system
```
* `user`: Melakukan pemetaan terhadap semua akses yang dimiliki pengguna.
* `user`: Melakukan pemetaan terhadap semua akses yang dimiliki pengguna.
Nilai _default_-nya adalah "root".
* `group`: Melakukan pemetaan terhadap semua group. Nilai _default_-nya adalah "nfsnobody".
* `quobyteConfig`: Menggunakan konfigurasi spesifik untuk membuat volume.
Kamu dapat membuat sebuah file konfigurasi atau melakukan modifikasi terhadap konfigurasi yang sudah ada
Kamu dapat membuat sebuah file konfigurasi atau melakukan modifikasi terhadap konfigurasi yang sudah ada
dengan menggunakan tatap muka Web atau CLI quobyte. Nilai _default_-nya adalah "BASE".
* `quobyteTenant`: Menggunakan ID tenant yang dispesifikasikan untuk membuat/menghapus volume.
_Tenant_ Quobyte haruslah sudah berada di dalam Quobyte. Nilai _default_-nya adalah "DEFAULT".
@@ -580,9 +580,9 @@ parameters:
* `skuName`: Akun penyimpanan Azure yang ada pada tingkatan Sku. Nilai _default_-nya adalah kosong.
* `location`: Lokasi akun penyimpanan Azure. Nilai _default_-nya adalah kosong.
* `storageAccount`: Nama akun penyimpanan Azure. Jika sebuan akun penyimpanan disediakan,
akun tersebut haruslah berada pada grup sumber daya yang ada dengan kluster,
dan `location` akan diabaikan. Jika sebuah akun penyimpanan tidak disediakan, sebuah akun penyimpanan
* `storageAccount`: Nama akun penyimpanan Azure. Jika sebuan akun penyimpanan disediakan,
akun tersebut haruslah berada pada grup sumber daya yang ada dengan kluster,
dan `location` akan diabaikan. Jika sebuah akun penyimpanan tidak disediakan, sebuah akun penyimpanan
baru akan dibuat pada grup sumber daya yang ada dengan kluster.
#### Kelas Penyimpanan Disk Azure yang Baru (mulai versi v1.7.2)
@@ -600,15 +600,15 @@ parameters:
* `storageaccounttype`: Akun penyimpanan Azure yang ada pada tingkatan Sku. Nilai _default_-nya adalah kosong.
* `kind`: Nilai yang mungkin adalah `shared` (default), `dedicated`, dan `managed`.
Ketika `kind` yang digunakan adalah `shared`, semua disk yang tidak di-_manage_ akan
Ketika `kind` yang digunakan adalah `shared`, semua disk yang tidak di-_manage_ akan
dibuat pada beberapa akun penyimpanan yang ada pada grup sumber daya yang sama dengan kluster.
Ketika `kind` yang digunakan adalah `dedicated`, sebuah akun penyimpanan
baru akan dibuat pada grup sumber daya yang ada dengan kluster. Ketika `kind` yang digunakan adalah
Ketika `kind` yang digunakan adalah `dedicated`, sebuah akun penyimpanan
baru akan dibuat pada grup sumber daya yang ada dengan kluster. Ketika `kind` yang digunakan adalah
`managed`, semua disk yang dikelola akan dibuat pada grup sumber daya yang ada dengan kluster.
- VM premium dapat di-_attach_ baik pada Standard_LRS dan Premium_LRS disks, sementara Standard
VM hanya dapat di-_attach_ pada disk Standard_LRS.
- VM yang dikelola hanya dapat meng-_attach_ disk yang dikelola dan VM yang tidak dikelola hanya dapat
- VM yang dikelola hanya dapat meng-_attach_ disk yang dikelola dan VM yang tidak dikelola hanya dapat
meng-_attach_ disk yang tidak dikelola.
### Berkas Azure
@@ -627,13 +627,13 @@ parameters:
* `skuName`: Akun penyimpanan Azure yang ada pada tingkatan Sku. Nilai _default_-nya adalah kosong.
* `location`: Lokasi akun penyimpanan Azure. Nilai _default_-nya adalah kosong.
* `storageAccount`: Nama akun penyimpanan Azure. Nilai _default_-nya adalah kosong. Jika sebuah penyimpanan
tidak memiliki sebuah akun yang disediakan, semua akun penyimpanan yang diasosiasikan dengan
grup sumber daya yang ada dan kemudian melakukan pencarian terhadap akun yang sesuai dengan
`skuName` dan `location`. Jika sebuah akun penyimpanan disediakan, akun tersebut haruslah berada
* `storageAccount`: Nama akun penyimpanan Azure. Nilai _default_-nya adalah kosong. Jika sebuah penyimpanan
tidak memiliki sebuah akun yang disediakan, semua akun penyimpanan yang diasosiasikan dengan
grup sumber daya yang ada dan kemudian melakukan pencarian terhadap akun yang sesuai dengan
`skuName` dan `location`. Jika sebuah akun penyimpanan disediakan, akun tersebut haruslah berada
di dalam grup sumber daya yang sama dengan kluster, serta `skuName` dan `location` akan diabaikan.
Selama _provision_, sebuah secret dibuat untuk menyimpan _credentials_. Jika kluster
Selama _provision_, sebuah secret dibuat untuk menyimpan _credentials_. Jika kluster
menggunakan konsep [RBAC](/docs/reference/access-authn-authz/rbac/) dan
[_Roles_ Controller](/docs/reference/access-authn-authz/rbac/#controller-roles),
menambahkan kapabilitas `create` untuk sumber daya `secret` bagi clusterrole
@@ -656,22 +656,22 @@ parameters:
* `fs`: filesystem yang akan digunakan: `none/xfs/ext4` (nilai default-nya: `ext4`).
* `block_size`: ukuran block dalam Kbytes (nilai _default_-nya: `32`).
* `repl`: jumlah replika _synchronous_ yang dapat disediakan dalam bentuk
faktor replikasi `1..3` (nilai _default_-nya: `1`) Nilai yang diharapkan dalam bentuk String
* `repl`: jumlah replika _synchronous_ yang dapat disediakan dalam bentuk
faktor replikasi `1..3` (nilai _default_-nya: `1`) Nilai yang diharapkan dalam bentuk String
`"1"` dan bukan `1`.
* `io_priority`: menentukan apakah volume yang dibuat akan dari penyimpanan dengan kualitas
* `io_priority`: menentukan apakah volume yang dibuat akan dari penyimpanan dengan kualitas
tinggi atau rendah dengan urutan prioritas `high/medium/low` (nilai _default_-nya: `low`).
* `snap_interval`: interval waktu dalam menit yang digunakan untuk melakukan _trigger_ _snapshots_.
_Snapshots_ dibuat secara inkremen berdasarkan perbedaan yang ada dengan _snapshot_ yang dibuat sebelumnya,
nilai perbedaan 0 akan menonaktifkan pembuatan _snapshot_ (nilai default-nya: `0`). Sebuah string merupakan nilai
_Snapshots_ dibuat secara inkremen berdasarkan perbedaan yang ada dengan _snapshot_ yang dibuat sebelumnya,
nilai perbedaan 0 akan menonaktifkan pembuatan _snapshot_ (nilai default-nya: `0`). Sebuah string merupakan nilai
yang diharapkan `"70"` dan bukan `70`.
* `aggregation_level`: menspesifikasikan jumlah _chunks_ dimana volume akan didistribusikan,
0 mengindikasikan volume yang _non-aggregate_ (nilai default-nya: `0`). Sebuah string merupakan nilai
* `aggregation_level`: menspesifikasikan jumlah _chunks_ dimana volume akan didistribusikan,
0 mengindikasikan volume yang _non-aggregate_ (nilai default-nya: `0`). Sebuah string merupakan nilai
yang diharapkan `"0"` dan bukan `0`.
* `ephemeral`: menentukan apakah volume harus dihapus setelah di-_unmount_
atau harus tetap ada. Penggunaan `emptyDir` dapat diubah menjadi true dan penggunaan
* `ephemeral`: menentukan apakah volume harus dihapus setelah di-_unmount_
atau harus tetap ada. Penggunaan `emptyDir` dapat diubah menjadi true dan penggunaan
`persistent volumes` untuk basisdata seperti Cassandra harus diubah menjadi false`,
true/false` (nilai default-nya: `false`). Sebuah string merupakan nilai
true/false` (nilai default-nya: `false`). Sebuah string merupakan nilai
yang diharapkan `"true"` dan bukan `true`.
### ScaleIO
@@ -705,7 +705,7 @@ parameters:
* `fsType`: filesystem yang digunakan untuk volume (nilai default-nya: ext4)
Plugin volume ScaleIO Kubernetes membutuhkan objek Secret yang suda dikonfigurasi sebelumnya.
Secret ini harus dibuat dengan tipe `kubernetes.io/scaleio` dan menggunakan namespace yang sama
Secret ini harus dibuat dengan tipe `kubernetes.io/scaleio` dan menggunakan namespace yang sama
dengan PVC yang dirujuk, seperti ditunjukkan pada contoh yang ada:
```shell
@@ -730,24 +730,24 @@ parameters:
adminSecretName: storageos-secret
```
* `pool`: Nama kapasitas distribusi StorageOS yang digunakan untuk melakukan
* `pool`: Nama kapasitas distribusi StorageOS yang digunakan untuk melakukan
_provisioning_ volume. _Pool_ default akan digunakan apabila nilainya tidak dispesifikasikan.
* `description`: Deskripsi untuk melakukan _assignment_ volume yang baru dibuat secara dinamis.
Semua deskripsi volume akan bernilai sama untuk kelas penyimpanan yang sama, meskipun begitu
kelas penyimpanan yang berbeda dapat digunakan untuk membuat deskripsi yang berbeda untuk penggunaan
Semua deskripsi volume akan bernilai sama untuk kelas penyimpanan yang sama, meskipun begitu
kelas penyimpanan yang berbeda dapat digunakan untuk membuat deskripsi yang berbeda untuk penggunaan
yang berbeda. Nilai default-nya adalah `Kubernetes volume`.
* `fsType`: Tipe filesystem default yang digunakan. Perhatikan bahwa aturan
yang didefinisikan oleh pengguna di dalam StirageOS dapat meng-_override_ nilai ini.
* `fsType`: Tipe filesystem default yang digunakan. Perhatikan bahwa aturan
yang didefinisikan oleh pengguna di dalam StirageOS dapat meng-_override_ nilai ini.
Nilai default-nya adalah `ext4`.
* `adminSecretNamespace`: Namespace dimana konfigurasi secret API berada. Hal ini bersifat wajib
* `adminSecretNamespace`: Namespace dimana konfigurasi secret API berada. Hal ini bersifat wajib
apabila adminSecretName diaktifkan.
* `adminSecretName`: Nama secret yang digunakan untuk memperoleh _credentials_ StorageOS
API. Jika tidak dispesifikasikan, nilaidefault akan digunakan.
Plugin volume dapat menggunakan objek Secret untuk menspesifikasikan
endpoint dan kredensial yang digunakan untuk mengakses API StorageOS.
Plugin volume dapat menggunakan objek Secret untuk menspesifikasikan
endpoint dan kredensial yang digunakan untuk mengakses API StorageOS.
Hal ini hanya akan dibutuhkan apabila terdapat perubahan pada nilai _default_.
Secret ini harus dibuat dengan tipe `kubernetes.io/storageos`,
Secret ini harus dibuat dengan tipe `kubernetes.io/storageos`,
seperti ditunjukkan pada contoh yang ada:
```shell
@@ -759,9 +759,9 @@ kubectl create secret generic storageos-secret \
--namespace=default
```
Secret yang digunakan untuk melakukan _provisioning_ volume secara dinamis
dapat dibuat di namespace apapun dan dirujuk dengan menggunakan parameter `adminSecretNamespace`.
Secret yang digunakan oleh volume yang sedang di-_provisioning_ harus dibuat pada namespace yang sama
Secret yang digunakan untuk melakukan _provisioning_ volume secara dinamis
dapat dibuat di namespace apapun dan dirujuk dengan menggunakan parameter `adminSecretNamespace`.
Secret yang digunakan oleh volume yang sedang di-_provisioning_ harus dibuat pada namespace yang sama
dengan PVC yang merujuk secret tersebut.
### Lokal
@@ -777,12 +777,12 @@ provisioner: kubernetes.io/no-provisioner
volumeBindingMode: WaitForFirstConsumer
```
Volume lokal tidak mendukung adanya _provisioning_ secara dinamis,
meskipun begitu sebuah StorageClass akan tetap dibuat untuk mencegah terjadinya _bind_ volume
sampai _scheduling_ pod dilakukan. Hal ini dispesifikasikan oleh mode _binding_ volume
Volume lokal tidak mendukung adanya _provisioning_ secara dinamis,
meskipun begitu sebuah StorageClass akan tetap dibuat untuk mencegah terjadinya _bind_ volume
sampai _scheduling_ pod dilakukan. Hal ini dispesifikasikan oleh mode _binding_ volume
`WaitForFirstConsumer`.
Memperlambat _binding_ volume mengizinkan _scheduler_ untuk memastikan
Memperlambat _binding_ volume mengizinkan _scheduler_ untuk memastikan
batasan _scheduling_ semua pod ketika memilih PersistentVolume untuk sebuah PersistentVolumeClaim.
{{% /capture %}}
@@ -9,7 +9,7 @@ Laman ini menjelaskan soal jumlah volume maksimal yang dapat dihubungkan
ke sebuah Node untuk berbagai penyedia layanan cloud.
Penyedia layanan cloud seperti Google, Amazon, dan Microsoft pada umumnya memiliki
keterbatasan dalam jumlah volume yang bisa terhubung ke sebuah Node. Keterbatasn ini
keterbatasan dalam jumlah volume yang bisa terhubung ke sebuah Node. Keterbatasn ini
sangatlah penting untuk diketahui Kubernetes dalam menentukan keputusan. Jika tidak,
Pod-pod yang telah dijadwalkan pada sebuah Node akan macet dan menunggu terus-menerus
untuk terhubung pada volume.
+5 -5
View File
@@ -411,7 +411,7 @@ spec:
### glusterfs {#glusterfs}
Sebuah Volume `glusterfs` memungkinkan sebuah volume [Glusterfs](http://www.gluster.org) (sebuah proyek _open-source_ _filesystem_ berbasis jaringan) untuk ditambatkan ke dalam Pod kamu.
Sebuah Volume `glusterfs` memungkinkan sebuah volume [Glusterfs](http://www.gluster.org) (sebuah proyek _open-source_ _filesystem_ berbasis jaringan) untuk ditambatkan ke dalam Pod kamu.
Tidak seperti `emptyDir` yang ikut dihapus saat Pod dihapus, isi dari sebuah `glusterfs` dipertahankan dan _volume_-nya hanya dilepaskan tambatannya. Hal ini berarti sebuah `glusterfs` dapat diisi terlebih dahulu dengan data, dan data tersebut dapat "dioper" diantara Pod-pod. GlusterFS dapat ditambatkan kepada beberapa penulis secara bersamaan.
{{< caution >}}
@@ -478,7 +478,7 @@ spec:
### iscsi {#iscsi}
Sebuah Volume `iscsi` memungkinkan sebuah volume iSCSI (_SCSI over IP_) yang sudah ada untuk ditambatkan ke dalam Pod kamu.
Sebuah Volume `iscsi` memungkinkan sebuah volume iSCSI (_SCSI over IP_) yang sudah ada untuk ditambatkan ke dalam Pod kamu.
Tidak seperti `emptyDir` yang ikut dihapus saat Pod dihapus, isi dari sebuah `iscsi` dipertahankan dan _volume_-nya hanya dilepaskan tambatannya. Hal ini berarti sebuah `iscsi` dapat diisi terlebih dahulu dengan data, dan data tersebut dapat "dioper" diantara Pod-pod.
{{< caution >}}
@@ -572,7 +572,7 @@ Saat ini, tipe-tipe sumber Volume berikut dapat diproyeksikan:
Semua sumber harus berada pada `namespace` yang sama dengan Pod yang menggunakannya. Untuk lebih lanjut, lihat [dokumen desain Volume](https://github.com/kubernetes/community/blob/{{< param "githubbranch" >}}/contributors/design-proposals/node/all-in-one-volume.md).
Proyeksi `serviceAccountToken` adalah fitur yang diperkenalkan pada Kubernetes 1.11 dan dipromosikan menjadi Beta pada 1.12.
Untuk mengaktifkan fitur inipada 1.11, kamu harus menyetel [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) `TokenRequestProjection` secara eksplisit menjadi `True`.
Untuk mengaktifkan fitur inipada 1.11, kamu harus menyetel [feature gate](/docs/reference/command-line-tools-reference/feature-gates/) `TokenRequestProjection` secara eksplisit menjadi `True`.
#### Contoh Pod dengan sebuah Secret, Downward API, dan ConfigMap.
@@ -725,7 +725,7 @@ Kamu harus sudah memiliki instalasi Quobyte dengan volume yang sudah disediakan
{{< /caution >}}
Quobyte mendukung {{< glossary_tooltip text="Container Storage Interface" term_id="csi" >}}.
CSI adalah _plugin_ yang direkomendasikan untuk menggunakan Volume Quobyte di dalam Kubernetes. Ada [petunjuk dan contoh](https://github.com/quobyte/quobyte-csi#quobyte-csi) untuk menggunakan Quobyte menggunakan CSI pada proyek GitHub Quobyte.j
CSI adalah _plugin_ yang direkomendasikan untuk menggunakan Volume Quobyte di dalam Kubernetes. Ada [petunjuk dan contoh](https://github.com/quobyte/quobyte-csi#quobyte-csi) untuk menggunakan Quobyte menggunakan CSI pada proyek GitHub Quobyte.j
### rbd {#rbd}
@@ -1108,7 +1108,7 @@ Nilai-nilainya adalah sebagai berikut:
Mode ini setara dengan _mount propagation_ `private`, seperti yang dideskripsikan pada [dokumentasi kernel Linux](https://www.kernel.org/doc/Documentation/filesystems/sharedsubtree.txt)
* `HostToContainer` - Tambatan volume ini akan menerima semua tambatan selanjutnya yang ditambatkan pada volume ini atau pada apapun sub-direktori yang dimilikinya.
Dalam kata lain, jika _host_ yang bersangkutan menambatkan apapun di dalam tambatan volume, Container akan melihatnya ditambatkan di sana.
Secara serupa, jika ada Pod dengan _mount propagation_ `Bidirectional` terhadap volume yang sama menambatkan apapun ke situ, maka Container dengan _mount propagation_ `HostToContainer` akan melihatnya.