Kerangka Materi
Hari 1 – Container dan Manajemen Image
Pengenalan Platform Container
- Penyebaran aplikasi tradisional dibandingkan dengan penyebaran berbasis container
- Container dan mesin virtual
- Ranitizer container dan engine container
- Peran Docker, Kubernetes, dan OpenShift
- Arsitektur platform container yang umum
- Alur kerja pengembangan, pengujian, dan produksi
Bekerja dengan Container
- Menjalankan dan mengelola container
- Siklus hidup container
- Mulai, hentikan, dan hapus container
- Menjalankan perintah di dalam container
- Variabel lingkungan
- Pemetaan port
- Log container
- Penggunaan sumber daya dan inspeksi proses
Membangun Image Container
- Struktur image dan layer
- Membuat Dockerfile dan Containerfile
- Memilih image dasar
- Menambahkan dependensi aplikasi
- Mengonfigurasi entry point dan perintah
- Caching image
- Memperkecil ukuran image
- Membangun image yang dapat direproduksi
Registri Container
- Registri publik dan privat
- Pemberian tag dan versioning image
- Mendorong (push) dan menarik (pull) image
- Autentikasi image
- Pemeliharaan dan pembersihan image
- Perhatian keamanan image dasar
Jaringan dan Penyimpanan Container
- Konsep jaringan container
- Jaringan bridge
- Eksposur port
- Komunikasi antar container
- Mount bind dan volume
- Data container persisten
- Pertimbangan pencadangan (backup)
Latihan Praktik
- Menjalankan dan memeriksa container
- Membangun image aplikasi
- Mengonfigurasi port dan variabel lingkungan
- Memublikasikan image ke registri
- Menyimpan data persisten di luar container
Hari 2 – Arsitektur Kubernetes dan Workload
Fundamental Kubernetes
- Tujuan orkestrasi container
- Arsitektur Kubernetes
- Komponen control plane
- Worker node
- API server
- Scheduler
- Kontroler
- Status klaster dan desired state
- Berkomunikasi dengan klaster menggunakan kubectl
Sumber Daya Kubernetes
- Pods
- ReplicaSets
- Deployments
- Namespaces
- Labels dan anotasi
- Selectors
- Definisi sumber daya deklaratif
- Manifest YAML
Menerapkan Aplikasi
- Membuat dan mengelola Deployments
- Menskala workload
- Memperbarui image container
- Pemutaran bertahap (rolling updates)
- Pengembalian ke versi sebelumnya (rollbacks)
- Riwayat deployment
- Menjalankan ulang workload
- Mengelola replika aplikasi
Konfigurasi Aplikasi
- ConfigMaps
- Secrets
- Variabel lingkungan
- File konfigurasi
- Memisahkan kode aplikasi dari konfigurasi
- Mengelola pengaturan spesifik lingkungan
Pengelolaan Sumber Daya
- Permintaan CPU dan memori
- Batas (limit) CPU dan memori
- Kuota sumber daya
- Batas rentang (limit ranges)
- Dampak penjadwalan
- Mendiagnosis kegagalan terkait sumber daya
Latihan Praktik
- Menerapkan aplikasi berbasis container
- Membuat dan memperbarui manifest Kubernetes
- Menskala aplikasi
- Melakukan rolling update dan rollback
- Mengonfigurasi aplikasi menggunakan ConfigMaps dan Secrets
- Menerapkan permintaan dan batas sumber daya
Hari 3 – Jaringan, Penyimpanan, dan Keamanan Kubernetes
Jaringan Kubernetes
- Model jaringan klaster
- Komunikasi pod-ke-pod
- Penemuan layanan (service discovery)
- DNS di dalam klaster
- Layanan ClusterIP
- Layanan NodePort
- Layanan LoadBalancer
- Konsep ingress
- Polanya eksposur aplikasi
Kebijakan Jaringan (Network Policies)
- Mengontrol lalu lintas antara workload
- Aturan ingress dan egress
- Pengendalian lalu lintas berbasis namespace
- Menguji konektivitas jaringan
- Troubleshooting komunikasi layanan
Penyimpanan Persisten
- Penyimpanan sementara dan persisten
- Volume
- PersistentVolumes
- PersistentVolumeClaims
- Kelas Penyimpanan (StorageClasses)
- Provisioning dinamis
- Mode akses
- Kebijakan pemulihan (reclaim policies)
- Penyimpanan untuk aplikasi stateful
Kontrol Akses Kubernetes
- Konsep autentikasi dan otorisasi
- Akses Berbasis Peran (RBAC)
- Roles dan ClusterRoles
- RoleBindings dan ClusterRoleBindings
- Service accounts
- Akses hak istimewa minimum (least-privilege)
- Memeriksa izin efektif
Keamanan Workload
- Konteks keamanan (security contexts)
- Menjalankan container sebagai non-root
- Kapasitas Linux
- Sistem file baca-saja (read-only)
- Pengelolaan secrets
- Provenansi image
- Risiko konfigurasi umum
Latihan Praktik
- Me-ekspos aplikasi menggunakan layanan Kubernetes
- Mengonfigurasi ingress
- Membatasi lalu lintas menggunakan kebijakan jaringan
- Menyediakan penyimpanan persisten
- Mengonfigurasi izin RBAC
- Menjalankan workload dengan konteks keamanan yang sesuai
Hari 4 – Bekerja dengan Lingkungan OpenShift
Pengenalan OpenShift
- OpenShift sebagai platform aplikasi berbasis Kubernetes
- Sumber daya Kubernetes di lingkungan OpenShift
- Arsitektur klaster OpenShift
- Proyek dan namespace
- Pengguna dan service account platform
- Bekerja dengan konsol web
- Bekerja dengan CLI OpenShift
Mengelola Proyek dan Akses
- Membuat dan mengelola proyek
- Menetapkan izin pengguna
- Roles level proyek
- Akses administratif
- Kuota sumber daya
- Batas rentang (limit ranges)
- Service accounts
- Mereview sumber daya proyek
Menerapkan Aplikasi
- Menerapkan image container
- Membuat workload aplikasi
- Mengelola deployment
- Menskala aplikasi
- Memperbarui versi aplikasi
- Pengembalian ke versi sebelumnya (rollbacks)
- Mengelola konfigurasi aplikasi
- Bekerja dengan secrets
Eksposur Aplikasi
- Layanan di OpenShift
- Routes
- Konsep TLS
- Akses aplikasi internal dan eksternal
- Hostname dan sertifikat
- Mendiagnosis masalah route dan layanan
Penyimpanan di OpenShift
- Persistent Volume Claims
- StorageClasses
- Melampirkan penyimpanan ke workload
- Workload stateful
- Izin akses penyimpanan
- Troubleshooting pemasangan volume
Penjadwalan dan Manajemen Node
- Labels dan selectors
- Node selectors
- Taints dan tolerations
- Konsep afinitas dan anti-afinitas
- Pemilihan lokasi workload
- Cordoning dan draining node
- Pertimbangan pemeliharaan node
Latihan Praktik
- Akses lingkungan OpenShift
- Membuat dan mengonfigurasi proyek
- Menerapkan dan mengekspos aplikasi
- Mengonfigurasi akses pengguna dan service account
- Me-lampirkan penyimpanan persisten
- Menskala dan memperbarui workload yang sedang berjalan
Hari 5 – Operasional, Pemantauan, dan Troubleshooting
Pemantauan Platform
- Pemantauan kesehatan klaster dan aplikasi
- Metrik sumber daya
- Kesehatan node
- Status workload
- Kapasitas dan utilisasi sumber daya
- Identifikasi hambatan kinerja
Logging dan Event
- Log container
- Log pod
- Log container sebelumnya
- Event Kubernetes
- Pesan aplikasi dan platform
- Memfilter dan menginterpretasikan data operasional
Cek Kesehatan (Health Checks)
- Startup probes
- Readiness probes
- Liveness probes
- Mendesain endpoint kesehatan yang bermanfaat
- Mendiagnosis kegagalan probe
- Mencegah restart aplikasi yang tidak perlu
Troubleshooting Workload
- Pod pending
- Gagal menarik image (image pull failures)
- Krupa crash (crash loops)
- Variabel lingkungan yang salah konfigurasi
- Pemasangan gagal (failed mounts)
- Sumber daya tidak mencukupi
- Error izin akses
- Masalah konektivitas layanan dan route
- Masalah DNS
- Kegagalan startup aplikasi
Keamanan Operasional
- Mereview izin akses
- Penggunaan service account
- Pengelolaan kredensial secara aman
- Praktik keamanan image
- Isolasi jaringan
- Audit akses platform
- Menerapkan prinsip hak istimewa minimum (least privilege)
Pemeliharaan dan Manajemen Siklus Hidup
- Cek rutin platform
- Pemeliharaan node
- Pertimbangan pencadangan aplikasi
- Backup konfigurasi
- Perencanaan pembaruan
- Pengelolaan perubahan (change management)
- Menguji pembaruan
- Perencanaan rollback
- Konsep pemulihan bencana (disaster recovery)
Workshop Praktik Akhir
Peserta menyelesaikan skenario operasional end-to-end:
- Membangun dan memberi tag pada image container.
- Memublikasikan image ke registri.
- Menerapkan aplikasi ke Kubernetes atau OpenShift.
- Mengonfigurasi pengaturan aplikasi dan kredensial.
- Mengekspos aplikasi.
- Me-lampirkan penyimpanan persisten.
- Mengonfigurasi izin akses.
- Menambahkan health checks.
- Menskala dan memperbarui aplikasi.
- Mendiagnosis dan mengatasi kegagalan yang disengaja.
Format Kursus
- Ceramah interaktif dan diskusi teknis.
- Demonstrasi instruktur.
- Latihan praktik yang ekstensif.
- Workshop administrasi dan troubleshooting berbasis skenario.
- Pekerjaan praktis di lingkungan container, Kubernetes, dan OpenShift.
Opsi Kustomisasi Kursus
- Kursus dapat disesuaikan dengan infrastruktur yang ada, penyedia cloud, dan alat container peserta.
- Proporsi topik Docker, Kubernetes, dan OpenShift dapat disesuaikan sesuai dengan pengalaman tim.
- Latihan praktik dapat disesuaikan dengan aplikasi, proses penyebaran, dan kebutuhan operasional organisasi.
Pemberitahuan Merek Dagang
OpenShift adalah merek dagang dari Red Hat, Inc. Pelatihan yang dikembangkan secara independen ini tidak berafiliasi dengan, tidak didukung oleh, atau tidak diotorisasi oleh Red Hat.
Persyaratan
Peserta sebaiknya memiliki:
- Pengalaman menggunakan command line Linux.
- Pengetahuan dasar administrasi sistem atau DevOps.
- Pemahaman umum tentang konsep jaringan.
- Kepahaman terhadap proses penyebaran perangkat lunak.
Pengalaman sebelumnya dengan Docker, Kubernetes, atau OpenShift membantu, namun tidak diwajibkan.
Testimoni (7)
Penjelasan Reda dan dia menyederhanakan banyak pemahaman
Eric Van Wyk
Kursus - Docker, Kubernetes and OpenShift 3 for Administrators
Diterjemahkan Mesin
Lab-nya adalah yang terbaik. Sangat praktis dan memberikan pengalaman hands-on. Secara pribadi, saya berpendapat bahwa ini merupakan cara paling efektif untuk benar-benar memahami materi kursus dan menerapkan konsep-konsep yang telah dibahas.
Hishaam Johnstone
Kursus - Docker, Kubernetes and OpenShift 3 for Administrators
Diterjemahkan Mesin
Saya sangat menyukai kemauan untuk membantu dan menjelaskan lebih lanjut ketika tidak yakin
Letlotlo Miffi
Kursus - Docker, Kubernetes and OpenShift 3 for Administrators
Diterjemahkan Mesin
Adriano mempelajari subjek tersebut dengan sangat mendalam, yang merupakan gaya yang paling saya sukai, yaitu: lebih sedikit tentang perintah dan lebih banyak tentang mekanisme di baliknya. Skenario-skenario yang dibahas didukung dengan baik oleh contoh praktis, yang sangat membantu dalam memahami materi yang disajikan.
Mariusz BANASZCZYK - Sopra Steria
Kursus - Docker, Kubernetes and OpenShift for Administrators
Diterjemahkan Mesin
Pengetahuan mendalam tentang Adriano. Penjelasan konsep dasar
Tomasz Szalankiewicz - LPP SA
Kursus - Docker, Kubernetes and OpenShift for Administrators
Diterjemahkan Mesin
Secara umum, saya suka penyajiannya.
Josif Kovacevic - ANZ
Kursus - Docker, Kubernetes and OpenShift for Administrators
Diterjemahkan Mesin
Adrian clearly knows and enjoys this technology.
Tom Edginton - National Oceanography Centre
Kursus - Docker, Kubernetes and OpenShift for Administrators
Diterjemahkan Mesin