美文网首页
Kubernetes-常用命令

Kubernetes-常用命令

作者: 追阳_41 | 来源:发表于2020-11-18 16:56 被阅读0次

Kubernetes 常用命令

来源于:https://www.jianshu.com/p/48188b4858b0

一、查看系统资源信息

  • 获取集群组件地址,展示集群信息
kubectl cluster-info
  • 显示控制平面组件的健康状态
kubectl get componentstatus
  • 展示支持的API resources
kubectl api-resources
  • 查看支持的API versions
kubectl api-versions

二、命令优化

  • 快速切换到不同的名称空间,可以设置别名如下

    alias kcd='kubectl config set-context $(kubectl config current context) --namespace'
    

    然后,可以使用 kcd some-namespace 在名称空间进行切换

  • 创建别名,在~/.bashrc或类似的文件中添加alias k=kubectl,就可以使用短别名了

  • kubectl配置tab补全
    首先安装包bashcompletion来启用bash中的tab命令补全

    apt install bashcompletion
    source <(kubectl completion bash)
    

    此时,tab命令行补全只在使用完整的kubectl命令时才会有作用,要让短命令起到作用,可以进行修改

    source <(kubectl completion bash | sed s/kubectl/k/g)
    

    同时,将source <(kubectl completion bash | sed s/kubectl/k/g)添加到~/.bashrc或类似的文件中

三、资源创建类

1. 首次创建

  • 使用kubectl run快速启动Pod应用

    kubectl run nginx --image=nginx:latest --port=80
    
  • 创建deploymet

    kubectl create deployment nginx --image=nginx=nginx:latest
    
  • 暴露服务

    kubectl expose deployment nginx --port=80
    
  • 使用kubectl explain查看API对象字段,在创建manifest时非常有用

    kubectl explain pod
    kubectl explain pod.spec
    

四. 运维管理

1. 升降级

  • 更新image

    kubectl set image deployment/nginx nginx=nginx:latest --record=true
    

    确保在所有的升级操作时使用了--record=true选项,这个选项会记录历史版本号, 在之后的操作中非常有用。

  • 查看部署状态

    kubectl rollout status deployment nginx
    
  • 显示deployment的滚动升级历史

    kubectl rollout history deployment nginx
    
  • 回滚上一个版本

    kubectl rollout undo deployment nginx
    
  • 回滚到指定版本

    kubectl rollout undo deployment nginx --to-revision=3
    

2. 异常调试

  • 查看pod信息,主要关注READYSTATUS字段

    kubectl get pod
    
  • 查看pod日志,主要检查业务输出日志

    kubectl logs -f <pod_name> -c <container_name>
    
  • 查看描述信息

    kubectl describe pod <pod_name>
    
  • 在运行的容器中执行启动一个shell

    kubectl exec -it <pod_name> -c <container_name> -- sh
    
  • 通过端口转发连接到pod,在验证业务端口是否正常工作时非常有用

    kubectl port-forward <pod_name> <local_port>:<pod_port>
    

3. 在多集群或多命名空间下使用kubectl

  • 添加或修改一个集群

    kubectl config set-cluster my-other-cluster --server=https://k8s.example.com:6443 --certificate-authority=path/to/the/cafile
    

    这会添加一个API服务器地址位于https://k8s.example.com:6443,名为my-other-cluster的集群。

  • 添加或修改用户凭据

    kubectl config set-credentials foo --username=foo --password=pass
    
  • 若要使用基于token的认证方式,可使用如下命令

    kubectl config set-credentials foo --token=mysecrettokenXFDJIQ1234
    
  • 将集群和用户凭据联系到一起
    以下命令用于创建新的上下文,并将集群与创建的用户联系在一起

    kubectl config set-context some-context --cluster=my-other-cluster --user=foo --namespace=bar
    
  • 获取当前上下文的名称

    kubectl config current-context
    
  • 修改指定上下文默认的命名空间

    kubectl config set-context minikube --namespace=another-namespace
    
  • 切换上下文到my-other-context

    kubectl config use-context my-other-context
    
  • 列出kubeconfig文件中定义的所有上下文

    kubectl config get-contexts
    
  • 列出kubeconfig文件中定义的集群

    kubectl config get-clusters
    
  • 删除kubeconfig文件中定义的上下文和集群

    kubectl config delete-context my-unused-context
    kubectl config delete-cluster my-old-cluster
    

相关文章

  • Kubernetes-常用命令

    Kubernetes 常用命令 来源于:https://www.jianshu.com/p/48188b4858b...

  • Kubernetes 部署

    更新链接: https://github.com/mushuanli/wsue/wiki/Kubernetes-%...

  • Kubernetes-常用命令总结(二)

    continue to update ... ... 命令行中的资源缩写问题 资源全名称缩写namespacens...

  • Kubernetes-在Kubernetes集群上搭建Hadoo

    准备工作 Hadoop镜像,到docker hub上拉取 Kubernetes集群参考:Kubernetes-离线...

  • Kubernetes-重要概念

    感谢作者提供的重要概念的汇总,很是有收益 Kubernetes-重要概念[https://www.hi-linux...

  • 其他

    Git常用命令mac常用命令Linux 常用命令汇总Linux 常用命令0Linux 常用命令1--ls命令

  • Kubernetes-存活探针

    1 介绍 1.1 概念   存活探针(liveness probe):检查容器是否还在运行,可以为pod中的每个容...

  • Kubernetes-命名空间

    命名空间 命名空间介绍   K8s命名空间就是为对象名称提供一个作用域,此时不会将所有资源都放在同一个命名空间,而...

  • 【转】kubernetes-部署

    配置环境说明: 服务器配置说明 hostnameuseosiptest10DNS+docker_hub+maste...

  • kubernetes-学习笔记

    学习入门网址:https://kubernetes.io/docs/tutorials/online-traini...

网友评论

      本文标题:Kubernetes-常用命令

      本文链接:https://www.haomeiwen.com/subject/dqtciktx.html