Kubectl kiểm soát Kubernetes Cluster. Nó là một trong những thành phần quan trọng của Kubernetes chạy trên máy trạm trên bất kỳ máy nào khi thiết lập xong. Nó có khả năng quản lý các nút trong cụm.
Các lệnh Kubectl được sử dụng để tương tác và quản lý các đối tượng Kubernetes và cụm. Trong chương này, chúng ta sẽ thảo luận về một số lệnh được sử dụng trong Kubernetes thông qua kubectl. kubectl annotate – Nó cập nhật chú thích trên một tài nguyên
$kubectl annotate [--overwrite] (-f FILENAME | TYPE NAME) KEY_1=VAL_1 ...
KEY_N = VAL_N [--resource-version = version]
Ví dụ,
kubectl annotate pods tomcat description = ‘my frontend’
kubectl api-version – Nó in các phiên bản API được hỗ trợ trên cụm.
$ kubectl api-version;
kubectl áp dụng – Nó có khả năng định cấu hình tài nguyên theo tệp hoặc stdin.
$ kubectl apply –f <filename>
kubectl đính kèm – Điều này đính kèm mọi thứ vào vùng chứa đang chạy.
$ kubectl attach <pod> –c <container>
$ kubectl attach 123456-7890 -c tomcat-conatiner
kubectl autoscale – Điều này được sử dụng để tự động chia tỷ lệ các nhóm được xác định như Triển khai, bộ bản sao, Bộ điều khiển nhân bản.
$ kubectl autoscale (-f FILENAME | TYPE NAME | TYPE/NAME) [--min = MINPODS] --
max = MAXPODS [--cpu-percent = CPU] [flags]
$ kubectl autoscale deployment foo --min = 2 --max = 10
kubectl cluster-info – Nó hiển thị Thông tin cụm.
$ kubectl cluster-info
kubectl cluster-info dump – Kết xuất thông tin liên quan đến cụm để gỡ lỗi và chẩn đoán.
$ kubectl cluster-info dump
$ kubectl cluster-info dump --output-directory = /path/to/cluster-state
kubectl config – Sửa đổi tệp kubeconfig.
$ kubectl config <SUBCOMMAD>
$ kubectl config –-kubeconfig <String of File name>
kubectl config current-context – Nó hiển thị ngữ cảnh hiện tại.
$ kubectl config current-context
#deploys the current context
kubectl config delete-cluster – Xóa cụm được chỉ định khỏi kubeconfig.
$ kubectl config delete-cluster <Cluster Name>
kubectl config delete-context – Xóa ngữ cảnh được chỉ định khỏi kubeconfig.
$ kubectl config delete-context <Context Name>
kubectl config get-cluster – Hiển thị cụm được xác định trong kubeconfig.
$ kubectl config get-cluster
$ kubectl config get-cluster <Cluser Name>
kubectl config get-context – Mô tả một hoặc nhiều ngữ cảnh.
$ kubectl config get-context <Context Name>kubectl config set-cluster – Đặt mục nhập cụm trong Kubernetes.
$ kubectl config set-cluster NAME [--server = server] [--certificateauthority =
path/to/certificate/authority] [--insecure-skip-tls-verify = true]
kubectl config set-context – Đặt một mục ngữ cảnh trong điểm nhập kubernetes
$ kubectl config set-context NAME [--cluster = cluster_nickname] [--
user = user_nickname] [--namespace = namespace]
$ kubectl config set-context prod –user = vipin-mishra
kubectl config set-credentials – Đặt mục nhập người dùng trong kubeconfig.
$ kubectl config set-credentials cluster-admin --username = vipin --
password = uXFGweU9l35qcif
kubectl config set – Đặt một giá trị riêng lẻ trong tệp kubeconfig.
$ kubectl config set PROPERTY_NAME PROPERTY_VALUE
kubectl config unset – Nó bỏ thiết lập một thành phần cụ thể trong kubectl.
$ kubectl config unset PROPERTY_NAME PROPERTY_VALUE
kubectl config use-context – Đặt bối cảnh hiện tại trong tệp kubectl.
$ kubectl config use-context <Context Name>
chế độ xem cấu hình kubectl
$ kubectl config view
$ kubectl config view –o jsonpath='{.users[?(@.name == "e2e")].user.password}'
kubectl cp – Sao chép tệp và thư mục đến và đi từ vùng chứa.
$ kubectl cp <Files from source> <Files to Destinatiion>
$ kubectl cp /tmp/foo <some-pod>:/tmp/bar -c <specific-container>
kubectl create – Để tạo tài nguyên theo tên tệp của hoặc stdin. Để làm điều này, các định dạng JSON hoặc YAML được chấp nhận.
$ kubectl create –f <File Name>
$ cat <file name> | kubectl create –f -
Theo cách tương tự, chúng ta có thể tạo nhiều thứ như được liệt kê bằng cách sử dụng lệnh create cùng với kubectl .
- triển khai
- không gian tên
- hạn ngạch
- docker-registry bí mật
- bí mật
- bí mật chung chung
- tls bí mật
- tài khoản dịch vụ
- nhóm dịch vụ
- bộ cân bằng dịch vụ
- dịch vụ gật đầu
kubectl delete – Xóa tài nguyên theo tên tệp, stdin, tài nguyên và tên.
$ kubectl delete –f ([-f FILENAME] | TYPE [(NAME | -l label | --all)])
kubectl description – Mô tả bất kỳ tài nguyên cụ thể nào trong kubernetes. Hiển thị chi tiết của tài nguyên hoặc một nhóm tài nguyên.
$ kubectl describe <type> <type name>
$ kubectl describe pod tomcat
cống kubectl – Điều này được sử dụng để thoát một nút cho mục đích bảo trì. Nó chuẩn bị cho nút để bảo trì. Thao tác này sẽ đánh dấu nút là không khả dụng để nó không được gán với một vùng chứa mới sẽ được tạo.
$ kubectl drain tomcat –force
kubectl chỉnh sửa – Nó được sử dụng để kết thúc tài nguyên trên máy chủ. Điều này cho phép chỉnh sửa trực tiếp tài nguyên mà người ta có thể nhận được thông qua công cụ dòng lệnh.
$ kubectl edit <Resource/Name | File Name)
Ex.
$ kubectl edit rc/tomcat
kubectl execute – Điều này giúp thực thi một lệnh trong vùng chứa.
$ kubectl exec POD <-c CONTAINER > — COMMAND < args…>
$ kubectl exec tomcat 123-5-456 date
kubectl exposure – Điều này được sử dụng để hiển thị các đối tượng Kubernetes như pod, bộ điều khiển sao chép và dịch vụ như một dịch vụ Kubernetes mới. Điều này có khả năng hiển thị nó qua một vùng chứa đang chạy hoặc từ một tệp yaml .
$ kubectl expose (-f FILENAME | TYPE NAME) [--port=port] [--protocol = TCP|UDP]
[--target-port = number-or-name] [--name = name] [--external-ip = external-ip-ofservice]
[--type = type]
$ kubectl expose rc tomcat –-port=80 –target-port = 30000
$ kubectl expose –f tomcat.yaml –port = 80 –target-port =
kubectl get – Lệnh này có khả năng tìm nạp dữ liệu trên cụm về các tài nguyên Kubernetes.
$ kubectl get [(-o|--output=)json|yaml|wide|custom-columns=...|custom-columnsfile=...|
go-template=...|go-template-file=...|jsonpath=...|jsonpath-file=...]
(TYPE [NAME | -l label] | TYPE/NAME ...) [flags]
Ví dụ,
$ kubectl get pod <pod name>
$ kubectl get service <Service name>
nhật ký kubectl – Chúng được sử dụng để lấy nhật ký của vùng chứa trong một nhóm. Việc in nhật ký có thể xác định tên vùng chứa trong nhóm. Nếu POD chỉ có một vùng chứa thì không cần xác định tên của nó.
$ kubectl logs [-f] [-p] POD [-c CONTAINER]
Example
$ kubectl logs tomcat.
$ kubectl logs –p –c tomcat.8
kubectl port-forward – Chúng được sử dụng để chuyển tiếp một hoặc nhiều cổng cục bộ tới nhóm.
$ kubectl port-forward POD [LOCAL_PORT:]REMOTE_PORT
[...[LOCAL_PORT_N:]REMOTE_PORT_N]
$ kubectl port-forward tomcat 3000 4000
$ kubectl port-forward tomcat 3000:5000
kubectl Replace – Có khả năng thay thế tài nguyên bằng tên tệp hoặc stdin .
$ kubectl replace -f FILENAME
$ kubectl replace –f tomcat.yml
$ cat tomcat.yml | kubectl replace –f -
kubectl roll-update – Thực hiện cập nhật liên tục trên bộ điều khiển nhân rộng. Thay thế bộ điều khiển sao chép được chỉ định bằng một bộ điều khiển sao chép mới bằng cách cập nhật POD tại một thời điểm.
$ kubectl rolling-update OLD_CONTROLLER_NAME ([NEW_CONTROLLER_NAME] --
image = NEW_CONTAINER_IMAGE | -f NEW_CONTROLLER_SPEC)
$ kubectl rolling-update frontend-v1 –f freontend-v2.yaml
triển khai kubectl – Nó có khả năng quản lý quá trình triển khai.
$ Kubectl rollout <Sub Command>
$ kubectl rollout undo deployment/tomcat
Ngoài những điều trên, chúng tôi có thể thực hiện nhiều tác vụ bằng cách sử dụng bản giới thiệu, chẳng hạn như:
- lịch sử phát hành
- tạm dừng triển khai
- bản tiếp tục triển khai
- tình trạng phát hành
- hoàn tác triển khai
kubectl run – Lệnh Run có khả năng chạy một hình ảnh trên Kubernetes cluster.
$ kubectl run NAME --image = image [--env = "key = value"] [--port = port] [--
replicas = replicas] [--dry-run = bool] [--overrides = inline-json] [--command] --
[COMMAND] [args...]
$ kubectl run tomcat --image = tomcat:7.0
$ kubectl run tomcat –-image = tomcat:7.0 –port = 5000
kubectl scale – Nó sẽ chia tỷ lệ kích thước của Kubernetes Deployments, ReplicaSet, Replication Controller hoặc job.
$ kubectl scale [--resource-version = version] [--current-replicas = count] --
replicas = COUNT (-f FILENAME | TYPE NAME )
$ kubectl scale –-replica = 3 rs/tomcat
$ kubectl scale –replica = 3 tomcat.yaml
hình ảnh bộ kubectl – Nó cập nhật hình ảnh của một mẫu nhóm.
$ kubectl set image (-f FILENAME | TYPE NAME)
CONTAINER_NAME_1 = CONTAINER_IMAGE_1 ... CONTAINER_NAME_N = CONTAINER_IMAGE_N
$ kubectl set image deployment/tomcat busybox = busybox ngnix = ngnix:1.9.1
$ kubectl set image deployments, rc tomcat = tomcat6.0 --all
kubectl đặt tài nguyên – Nó được sử dụng để thiết lập nội dung của tài nguyên. Nó cập nhật tài nguyên / giới hạn trên đối tượng với mẫu nhóm.
$ kubectl set resources (-f FILENAME | TYPE NAME) ([--limits = LIMITS & --
requests = REQUESTS]
$ kubectl set resources deployment tomcat -c = tomcat --
limits = cpu = 200m,memory = 512Mi
nút trên cùng kubectl – Nó hiển thị mức sử dụng CPU / Bộ nhớ / Bộ nhớ. Lệnh trên cùng cho phép bạn xem mức tiêu thụ tài nguyên cho các nút.
$ kubectl top node [node Name]
Lệnh tương tự cũng có thể được sử dụng với một nhóm.