Kubernetes 实践指南之Kubernetes 的命令行工具详解

 JAVA编程交流群:574337670

 

正文

 

kubectl作为客户端CLI工具,可以让用户通过命令行的方式对Kubernetes集群进行管理。本节内容将对kubectl的子命令和用法进行详细描述。

一、kubectl 用法概述

  • kubectl语法运行如下命令:

    kubectl [command] [TYPE] [NAME] [FLAGS]
    其中command、TYPE、NAME、FLAGS的含义如下:
  1. command:指定要在一个或多个资源执行的操作,例如操作create,get,describe,delete。
  2. TYPE:指定资源类型Resource types。Resource types会区分大小写,也可以指定单数,复数或缩写的形式。
    例如以下三种TYPE是等价的。
    kubectl get pod pod1
    kubectl get pods pod1
    kubectl get po pod1
  3. NAME:指定Resource的Name。Name区分大小写,如果省略Name,则显示所有资源的详细信息,例如:
    kubectl get pods
  4. FLAGS:kubectl 子命令的可选参数,例如使用“-s”指定apiserver的URL地址而不用默认值。
  • kubectl可操作的资源对象类型如下表:
    在一个命令行也可可以同时对多个资源对象进行操作,以多个TYPE和NAME的组合表示,示例如下:
  1. 获取多个Pod 的信息
    kubectl get pods pod1 pod2 pod2
  2. 获取多种对象的信息
    kubectl get pod/pod1 rc/rc1
  3. 同时应用多个yaml文件,以多个-f file 参数表示
    kubectl get pod -f pod1.yaml -f pod2.yaml
    kubectl create -f pod1.yaml -f rc1.yaml -f servicel.yaml

二、kubectl 子命令详解

Kubernetes子命令非常丰富,涵盖了对Kubernetes集群的主要操作,包括资源对象的创建、查看、修改、配置、删除、运行等。详细的子命令如下列表所示。

Operation
Syntax
Description
kubectl annotate (-f FILENAME | TYPE NAME | TYPE/NAME) KEY_1=VAL_1 ... KEY_N=VAL_N [--overwrite] [--all] [--resource-version=version] [flags]
为一个或多个资源添加注释
api-versions
kubectl api-versions [flags]
列出支持的API版本。
apply
kubectl apply -f FILENAME [flags]
对文件或stdin的资源进行配置更改。
attach
kubectl attach POD -c CONTAINER [-i] [-t] [flags]
连接到一个运行的容器,既可以查看output stream,也可以与容器(stdin)进行交互。
autoscale
kubectl autoscale (-f FILENAME | TYPE NAME | TYPE/NAME) [--min=MINPODS] --max=MAXPODS [--cpu-percent=CPU] [flags]
自动扩容/缩容由replication controller管理的一组pod。
cluster-info
kubectl cluster-info [flags]
显示有关集群中master和services的终端信息。
config
kubectl config SUBCOMMAND [flags]
修改kubeconfig文件。有关详细信息,请参阅各个子命令。
create
kubectl create -f FILENAME [flags]
从file或stdin创建一个或多个资源。
delete
kubectl delete (-f FILENAME | TYPE [NAME | /NAME | -l label | --all]) [flags]
从file,stdin或指定label 选择器,names,resource选择器或resources中删除resources。
describe
kubectl describe (-f FILENAME | TYPE [NAME_PREFIX | /NAME | -l label]) [flags]
显示一个或多个resources的详细状态。
50000+
5万行代码练就真实本领
17年
创办于2008年老牌培训机构
1000+
合作企业
98%
就业率

联系我们

电话咨询

0532-85025005

扫码添加微信