k8s-第二节-常用操作

k8s命令行常用操作

k8s命令行 操作对象时都要前面声明操作对象类型

sh 复制代码
kubectl get 
kubectl describe    
kubectl delete 
kubectl edit 
kubectl logs 
kubectl exec 
kubectl port-forward 端口转发将pod 端口映射出来
kubectl cp 本地文件路径:容器文件路径
kubectl apply -f 文件路径
sh 复制代码
# 部署应用
kubectl apply -f app.yaml
# 查看 deployment
kubectl get deployment
# 查看 pod
kubectl get pod -o wide
# 查看 pod 详情
kubectl describe pod pod-name
# 查看 log
kubectl logs pod-name
# 进入 Pod 容器终端, -c container-name 可以指定进入哪个容器。
kubectl exec -it pod-name -- bash
# 伸缩扩展副本
kubectl scale deployment test-k8s --replicas=5
# 把集群内端口映射到节点
kubectl port-forward pod-name 8090:8080
# 查看历史
kubectl rollout history deployment test-k8s
# 回到上个版本
kubectl rollout undo deployment test-k8s
# 回到指定版本
kubectl rollout undo deployment test-k8s --to-revision=2
# 删除部署
kubectl delete deployment test-k8s
# 删除指定文件的部署
kubectl delete -f app.yaml
sh 复制代码
# 查看全部
kubectl get all
# 重新部署
kubectl rollout restart deployment test-k8s

# 命令修改镜像,--record 表示把这个命令记录到操作历史中
kubectl set image deployment test-k8s test-k8s=ccr.ccs.tencentyun.com/k8s-tutorial/test-k8s:v2-with-error --record

# 暂停运行,暂停后,对 deployment 的修改不会立刻生效,恢复后才应用设置
kubectl rollout pause deployment test-k8s
# 恢复
kubectl rollout resume deployment test-k8s

# 查看deployment以yaml格式并输出到文件
kubectl get deployment test-k8s -o yaml >> app2.yaml
# 删除全部资源
kubectl delete all --all

记录容易忘记的

sh 复制代码
kubectl get cs 查看主节点

查看方式 -o yaml wide 

-o=custom-columns=<spec>	根据自定义列名进行输出,以逗号分隔
-o=custom-colimns-file=<filename>	从文件中获取自定义列名进行输出
-o=json	以JSON格式显示结果
-o=jsonpath=<template>	输出jsonpath表达式定义的字段信息
-o=jsonpath-file=<filename>	输出jsonpath表达式定义的字段信息,来源于文件
-o=name	仅输出资源对象的名称
-o=wide	输出额外信息。对于Pod,将输出Pod所在的Node名
-o=yaml	以yaml格式显示结果

修改副本数量

shell 复制代码
# 只能修改deployment或数量,不能直接修改pod的副本数量
kubectl scale deployment <deployment---name> --replicas=4

端口转发

shell 复制代码
# 查看pod端口
kubectl describe pod 

# 端口转发
kubectl port-forward <pod-name> 8080:80 --address <0.0.0.0监听地址>

版本操作

sh 复制代码
# 查看历史
kubectl rollout history deployment test-k8s
# 回到上个版本
kubectl rollout undo deployment test-k8s
# 回到指定版本
kubectl rollout undo deployment test-k8s --to-revision=2

# 重新部署
kubectl rollout restart deployment test-k8s

# 命令修改镜像,--record 表示把这个命令记录到rollout操作历史中
kubectl set image deployment <deployment-name> <deployment-name=image_link> --record

# 暂停运行,暂停后,对 deployment 的修改不会立刻生效,恢复后才应用设置
kubectl rollout pause deployment test-k8s
# 恢复
kubectl rollout resume deployment test-k8s
相关推荐
slient_love32 分钟前
n8n部署安装(docker)、支持Code in Python (Native)节点
python·docker·n8n
jessezappy2 小时前
记录:老电脑安装 Docker 4.40 不支持 WSL 2 时这样处理
docker·容器·wsl·硬件不支持·i5-3470
人生匆匆12 小时前
k8s通过域名访问 StatefulSet的pod
云原生·容器·kubernetes
赵文宇(温玉)12 小时前
免费|不限速|不限流量|多架构|容器镜像服务---第1批同步:Docker官方维护的143个library镜像仓库
docker·容器·架构
寂寞旅行13 小时前
k8s实现多人同时使用pod
云原生·容器·kubernetes
工具罗某人14 小时前
docker快速部署redis
redis·docker·容器
杨浦老苏15 小时前
轻量级自托管仪表盘Dashlet
docker·群晖·导航
工具罗某人15 小时前
docker快速部署minio
java·nginx·docker
三不原则16 小时前
实战:Docker+K8s 部署 MNIST 模型,实现 API 调用功能
docker·容器·kubernetes
zhanjixun17 小时前
Spring Boot Maven项目构建Docker镜像
spring boot·docker·maven