• Kubernetes 集群部署(5) kubectl 常用命令


        经过前面的4篇文章, kubernetes 集群已经部署好了,下面通过一些命令,了解一下对 kubernetes 的操作。

    1. 创建 nginx 的 pod:  kubectl run nginx --image=nginx --replicas=3

    2. 查看 pod:  kubectl get pod

    3. 删除一个 pod: kubectl delete nginx-7cdbd8cdc9-5dxlc

    删除后查看,发现还是3个,这是因为上面指定了 3 个副本,所以 kubenetes 会一直保证有 3 个。删掉一个时,会自动再建一个。

    4. 想要彻底删除,可以运行:  kubectl delete deployment nginx

    5. 重新创建 pod 后,状态一直是 ContainerCreating,使用下面的命令查看:

    kubectl describe pod nginx

    发现下面这一段

    这个地址是在前面 kubelet.conf 文件中配置,看的教程上说,默认是使用 gcr.io/google_containers/pause-amd64:3.0, 如果不配这个的话,会拉不到镜像。可是我配了这个地址,还是拉不到。可以通过以下方法解决(在 Node 上运行):

     6. 把 Pod 中 nginx 的端口暴露出来

    kubectl expose deployment nginx --port=88 --target-port=80 --type=NodePort

    7. 查看生成的服务:  kubectl get services

     8. 删除 service: kubectl delete service nginx

    9. 给一个 node 打标签:   kubectl label node k8s-node1 disktype=ssd   (注:这里的k8s-node1 是某个 node 的名称)

        查看node 的label:   kubectl get node --show-labels

        给 node 打上标签后,就可以指定 Pod 部署到具有某个标签的 node 上。

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: nginx-deployment
    spec:
      replicas: 2
      template:
        metadata:
          labels:
            app: web-nginx
        spec:
          containers:
          - name: nginx
            image: nginx:1.7.9
          nodeSelector:
            disktype: ssd

    删除标签:  kubectl label node k8s-node1 disktype-   (注: - 就是删除的意思)

    10. 查看有哪些 api-version:  kubectl api-versions

  • 相关阅读:
    内存对齐
    两篇很好的EPG相关文章
    探索Linux通用SCSI驱动器
    Eclipse如何打开Android工程
    android应用程序源码结构分析
    传智播客学习之Android运行原理 (转)
    AndroidManifest.xml文件详解
    利用Java泛型实现简单的泛型方法
    二分查找之Java实现
    STM32F10x的启动汇编分析
  • 原文地址:https://www.cnblogs.com/langfanyun/p/10562108.html
Copyright © 2020-2023  润新知