(K8s学习笔记四)常用命令实例
2024-10-21 07:39:25
1.显示Pod的更多信息
kubectl get pod <pod-name> -o wide
kubectl get pods —show-all # 查看已经停止的Pod
2.以yaml格式显示Pod的详细信息
kubectl get pod <pod-name> -o yaml
3.以自定义列名显示Pod信息
kubectl get pod <pod-name> -o=custom-comlumns=NAME:.metadata.name,RSRC:.metdata.resourceVersion
4.基于文件的自定义列名输出
kubectl get pod <pod-name> -o=custom-comlumns-file=template.txt template.txt文件的内容为:
NAME RSRC
<metadata.name> <metadata.resourceVersion> 通过sort-by参数可将输出结果按某个字段排序
kubectl get pods --sort-by=.metadata.name
5.根据yaml配置文件,一次性创建Service和RS
kubectl create -f my-service.yaml -f my-rs.yaml 创建目录下所有的.yaml、.yml、.json自定义文件
kubectl create -f <directory>
6.查看资源对象
# 查看所有pod列表
kubectl get pods #查看RC和Service列表
kubectl get rc,service
7.显示资源对象详细信息
# 显示node的详细信息
kubectl describe nodes <node-name> # 显示Pod的详细信息
kubectl describe pods/<pod-name> # 显示由RC管理的Pod信息
kubectl describe pods <rc-name>
8.删除资源对象
# 基于pod.yaml定义的名称删除pod
kubectl delete -f pod.yaml # 删除所有包含某个Label的Pod和Service
kubectl delete pods,service -l name=<label-name> # 删除所有Pod
kubectl delete pods --all
9.执行容器命令
# 执行Pod的date命令,默认使用Pod中的第一个容器执行
kubectl exec <pod-name> date # 指定Pod中的某个容器执行date命令
kubectl exec <pod-name> -c <container-name> date # 通过bash获得Pod中某个容器的TTY,相当于登录容器
kubectl exec -it <pod-name> -c <container-name> /bin/bash
10.查看容器日志
# 查看容器输出到stdout的日志
kubectl logs <pod-name> # 跟踪查看容器的日志,相当于tail -f命令
kubectl logs -f <pod-name> -c <container-name>
11.创建或更新资源对象(如果目标资源对象不存在,则进行创建,否则进行更新)
kubectl apply -f app.yaml
12.在线编辑运行中的资源对象
# 编辑一个nginx的deployment
kubectl edit deploy nginx
13.将Pod的开放端口映射到本地
# 将集群上Pod的80端口映射到本地8000端口
kubectl port-forward --address 0.0.0.0 pod/nginx-6ccye47-bgyd 8000:80
14.在Pod和本地之间复制文件
# 把Pod上的/data复制到本地的/opt/data目录
kubectl cp nginx-6ccye47-bgyd:/data /opt/data
15.资源对象的标签设置
# 为default namespace设置testing=true
kubectl label namespace default testing=true
16.检查可用的API资源类型列表(列出所有资源对象)
kubectl api-resources
17.使用命令行插件
# 新建一个名为hello.sh可执行脚本,并使用kubectl命令执行
cat >hello.sh <<EOF
echo "hello world"
EOF chmod +x hello.sh && cp hello.sh /usr/local/binkubectl hello.sh
18.查看当前系统中已安装的插件
kubectl plugin list
最新文章
- mysql悲观锁总结和实践--转
- Birt使用总结
- C# 控制台或者winform程序开启http的监听状态
- GJM : 安装SqlServer遇到问题的解决方案 [原创]
- bootstrap学习总结-05 常用标签3
- 【AngularJS】—— 6基于AngularJS的过滤与排序
- Playmaker Input篇教程之引入的核心概念
- Word2007插入两种页码
- 常见AutoCAD病毒(acad.fas、acad.lsp)清除方法
- jquery多级手风琴插件–accordion.js
- 利用Cocoapods、SVN 创建私有库实现方案(yoowei)
- 逻辑数据库设计 - 需要ID(谈主键Id)
- table插件
- Link/cut Tree
- 给我一台全新的服务器,使用nginx+gunicorn+supervisor部署django
- RxJava系列6(从微观角度解读RxJava源码)
- tornado框架源码分析---Application类之debug参数
- ANI功能分析
- nginx高级用法汇总
- Clustering[Introduction]