kuberctl工具汇总

发布于:2024-10-13 ⋅ 阅读:(14) ⋅ 点赞:(0)

kuberctl工具的使用

基本操作

  • 查看帮助
    • 里面有个文档,可以看详细的内容
kubectl --help
  • 查看pod或者deployment信息
<!-- 获取 部署配置列表 -->
kubectl get deployment -n 命名空间

<!-- 获取pod列表 -->
kubectl get pod -n 命名空间
  • 删除pod
    • 由于有deployment, 删除pod会导致pod重新启动
kubectl delete pod <pod名> -n <命名空间>
  • 在线修改配置
 kubectl edit deployment/<deployment名> -o yaml --save-config -n namespace
  • 删除deployment
    • 会将 deployment 与 pod 全都删除
kubectl delete deployment <deployment名> -n <命名空间>
  • 获取详细配置信息
kubectl get deployment dsers-notify-consumer-v1 -o yaml -n dsers-test
  • 应用配置
kubectl apply -f components.yaml
  • 查看node 信息
kubectl get node
  • 获取k8s 所有资源
    • 字段:资源名、缩写、组、是否支持命名空间、资源名称
kubectl api-resources
  • 查看master 组件
kubectl get cs
  • 查看Apiserver代理的URL
kubectl cluster-info
  • 查看K8S集群详细信息
kubectl cluster-info dump
  • 查看资源信息
kubectl describe <资源> <主机名称>
// 查看 ali-zb-dsers-acktest-sys-10.16.21.239 这个node的信息
kubectl describe node ali-zb-dsers-acktest-sys-10.16.21.239
  • 日志查询方法
<!-- 查看日志 -->
kubectl logs pod_name -n name_space
<!-- 实时打印 -->
kubectl logs -f pod_name -n name_space
<!-- pod含有多个容器 -->
kubectl logs pod_name -c nginx
<!-- 使用标签 -->
kubectl logs  -l k8s-app=kube-dns -n kube-system
<!-- 追加到文件中 -->
kubectl logs calico-node-frr2c -n kube-system | grep ERROR > /root/2.txt
<!-- 查看最新 n 行 -->
kubectl logs --tail=200 -n dsers-test open-app-banner-consumer-v1-6db7fddb56-qmwtk
<!-- 查看最新两小时的 -->
kubectl logs --since=2h  -n dsers-test open-app-banner-consumer-v1-6db7fddb56-qmwtk
  • 常用命令
                                                                kubectl管理命令汇总
         类型      命令                                                描述
          基础命令 create 通过文件名或标准输入创建资源
expose 为Deployment、Pod创建Service
run 在集群中运行一个特定的镜像
set 在对象上设置特定的功能
explain 文档参考资料
get 显示一个或多个资源
edit 使用系统编辑器编辑一个资源。
delete 通过文件名、标准输入、资源名称或标签选择器来删除资源。
          部署命令 rollout 管理Deployment,Daemonset资源的发布(例如状态、发布记录、回滚等)
rolling-update 滚动升级,仅限ReplicationController
scale 对Deployment、ReplicaSet、RC或Job资源扩容或缩容Pod数量
autoscale 为Deploy,RS,RC配置自动伸缩规则(依赖metrics-server和hpa)
       集群管理命令 certificate 修改证书资源
cluster-info 显示集群信息
top 查看资源利用率(依赖metrics-server)
cordon 标记节点不可调度
uncordon 标记节点可调度
drain 驱逐节点上的应用,准备下线维护
taint 修改节点taint标记
  故障诊断和调试命令 describe 显示资源详细信息
logs 查看Pod内容器日志,如果Pod有多个容器,-c参数指定容器名称
attach 附加到Pod内的一个容器
exec 在容器内执行命令
port-forward 为Pod创建本地端口映
proxy 为KubernetesAPIserver创建代理
cp 拷贝文件或目录到容器中,或者从容器内向外拷贝
           高级命令 apply 从文件名或标准输入对资源创建/更新
patch 使用补丁方式修改、更新资源的某些字段
replace 从文件名或标准输入替换一个资源
convert 在不同API版本之间转换对象定义
           设置命令 label 给资源设置、更新标签
annotate 给资源设置、更新注解
completion kubectl工具自动补全,source<(kubectlcompletionbash)(依赖软件包bash-completion)
           其他命令 api-resources 查看所有资源
api-versions 打印受支持的API版本
config 修改kubeconfig文件(用于访问API,比如配置认证信息)
help 所有命令帮助
version 查看kubectl和k8s版本
  • 常用操作
<!-- 修改pod数 -->
kubectl scale deployment my-deployment --replicas=3
<!-- 重启pods -->
kubectl rollout restart deployment <deployment_name> -n <namespace>