k8s中pod的创建过程和阶段状态

管理k8s集群

kubectl

k8s两种用户

一种登录

一种/sbin/nologin

linux可以密码登录可以证书登录

k8s只能证书登录

拿到这个证书可以管理集群

k8s所有节点被网络组件calico设置路由通信

所以podip可以主机访问

比如ping

如果pod运行web服务

也可以直接curl pod_ip访问到web服务

k8s集群容器管理使用方式:

pod系统进程中一个多进程的聚合单位

一个容器一个服务就是一个进程

同一个pod共享网络

pod的创建过程:

用户apiserver发送指令

apiserver会把指令信息记录数据库etcd中

pod创建过程是一个异步创建

scheduler通过watch机制

发现集群创建出来调度pod

scheduler决定这个pod运行哪个节点

scheduler作为集群调度器选择合适节点

这个pod进行运行

选择好节点之后

这个数据同步apiserver

并且记录etcd数据

这个调度的过程叫做绑定

第一个过程用户指令过程

二个过程pod调度过程

两个过程分开执行

两个过程结束之后pod还是没有创建

之前两个过程都是管理控制节点master运行

master执行调度绑定之后

计算节点

被绑定的计算节点的kubelet通过watch机制发现集群

绑定到这个节点上,尚未创建pod

kubelet自己不会创建容器

kubeletruntime软件,比如containerd

runtime软件负责

按照kubelet要求pod创建出来

创建之后

结果反馈kubelet

kubelet结果反馈apiserver

最终结果写入数据库中。

pod的创建,总共三个过程

第一个用户交互过程

第二个调度过程

第三个创建过程

所以kubectl get 命令查询

并不是实际节点进行查询

而是查询etcd数据库中pod状态。

至于pod实际状态

kubelet更新数据库的。

pod创建过程经历不同状态

第一个pending,是一个等待调度过程

第二个scheduler进行调度调度之后

pod进入一个中间状态createcontainer

第三个runnningfailed其中一种就是创建失败还是成功

如果成功创建pod一段时间还会重试重新运行

尝试pod成功运行

任务执行成功之后进入completed状态

这是pod各种状态相位

failed0退出

unknown 无法获取pod状态大多数由于网络不通或者防火墙屏蔽

了解这些有助于pod管理

-----------------------------------------------------------------------------------

namespace也是一种api资源

kube-system系统名称空间

eventsdescribe里面主要用途排错

get外观

describepod

logs容器

排错三兄弟系统重要

]# kubectl exec -it  myweb -- ls  
# 其中"--"  选项终止符这个不是k8s里面东西shell东西
]# ls --help  | grep --time
# 这个里面"--time"没有当成grep参数而被当成grep选项
]# ls --help  | grep --  --time
# 加上选项终止符"--" , 就是告诉grep后面内容不是选项参数

]# kubectl exec -it  myweb -- ls
index.html  info.php
]# kubectl exec -it  myweb  ls
kubectl exec [POD] [COMMAND] is DEPRECATED and will be removed in a future version. Use kubectl exec [POD] -- [COMMAND] instead.
index.html  info.php
# k8s告诉管理员pod后面命令 -- [COMMAND]

“--”选项终止符作用解决复杂命令之间选项参数分割问题

pod监控自己容器

如果容器故障自动restart容器

控制器可以跨节点搬运服务如果节点故障

控制器自动服务搬到其他节点运行

exec主要用于容器运行命令       

有时候通过日志搞不定容器里面

cp 文件目录拷贝容器,也可以从容器拷贝宿主机

]# kubectl cp  myweb:/var/www  ./www
tar: Removing leading `/' from member names

dockercp本机复制

k8scp跨主机复制

k8s拷贝数据条带化打包tar是个条带化数据按照条带化方式

数据过来过来东西就是tar本地做了一个解包操作

所以k8scptar实现

cp还有一个功能重定向

]# tar  -cf  -  www
#  这里面"-"  代表标准输入和标准输出
]# tar  -cf  -  www  |gzip  >a.tar.gz

重定向可以实现跨主机重定向

可以A机器重定向B机器。

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

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

相关文章

如何使用 maxwell 同步到 redis?

文章目录 1、MaxwellListener2、MxwObject1. 使用Maxwell捕获MySQL变更2. 将Maxwell的输出连接到消息系统3. 从消息系统读取数据并同步到Redis注意事项 1、MaxwellListener package com.atguigu.tingshu.album.listener;import com.alibaba.fastjson.JSON; import org.apache.…

mysql中的json查询

首先来构造数据 查询department里面name等于研发部的数据 查询语句跟普通的sql语句差不多,也就是字段名要用到path表达式 select * from user u where u.department->$.name 研发部 模糊查询 select * from user u where u.department->$.name like %研发%…

Go-知识recover

Go-知识recover 1. 介绍2. 工作机制2.1 recover 定义2.2 工作流程2.3 总结 3. 原理3.1 recover函数的真正逻辑3.2 恢复逻辑3.3 生效条件 4. 总结4.1 recover的返回值是什么?4.2 执行recover之后程序将从哪里继续运行?4.3 recover为什么一定要在defer中使…

无法删除选定的端口,不支持请求【笔记】

场景:在删除打印机端口时,提示:“无法删除选定的端口,不支持请求”,如下图所示。 以下以删除USB036端口为示例,操作步骤如下: 在注册表编辑器中,从以下注册表项中“计算机\HKEY_LO…

Spring中存储Bean的常见注解

目录 IoC & DI IOC(控制反转)详解 依赖注入的三种方式 IoC & DI IoC: Inversion of Control (控制反转), 也就是说 Spring 是⼀个"控制反转"的容器. 控制反转:也就是控制权反转. 什么的控制权发⽣了反转? 获得依赖对…

Python增强办公效率的11个实用代码段

如果你正在学习Python,那么你需要的话可以,点击这里👉Python重磅福利:入门&进阶全套学习资料、电子书、软件包、项目源码等等免费分享! 引言 在日常工作中,许多任务可以通过编程自动化来提高效率。本…

算法入门-贪心2

第八部分:贪心 561.数组拆分(简单) 题目:给定长度为 2n 的整数数组 nums ,你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), ..., (an, bn) ,使得从 1 到 n 的 min(ai, bi) 总和最大。 返回该 最…

Three.js 3D人物漫游项目(下)

本文目录 前言最终效果1、效果回顾2、编写人物模型动画执行类并调用2.1 代码2.2 代码解读2.3 实例化动画类并调用2.4 效果2.4.1 休息动画2.4.2 跑步动画2.4.3 走路动画2.4.4 舞蹈1动画2.4.5 舞蹈2动画3、键盘控制动画3.1 站立休息、走、跑、舞蹈1、舞蹈2代码3.1.1 效果3.2 跳跃…

基于丹摩智算平台-手把手拿下经典目标检测模型 Faster-Rcnn

文章目录 1. 前言1. 1 丹摩智算平台1.2 经典目标检测模型 Faster-Rcnn 2. 前置准备2.1 WindTerm(远程连接服务器)2.2 项目源码 3. 服务器平台配置3.1 创建实例3.2 远程链接 4. Faster-rcnn 的环境配置4.1 上传文件,解压4.2 安装所需环境 5. 数…

华为HarmonyOS地图服务 1 -- 如何实现地图呈现?

如何使用地图组件MapComponent和MapComponentController呈现地图,效果如下图所示。 MapComponent是地图组件,用于在您的页面中放置地图。MapComponentController是地图组件的主要功能入口类,用来操作地图,与地图有关的所有方法从此…

基于PaddlePaddle复现的PeleeNet

转自AI Studio,原文链接:基于PaddlePaddle复现的PeleeNet - 飞桨AI Studio PeleeNet: An efficient DenseNet architecture for mobile devices 1. 简介 这是一个PaddlePaddle实现的PeleeNet。 PeleeNet是一个高效的卷积神经网络(CNN&…

数通。。。

通信:需要介质才能通信电话离信号塔(基站)越远,信号越弱。信号在基站之间传递。你离路由器越远,信号越差。一个意思 比如想传一张图片,这张图片就是数据载荷 网关,分割两个网络。路由器可以是网…

【贪心算法】贪心算法二

贪心算法二 1.最长递增子序列2.递增的三元子序列3.最长连续递增序列 点赞👍👍收藏🌟🌟关注💖💖 你的支持是对我最大的鼓励,我们一起努力吧!😃😃 1.最长递增子序列 题目链…

AI免费UI页面生成

https://v0.dev/chat v0 - UI设计 cursor - 编写代码 参考:https://www.youtube.com/watch?vIyIVvAu1KZ4 界面和claude类似,右侧展示效果和代码 https://pagen.so/

用uniapp 及socket.io做一个简单聊天 升级 9

比这之前优化了以下功能 上线通知 群聊里适时显示在线人数 约请好友 通过好友通过socket 相应端自动变化 PC端可以拉取摄象头拍照 PC端可以录音发送 拉起摄象头发送录象 <template><view class""><scroll-view scroll-y"true" class&…

【Linux篇】常用命令及操作技巧(基础篇)

&#x1f30f;个人博客主页&#xff1a;意疏-CSDN博客 希望文章能够给到初学的你一些启发&#xff5e; 如果觉得文章对你有帮助的话&#xff0c;点赞 关注 收藏支持一下笔者吧&#xff5e; 阅读指南&#xff1a; 开篇说明帮助命令常见的七个linux操作终端实用的技巧跟文件目录…

【深入理解SpringCloud微服务】了解微服务的熔断、限流、降级,手写实现一个微服务熔断限流器

【深入理解SpringCloud微服务】了解微服务的熔断、限流、降级&#xff0c;手写实现一个微服务熔断限流器 服务雪崩熔断、限流、降级熔断降级限流 手写实现一个微服务熔断限流器架构设计代码实现整体逻辑ProtectorAspect#aroundMethod(ProceedingJoinPoint)具体实现1、获取接口对…

智慧农业——InsectMamba利用状态空间模型对害虫进行分类

介绍 论文地址&#xff1a;https://arxiv.org/abs/2404.03611 害虫分类是农业中的一个重要问题。准确识别有害害虫可减少对作物的损害&#xff0c;确保粮食安全和环境的可持续发展。然而&#xff0c;害虫及其自然环境的高度拟态性和物种多样性使得视觉特征的提取极具挑战性。…

Centos7.9 使用 Kubeadm 自动化部署 K8S 集群(一个脚本)

文章目录 一、环境准备1、硬件准备&#xff08;虚拟主机&#xff09;2、操作系统版本3、硬件配置4、网络 二、注意点1、主机命名格式2、网络插件 flannel 镜像拉取2.1、主机生成公私钥2.2、为啥有 Github 还用 Gitee2.3、将主机公钥添加到 Gitee2.3.1、复制主机上的公钥2.3.2、…

< 微积分Calculus >

微积分 微分是把整体分拆为小部分来求它怎样改变 积分是把小部分连接在一起来求整体有多大&#xff0c;可以用来求面积、体积、中点和很多其他有用的东西。 lim极限 函数f(x) -> Q(x) y&#xff1a;x变量&#xff0c;f函数&#xff0c;Q(x)函数体&#xff08;多项式&am…