Cách bắt đầu với Krew, Trình quản lý plugin Kubectl

Krew là một trình quản lý gói cho Kubectl, Kubernetes CLI chính thức. Sử dụng Krew, bạn có thể tìm, cài đặt và cập nhật các plugin Kubectl mở rộng CLI với chức năng bổ sung.

Cơ chế plugin của Kubectl hỗ trợ một số phương pháp cài đặt plugin. Cách đơn giản nhất là bật các plugin thẳng vào một thư mục nằm trong PATH. Đây là một quy trình thủ công không cung cấp cách cập nhật plugin khi các bản phát hành mới được xuất bản.

Bạn Đang Xem: Cách bắt đầu với Krew, Trình quản lý plugin Kubectl

Krew cung cấp các chức năng quản lý gói phổ biến cho hệ sinh thái plugin Kubectl. Nó duy trì một chỉ mục công khai của các gói đã biết và cũng hỗ trợ các chỉ mục của bên thứ ba. Loại thứ hai cho phép bạn xuất bản các plugin một cách riêng tư trong một tổ chức hoặc nhóm.

Cài đặt Krew

Krew là một công cụ mã nguồn mở nằm trong dự án Kubernetes. Tuy nhiên, nó không đi kèm với Kubectl. Để bắt đầu với Krew, bạn phải tải xuống và cài đặt bản phát hành mới nhất theo cách thủ công. Các bản phân phối Krew hiện tại hoạt động với Kubectl v1.12 trở lên.

Tải xuống có sẵn từ trang phát hành GitHub của dự án. Các kho lưu trữ tar phân phối chứa tệp nhị phân Krew. Chạy tập lệnh cài đặt của nó để hoàn tất việc thêm Krew vào hệ thống của bạn:

$ ./krew-linux_amd64 install krew

Một tập lệnh hoàn chỉnh tự động tải xuống và cài đặt bản phân phối Krew chính xác cho hệ thống của bạn có sẵn trong tài liệu.

Tiếp theo, bạn nên cập nhật PATH bao gồm Krew’s bin danh mục. Điều này nằm trong $KREW_ROOT thường là $HOME/.krew. Các tệp thực thi từ các plugin Kubectl mà bạn cài đặt sẽ được lưu trữ bên trong bin thư mục con.

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

Bây giờ bạn có thể sử dụng Krew thông qua kubectl krew yêu cầu:

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

Usage:
  kubectl krew [command]
...

Cập nhật Chỉ mục Plugin

Chỉ mục plugin của Krew liệt kê tất cả các plugin hiện có sẵn mà bạn có thể cài đặt. Nó hoạt động tương tự như danh sách gói được sử dụng bởi người quản lý gói cấp hệ điều hành, chẳng hạn như apt.

Cập nhật chỉ mục định kỳ để cài đặt Krew của bạn có quyền truy cập vào các phiên bản mới nhất của tất cả các plugin có sẵn:

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

Cài đặt các Plugin

Xem Thêm : Windows 11 bỏ PowerShell và Command Prompt theo mặc định

Các install lệnh thêm các plugin mới vào Kubectl. Nó có thể cài đặt bất kỳ plugin nào được liệt kê trong chỉ mục của Krew. Krew sẽ tải xuống plugin và đăng ký với Kubectl.

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

Krew tự động cập nhật chỉ mục plugin của nó trước khi cài đặt, đảm bảo bạn nhận được bản phát hành mới nhất của plugin mới. Khi quá trình cài đặt hoàn tất, bạn sẽ thấy một số thông tin cơ bản từ tác giả của plugin ở cuối đầu ra của lệnh.

Bây giờ bạn có thể sử dụng các lệnh của plugin thông qua kubectl CLI:

$ kubectl ctx my-context

Cập nhật lên bản phát hành plugin mới

Một trong những lợi thế lớn nhất của Krew là hệ thống cập nhật plugin tích hợp của nó. Chạy upgrade lệnh sẽ làm mới chỉ mục gói và cập nhật tất cả các plugin đã cài đặt của bạn lên bản phát hành mới nhất. Quá trình này hoàn toàn tự động.

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

Bạn có thể nâng cấp các plugin riêng lẻ bằng cách chuyển tên của chúng vào upgrade yêu cầu:

$ kubectl krew upgrade ctx

Nếu bạn muốn xóa một plugin, hãy cung cấp tên của nó cho uninstall yêu cầu:

$ kubectl krew uninstall ctx

Krew sẽ đảm bảo loại bỏ hoàn toàn plugin khỏi hệ thống của bạn.

Các list lệnh hiển thị tất cả các plugin của bạn và các phiên bản đã cài đặt của chúng:

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

Bản thân Krew xuất hiện trong danh sách plugin và được hỗ trợ bởi hệ thống cập nhật. Đang chạy upgrade hoặc upgrade krew sẽ tìm nạp và cài đặt bản phát hành Krew mới nhất trước khi các plugin của bạn được cập nhật.

Tìm kiếm các Plugin

Các search lệnh cho phép bạn duyệt chỉ mục gói Krew từ thiết bị đầu cuối của bạn.

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

Xem Thêm : Những chiếc tai nghe UE Drops này được đúc tùy chỉnh cho phù hợp với tai của bạn –

Khi bạn đã tìm thấy một plugin mà bạn quan tâm, hãy chạy info lệnh để tìm hiểu thêm về nó. Điều này tiết lộ số phiên bản hiện tại của plugin, liên kết đến trang web của plugin và mô tả ngắn do tác giả cung cấp.

~$ kubectl krew info cert-manager
NAME: cert-manager
INDEX: default
URI: https://github.com/jetstack/cert-manager/releases/download/v1.7.0/kubectl-cert_manager-linux-amd64.tar.gz
SHA256: 73618617b9ec42994c3ea77bbc8be743e382501d42ad2ee7aeca0d32c15655c0
VERSION: v1.7.0
HOMEPAGE: https://github.com/jetstack/cert-manager
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.

Sử dụng chỉ mục tùy chỉnh

Krew hỗ trợ các chỉ mục tùy chỉnh tạo điều kiện thuận lợi cho việc cài đặt plugin từ các nguồn của riêng bạn. Các chỉ mục chỉ đơn giản là kho lưu trữ Git với plugins thư mục chứa tệp kê khai YAML. Các tệp này xác định các plugin có sẵn để cài đặt. Cấu trúc của chỉ mục mặc định của Krew là một mô hình hữu ích khi bạn thiết lập chỉ mục của riêng mình.

Để thêm một chỉ mục, hãy chuyển URL kho lưu trữ của nó vào index add yêu cầu:

$ kubectl krew index add custom-index https://example.com/krew/index.git

Để tham chiếu các plugin trong chỉ mục của bạn, hãy thêm tiền tố tên của chúng bằng tên chỉ mục đã chọn của bạn:

$ kubectl krew install custom-index/example-plugin

Khi không có tiền tố nào được đưa ra, Krew sử dụng default/ tiền tố thay thế. Điều này luôn đề cập đến chỉ mục plugin tích hợp của Krew. Nếu bạn muốn hướng các tên plugin chưa được cố định vào chỉ mục của riêng mình, hãy đặt KREW_DEFAULT_INDEX_URI biến môi trường thành URL kho lưu trữ của bạn:

$ export KREW_DEFAULT_INDEX_URI="https://example.com/krew/index.git"

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

Xuất bản các plugin của riêng bạn

Việc phân phối các plugin của riêng bạn cho người dùng thông qua Krew khá đơn giản. Trước tiên, bạn cần tạo một kho lưu trữ nội dung plugin Kubectl của mình, dưới dạng .tar.gz hoặc .zip tập tin. Tải nó lên một vị trí có thể truy cập công khai – trang web dự án của bạn hoặc trang phát hành GitHub đều là những lựa chọn tốt.

Viết một tệp kê khai plugin Krew tiếp theo. Đây là một tệp YAML đơn giản cung cấp thông tin cơ bản về plugin của bạn như tên, mô tả và phiên bản hiện tại của nó. Tệp kê khai cũng bao gồm URL công khai của kho lưu trữ plugin của bạn. Khi người dùng cài đặt plugin của bạn, Krew sẽ tìm nạp kho lưu trữ của nó từ URL được chỉ định trong tệp kê khai.

Khi bạn đã viết tệp kê khai của mình, bạn có thể chuyển nó vào kho lưu trữ Git. Thêm kho lưu trữ đó dưới dạng chỉ mục Krew tùy chỉnh để thêm plugin vào cài đặt Kubectl của bạn. Việc gửi đến chỉ mục công khai của Krew được chấp nhận bằng cách tạo một yêu cầu kéo đến kho lưu trữ của nó để thêm tệp kê khai của bạn vào plugins danh mục.

Sự kết luận

Krew đơn giản hóa việc khám phá, cài đặt và quản lý plugin Kubernetes. Đó là một công cụ tiện lợi hữu ích cho bất kỳ ai sử dụng plugin Kubectl. Krew cung cấp trải nghiệm quản lý gói đầy đủ bao gồm các chỉ mục riêng tùy chỉnh cho các công cụ nội bộ của bạn.

Chỉ mục công khai chứa hơn 180 plugin bao gồm tất cả các khía cạnh của quản lý Kubernetes. Một số tùy chọn phổ biến bao gồm cert-manager, để làm việc với các đối tượng Cert-Manager trong cụm, đuôi của bạn, cung cấp luồng nhật ký đơn giản hóa, điểm cho phân tích tĩnh các đối tượng của bạn và ctx và ns để hợp lý hóa việc chuyển đổi giữa các ngữ cảnh và không gian tên.



Máy tính vàng

Nguồn: https://maytinhvang.com
Danh mục: TIN HỌC

Bài viết liên quan

0903064855
chat-active-icon