

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

# Buat definisi pekerjaan simpul tunggal di sumber daya Amazon EKS
<a name="create-job-definition-eks"></a>

Selesaikan langkah-langkah berikut untuk membuat definisi pekerjaan simpul tunggal di Amazon Elastic Kubernetes Service (Amazon EKS).

**Untuk membuat definisi pekerjaan baru di sumber daya Amazon EKS:**

1. Buka AWS Batch konsol di [https://console.aws.amazon.com/batch/](https://console.aws.amazon.com/batch/).

1. Dari bilah navigasi atas, pilih yang AWS Region akan digunakan.

1. Di panel navigasi kiri, pilih **Definisi Job**.

1. Pilih **Buat**.

1. Untuk **tipe Orkestrasi**, pilih **Elastic Kubernetes** Service (EKS).

1. Untuk **Name** (Name), masukkan nama yang unik untuk ketentuan tugas Anda. Nama dapat memiliki panjang hingga 128 karakter. Nama dapat memuat huruf besar dan huruf kecil, angka, tanda hubung (-), dan garis bawah (\_).

1. (Opsional) Untuk **batas waktu Eksekusi**, masukkan nilai batas waktu (dalam detik). Batas waktu eksekusi adalah lamanya waktu sebelum pekerjaan yang belum selesai dihentikan. Jika upaya melebihi durasi batas waktu, upaya dihentikan dan dipindahkan ke `FAILED` status. Untuk informasi selengkapnya, lihat [Batas waktu Job](job_timeouts.md). Nilai minimum adalah 60 detik.

1. (Opsional) Aktifkan **Prioritas penjadwalan**. Masukkan nilai prioritas penjadwalan antara 0 dan 100. Nilai yang lebih tinggi diberikan prioritas yang lebih tinggi daripada nilai yang lebih rendah.

1. (Opsional) Perluas **Tag**, lalu pilih **Tambahkan tag** untuk menambahkan tag ke sumber daya.

1. Pilih **Halaman berikutnya**.

1. Di bagian **podproperti EKS**:

   1. Untuk **nama akun Layanan**, masukkan akun yang memberikan identitas untuk proses yang berjalan di akunpod.

   1. **Hidupkan jaringan Host** untuk menggunakan model Kubernetes pod jaringan dan buka port mendengarkan untuk koneksi masuk. Matikan pengaturan ini hanya untuk komunikasi keluar.

   1. Untuk **kebijakan DNS**, pilih salah satu dari berikut ini:
      + **Tidak ada nilai (null)** — pod Mengabaikan pengaturan DNS dari lingkungan. Kubernetes
      + **Default** – pod mewarisi konfigurasi penyelesaian nama dari simpul tempatnya berjalan.
**catatan**  
Jika kebijakan DNS tidak ditentukan, **Default** bukan kebijakan DNS default. Sebaliknya, **ClusterFirst**digunakan.
      + **ClusterFirst**— Setiap kueri DNS yang tidak cocok dengan akhiran domain cluster yang dikonfigurasi diteruskan ke server nama hulu yang diwarisi dari node. 
      + **ClusterFirstWithHostNet**— Gunakan jika **jaringan Host** dihidupkan.

   1. (Opsional) Untuk **Volume**, pilih **Tambahkan volume**, lalu:

      1. Tambahkan **Nama** untuk volume Anda.

      1. (Opsional) Tambahkan **jalur Host** untuk direktori di host. 

      1. (Opsional) Tambahkan **batas **Medium** dan Size** untuk mengkonfigurasi [Kubernetes](https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) emptyDir.

      1. (Opsional) Berikan **nama Rahasia** untuk pod dan apakah rahasianya **Opsional**.

      1. **(Opsional) Tentukan **nama Klaim** untuk melampirkan [Klaim Volume Persisten](https://kubernetes.io/docs/concepts/storage/persistent-volumes/) Kubernetes ke pod, dan apakah itu Read only.**

   1. (Opsional) Untuk **label Pod**, pilih **Tambahkan label pod**, lalu masukkan pasangan nama-nilai. 
**penting**  
Awalan untuk label pod tidak dapat berisi`kubernetes.io/`,`k8s.io/`, atau`batch.amazonaws.com/`.

   1. (Opsional) Untuk **anotasi Pod**, pilih **Tambahkan anotasi**, lalu masukkan pasangan nama-nilai. 
**penting**  
Awalan untuk anotasi pod tidak dapat berisi`kubernetes.io/`,`k8s.io/`, atau. `batch.amazonaws.com/`

   1. Pilih **Halaman berikutnya**.

   1. Di bagian **Konfigurasi kontainer**:

      1. Untuk **Nama**, masukkan nama unik untuk wadah. Nama harus dimulai dengan huruf atau angka, dan panjangnya bisa mencapai 63 karakter. Ini dapat berisi huruf besar dan kecil, angka, dan tanda hubung (-).

      1. Untuk **Gambar**, pilih Docker gambar yang akan digunakan untuk pekerjaan Anda. Secara default, gambar di registri Docker Hub akan tersedia. Anda juga dapat menentukan repositori lainnya dengan `{{repository-url}}/{{image}}:{{tag}}`. Nama dapat memuat hingga 255 karakter. Parameter dapat berisi huruf besar dan huruf kecil, angka, tanda hubung (-), garis bawah (\_), titik dua (:), titik (.), garis miring (/), dan tanda pagar (\#). Parameter ini dipetakan ke `Image` bagian [Create a container](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) dari [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) dan `IMAGE` parameter [https://docs.docker.com/engine/reference/commandline/run/](https://docs.docker.com/engine/reference/commandline/run/)
**catatan**  
Arsitektur gambar Docker harus sesuai dengan arsitektur prosesor sumber daya komputasi yang terjadwal untuknya. Sebagai contoh, gambar Docker berbasis ARM hanya dapat berjalan pada sumber daya komputasi berbasis ARM.
         + Gambar di Amazon ECR Repositori Publik menggunakan konvensi lengkap `registry/repository[:tag]` atau `registry/repository[@digest]` penamaan (misalnya,). `public.ecr.aws/{{registry_alias}}/{{my-web-app}}:{{latest}}`
         + Gambar di repositori Amazon ECR menggunakan konvensi `registry/repository[:tag]` penamaan lengkap (misalnya,). `{{aws_account_id}}.dkr.ecr.{{region}}.amazonaws.com` `/{{my-web-app}}:{{latest}}`
         + Gambar di repositori resmi Docker Hub menggunakan satu nama (misalnya, `ubuntu` atau`mongo`).
         + Gambar di repositori lain di Docker Hub memenuhi syarat dengan nama organisasi (misalnya,`amazon/amazon-ecs-agent`).
         + Gambar di repositori online lainnya memenuhi syarat lebih lanjut berdasarkan nama domain (misalnya, `quay.io/assemblyline/ubuntu`).

      1. (Opsional) Untuk **kebijakan tarik gambar**, pilih kapan gambar ditarik.

      1. (Opsional) Untuk **Command**, masukkan JSON perintah untuk diteruskan ke wadah.

      1. (Opsional) Untuk **Argumen**, masukkan argumen untuk diteruskan ke wadah. Jika argumen tidak disediakan, perintah image container digunakan.

   1. (Opsional) Anda dapat menambahkan parameter ke definisi pekerjaan sebagai pemetaan nama-nilai untuk mengganti default definisi pekerjaan. Untuk menambahkan parameter:

      1. Untuk **Parameter**, masukkan pasangan nama-nilai, lalu pilih **Tambah** parameter.
**penting**  
Jika Anda memilih **Tambah parameter**, Anda harus mengkonfigurasi setidaknya satu parameter atau memilih **Hapus parameter**

   1. Di bagian **konfigurasi Lingkungan**:

      1. Untuk **v CPUs**, masukkan jumlah v yang CPUs akan dicadangkan untuk wadah. Parameter ini sesuai dengan `CpuShares` di bagian [Buat kontainer](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) di [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) dan opsi `--cpu-shares` untuk [https://docs.docker.com/engine/reference/commandline/run/](https://docs.docker.com/engine/reference/commandline/run/). Setiap vCPU setara dengan 1.024 bagian CPU. Anda harus menentukan setidaknya satu vCPU.

      1. Untuk **Memori**, masukkan batas memori yang tersedia untuk wadah. Jika kontainer Anda mencoba untuk melebihi memori yang ditentukan di sini, kontainer akan dihentikan. Parameter ini sesuai dengan `Memory` di bagian [Buat kontainer](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) di [Docker Remote API](https://docs.docker.com/engine/api/v1.38/) dan opsi `--memory` untuk [https://docs.docker.com/engine/reference/commandline/run/](https://docs.docker.com/engine/reference/commandline/run/). Anda harus menentukan sedikitnya 4 MiB memori untuk sebuah tugas.
**catatan**  
Untuk memaksimalkan pemanfaatan sumber daya Anda, prioritaskan memori untuk pekerjaan dari jenis instans tertentu. Untuk informasi selengkapnya, lihat [Menghitung manajemen memori sumber daya](memory-management.md).

   1. (Opsional) Untuk **variabel Lingkungan**, pilih **Tambahkan variabel lingkungan** untuk menambahkan variabel lingkungan sebagai pasangan nama-nilai. Variabel-variabel ini diteruskan ke wadah.

   1. (Opsional) Untuk **pemasangan Volume**:

      1. Pilih **Tambahkan volume mount**.

      1. Masukkan **Nama**, lalu masukkan **jalur Mount** di wadah tempat volume dipasang. Masukkan a **SubPath**untuk menentukan sub-jalur di dalam volume yang direferensikan, bukan akarnya. 

      1. Pilih **Baca saja** untuk menghapus izin menulis ke volume.

      1. Pilih **Tambahkan volume mount**.

   1. (Opsional) Untuk **Jalankan sebagai pengguna**, masukkan ID pengguna untuk menjalankan proses penampung.
**catatan**  
ID pengguna harus ada dalam gambar agar wadah dapat dijalankan.

   1. (Opsional) Untuk **Jalankan sebagai grup**, masukkan ID grup untuk menjalankan runtime proses kontainer.
**catatan**  
ID grup harus ada dalam gambar agar wadah dapat dijalankan.

   1. (Opsional) Untuk memberikan izin tinggi penampung pekerjaan Anda pada instance host (mirip dengan `root` pengguna), seret slider **Privileged** ke kanan. Parameter ini memetakan ke `Privileged` di bagian [Membuat kontainer](https://docs.docker.com/engine/api/v1.38/#operation/ContainerCreate) dari [API Jarak Jauh Docker](https://docs.docker.com/engine/api/v1.38/) dan pilihan `--privileged` untuk [https://docs.docker.com/engine/reference/commandline/run/](https://docs.docker.com/engine/reference/commandline/run/).

   1. (Opsional) Aktifkan **sistem file root read-only untuk menghapus akses tulis ke sistem file** root.

   1. (Opsional) Aktifkan **Run sebagai non-root** untuk menjalankan container pod sebagai pengguna non-root.
**catatan**  
Jika **Run as non-root** diaktifkan, gambar kubelet divalidasi saat runtime untuk memverifikasi bahwa gambar tidak berjalan sebagai UID 0. 

   1. Pilih **Halaman berikutnya**.

1. Untuk **tinjauan definisi Job**, tinjau langkah-langkah konfigurasi. Jika Anda perlu melakukan perubahan, pilih **Edit**. Setelah selesai, pilih **Buat definisi pekerjaan**.