docker - 如何在 Kubernetes 中以毫秒为单位获取 pod 启动时间
问题描述
我正在尝试获取 pod 调度的性能。
当 kubectl 描述 pod 性能时,testpod。我们会得到类似的东西,如下所示
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 21s default-scheduler Successfully assigned default/performancetestpod to ip-172-31-22-111
Normal Pulled 20s kubelet, ip-172-31-22-111 Container image "centos:7.6.1810" already present on machine
Normal Created 20s kubelet, ip-172-31-22-111 Created container
Normal Started 20s kubelet, ip-172-31-22-111 Started container
Normal Killing 10s kubelet, ip-172-31-22-111 Killing container with id docker://performancetestpod:Need to kill Pod
1,有没有办法以毫秒为单位获取年龄。
2,有没有其他方法可以获取以毫秒为单位的 pod 启动值,例如:通过使用 prometheus 等
解决方案
根据我的经验,没有办法像您那样使用 kubectl 获得毫秒数。回答您的第二个问题 - 仔细查看kube-state-metrics。根据A Deep Dive into Kubernetes Metrics文章:
对象创建时间
了解 Kubernetes 中的对象是在什么时间创建的通常很有帮助。Kube-state-metrics 公开了它跟踪的几乎所有对象的创建时间。度量名称遵循该模式kube_<OBJECT>_created
,并将包含对象名称和它所在的命名空间的值。该值是毫秒的纪元时间戳。
例如,CronJob 创建系列被称为kube_cronjob_created
.
推荐阅读
- keras - keras.backend.switch 是否明智地执行?
- python - gevent如何保证多个协程之间不共享同一个线程局部变量
- docker - 从系统驱动程序中安装 docker desktop
- spring-boot - 在 Spring Boot 中通过 DeleteMethod 中的 RequestBody
- flutter - 如何更改触摸动画半径
- python - 叶画圈不画
- git - Git - 从具有多个文件夹的推送中恢复单个文件夹
- android - 如何在osmdroid上搜索位置名称以获取纬度经度
- git - 重置分支后如何丢弃更改?
- python - 使用 python 3.9 创建 conda 张量流虚拟环境时出现属性错误