kubectl使用方法

run

描述:

创建并运行一个或多个容器镜像。

创建一个deployment 或job 来管理容器

语法:

$ run NAME --image=image [–env=“key=value”] [–port=port] [–replicas=replicas] [–dry-run=bool] [–overrides=inline-json] [–command] – [COMMAND] [args…]

示例:

#启动nginx实例,设置副本数1,暴露容器端口 5701

kubectl run my-nginx --image=nginx --replicas=1 --port=80

create

描述:

创建新的资源对象,如果再次运行该命令,则会抛出错误,因为资源名称在名称空间中应该是唯一的,支持JSON和YAML格式的文件。

语法:

$ create -f FILENAME

示例:

kubectl create -f docker-registry.yaml

常用的资源提供了简易创建的方法:

kubectl create <资源类型> <资源名>

例如:

创建新的命名空间

kubectl create ns

apply
描述:

对资源进行配置。如果资源不在那里,那么它将被创建。kubectl apply命令可以第二次运行。

$ apply -f FILENAME

示例:

kubectl apply -f docker-registry.yaml

get
描述:

获取列出一个或多个资源的信息。

示例:

列出所有运行的Pod信息

kubectl get pods

列出所有运行的Pod更详细的信息

kubectl get pods -o wide

列出指定资源信息

kubectl get deployment

列出资源详细的信息

kubectl get deployment -o wide

列出所有命名空间下的 pod

kubectl get pods --all-namespaces

列出命名空间下的所有service

ubectl get services

列出所有不同的资源对象。

kubectl get all

查看集群命名空间

kubectl get ns

查看secret列表

kubectl get secret

查看 endpoint列表

kubectl get endpoints

查看各组件信息

kubectl get componentstatuses

logs
描述:

输出pod中一个容器的日志。

示例:

查看指定pod的日志

kubectl logs <pod_name>

类似tail -f的方式查看(tail -f 实时查看日志文件 tail -f 日志文件log)

kubectl logs -f <pod_name>

查看指定pod中指定容器的日志

kubectl logs <pod_name> -c <container_name>

一次性查看指定pod中指定容器的日志

kubectl logs <pod_name> -c <container_name> -n namespace

describe
描述:

输出指定资源的详细信息

示例:

显示node的详细信息

kubectl describe nodes

kubectl describe node

显示pod的详细信息

kubectl describe pods

kubectl describe pod

delete
描述:

按文件名、stdin、资源和名称或按资源和标签选择器删除资源

示例:

删除指定的pod

kubectl delete pod

删除指定的deployment

kubectl delete deployment

使用xxx.yaml中指定的资源类型和名称删除pod

kubectl delete -f xxx.yaml

强制删除 Pod

kubectl delete pods --grace-period=0 --force

创建/删除的命名空间

创建

kubectl create namespace

删除

kubectl delete namespace

允许/禁止master节点部署pod

允许master节点部署pod

kubectl taint nodes --all node-role.kubernetes.io/master-

禁止master部署pod

kubectl taint nodes master node-role.kubernetes.io/master=true:NoSchedule

进入容器
kubectl exec -ti -n – /bin/sh

污点
查看:

kubectl describe node |grep Taints

设置:

kubectl taint node [node] key=value[effect]

 其中[effect] 可取值: [ NoSchedule | PreferNoSchedule | NoExecute ]

  NoSchedule: 一定不能被调度

  PreferNoSchedule: 尽量不要调度

  NoExecute: 不仅不会调度, 还会驱逐Node上已有的Pod

kubectl taint node node1 key1=value1:NoSchedule

kubectl taint node node1 key1=value1:NoExecute

kubectl taint node node1 key2=value2:NoSchedule

删除:

kubectl taint node node1 key1:NoSchedule- # 这里的key可以不用指定value

kubectl taint node node1 key1:NoExecute-

kubectl taint node node1 key2:NoSchedule-

kubectl taint node node1 key1- # 删除指定key所有的effect

内存查看(先安装Heapster)

kubectl top pods -n

kubectl top nodes

kubectl exec examples
kubeconfig with kubectl config command
kubectl cheat sheet

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值