k8s 之常用命令

news2024/10/9 15:23:13

作者:程序那点事儿 日期:2024/01/30 01:29


route

route -n

kubectl apply(不存在就创建,存在就更新,执行的文件较小)

kubectl apply -f kube-flannel.yml

kubectl apply -f nfs-storage-class.yaml

kubectl apply -f nfs-sc-demo-statefulset.yaml

kubectl create(不存就创建,存在报错,可以执行较大的文件)

kubectl create deployment nginx --image=nginx

kubectl create ns ingress-nginx

kubectl create configmap test-dir-config --from-file=test/ # 基于文件夹创建configmap,会加载该文件夹下的所有文件

kubectl create configmap spring-boot-test-yaml --from-file=application.yaml # 基于文件加载

kubectl create configmap spring-boot-test-alises-yaml --from-file=app.yaml=application.yaml # 对加载的文件重命名

kubectl create configmap test-key-value-config --from-literal=username=root --from-literal=password=admin # 以kv的方式加载

kubectl create configmap test-env-config --from-literal=JAVA_OPT_TEST='-Xmx=512 -Xmx=512' --from-literal=APP_ANAME=spring-boot-env-test

kubectl create secret generic orig-secret --from-literal=username=admin --from-literal=password=mysql123

kubectl create secret docker-registry harbor-secret --docker-username=admin --docker-password=Harbor12345 --docker-email=luliang2099@163.com --docker-server=192.168.43.106:8880

kubectl create cm test-dir-config --from-file=./test/ --dry-run -o yaml | kubectl repace -f- # 将test目录下的文件输出为一个yaml文件,并将这个yaml文件发送给k8s 实现容器的配置更新

kubectl create -f nfs-provisioner-rbac.yaml

kubectl scale

kubectl scale deploy --replicas=3 nginx # 部署3个pod(临时生效)

kubectl scale sts web --replicas=5

kubectl autoscale(HPA自动扩容)

kubectl autoscale deploy nginx-deploy --cpu-percent=20 --min=2 --max=5 # 自动扩容

kubectl expose

kubectl expose deployment nginx --port=80 --type=NodePort

kubectl delete

kubectl delete -f kube-flannel.yml

kubectl delete po kube-flannel-ds-amd64-kl6s6 -n kube-system # 删除pod

kubectl delete deploy nginx # 删除deploy会删除deploy下的所有pod

kubectl delete svc nginx # 删除service

kubectl delete sts web --cascade=false # 非级联删除(默认是级联删除)

kubectl delete secret harbor-secret

kubectl delete sa -n kube-system nfs-client-provisioner

kubectl delete role -n kube-system leader-locking-nfs-client-provisioner

kubectl delete clusterrole -n kube-system nfs-client-provisioner-runner

kubectl delete rolebinding -n kube-system leader-locking-nfs-client-provisioner

kubectl delete clusterrolebinding -n kube-system run-nfs-client-provisioner

kubectl set

kubectl set image deployment.apps/nginx nginx=nginx:1.7.9 # 更新命令

kubectl set image deployment.apps/nginx nginx=nginx:1.7.9 --record # 显示修改原因

kubectl get

kubectl get all

kubectl get ns

kubectl get nodes

kubectl get nodes --show-labels

kubectl get deploy

kubectl get deploy nginx -o yaml # 资源信息通过yaml方式输出

kubectl get replicaset

kubectl get ingress

kubectl get ds

kubectl get pods

kubectl get pods --all-namespaces

kubectl get po,rs,deploy

kubectl get cs # 组件状态 componet status 简写

kubectl get all -o wide # 查看完整信息

kubectl get configmap # configmap信息,configmap 可以简写为 cm

###

kubectl get po -o wide # 容器布署的详细信息

time kubectl get po -w # 持续监听容器状态变化,加上time会打印监听时间

### label

kubectl get po --show-labels # 显示pod的标签(默认名称空间)

kubectl get po --show-labels -n kube-system # 显示pod的标签(指定名称空间)

kubectl get po -n ingress-nginx -o wide

kubectl get po -l version=1.0.0,app=nginx # label多条件筛选,是并且关系

kubectl get po -l 'mylabel in (haha123,hehe,haha)' # 多值筛选,是或者关系

kubectl get po -l app=nginx-deploy -o wide

kubectl get po -l 'mylabel in (haha123,hehe,haha),app=nginx' # 多条件 + 多值

##

kubectl get sts

kubectl get pvc

kubectl get pv

kubectl get hpa

kubectl get ep # endpoints

##

kubectl get role -n ingress-nginx -o yaml

kubectl get clusterrole -n ingress-nginx -o yaml

kubectl describe

kubectl describe po kube-flannel-ds-44kh7 -n kube-system # 查看pod详情

kubectl describe deploy nginx # 可以在deploy看到滚动更新的过程

kubectl describe sts web

kubectl describe svc nginx-svc

kubectl describe ep nginx-svc-external

kubectl describe configmap test-dir-config

kubectl describe configmap/test-env-config

kubectl describe secret harbor-secret

kubectl edit

kubectl edit deploy -n kube-system coredns # 输出yaml详情(可以搜索查找内容)

kubectl edit po nginx-85b98978db-gv9pg # pod 不接受修改

kubectl edit secret harbor-secret

kubectl patch

kubectl patch sts web --type='json' -p='[{"op": "replace", "path": "/spec/template/spec/containers/0/image", "value": "nginx:1.9.1"}]' # 更新方式二

kubectl rollout

kubectl rollout status deployments nginx # 监听deploy更新状态

kubectl rollout history deployment.apps/nginx # 查看历史版本

kubectl rollout history deployment.apps/nginx --revision=3 # 查看指定版本详情

kubectl rollout history sts web --revision=2 # 版本详情

kubectl rollout history sts web

kubectl rollout undo deployment.apps/nginx --to-revision=3 # 回退版本

kubectl rollout pause deploy nginx # 暂停(修改时不更新)

kubectl rollout resume deploy nginx # 恢复

kubectl exec

kubectl exec -it nginx-85b98978db-gv9pg -c nginx -- cat /kubectl exec -it nginx-85b98978db-gv9pg -c nginx -- cat /usr/share/nginx/html/index.html # 到pod的nginx容器中执行一条命令

kubectl exec -it nginx-85b98978db-gv9pg -c nginx -- ls /usr/local # 查看容器中文件或目录

kubectl exec -it dns-test -- sh

kubectl exec -it empty-dir-pd -c nginx-empty-dir1 -- sh # 当一个pod有多个容器时,指定进入某个容器中

kubectl cp

kubectl cp test.txt nginx-85b98978db-gv9pg:/usr/local/ # 将本地 test.txt文件拷贝到nginx容器中

kubectl label

kubectl label po nginx-85b98978db-gv9pg mylabel=haha # 为资源添加标签(临时生效)

kubectl label po nginx-85b98978db-gv9pg mylabel=haha123 --overwrite # 覆盖已有标签

kubectl label no k8s-node1 type=mylabel # 为节点添加标签

kubectl label nodes k8s-master ingress- # 删除节点标签

kubectl run

kubectl run -it --image busybox:1.28.4 dns-test /bin/sh

ping web-0.nginx # ping sts 中的容器

nslookup web-0.nginx # 查看dns映射

kubectl replace

kubectl replace -f nginx-deploy.yaml # nginx-deploy.yaml文件替换到deployment.apps/nginx-deploy

kubectl top

kubectl top -h # 查看cpu和内存的占用情况

kubectl top po nginx-deploy-56696fbb5-mzsgg # 查看pod的资源占用情况,需要安装k8s_安装metrics-server

kubectl taint

kubectl taint no k8s-master node-role.kubernetes.io/master:NoSchedule # 添加污点

kubectl taint no k8s-node2 memory=low:NoSchedule # 添加污点

kubectl taint no k8s-master node-role.kubernetes.io/master:NoSchedule- # 删污点

kubectl logs

kubectl logs -f nginx-deploy-56696fbb5-t2fmh # 查看pod的日志

kubectl logs -f nfs-client-provisioner-845cf4584c-4gzlz # 查看制备器日志

测试脚本

while true; do wget -q -O- http://10.96.167.59 > /dev/null; done # 写一个死循环

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2199366.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SWIFT Payment

SWIFT stands for Society for Worldwide Interbank Financial Telecommunication SWIFT——环球银行金融电信协会 SWIFT Payment Useful Link ISO 20022https://www.iso20022.org/https://www.swift.com/standards/iso-20022MT and MX Equivalence Tableshttps://www2.swift…

Python验证码识别——前处理

目前不少系统的验证码做得越来越复杂,人眼都难以识别,尤其是QQ之类的验证码,想要识别,太难了。 现在有这样一个验证码: 一般的验证码识别,都是先进行前处理,然后分割,在进行识别。这…

Keysight 是德 EXR608A 实时示波器

Keysight 是德EXR608A 实时示波器 EXR608A、EXR604A EXR408A、EXR404A EXR258A、EXR254A EXR208A、EXR204A EXR108A、EXR104A EXR058A、EXR054A EXR608A Infiniium EXR 系列示波器:6 GHz,8 通道 全部 8 个通道均可提供 6 GHz 的带宽,…

NVLink 和 NVLink Switch

高速、多 GPU 通信的基础模组,助力将大型数据集更快地输入模型并在 GPU 之间快速交换数据。 文章目录 前言一、简介二、NVLink 性能三、NVLink Switch1. 通过 NVLink 通信提高 GPU 吞吐量2. NVIDIA NVLink 交换机四、NVLink Switch规格1. 通过完全连接实现非凡性能2. 功能强大…

智慧出行:数字孪生三维可视化大屏交通管控系统

智慧出行已成为现代城市发展的重要支柱,数字孪生技术在交通领域的应用不断深化。结合三维可视化技术,打造功能强大的大屏交通管控系统,将对城市交通管理带来巨大变革。该系统通过实时监测和数据分析,提供精准的交通状况显示和预测…

湖南(消费者调研)源点咨询 市场调研中关于定性调研的释义

湖南(市场洞察)源点咨询认为:定性调研是有关大量、详细信息的描述、领会和见解,而不仅仅是一种测量。它不像定量调研那么肤浅,它能提供更多有效的数据。定性调研旨在透过表面现象,超越所谓的"首要&quo…

速度白嫖:Minimax海螺上线图生视频功能

一、什么是Minimax海螺 网址:https://hailuoai.video/ Minimax海螺是一款创新的内容创作工具,专注于将静态图像转化为动态视频。它利用先进的图像处理与生成算法,帮助用户将普通图片迅速转变为引人入胜的短视频,适合社交媒体、…

Java | Leetcode java题解之第458题可怜的小猪

题目: 题解: class Solution {public int poorPigs(int buckets, int minutesToDie, int minutesToTest) {if (buckets 1) {return 0;}int[][] combinations new int[buckets 1][buckets 1];combinations[0][0] 1;int iterations minutesToTest /…

矿井人员数据集,用于目标检测,深度学习,采用txt打标签,即yolo格式,也有原文件可以自己转换。总共3500张图片的数据量,划分给训练集2446张,

矿井人员数据集,用于目标检测,深度学习,采用txt打标签,即yolo格式,也有原文件可以自己转换。总共3500张图片的数据量,划分给训练集2446张: ### 矿井人员数据集用于目标检测的详细说明 #### 1. …

尚硅谷javaSpring

尚硅谷课件: 分类:尚硅谷Spring6教程 - Lixx Blog - 李晓旭的博客 简介 Java Spring 是一个开源的、全面的企业级应用开发框架,旨在简化企业级应用的开发。Spring 框架最初由 Rod Johnson 在 2002 年发布,并随着时间的推移,它已…

Linux系统和数据库常用的命令2

Linux系统和数据库常用的命令2 1、两台Linux机器ssh免密登录 client端登录server端需要免密,只需把公钥发送到server就可,会在server端生成一个authorized_keys文件 # 108机器上[rootclient ~]# ssh-keygen -t rsa // 非对称算法 Generating public/…

大学生就业招聘:Spring Boot系统的设计与实践

5系统详细实现 5.1 用户模块的实现 5.1.1 求职信息管理 大学生就业招聘系统的用户可以管理自己的求职信息,可以对自己的求职信息添加修改删除操作。具体界面的展示如图5.1所示。 图5.1 求职信息管理界面 5.1.2 首页 用户登录可以在首页看到招聘信息展示也一些求职…

IR2110S的代替品SLM2110CG一款能提供独立的高边、低边输出驱动信号 高低边门极驱动器

SLM2110CG是一款高压、高速的功率MOSFET和IGBT驱动器,它提供独立的高边、低边输出驱动信号。采用专有的高压集成电路和锁存免疫CMOS技术,提供可靠的单芯片驱动方案。逻辑输入电平与标准CMOS或LSTTL输出兼容,最低支持3.3V逻辑。输出驱动器具有…

Linux——定时任务调度

crond 任务调度 基本介绍 快速入门 就会每隔一分钟执行上述命令 crond 时间规则 比如快速入门案例里的 */1 * * * * 表示每隔一分钟执行一次 5个*分别代表分时天月周 crond 应用案例 上图案例2的详细步骤截图如下: at 任务调度 at 定时任务就是在要求的时间只…

刷题 -哈希

面试面试经典 150 题 - 哈希 383. 赎金信 - 一个哈希表搞定 class Solution { public:bool canConstruct(string ransomNote, string magazine) {int hash[26] {0};for (auto& ch : magazine) {hash[ch - a];}for (auto& ch : ransomNote) {if (--hash[ch - a] < …

linux下创建软链接失败

最近在研究isce to stamps,在走流程的过程中,看了b站上Dr.Liu的视频和David Bakert的manual,按照manual进行了参数的设置,接着执行了make_single_reference_stack_isce命令,但是一直报错,发现这个报错还是国庆出去旅游的时候,想着在酒店把这个问题解决掉,但是每天早出晚…

Rust编程中的循环语句

【图书介绍】《Rust编程与项目实战》-CSDN博客 《Rust编程与项目实战》(朱文伟&#xff0c;李建英)【摘要 书评 试读】- 京东图书 (jd.com) Rust编程与项目实战_夏天又到了的博客-CSDN博客 6.2 for 循 环 迭代次数是确定/固定的循环称为确定循环。for 循环是一个确定循环…

Ubuntu双卡训练过程中电脑总是突然重启【解决方法】

本来以为是温度过热造成的&#xff0c;发现不是&#xff0c;因为在重启的瞬间&#xff0c;gpu温度并没有特别高。 参见视频如下&#xff1a; 双卡训练过程中gpu温度监测 然后尝试了另一种方法&#xff1a; 限制gpu显卡的功率 具体操作如下&#xff1a; 先检查当前gpu功率限…

Electron构建桌面应用程序,服务于项目的自主学习记录(持续更新...

无所畏惧地面对未知&#xff0c;并将其视为成长的机会 大纲官网快速入门1.安装node.js -- 这里推荐用nvm管理2.脚手架创建3.electron 包安装到应用的开发依赖4.创建主进程(main.js)并启动项目1.创建页面2.配置main.js3.启动项目 -- 效果 进阶 -- 基于项目场景功能使用场景一&am…

SldWorks问题 2. 矩阵相关接口使用上的失误

问题 在计算三维点在图纸&#xff08;DrawingDoc&#xff09;中的位置时&#xff0c;就是算不对&#xff0c;明明就4、5行代码&#xff0c;怎么看都是很“哇塞”的&#xff0c;毫无问题的。 但结果就是不对。 那就调试一下吧&#xff0c;调试后发现生成的矩阵很不对劲&#…