Description

DevOps adalah pendekatan metodologi pengembangan perangkat lunak yang menekankan kolaborasi dan komunikasi yang lebih erat antara tim pengembangan (development) dan tim operasi (operations). Pendekatan ini bertujuan untuk meningkatkan efisiensi dan kecepatan dalam siklus hidup pengembangan perangkat
lunak, mulai dari perencanaan dan pengembangan hingga pengujian, distribusi, dan pemeliharaan.

Dalam membangun aplikasi, sistem perangkat lunak modern menjadi semakin kompleks, dalam memenuhi tuntutan kualitas dan ketersediaan. Dan sistem ini, berubah dengan cepat untuk memenuhi kebutuhan pengguna akhir. Dengan semua perubahan tersebut, bagaimana Sistem Developer memastikan stabilitas, kualitas, dan inovasi?

Untuk menjawab tantangan dalam pengembangan sistem perangkat lunak, Transformasi dan Peningkatan Operasi sangat dibutuhkan untuk membantu mengembangkan pengetahuan kerja yang baik tentang konsep DevOps, yang mencakup dasar, prinsip, dan praktik DevOps.

Dalam pelatihan ini, Peserta akan memahami filosofi DevOps secara holistik yang sangat diperlukan untuk pengembangan, penerapan, dan operasi perangkat lunak. Peserta juga akan memahami dan menjelaskan prinsip-prinsip DevOps untuk membantu meningkatkan kualitas, stabilitas, dan penerapan DevOps pada lingkungan kerja.

Duration: 4 Hari

Pada akhir pelatihan ini, peserta diharapkan dapat:
• Menjelaskan konsep dan prinsip-prinsip DevOps
• Mempraktikkan praktik-praktik DevOps, seperti CI/CD, containerization,
• deployment, monitoring dan logging, dan security
• Menerapkan praktik-praktik DevOps dalam pekerjaan.

  • Peserta memiliki akses ke komputer dengan koneksi internet
  • Mengenal dan memahami perintah Linux
  • Mengenal dan memahami proses Software Development Life Cycle (SDLC)
  • Lebih baik menguasai salah satu bahasa pemrogramman seperti Java atau lainnya.

Pelatihan ini ditujukan untuk:
• Pengembang perangkat lunak
• Teknisi operasi
• Profesional IT
• System Administrator
• CIO
• Siapa pun yang tertarik untuk mempelajari DevOps

Hari 1: Pendahuluan DevOps dan Infrastructure

Pendahuluan DevOps

  • Apa itu DevOps?
  • Sejarah DevOps
  • Prinsip-prinsip DevOps
  • Tujuan DevOps
  • Manfaat DevOps
  • Peran-peran dalam DevOps
  • DevOps Tools
  • Quiz: Introduction to DevOps

DevOps LifeCycle

  • Perencanaan (Planning)
  • Kode (Coding)
  • Pengujian (Testing)
  • Integrasi (Integration)
  • Pengemasan (Packaging)
  • Pengiriman (Deployment)
  • Operasi (Operation)
  • Pemantauan (Monitoring)
  • Umpan Balik (Feedback)
  • Iterasi (Iteration)
  • Quiz: DevOps LifeCycle

Lab Planning

  • Identified and using Prepared DevOps Environment
  • Case: Build and Running Microservices Application

Hari 2: Coding dan Testing (Continuous Integration)

Git Fundamental

  • Inisialisasi repository Git dan menajemen file
  • Penambahan, commit dan pembaruan file
  • Branching dan Merging
  • Remote Repository dan Kolaborasi Tim
  • Pull Request dan Code Review

Lab Git Fundamental

  • Lab 1: Inisialisasi repository git
  • Lab 2: Menambahkan, commit dan pembaruan file
  • Lab 3: Pengelolaan repository remote
  • Lab 4: Penggunaan pull, fetch dan push dalam kolaborasi tim
  • Lab 5: Menerapkan pull request untuk kontribusi ke project
  • Lab 6: Proses Code Review dan kolaborasi lebih efektif

Code Testing (Continuous Integration)

  • Pendahuluan Pengujian Perangkat Lunak
  • Pemahaman tentang jenis-jenis pengujian
  • Automated Testing dan Continuous Integration
  • Lab 1: Pengujian Fungsional
  • Lab 2: Pengujian Kinerja
  • Lab 3: Pengujian API dan Microservices

Hari 3: Packaging and Deployment (Continuous Deployment)

Packaging dan build tools

  • Konsep Jenkins sebagai CICD tools
  • Proses Packaging dalam DevOps
  • Pengenalan build tools: Maven, gradle, npm
  • Lab 1: Integrasi dengan git, webhook dan trigger
  • Lab 2: Integrasi dengan build tools
  • Lab 3: Konfigurasi dan eksekusi build jobs (Jenkins Pipeline)

Containerization

  • Pengenalan konsep docker dan containerization
  • Management dependensi dalam pengembangan
  • Penyesuaian pengemasan pengujian, staging dan produksi
  • Strategi pengemasan yang sesuai dengan arsitektur microservices
  • Lab 1: Membangun dan mengemas aplikasi dalam docker container.

Deployment dan Operation

  • Container dan peran Kubernetes
  • Arsitektur Kubernetes
  • Strategi deployment menggunakan k8s Deployment
  • Konsep dan Penerapan Replicasets
  • Services: Layanan untuk mengelola akses ke aplikasi
  • Tipe Layanan: ClusterIP, NodePort, LoadBalancer
  • Konfigurasi Aplikasi menggunakan ConfigMaps
  • Keamanan dan management rahasia dengan Secrets
  • Lab 1: Mendeploy aplikasi ke K8s
  • Lab 2: Membangun CICD Pipeline dari Code ke Deployment
  • Lab 3: Operation (Menjalankan Aplikasi)

Hari 4: Monitoring, Logging dan Keamanan k8s

Monitoring dan Logging

  • Pemantauan dengan Prometheus dan Grafana
  • Penerapan logging dengan ElasticSearch
  • Lab 1: Implementasi Prometheus dan Grafana
  • Lab 2: Implementasi ElasticSearch dan Kibana

Keamanan k8s

  • Konsep keamanan dasar k8s
  • Lab: Implementasi keamana aplikasi dan k8s cluster

Deployment Lanjutan (Optional)

  • Rolling Updates dan Blue-Green Deployments
  • Pengenalan A/B Testing dan Canary Deployments dalam konteks k8s
  • Lab 1: Implementasi Rolling Updates
  • Lab 2: Implementasi Blue-Green deployments untuk mengurangi downtime
  • Lab 3: Implementasi Canary Deployments

Benefit :

Tertarik dengan Pelatihan
di atas ?

WhatsApp Us
Chat Us