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
相关推荐
颜淡慕潇1 小时前
【K8S系列】在 K8S 中使用 Values 文件定制不同环境下的应用配置
云原生·容器·kubernetes·环境配置
旦沐已成舟1 小时前
K8S-Pod的环境变量,重启策略,数据持久化,资源限制
java·docker·kubernetes
github_czy1 小时前
(k8s)k8s部署mysql与redis(无坑版)
redis·容器·kubernetes
超级阿飞1 小时前
利用Kubespray安装生产环境的k8s集群-实施篇
elasticsearch·容器·kubernetes
milk_yan5 小时前
Docker集成onlyoffice实现预览功能
前端·笔记·docker
来恩10038 小时前
Kubernetes学习指南与资料分享
云原生·容器·kubernetes
encoding-console9 小时前
docker安装consul并启动的详细步骤
docker·容器·consul
m0_7482299910 小时前
从零到上线:Node.js 项目的完整部署流程(包含 Docker 和 CICD)
docker·容器·node.js
shelby_loo10 小时前
Azure学生订阅上手实操:快速搭建Docker+WordPress环境
microsoft·docker·azure
小诺大人11 小时前
Docker 安装 elk(elasticsearch、logstash、kibana)、ES安装ik分词器
elk·elasticsearch·docker