Langsung ke konten utama

Day 89 : Membuat replicaset

Pada hari ke-87, saya telah menulis apa itu ReplicaSet dan Deployment. Untuk hari ke-89 ini, saya akan melanjutkan dengan membahas cara membuat ReplicaSet menggunakan Kubernetes, serta menjelaskan secara detail langkah-langkahnya, termasuk implementasi di VSCode. Tulisan ini juga dilengkapi dengan pemahaman mendalam terkait program YAML yang digunakan.



Contoh Program ReplicaSet

Di bawah ini adalah file YAML sederhana untuk membuat ReplicaSet bernama nginx-diaz dengan empat replika Pod yang menjalankan image nginx.

apiVersion: apps/v1
kind: ReplicaSet
metadata:
  name: nginx-diaz
spec:
  replicas: 4
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      name: nginx
      labels:
        app: nginx
    spec:
      containers:
        - name: nginx
          image: nginx
          ports:
            - containerPort: 80

Penjelasan Rinci

  1. apiVersion: apps/v1

    • Menunjukkan versi API Kubernetes yang digunakan untuk membuat objek ReplicaSet. Versi apps/v1 adalah standar untuk aplikasi modern.
  2. kind: ReplicaSet

    • Menentukan bahwa objek yang akan dibuat adalah sebuah ReplicaSet.
  3. metadata

    • Berisi informasi tentang ReplicaSet, seperti nama (nginx-diaz).
  4. spec

    • Menentukan spesifikasi dari ReplicaSet, termasuk:
      • replicas: Jumlah replika Pod yang diinginkan (4 dalam contoh ini).
      • selector: Kriteria untuk memilih Pod yang dikelola ReplicaSet.
        • matchLabels: Label yang harus ada pada Pod (label app: nginx digunakan di sini).
      • template: Template yang digunakan untuk membuat Pod baru.
        • metadata: Informasi metadata untuk Pod, seperti nama (nginx) dan label (app: nginx).
        • spec: Konfigurasi spesifik untuk container di dalam Pod.
          • containers: Daftar container yang dijalankan dalam Pod.
            • name: Nama container (nginx).
            • image: Image yang digunakan oleh container (nginx).
            • ports: Port yang akan diekspos oleh container (80).

Cara Membuat ReplicaSet Menggunakan VSCode

Berikut adalah langkah-langkah untuk membuat ReplicaSet menggunakan file YAML di VSCode:

  1. Membuat File YAML

    • Buka VSCode.
    • Buat file baru dengan nama (Bebas).yaml.
    • Salin kode YAML di atas ke dalam file tersebut.
  2. Menerapkan ReplicaSet ke Cluster

    • Buka terminal di VSCode.
    • Jalankan perintah berikut untuk membuat ReplicaSet di cluster Kubernetes:
      kubectl apply -f (nama filenya).yaml
    • Tunggu beberapa saat hingga ReplicaSet berhasil dibuat.
  3. Memverifikasi ReplicaSet

    • Gunakan perintah berikut untuk memastikan ReplicaSet berjalan dengan benar:
      kubectl get replicaset
    • Anda akan melihat output yang menunjukkan bahwa ReplicaSet nginx-diaz memiliki 4 replika.
  4. Memantau Pod

    • Periksa Pod yang dibuat oleh ReplicaSet dengan perintah:
      kubectl get pods
    • Anda akan melihat empat Pod dengan nama acak yang dihasilkan oleh ReplicaSet.

Keuntungan Menggunakan ReplicaSet

  • Ketersediaan Tinggi: Jika salah satu Pod mati, ReplicaSet akan secara otomatis membuat ulang Pod baru untuk menjaga jumlah replika yang diinginkan.
  • Manajemen Otomatis: ReplicaSet mempermudah manajemen aplikasi yang memerlukan banyak Pod identik.
  • Skalabilitas: Mudah untuk meningkatkan atau mengurangi jumlah Pod hanya dengan mengubah nilai replicas.

Komentar

Postingan populer dari blog ini

Day 109 : Akhir dari Perjalanan PKL: Terima Kasih untuk PT Excellent

Hari ini adalah hari terakhir saya menjalani PKL di PT Excellent. Momen ini menjadi penutup dari perjalanan yang luar biasa penuh pembelajaran, pengalaman, dan kenangan yang tak terlupakan. Saya ingin menyampaikan rasa terima kasih yang sebesar-besarnya kepada keluarga besar PT Excellent atas kesempatan, bimbingan, dan kepercayaan yang telah diberikan kepada saya selama saya melaksanakan PKL di sini. Selama PKL, saya mendapatkan banyak pengetahuan baru yang sebelumnya belum pernah saya pelajari. Dari segi teknis, saya belajar banyak tentang teknologi seperti Zimbra, bahasa pemrograman Golang, hingga DevOps hal-hal yang awalnya terasa asing, kini menjadi ilmu yang berharga dan menjadi ilmu baru bagi saya. Namun, pembelajaran saya di PT Excellent tidak hanya terbatas pada aspek teknis. Saya juga belajar tentang kedisiplinan, tanggung jawab, profesionalisme, serta bagaimana pentingnya kolaborasi dalam lingkungan kerja. Terima kasih kepada Mas Ridwan, yang selalu membimbing saya dengan sab...

Day 82 : Membuat image dengan bahasa pemrograman golang

Hari ini, saya melanjutkan perjalanan belajar Docker dengan memanfaatkan Visual Studio Code (VSCode), editor favorit saya. Fokus utama saya adalah memahami cara membuat Docker image menggunakan alur kerja yang terintegrasi dengan VSCode. Proses ini tidak hanya efisien tetapi juga menyenangkan karena VSCode memiliki ekosistem yang kaya, termasuk berbagai ekstensi pendukung yang mempermudah pekerjaan. Mengapa Menggunakan VSCode untuk Docker? VSCode menyediakan lingkungan pengembangan yang lengkap dengan berbagai fitur, seperti: Docker Extension : Mempermudah pengelolaan image, container, dan jaringan Docker langsung dari editor. Terminal Terintegrasi : Menjalankan perintah Docker langsung dari VSCode tanpa perlu beralih aplikasi. Debugging Tools : Membantu melacak masalah aplikasi yang berjalan di dalam container, terutama bagi pengembang Golang. Dengan semua keunggulan ini, VSCode menjadi alat yang sangat mendukung dalam pengembangan berbasis Docker. Langkah-langkah Membuat Docker Image...

Day 35 : jalan-jalan bersama excellent

 Hari ini terasa sangat istimewa, dan jauh berbeda dari hari-hari biasanya selama PKL di PT Excellent. Ini adalah pengalaman pertama saya diajak jalan-jalan oleh perusahaan tempat saya magang, dalam rangka merayakan ulang tahun PT Excellent sekaligus melakukan sesi brainstorming tim.  Pagi itu, saya memulai hari dengan penuh semangat. Saya berangkat ke kantor menggunakan Gojek, menikmati perjalanan sambil membayangkan serunya hari yang akan dilalui. Setibanya di kantor, saya langsung bergabung dengan tim dan mulai memeriksa perlengkapan yang sudah disiapkan sebelumnya. Tugas saya adalah memastikan semua barang yang diperlukan tidak ada yang tertinggal, mulai dari alat-alat untuk acara hingga barang-barang pribadi tim. Saya sangat teliti kali ini, karena tidak ingin ada kesalahan di hari spesial ini. Setelah semuanya siap, sebelum berangkat, kami sempatkan untuk mengambil foto bersama seluruh tim. Rasanya hangat sekali, seperti menjadi bagian dari keluarga besar PT Excellent. P...