zoukankan      html  css  js  c++  java
  • k8s的常用命令(一)

    常用的kubectl命令
     
    kubectl run kubia --image=luksa/kubia --port=8080 --generator=run/v1
     
    --image 指定镜像
    --port 是告诉kubernetes 应用监听8080端口
    --generator 通常不会用到,它让kubernetes创建一个replicationController . 一般不带这个参数 ,创建的是depoly资源,deploy 在调用replicaset资源,replicaset 和replicationController很像,好像是它的升级版本有更强的selector表达能力,而且这里的--generator=run/v1 并不是创建出的rc名称是run/v1,创建出的rc就是kubia, run/v1可能是标示rc的版本吧,具体不知道,反正后面不用这个,知道有这么个东西即可
    后续学习中,得知--generator=run/v1 就是告诉kubernetes需要创建一个rc来管理pod
    如果是:kubectcl run dnsutils --image=tutum/dnsutils --generator=run-pod/v1 --command -- sleep infinity
    这里的--generator=run-pod/v1选项就是让kubectl直接创建pod,而不需要通过replicationController之类的资源来创建。
     
    kubectl get pods
    kubectl expose rc kubia --type=loadBalancer --name kubia-http
    暴露 名称为kubia的rc 为名称kubia-http 的service,并且使用loadbalnacer,会将创建kubia时 port端口8080 映射出来
     
    kubectl get service
     
    kubectl get repliactioncontrollers
     
    kubectl scale rc kubia --replicas=3 扩容为3个pod
     
    kubectl get pods -o wide 查看pod在哪个node节点上
     
    kubectl describe pod pod-id
     
     
    查看集群状态
    kubectl cluster-info
     
    使用kubectl explain 来发现可能的API对象字段,如:
    kubectl explain pods
    想查看某个对象下某个具体字段的使用方法
    kubectl explain pod.spec
     
    使用kubectl create 来创建pod
    kubectl create -f kubia-manual.yaml
     
    得到运行中pod的完整定义
    kubectl get pod kubia-manual -o yaml
    kubectl get pod kubia-manual -o json
     
    查看应用程序日志
    kubectl logs kubia-manual
    当一个pod中有多个容器时
    kubectl logs kubia-manual -c kubia
     
    在不通过service外界相与pod通信,可以使用port-forward命令将短裤转发到指定pod
    以下命令会将机器的本地端口8888转发到我们的kubia-manual pod的端口8080:
    kubectl port-forward kubia-manual 8888:8080
     
     
    在kubernetes中 标签时可以组织kubernetes所有资源。
    kubernetes 中创建出来的具体的对象都是资源。某一个资源 属于某一个资源类如 pod资源类,或者对象。
     
    查看所有pod上有什么标签
    kubectl get po --show-labels
     
    如果你想将标签作为显示列的列头可以使用-L
    kubectl get po -L env,app
     
    添加pod标签
    kubectl label po kubia-manual env=test
     
    修改pod的现有标签
    kubectl label po kubia-manual env=debug --overwrite
     
    通过标签选择器列出pod
    kubectl get po -l env=debug
     
    列出包含evn标签的pod,不管env是什么值
    kubectl get po -l env
     
    列出不含evn标签的pod
    kubectl get po -l '!env' (确保是单引号)
     
    env !=
    env in (test,debug)
    env not in (prod,devel)

  • 相关阅读:
    第十四周学习进度
    第十三周学习进度
    第十二周学习进度条
    从用户体验角度评价所使用的输入法。
    个人博客十
    数组测试 --Junit
    看了build to win之后的感想
    思考题
    数组中最大子数组之和
    使用Espresso进行UI测试
  • 原文地址:https://www.cnblogs.com/zhming26/p/11719373.html
Copyright © 2011-2022 走看看