Kubectl adalah perintah dari command-line ( prompt dari terminal) sehingga pengguna (user) dapat berinteraksi dengan kluster kubernetes. Kubectl menggunakan API kubernetes untuk berkomunikasi dengan control plane dari kubernetes. Apa itu control plane bisa diterangkan di bawah ini:

Gambar di atas diambil dari situs resmi kubernetes.

Control plane kubernetes yang merupakan otak dari sebuah kluster kubernetes ditandai di gambar di atas dengan garis terputus-putus. Keterangan lebih lanjut mengenai kluster kubernetes secara detil akan diterangkan di halaman yang lain. Artikel ini akan membahas lebih detil tentang kubectl itu sendiri.

Seperti telah ditulis di atas kubectl adalah sebuah perintah di terminal, yang sintaks dasarnya adalah:

kubectl [Perintah] [TIPE] [NAMA] [flags] 

Berikut adalah perintah-perintah yang ada:

  • perintah yang mungkin menjadi pilihan adalah: get, create, describe, delete. Get untuk mendapatkan informasi sebuah objek, create untuk menciptakan, describe untuk menerangkan tentang objek dan delete untuk menghapus sebuah objek.
  • TIPE: menyatakan resource yang menjadi objek seperti pod, service. deployment
  • NAMA: nama dari resource yang dijadikan objek.
  • flags: ini berguna untuk mengubah karakteristik dari perintah yang diberikan.

Perintah yang biasa Digunakan

PerintahContohKeterangan (untuk namespace default)
Getkubectl get podsdaftar semua pods di sebuah namespace
Describekubectl describe pod <nama dari pod>deskripsi dari sebuah pod di sebuah namespace
Createkubectl create -f <file.yaml>pembuatan sebuah resource
Deletekubectl delete penghapusan sebuah resource
Apply kubectl apply -f <file.yaml>mengaplikasikan sesuatu perubahan di resource kubernetes yang didefinisikan di file.yaml

Tanpa referensi -n <namespace> semua perintah di atas dilakukan di namespace default.

Di saat sebuah perintah kubectl dilaksanakan, perintah kubectl dilakukan terhadap sebuah kluster yang didefiniskan oleh hasil dari perintah berikut:

$ kubectl config current-contex

Context di atas didefiniskan oleh file konfigurasi yang disebut sebagai file kubeconfig. Lokasi file secara default berada di ~/.kube/config. Saat ingin mengubah sebuah context, dalam hal ini berarti kita ingin mengubah kluster tempat kita berinteraksi dapat dilakukan dengan perintah berikut:

$ kubectl config use-contex <nama dari context>

Satu hal yang penting saat kita bekerja dengan kubectl adalah auto-completion, seperti di perintah linux saat kita menulis sebuah perintah dan menekan tombol tab, perintah yang kita inginkan langsung keluar tanpa perlu mengetik seluruh perintah itu. Hal ini pun dimiliki oleh kubectl. Untuk itu perlu didefinsikan di .bashrc untuk bash:

source <(kubectl completion bash) 

untuk zsh, jika kita menggunakan macOS

source <(kubectl completion zsh) 

Related Posts

Verified by MonsterInsights