Buat ReplicaSets

Berlaku untuk: AKS di Azure Stack HCI 22H2, AKS di Windows Server

Artikel ini menjelaskan cara membuat, menskalakan, dan menghapus ReplicaSets di AKS yang diaktifkan oleh Azure Arc. ReplicaSets digunakan untuk memastikan bahwa set pod replika yang stabil berjalan pada waktu tertentu.

Gambaran Umum ReplicaSets

ReplicaSet adalah proses yang menjalankan banyak instans dari sebuah pod dan menjaga jumlah pod yang ditentukan tetap konstan. Proses ini memastikan bahwa satu set pod replika yang stabil berjalan pada waktu tertentu, yang menjamin ketersediaan sejumlah pod identik.

Ketika sebuah pod gagal, sebuah ReplicaSet menampilkan sebuah instans baru dari pod dan menskalakan ketika instans yang sedang berjalan mencapai jumlah yang ditentukan. Sebaliknya, ia memperkecil atau menghapus pod ketika sebuah instans dengan label yang sama dibuat.

Buat ReplicaSet

Gunakan perintah kubectl create dan kubectl apply untuk membuat ReplicaSets. Contoh berikut membuat ReplicaSet menggunakan file YAML:

kubectl apply –f nginx_replicaset.yaml

Fitur file konfigurasi ReplicaSet ditampilkan dalam format YAML:

apiVersion: apps/v1  
kind: ReplicaSet  
metadata: 
      name: web
      labels: 
         env: dev
         role: web
spec:  
   replicas: 4
   selector: 
       matchlabels: 
       role: web
        template:
           metadata:
       labels:
           role: web
spec:  
      containers:  
           -name: nginx  
           image: nginx

Setelah Anda membuat ReplicaSet, Anda dapat melihat statusnya dengan menjalankan perintah berikut:

kubectl get rs

Anda dapat menghapus, tetapi tidak menghapus, sebuah pod yang dikelola oleh ReplicaSet dengan mengubah labelnya menggunakan perintah kubectl edit. Misalnya, jika Anda menjalankan kubectl edit pods 7677-69h5b, Anda dapat mengubah label pod setelah file konfigurasi terbuka.

Menskalakan ReplicaSet

Ada dua cara untuk mengubah jumlah pod yang dikelola oleh ReplicaSet.

  • Edit konfigurasi pengontrol menggunakan perintah berikut:

    kubectl edit rs <ReplicaSet_NAME>
    
  • Secara langsung menambah atau mengurangi angka menggunakan perintah berikut:

kubectl scale –replicas=2 rs <ReplicaSet_NAME>

Saat Anda mengedit file manifes, Anda dapat mengganti konfigurasi yang ada dengan yang diperbarui:

kubectl replace –f nginx_replicaset.yaml

Kemudian, untuk melihat status ReplicaSet Anda, jalankan kubectl get rs <ReplicaSet_NAME>.

Penskalaan otomatis juga merupakan opsi dengan ReplicaSets menggunakan kubectl autoscale rs web –max=5. Anda dapat menggunakan penskalaan otomatis untuk menyesuaikan jumlah pod sesuai dengan beban CPU dari sebuah node.

Hapus ReplicaSet

Seperti halnya objek Kubernetes lainnya, seperti DaemonSets, Anda dapat menghapus ReplicaSets menggunakan kubectl delete perintah . Misalnya, Anda dapat menggunakan perintah berikut:

  • Untuk menghapus ReplicaSet menggunakan nama ReplicaSet, jalankan perintah berikut:

    kubectl delete rs <ReplicaSet_NAME>
    
  • Untuk menghapus ReplicaSet menggunakan nama filenya, jalankan perintah berikut:

    kubectl delete –f nginx_replicaset.yaml
    
  • Perintah sebelumnya menghapus ReplicaSet dan semua pod yang dikelolanya. Jika Anda hanya ingin menghapus sumber daya ReplicaSet, dan menyimpan pod tanpa pemilik, Anda perlu menghapusnya secara manual. Untuk menghapus ReplicaSet secara manual, jalankan perintah berikut:

    kubectl delete rs <ReplicaSet_NAME> --cascade=false
    

Langkah berikutnya