Permintaan dan Batas Sumber Daya
Tentukan permintaan dan batas CPU serta memori untuk Pod guna memastikan alokasi sumber daya yang efisien dan mencegah kekurangan sumber daya.
Permintaan dan Batas Sumber Daya adalah pelajaran Kubernetes Basics gratis di CoddyKit. Ini adalah pelajaran 1 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Kubernetes Basics, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Kubernetes Basics mencakup 4 pelajaran total.
Kebutuhan Sumber Daya di Kubernetes
Sama seperti aplikasi lainnya, Pod Anda memerlukan sumber daya untuk berjalan. Kubernetes membantu mengelola sumber daya ini secara efisien menggunakan Permintaan Sumber Daya dan Batas Sumber Daya.
Pengaturan ini memberi tahu Kubernetes jumlah CPU dan memori yang diperlukan Pod Anda serta jumlah yang diizinkan untuk digunakan, sehingga distribusi sumber daya berlangsung secara adil.
Permintaan CPU: Menjamin CPU
Permintaan CPU memberi tahu Kubernetes jumlah minimum CPU yang diperlukan Pod Anda agar dapat berjalan dengan baik. Ini adalah jaminan!
- Kubernetes menggunakan permintaan untuk menjadwalkan Pod pada node dengan sumber daya yang tersedia dalam jumlah cukup.
- Jika node tidak memiliki CPU yang cukup untuk memenuhi permintaan, Pod tidak akan dijadwalkan di sana.
- Hal ini membantu mencegah kekurangan sumber daya untuk aplikasi penting Anda.
Satuan CPU & Contoh Permintaan
CPU diukur dalam 'core' atau 'millicore' (m). 1000m sama dengan 1 core CPU. Jadi, 500m adalah setengah core.
Berikut cara meminta 0.5 core CPU dalam definisi Pod:
apiVersion: v1
kind: Pod
metadata:
name: cpu-request-pod
spec:
containers:
- name: my-container
image: nginx
resources:
requests:
cpu: "500m"Batas CPU: Mencegah Penggunaan Berlebihan
Batas CPU menetapkan jumlah maksimum CPU yang dapat digunakan Pod. Ini adalah batas atas.
- Jika Pod mencoba menggunakan CPU melebihi batasnya, Kubernetes akan membatasi penggunaannya.
- Artinya, penggunaan CPU Pod akan dibatasi sehingga Pod tersebut tidak menghabiskan sumber daya milik Pod lain pada node yang sama.
Batas CPU dalam Praktik
Berikut contoh penetapan batas CPU. Jika Pod ini mencoba menggunakan lebih dari 1 core CPU, penggunaannya akan dibatasi, sehingga performanya akan terkendala.
apiVersion: v1
kind: Pod
metadata:
name: cpu-limit-pod
spec:
containers:
- name: my-container
image: nginx
resources:
limits:
cpu: "1"Permintaan Memori: Menjamin RAM
Serupa dengan CPU, Permintaan Memori menentukan jumlah minimum RAM yang diperlukan Pod Anda untuk beroperasi.
- Kubernetes menggunakan informasi ini untuk menemukan node dengan memori bebas yang cukup bagi Pod Anda.
- Jika node kehabisan memori, Pod tanpa permintaan sering kali menjadi yang pertama dihentikan (dikeluarkan) untuk membebaskan ruang.
Satuan Memori & Contoh Permintaan
Memori diukur dalam byte. Satuan yang umum digunakan adalah Mi (mebibita) dan Gi (gibibita).
100Mi berarti 100 mebibita. Berikut cara meminta memori sebesar 256 MiB:
apiVersion: v1
kind: Pod
metadata:
name: mem-request-pod
spec:
containers:
- name: my-container
image: nginx
resources:
requests:
memory: "256Mi"Batas Memori: Menghindari OOM
Batas Memori menentukan jumlah memori maksimum yang dapat digunakan oleh sebuah Pod.
- Jika sebuah Pod melampaui batas memorinya, sistem operasi akan segera menghentikannya dengan kesalahan "Kehabisan Memori" (OOM). Hal ini sering ditampilkan sebagai "Dihentikan karena Kehabisan Memori".
- Hal ini mencegah satu Pod yang tidak terkendali menghabiskan seluruh memori node dan menyebabkan seluruh node gagal.
Batas Memori dalam Praktik
Pod ini memiliki batas memori sebesar 512 MiB. Jika mencoba menggunakan lebih banyak memori, Pod tersebut akan dihentikan untuk melindungi beban kerja lain dan node.
apiVersion: v1
kind: Pod
metadata:
name: mem-limit-pod
spec:
containers:
- name: my-container
image: nginx
resources:
limits:
memory: "512Mi"Praktik Terbaik: Permintaan & Batas
Praktik terbaiknya adalah menentukan keduanya, yaitu permintaan dan batas, untuk semua Pod Anda. Hal ini memberikan kestabilan dan prediktabilitas bagi klaster Anda.
- Permintaan memastikan Pod Anda memperoleh sumber daya minimum untuk penjadwalan.
- Batas mencegah sumber daya untuk Pod lain dan node itu sendiri habis.
Berikut contoh lengkapnya:
apiVersion: v1
kind: Pod
metadata:
name: full-resource-pod
spec:
containers:
- name: my-app
image: my-registry/my-app:1.0
resources:
requests:
cpu: "200m"
memory: "128Mi"
limits:
cpu: "500m"
memory: "256Mi"Pemeriksaan Sumber Daya
Anda memiliki Pod dengan permintaan CPU sebesar 200m dan batas CPU sebesar 1 (yaitu 1000m).
Apa yang terjadi jika Pod ini mencoba menggunakan 1.5 inti CPU?
Ringkasan: Pengelolaan Sumber Daya
Dalam pelajaran ini, kita telah mempelajari Permintaan Sumber Daya dan Batas Sumber Daya di Kubernetes.
- Permintaan (CPU & Memori) menjamin sumber daya minimum untuk penjadwalan Pod.
- Batas (CPU & Memori) membatasi penggunaan maksimum untuk mencegah perebutan sumber daya.
- Melampaui batas CPU menyebabkan pembatasan penggunaan; melampaui batas memori menyebabkan penghentian.
- Selalu tentukan permintaan dan batas agar kinerja aplikasi stabil dan dapat diprediksi!
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Permintaan dan Batas Sumber Daya” gratis?
Ya — teks lengkap “Permintaan dan Batas Sumber Daya” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Kubernetes Basics, upgrade ke CoddyKit PRO. Kursus Kubernetes Basics mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Permintaan dan Batas Sumber Daya”?
Tentukan permintaan dan batas CPU serta memori untuk Pod guna memastikan alokasi sumber daya yang efisien dan mencegah kekurangan sumber daya. Kamu berlatih Kubernetes Basics dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Kubernetes Basics?
Tidak diperlukan pengalaman sebelumnya. Kubernetes Basics di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 1 dari 4.
Berapa lama pelajaran “Permintaan dan Batas Sumber Daya” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Kubernetes Basics ini?
Ya. Setiap pelajaran Kubernetes Basics menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Permintaan dan Batas Sumber Daya
- Pemilih Node dan Afinitas
- Taint dan Toleration
- Prioritas dan Preemption Pod