您当前的位置: 首页 > 

杨林伟

暂无认证

  • 3浏览

    0关注

    3337博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

kubectl 命令整理(持续更新中)

杨林伟 发布时间:2022-05-11 15:06:21 ,浏览量:3

文章目录
  • 引言
  • 1. 查询命名空间
  • 2. 查询命名空间下的内容
  • 3. yaml操作
    • 3.1 yaml查询
    • 3.2 yaml编辑
    • 3.3 yaml删除
  • 4. 进入容器查看
  • 5. 查询日志
  • 6. 查询节点

引言

简单了解常见的查询命令格式: kubectl get [-o wide | json | yaml] [-n namespace]

获取资源的相关信息,-n指定命令空间,-o指定输出格式

resource可以是具体资源名称,如pod nginx -xxx; 或者all (仅展示几种核心资源,并不完整)

  • –all-namespaces 或-A :表示显示所有命令空间,
  • –show-labels :显示所有标签
  • -l app:仅显示标签为app的资源
  • -l app=nginx:仅显示包含app标签, 且值为nginx的资源
1. 查询命名空间
kubfectl get namespace
2. 查询命名空间下的内容

查询命名空间下的pods:

kubectl get pods -n kubesphere-monitoring-system

查询命名空间下的service:

kubectl get service -n kubesphere-monitoring-system
或
kubectl get svc -n kubesphere-monitoring-system

查询命名空间下的configmap(在dashboard也可以看到):

kubectl get configmap -n kubesphere-monitoring-system

查询命名空间下的secret(比较隐私的配置,在dashboard也可以看到):

kubectl get secret -n kubesphere-monitoring-system

查询命名空间下特定类型的内容:

## 获取prometheus内容
kubectl get Prometheus -n kubesphere-monitoring-system
## 获取prometheus规则内容
kubectl get PrometheusRule -n kubesphere-monitoring-system
3. yaml操作 3.1 yaml查询

接着第二步,如果要获取特定查询的内容,直接使用"/"即可:

kubectl get secret/想要查询的内容 -n kubesphere-monitoring-system

后缀加上 -o yaml就可以查询yaml里面的内容,如下:

kubectl get secret/alertmanager-main -n kubesphere-monitoring-system -o yaml

同时也可以导出到本地文件,使用指定符">",然后下载直接使用记事本打开即可查看:

kubectl get secret/alertmanager-main -n kubesphere-monitoring-system -o yaml > xxx.yaml
3.2 yaml编辑

从3.1步骤可以知道导出yaml进行编辑,编辑之后上传,然后使用apply命令,即可更新内容:

kubectl apply -f xxx.yaml

也可以直接编辑文件(后缀可以不加“-o yaml”)

kubectl edit secret/alertmanager-main -n kubesphere-monitoring-system

如果要更新指定指定字段的yaml内容:

kubectl create secret alertmanager-main --from-file=alertmanager.yaml=xxxx.yaml

如果要删除某个字段,直接定位到行,直接连续输入如下命令即可删除整行:

dd

如果要定位到最后一行,直接Shift+G即可。

一般edit之后会自动重启,如果不放心,可以使用重启命令(直接删除节点):

kubectl delete pod alertmanager-main-0  -n kubesphere-monitoring-system
3.3 yaml删除

大致如下,delete后跟指定的类型(如pod/nginx):

kubectl delete PrometheusRule/disk-free-rules -n  kubesphere-monitoring-system
4. 进入容器查看

命令如下,直接进入节点查看(prometheus-k8s-0是你想要进入的节点,跟docker有点像):

kubectl exec -it prometheus-k8s-0 /bin/sh -n kubesphere-monitoring-system
5. 查询日志

查询日志命令如下:

kubectl logs -f --tail 200 pod名称 

如果是多副本,后面可能要求跟上指定的容器,命令如下:

kubectl logs -f --tail 200 pod名称 -c 提示的容器名

查看事件日志:

kubectl describe pod/pod名称
6. 查询节点

看 pod 在哪个节点:

kubectl get pod -o wide
关注
打赏
1662376985
查看更多评论
立即登录/注册

微信扫码登录

0.1929s