一. 设置kubectl输入命令自动补全

依次执行一下命令:

yum install -y bash-completion
source /usr/share/bash-completion/bash_completion
source <(kubectl completion bash)
echo "source <(kubectl completion bash)" >> ~/.bashrc

二. 名称简写

po (pod)
ns (命名空间namespace)
instance (实例)
svc (service服务): 定义一个pod的逻辑分组,一种可以访问他们的策略(微服务)。
cm (configMap): 存储全局配置变量的,将分布式系统中不同模块的环境变量统一到一个对象中管理。
ds (deamonSet):在每台计算机节点上运行一个守护进程(如日志采集等),有时pod处于pending可能是因为某个deamonSet没起来。
deploy (deployment)

三. 常用命令

kubectl获取命令

kubectl get node 获取节点信息
kubectl get pods -o wide 获取pod详细信息
kubectl get ns 获取所有namespace
bukectl get deployment 获取deployment信息
kubectl get svc 查看service信息
kubectl describe svc 查看service信息
kubectl get svc -n kube-system 查看service的ip地址
kubectl -n {$namespace} get pods 在指定的namespace下获取资源
kebuctl logs nginx 获取nginx pod的日志信息

kubectl创建pod

kubectl run nginx-deploy --image=nginx --port=80 --replicas=1 --dry-run=true

nginx-deploy 表示deployment的名称
--images 表示镜像的地址
--port 表示pod暴露的端口
--replicas 表示副本的个数
--dry-run 表示测试,不真正执行命令(测试命令是否正确),去掉该参数即真正执行命令

kubectl创建service

kubectl expose deployment nginx-deploy --name=nginx --port=80 --target-port=80 --protocol=TCP --type=ClusterIP

deployment nginx-deploy 表示导出哪个deployment到service
--name 创建service的名称
--port 表示service开放的端口
--target-port 表示pod的远端端口
--protocol 表示传输方式(tcp/udp)
--type 表示该service展现的范围(ClusterIP表示在集群内部使用)

kubectl创建交互式pod

kubectl run client --image=busybox --restart=Never --replicas=1 -it

创建一个交互式dns服务器的pod,当退出时该pod删除(--restart=Never)

kubectl升级pod

kubectl set image deployment nginx-deploy nginx-deploy=nginx:20190424

升级deployment为nginx-deploy的pod, 所使用的的镜像是nginx:20190424

kubectl rollout status deployment nginx-deploy

显示deployment为nginx-deploy的跟新过程.属于轮询更新,一个个更新的

kubectl rollout undo deployment nginx-deploy

如不指明nginx-deploy=nginx:20190424,那么就是回滚到上一个版本

kubectl修改配置

kubectl edit svc nginx

修改service的nginx的type类型为NodePort

kubectl针对资源清单的简单命令

kubectl create -f pod-demo.yaml 创建一个pod-demo的资源清单
bukectl descride pod pod-demo 查看pod-demo创建详情过程
kubectl logs pod-demo nginx-deploy 查看pod-demo的pod中的nginx-deploy容器日志
kubectl exec -it pod-demo -c nginx-deploy --/bin/bash 交互式进入nginx-deploy容器进行操作
kubectl delete pod pod-demo 删除pod-demo的pod
kubectl delete -f pod-demo.yaml 删除pod-demo的pod

K8s的kubectl常用命令的更多相关文章

  1. k8s记录-kubectl常用命令

    kubectl kubectl annotate – 更新资源的注解.kubectl api-versions – 以“组/版本”的格式输出服务端支持的API版本.kubectl apply – 通过 ...

  2. Kubernetes,kubectl常用命令详解

    kubectl概述 祭出一张图,转载至 kubernetes-handbook/kubectl命令概述 ,可以对命令族有个整体的概念. 环境准备 允许master节点部署pod,使用命令如下: kub ...

  3. k8s~kubectl常用命令

    查看所有 pod 列表, -n 后跟 namespace, 查看指定的命名空间 kubectl get pod kubectl get pod -n kube kubectl get pod -o w ...

  4. k8s记录-kubectl常用

    kubectl create/delete -f xxx.yml kubectl get all -A kubectl get pods -o wide kubectl describe pods p ...

  5. kubectl常用命令汇总

    #查看k8s的所有node节点 kubectl get node #查看ns的pod kubectl get pod --all-namespaces -o wide kubectl get pod ...

  6. kubectl 常用命令总结

    # 查看所有 pod 列表, -n 后跟 namespace, 查看指定的命名空间 kubectl get pod kubectl get pod -n kube # 查看 RC 和 service ...

  7. kubectl常用命令

    command kubectl kubectl 输出格式 显示Pod的更多信息 kubectl get pod <pod-name> -o wide 以yaml格式显示Pod的详细信息 k ...

  8. Kubernetes之kubectl常用命令

    最近项目有用到Kubernetes作集群配置,所以学习下相关命令,记录下以备下次使用... kubectl help 显示具体的用法 kubectl controls the Kubernetes c ...

  9. kubectl 常用命令一

    1.kubectl logs <options>  <PodName> -f -p, --previous --since= No. --since-time= --tail ...

随机推荐

  1. mysql被收购 用mariadb

    ~]# systemctl start mysql.service 要启动MySQL数据库是却是这样的提示 Failed to start mysqld.service: Unit not found ...

  2. js中的时间显示

    var approveTime; approveTime=new Date(da[i].approveTime).toLocaleDateString(); 结果是 xxxx年xx月xx日

  3. Oracle中将密码有效期由默认的180天修改成“无限制”

    将密码有效期由默认的180天修改成“无限制”: 在系统管理员下执行如下语句即可 ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED 修改之 ...

  4. HDU2795线段树入门 简单查询和修改

    http://acm.hdu.edu.cn/showproblem.php?pid=2795 #include<iostream> using namespace std; ; int h ...

  5. ELK(elasticsearch+logstash+kibana)入门到熟练-从0开始搭建日志分析系统教程

    #此文篇幅较长,涵盖了elk从搭建到运行的知识,看此文档,你需要会点linux,还要看得懂点正则表达式,还有一个聪明的大脑,如果你没有漏掉步骤的话,还搭建不起来elk,你来打我. ELK使用elast ...

  6. [实战]扩展一个定制的sentinel JdbcDataSource

    Sentinel是今年阿里开源的高可用防护的流量管理框架. git地址:https://github.com/alibaba/Sentinel wiki:https://github.com/alib ...

  7. LVS集群

    集群: 将许多小的,性能较低的服务器做成一个大的性能高的超级服务器 集群分为负载均衡集群,高可用集群,高性能运算集群 LVS体系结构与工作原理描述 LVS集群负载均衡器接受服务的所有入站客户端计算机请 ...

  8. 9Patch图

    NinePatch是一种很有用的PNG图片格式,它可以在特定区域随文字大小进行缩放. - 上边线控制水平拉伸- 左边线控制竖直拉伸- 右边线和下边线控制内容区域 如下: 背景图片的中间区域会随着文字的 ...

  9. win10自定义右键新建文件

    新建.reg文件,如添加py文件 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.py\ShellNew] "NullFil ...

  10. jmeter之吞吐量控制器

    比如说有一种场景是,10个并发里,有2个事操作业务A,有8个是操作业务B,要模拟这种业务场景,则可以通过吞吐量控制器来模拟 目录 1.用法 2.举例 1.用法 第一种:设置比例控制 选择percent ...