banner large

Bagaimana Memulai Dengan Krew, Manajer Plugin Kubectl

Comment
X
Share

Grafik yang menunjukkan logo Kubernetes

Krew adalah manajer paket untuk Kubectl, CLI resmi Kubernetes. Menggunakan Krew Anda dapat menemukan, menginstal, dan memperbarui plugin Kubectl yang memperluas CLI dengan fungsionalitas tambahan.

Mekanisme plugin Kubectl mendukung beberapa metode instalasi plugin. Cara paling sederhana adalah dengan memasukkan plugin langsung ke direktori yang ada di Anda PATH. Ini adalah proses manual yang tidak menawarkan cara untuk memperbarui plugin saat rilis baru diterbitkan.

Krew menyediakan fungsionalitas manajemen paket umum untuk ekosistem plugin Kubectl. Itu memelihara indeks publik dari paket yang dikenal dan mendukung indeks pihak ketiga juga. Yang terakhir memungkinkan Anda mempublikasikan plugin secara pribadi dalam organisasi atau tim.

Memasang Kru

Krew adalah alat sumber terbuka yang merupakan bagian dari proyek Kubernetes. Itu tidak dibundel dengan Kubectl. Untuk memulai dengan Krew, Anda harus mengunduh dan menginstal rilis terbaru secara manual. Distribusi Krew saat ini bekerja dengan Kubectl v1.12 dan yang lebih baru.

Unduhan tersedia dari halaman rilis GitHub proyek. Arsip tar distribusi berisi biner Krew. Jalankan skrip instalasinya untuk menyelesaikan penambahan Krew ke sistem Anda:

$ ./krew-linux_amd64 install krew

Skrip lengkap yang secara otomatis mengunduh dan menginstal distribusi Krew yang benar untuk sistem Anda tersedia dalam dokumentasi.

Selanjutnya Anda harus memperbarui PATH untuk memasukkan Krew’s bin direktori. Ini terletak di dalam $KREW_ROOT yang biasanya $HOME/.krew. Eksekusi dari plugin Kubectl yang Anda instal akan disimpan di dalam bin subdirektori.

$ export PATH="${KREW_ROOT:-$HOME/.krew}/bin:$PATH"

Sekarang Anda seharusnya dapat menggunakan Krew melalui kubectl krew memerintah:

~$ kubectl krew
krew is the kubectl plugin manager.
You can invoke krew through kubectl: "kubectl krew [command]..."

Usage:
  kubectl krew [command]
...

Memperbarui Indeks Plugin

Katalog indeks plugin Krew berisi semua plugin yang tersedia saat ini yang dapat Anda instal. Ini bekerja mirip dengan daftar paket yang digunakan oleh manajer paket tingkat OS seperti: apt.

Perbarui indeks secara berkala sehingga instalasi Krew Anda memiliki akses ke versi terbaru dari semua plugin yang tersedia:

$ kubectl krew update
Updated the local copy of plugin index.

Menginstal Plugin

Itu install perintah menambahkan plugin baru ke Kubectl. Itu dapat menginstal plugin apa pun yang terdaftar di indeks Krew. Krew menangani pengunduhan plugin dan mendaftarkannya ke Kubectl.

$ kubectl krew install ctx
Updated the local copy of plugin index.
Installing plugin: ctx
Installed plugin: ctx
...

Krew secara otomatis memperbarui indeks pluginnya sebelum instalasi, memastikan Anda mendapatkan rilis terbaru plugin baru. Setelah penginstalan selesai, Anda akan melihat beberapa informasi dasar dari pembuat plugin di bagian bawah output perintah.

Sekarang Anda dapat menggunakan perintah plugin melalui kubectl KLI:

$ kubectl ctx my-context

Memperbarui ke Rilis Plugin Baru

Salah satu keuntungan terbesar Krew adalah sistem pembaruan plugin yang terintegrasi. Menjalankan upgrade perintah akan menyegarkan indeks paket dan memperbarui semua plugin yang Anda instal ke rilis terbarunya. Proses ini sepenuhnya otomatis.

$ kubectl krew upgrade
Updated the local copy of plugin index.
...

Anda dapat meningkatkan plugin satu per satu dengan meneruskan namanya ke upgrade memerintah:

$ kubectl krew upgrade ctx

Jika Anda ingin menghapus plugin, berikan namanya ke uninstall memerintah:

$ kubectl krew uninstall ctx

Krew akan memastikan plugin benar-benar dihapus dari sistem Anda.

Itu list perintah menunjukkan semua plugin Anda dan versi yang diinstal:

~$ kubectl krew list
PLUGIN  VERSION
ctx     v0.9.4
krew    v0.4.3
ns      v0.9.4

Krew sendiri muncul di daftar plugin dan didukung oleh sistem pembaruan. Berlari upgrade atau upgrade krew akan mengambil dan menginstal rilis Krew terbaru sebelum plugin Anda diperbarui.

Mencari Plugin

Itu search perintah memungkinkan Anda menelusuri indeks paket Krew dari terminal Anda.

~$ kubectl krew search cert-manager
NAME          DESCRIPTION                                        INSTALLED
cert-manager  Manage cert-manager resources inside your cluster  no

Setelah Anda menemukan plugin yang Anda minati, jalankan info perintah untuk mengetahui lebih lanjut tentang hal itu. Ini mengungkapkan nomor versi plugin saat ini, tautan ke situs webnya, dan deskripsi singkat yang diberikan oleh penulis.

~$ kubectl krew info cert-manager
NAME: cert-manager
INDEX: default
URI:
SHA256: 73618617b9ec42994c3ea77bbc8be743e382501d42ad2ee7aeca0d32c15655c0
VERSION: v1.7.0
HOMEPAGE:
DESCRIPTION: 
The official plugin accompanying cert-manger, a Kubernetes add-on to
automate the management and issuance of TLS certificates. Allows for
direct interaction with cert-manager resources e.g. manual renewal of
Certificate resources.

Menggunakan Indeks Kustom

Krew mendukung indeks khusus yang memfasilitasi pemasangan plugin dari sumber Anda sendiri. Indeks hanyalah repositori Git dengan a plugins folder yang berisi manifes YAML. File-file ini menentukan plugin yang tersedia untuk instalasi. Struktur indeks default Krew adalah model yang berguna saat Anda menyiapkannya sendiri.

Untuk menambahkan indeks, berikan URL repositorinya ke index add memerintah:

$ kubectl krew index add custom-index 

Untuk referensi plugin di indeks Anda, awali namanya dengan nama indeks pilihan Anda:

$ kubectl krew install custom-index/example-plugin

Ketika tidak ada awalan yang diberikan, Krew menggunakan default/ awalan sebagai gantinya. Ini selalu mengacu pada indeks plugin bawaan Krew. Jika Anda lebih suka mengarahkan nama plugin tanpa awalan ke indeks Anda sendiri, atur KREW_DEFAULT_INDEX_URI variabel lingkungan ke URL repositori Anda:

$ export KREW_DEFAULT_INDEX_URI=""

# Automatically resolved to the custom index
$ kubectl krew install example-plugin

Menerbitkan Plugin Anda Sendiri

Cukup mudah untuk mendistribusikan plugin Anda sendiri kepada pengguna melalui Krew. Pertama, Anda perlu membuat arsip konten plugin Kubectl Anda, baik sebagai .tar.gz atau .zip mengajukan. Unggah ini ke lokasi yang dapat diakses publik – situs web proyek Anda atau halaman rilis GitHub adalah pilihan yang baik.

Tulis manifes plugin Krew berikutnya. Ini adalah file YAML sederhana yang menyediakan informasi dasar tentang plugin Anda seperti nama, deskripsi, dan versi saat ini. Manifes juga menyertakan URL publik arsip plugin Anda. Saat pengguna memasang plugin Anda, Krew akan mengambil arsipnya dari URL yang ditentukan dalam manifes.

Setelah Anda menulis manifes, Anda dapat mengkomitnya ke repositori Git. Tambahkan repositori itu sebagai indeks Krew khusus untuk menambahkan plugin Anda ke instalasi Kubectl Anda. Pengajuan ke indeks publik Krew diterima dengan membuat permintaan tarik ke repositorinya yang menambahkan manifes Anda di plugins direktori.

Kesimpulan

Krew menyederhanakan penemuan, pemasangan, dan pengelolaan plugin Kubernetes. Ini adalah alat praktis yang berguna bagi siapa saja yang menggunakan plugin Kubectl. Krew menawarkan pengalaman manajemen paket lengkap yang mencakup indeks pribadi khusus untuk alat internal Anda.

Indeks publik berisi lebih dari 180 plugin yang mencakup semua aspek manajemen Kubernetes. Beberapa opsi populer termasuk cert-manager, untuk bekerja dengan objek Cert-Manager di cluster Anda, tail, menawarkan streaming log yang disederhanakan, skor untuk analisis statis objek Anda, dan ctx dan ns untuk merampingkan peralihan antara konteks dan ruang nama.

Leave a Reply

Your email address will not be published. Required fields are marked *