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
相关推荐
猫吃了源码4 小时前
k9s简介和安装
linux·docker·kubernetes
云原生指北5 小时前
Docker Sandboxes 上手:从安装到第一次跑 Agent
运维·docker·容器
ziyun6668886 小时前
Docker 容器化 Web 服务架构搭建与自动化运维项目
运维·docker·架构
heimeiyingwang8 小时前
【架构实战】Kubernetes故障排查全景图:从Pod异常到集群雪崩的诊断手册
容器·架构·kubernetes
骇客野人8 小时前
Docker Compose 部署多个独立 Jar 服务完整实操步骤
docker·容器·jar
AAA@峥8 小时前
K8s 资源管控:ResourceQuota 与 LimitRange 机制详解与实战
云原生·容器·kubernetes
daoihfoaf8 小时前
太原助听器品质甄选
容器
秦渝兴9 小时前
Ansible 自动化部署 K8s 三节点集群(完整教程)
kubernetes·自动化·ansible
云川之下10 小时前
【k8s】Docker inspect 命令
docker·容器·kubernetes
猫吃了源码11 小时前
CentOS7使用Kubeadm安装部署K8s(Kubernetes)最新稳定版本1.26.x
云原生·容器·kubernetes