

 **Bantu tingkatkan halaman ini** 

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Untuk berkontribusi pada panduan pengguna ini, pilih **Edit halaman ini pada GitHub** tautan yang terletak di panel kanan setiap halaman.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Penyimpanan instans Amazon EC2 untuk penyimpanan volume Kubernetes
<a name="lis-csi"></a>

Driver Amazon EC2 Instance Store CSI adalah plugin Container Storage Interface (CSI) yang memungkinkan Kubernetes menggunakan volume penyimpanan instans EC2. Volume penyimpanan instans menyediakan penyimpanan tingkat blok sementara yang secara fisik terpasang ke komputer host. [Driver mengelola siklus hidup volume penyimpanan NVMe ini dan membuatnya tersedia sebagai volume persisten Kubernetes.](https://kubernetes.io/docs/concepts/storage/persistent-volumes/)

Driver CSI Amazon EC2 Instance Store berinteraksi dengan perangkat NVMe backend melalui operasi Linux lokal. Tidak ada panggilan AWS API yang terlibat, jadi tidak diperlukan peran IAM.

## Pertimbangan-pertimbangan
<a name="lis-csi-considerations"></a>

**penting**  
Driver CSI Amazon EC2 Instance Store akan menghapus semua data pada disk sementara selama penginstalan. Jika driver CSI lain, atau sistem pengelolaan volume (seperti LVM, sistem file mentah, LUKS, dll.) mengelola disk sementara, buat cadangan data Anda sebelum menginstal driver CSI Amazon EC2 Instance Store untuk menghindari kehilangan data.
+ Driver CSI Amazon EC2 Instance Store tidak berfungsi dengan Mode Otomatis EKS.
+ Anda tidak dapat memasang volume penyimpanan instans Amazon EC2 ke Pod Fargate.
+ Driver CSI Toko Instans Amazon EC2 tidak tersedia untuk jenis instans berikut: C1, C3, C4, C5d, C5ad, C6gd, D2, D3, D3en, DL1, E3, Edge1gD, F1, G2, G3, G4ad, G4dn, H1, HSM1, I2, I3,, i3en, M1, M2, M3, M4, M5d, M5ad, M5dn, M6gd, P2, P3, P3dn, P4d, P4de, R3, R4, R5d, R5ad, R5dn I3.metal, R6gd, T1, T2, X1, X1e, 2gd, dan Z1d.
+ Support disediakan untuk versi add-on terbaru dan satu versi sebelumnya. Perbaikan untuk bug atau kerentanan yang ditemukan di versi terbaru akan di-backport ke rilis sebelumnya sebagai versi minor baru.
+ Penyimpanan instance bersifat fana. Data hilang ketika node berakhir. Menerapkan replikasi tingkat aplikasi atau backup untuk data penting.
+ Ekspansi volume tidak didukung.
+ I/O throttling diaktifkan secara default untuk semua volume untuk memastikan pembagian bandwidth yang adil di seluruh beban kerja. Untuk informasi selengkapnya, lihat [I/O pelambatan](#lis-csi-throttling).
+ Instans yang baru diluncurkan telah memperbarui respons perintah identifikasi NVMe dibandingkan dengan instance lama dari jenis yang sama. Jika perkakas Anda bergantung pada nilai identifikasi NVMe tertentu, tinjau logika Anda untuk kompatibilitas. Untuk informasi selengkapnya, lihat [Namespace NVMe berubah pada instance yang baru diluncurkan](#lis-csi-nvme-namespace).

## Prasyarat
<a name="lis-csi-prereqs"></a>

Sebelum Anda mulai, pastikan Anda memiliki yang berikut:
+ Sebuah klaster Amazon EKS yang sudah ada. Untuk melihat semua versi add-on yang tersedia, jalankan perintah AWS CLI berikut:

  ```
  aws eks describe-addon-versions --addon-name aws-ec2-local-instance-store-csi-driver
  ```

## Menginstal driver CSI Toko Instans Amazon EC2
<a name="managing-lis-csi"></a>

Driver CSI Amazon EC2 Instance Store tersedia sebagai add-on Amazon EKS. Menginstal driver memungkinkan klaster Anda menggunakan volume penyimpanan instance untuk penyimpanan pod.

Untuk menginstal driver, tambahkan add-on driver CSI Amazon EC2 Instance Store ke cluster Anda. Untuk petunjuknya, lihat [Membuat add-on Amazon EKS](creating-an-add-on.md). Untuk informasi selengkapnya tentang add-on EKS, lihat [add-on Amazon EKS](eks-add-ons.md).

## Menerapkan aplikasi sampel
<a name="lis-sample-app"></a>

Setelah menginstal driver, Anda dapat menerapkan aplikasi sampel untuk memverifikasi bahwa volume penyimpanan instance berfungsi dengan benar dengan klaster Anda. Anda dapat menerapkan berbagai contoh aplikasi dan memodifikasinya sesuai kebutuhan.

## I/O pelambatan
<a name="lis-csi-throttling"></a>

Driver CSI Amazon EC2 Instance Store menyertakan I/O pelambatan bawaan untuk memastikan pembagian bandwidth yang adil di seluruh beban kerja pada pengontrol NVMe yang sama. Throttling diaktifkan secara default untuk semua volume, mencegah beban kerja tunggal dari mengkonsumsi I/O bandwidth yang tidak proporsional dengan mengorbankan beban kerja lain pada node yang sama.

### Mengkonfigurasi throttling
<a name="lis-csi-throttling-config"></a>

Anda dapat mengonfigurasi pelambatan pada dua level:
+  **StorageClass parameter** — Atur `throttling` parameter ke `"true"` (default) atau `"false"` dalam StorageClass definisi Anda.
+  **Anotasi PVC** - Atur `lis.csi.aws.com/throttling` anotasi ke `"true"` atau `"false"` pada individu. PersistentVolumeClaims Ini mengesampingkan StorageClass pengaturan saat ada.

Tabel berikut menunjukkan bagaimana StorageClass parameter dan anotasi PVC berinteraksi:


| Anotasi PVC | StorageClass Parameter | Hasil | 
| --- | --- | --- | 
| Tidak diatur | Tidak diatur | Throttling diaktifkan (default) | 
| Tidak diatur |  `"false"`  | Pelambatan dinonaktifkan | 
|  `"false"`  |  `"true"`atau tidak diatur | Pelambatan dinonaktifkan | 
|  `"true"`  |  `"false"`  | Throttling diaktifkan | 

### Membuat unthrottled StorageClass
<a name="lis-csi-throttling-unthrottled-sc"></a>

Untuk menonaktifkan pelambatan untuk semua volume di: StorageClass

```
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: ec2-instance-store-unthrottled
provisioner: lis.csi.aws.com
parameters:
  throttling: "false"
volumeBindingMode: WaitForFirstConsumer
```

### Menonaktifkan pelambatan untuk satu PVC
<a name="lis-csi-throttling-disable-pvc"></a>

Untuk menonaktifkan pelambatan pada PVC individu saat menggunakan throttled: StorageClass

```
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: high-perf-pvc
  annotations:
    lis.csi.aws.com/throttling: "false"
spec:
  accessModes:
    - ReadWriteOnce
  storageClassName: ec2-instance-store-sc
  resources:
    requests:
      storage: 100Gi
```

### Pertimbangan pelambatan
<a name="lis-csi-throttling-considerations"></a>
+ Throttling diaktifkan secara default untuk memberikan kinerja yang dapat diprediksi untuk semua beban kerja yang berbagi pengontrol NVMe.
+ Menonaktifkan pelambatan pada volume memungkinkannya mengkonsumsi lebih banyak I/O bandwidth, yang dapat memengaruhi kinerja volume terbatas lainnya pada pengontrol yang sama.
+ Pertimbangkan untuk mengisolasi beban kerja yang tidak dibatasi pada node khusus.
+ Untuk RAID-0 volume yang menjangkau beberapa pengontrol, pelambatan diterapkan ke semua partisi anggota.
+ Status throttle tetap ada di seluruh reboot node.

## Namespace NVMe berubah pada instance yang baru diluncurkan
<a name="lis-csi-nvme-namespace"></a>

Instans EC2 yang baru diluncurkan dengan penyimpanan instans lokal telah memperbarui respons perintah NVMe Identify Controller dan Identify Namespace. Perubahan ini mendukung manajemen namespace NVMe pada penyimpanan instans lokal EC2. Instance yang sedang berjalan tidak terpengaruh, dan nilai tetap stabil sepanjang siklus hidup instance apa pun.

### Nilai bidang yang diperbarui
<a name="_updated_field_values"></a>

Bidang berikut telah berubah pada instance yang baru diluncurkan dibandingkan dengan instance lama dari jenis yang sama:
+ Bit 3 dari OACS: berubah dari 0 menjadi 1
+ Bit 8 dari OAES: berubah dari 0 menjadi 1
+ NN: berubah dari 1 menjadi nilai <= 256
+ TNVMCAP: diubah dari 0 ke ukuran sebenarnya dari penyimpanan lokal
+ NVMCAP: diubah dari 0 ke ukuran sebenarnya dari penyimpanan lokal
+ NGUID: diubah dari semua nol menjadi NGUID yang valid

Semua nilai yang diperbarui sesuai dengan spesifikasi NVMe.

### Lingkup perubahan
<a name="_scope_of_changes"></a>

Perubahan ini berlaku secara eksklusif untuk penyimpanan instans lokal EC2. Volume Amazon EBS tidak terpengaruh. Untuk membedakan antara volume EBS dan penyimpanan instans lokal, jalankan perintah berikut:

```
sudo nvme list
```

Dalam output:
+  `Amazon Elastic Block Store`= Volume EBS
+  `Amazon EC2 NVMe Instance Storage`= penyimpanan instans lokal

### Mengambil nilai identifikasi NVMe
<a name="_retrieving_nvme_identify_values"></a>

Untuk menanyakan nilai-nilai ini menggunakan`nvme-cli`:

```
# Identify Controller
sudo nvme id-ctrl /dev/nvme1

# Identify Namespace
sudo nvme id-ns /dev/nvme1n1
```

### Tindakan yang diperlukan
<a name="_action_required"></a>

Tidak ada tindakan yang diperlukan. Perubahan ini kompatibel ke belakang dan mengikuti spesifikasi NVMe. Namun, jika aplikasi atau perkakas Anda memvalidasi atau bergantung pada nilai tertentu dari perintah identifikasi NVMe, tinjau logika Anda untuk memastikan kompatibilitas dengan nilai yang diperbarui pada instance yang baru diluncurkan.