kubectl命令

kubenetes部署服务的流程

以部署一个nginx服务来说明kubernetes系统各个组件调用关系:

1. 首先要明确,一旦kubernetes环境启动之后,master和node都会将自身的信息存储到etcd数据库中

2. 一个nginx服务的安装请求会首先被发送到master节点的apiServer组件

3. apiServer组件会调用scheduler组件来决定到底应该把这个服务安装到哪个node节点上

在此时,它会从etcd中读取各个node节点的信息,然后按照一定的算法进行选择,并将结果告知 apiServer

4. apiServer调用controller-manager去调度Node节点安装nginx服务

5. kubelet接收到指令后,会通知docker,然后由docker来启动一个nginx的pod

pod是kubernetes的最小操作单元,容器必须跑在pod中至此,

6. 一个nginx服务就运行了,如果需要访问nginx,就需要通过kube-proxy来对pod产生访问的代理这样,外界用户就可以访问集群中的nginx服务了

常用pod资源

pod的6种状态

pending:(资源不足,或者节点存在pod不能容忍的污点)

terminating:(磁盘空间不足,查看根目录资源)

crashloopbackof:(pod反复拉起后退出,一般为系统配置的问题,内存资源不足,系统oom,cgroup oom)

oomkilled:(节点内存不足或启动是有内存限制)

evicted:(磁盘空间不足)

init:(初始化未完成,通常为找不到可以调度的资源)

 查看kubectl版本

kubectl version    #查看当前kubelet的版本

查看kubectl的帮助手册

kubectl help

查看当前kubectl的api的资源

kubectl api-resources

创建pod

kubectl apply -f pod.yaml

get 查询对应资源的pod

1.kubectl get all -o wide    查看所有pod的详细信息-o wide:    可以查看详细的信息,例如将pod调度到了那个节点2.kubectl get node    查看当前节点的状态kubectl get node  -o wide    查看调度节点具体的信息3.kubectl get node --show-labels    查看节点上的标签

kubectl 缩容

kubectl scale rs pc-replicaset --replicas=2 -n dev

kubectl 删除pod

kubectl delete rs pc-replicaset -n dev

给pod打标签

kubectl label pod nginx-pod version=1.0 -n dev    添加pod标签kubectl label pod nginx-pod version=1.0 -n dev -overwrite    #覆盖标签kubectl label pod pod_name version- -n dev 删除pod标签

查看pod的详细信息

(describe 当一个pod异常的时候,可以查看对应信息,查看报错)

kubectl describe pod/node pod/node的名称主要关注events的响应

kubectl删除异常的pod

kubectl -n dev get pods | grep "Evicted" | awk '{print $1}' | xargs kubectl delete pod -n dev

将pod的文件导出到主机上

kubectl cp -n 分区名 -c 容器名 pod名:文件绝对路径 文件目标位置
注意!!!
1.文件绝对路径前面不能加 /
2.文件目标位置不能为文件夹,必须为文件路径例:将pod里 /data/test.sql 拷贝到主机当前路径下,并命名为test.sql
kubectl cp -n zeus -c mysql zeus-mysql-back-0:data/test.sql ./test.sql

将主机的文件传到pod中

kubectl cp 主机文件路径 -n 分区 -c 容器 pod名:容器内绝对路径
注意!!!
1.主机文件路径可以为相对路径,也可以为绝对路径。
2.pod内绝对路径前面不能有 /例:将主机当前路径下的test.sql文件拷贝到pod的data目录下,并命名为testnew.sql
kubectl cp ./test.sql -n zeus -c mysql zeus-mysql-back-1:data/testnew.sql

查看pod的日志

kubectl logs -f pod_name -c 容器名称 -n namespace

进入某个pod

kubectl -exec -it pod pod_name /bin/bash    进入pod

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VitePress-07-文档中代码块的使用全解

说明 本文会介绍 vitepress 中markdown文档对 代码块的支持特性, 包括基本使用、代码高亮、展示行号、指定代码行高亮、代码聚焦、以及代码删除/新增标记、代码错误和警告标记 等特性的使用。 代码块的基本语法 代码块的基本效果就是 :代码高亮展示&…

C语言进阶之文件操作

一、什么是文件 磁盘上的文件是文件。 但是在程序设计中,我们一般谈的文件有两种:程序文件、数据文件(从文件功能的角度来分类的)。 1)程序文件 包括源程序文件(后缀为.c),目标文件&#xff…

【Springcloud篇】学习笔记七(十三章):Stream消息驱动

第十三章_Stream消息驱动 1.消息驱动Stream介绍 1.1Stream为什么被引入 常见MQ(消息中间件): ActiveMQRabbitMQRocketMQKafka 有没有一种新的技术诞生,让我们不再关注具体MQ的细节,我们只需要用一种适配绑定的方式,自动的给我…

Codeforces Beta Round 8 C. Looking for Order 【状压DP】

C. Looking for Order 题意 平面直角坐标系上有 n n n 个物品,还有一个初始背包位置 ( x 0 , y 0 ) (x_0, y_0) (x0​,y0​),从背包位置出发,每次最多携带两个物品回来背包,求把所有物品带回背包位置要走的最短距离&#xff0c…

[python]基于Ultra-Fast-Lane-Detection-v2车道线实时检测onnx部署

【论文地址】 https://arxiv.org/pdf/2206.07389.pdf 【框架地址】 https://github.com/cfzd/Ultra-Fast-Lane-Detection-v2 【框架介绍】 Ultra-Fast-Lane-Detection-v2(UFL-D-v2)算法是一种高效的车道线检测算法,它旨在快速准确地识别…

ElementUI Form:Form表单

ElementUI安装与使用指南 Form表单 点击下载learnelementuispringboot项目源码 效果图 el-form.vue&#xff08;Form表单&#xff09;页面效果图 项目里 el-form.vue代码 <script> export default {name: el_form,data() {var checkAge (rule, value, callback…

论文阅读-一种用于大规模分布式文件系统中基于深度强化学习的自适应元数据管理方案

名称&#xff1a; An Adaptive Metadata Management Scheme Based on Deep Reinforcement Learning for Large-Scale Distributed File Systems I. 引言 如今&#xff0c;大型集群文件系统的规模已达到PB甚至EB级别&#xff0c;由此产生的数据呈指数级增长。系统架构师不断设…

ai创作软件有哪些?这5个软件了解一下

ai创作软件有哪些&#xff1f;随着科技的飞速发展&#xff0c;人工智能&#xff08;AI&#xff09;在各个领域都展现出了惊人的实力。特别是在内容创作领域&#xff0c;AI技术已经成为了助力创作者们提高效率、释放创意的得力助手。今天&#xff0c;我们将为大家介绍五款AI创作…

指针的学习2

目录 数组名的理解 使用指针访问数组 一维数组传参的本质 冒泡排序 二级指针 指针数组 指针数组模拟二维数组 数组名的理解 数组名是数组首元素的地址 例外&#xff1a; sizeof(数组名),sizeof中单独放数组名&#xff0c;这里的数组名表示整个数组&#xff0c;计算的…

Mybatis Plus 结合 Mybatis X 插件快速生成CRUD代码

Mybatis Plus 结合 Mybatis X 插件快速生成CRUD代码 本文介绍在 IDEA 中如何使用 Mybatis X 插件快速生成 Mybatis Plus 的 CRUD 代码。包括实体类 model 代码、持久层 Mapper 代码和与之对应的Mapper.xml 代码、服务层 service 接口与impl接口实现类代码 1.安装Mybatis X 插…

蓝桥杯---生日蜡烛

某君从某年开始每年都举办一次生日party&#xff0c;并且每次都要吹熄与年龄相同根数的蜡烛&#xff0c;现在算起来&#xff0c;他一共吹熄了236根蜡烛。请问,他从多少岁开始过生日party的? 请填写他开始过生日 party的年龄数。 注意:你提交的应该是一个整数&#xff0c;不要…

【JavaScript 漫游】【006】数据类型 array

文章简介 本文为【JavaScript 漫游】专栏的第 006 篇文章&#xff0c;记录笔者在了解 JS 数据类型 array 中摘录的知识点。 数组的本质是对象属组的 length 属性for ... in 循环和数组的遍历数组的空位类数组对象 除了上述 5 个重要知识点&#xff0c;学习数组更为重要的是掌…