最新要闻
- 全球信息:我国多省雨雪上线!北方局地降温超8℃
- 全球今热点:功耗只有65W!14核心i5-13500偷跑:解锁到154W太生猛了
- 【环球热闻】实拍日本多地暴雪:1.6米高积雪掩埋车辆、14人死亡
- Redmi Buds 4青春版耳机亮相:单耳轻至3.9g 活力4色
- 环球快资讯:《阿凡达2》中的“海怪”:原来真的存在于地球!
- 天天快消息!男生考研分到高中母校被班主任监考:网友一句话扎心
- 天天信息:山东小伙用1个月微缩30倍农村老屋:惟妙惟肖
- 每日播报!2022年优化最差游戏榜单出炉:《巫师3》次世代版上榜
- 世界通讯!能跑虚幻5特效!Centerpiece机械键盘自带CPU+GPU
- 环球滚动:康辉被调侃为“天选打工人”:连上六天班、领带惹眼
- 世界百事通!Redmi K60首款素皮机身揭秘:参照跑车内饰 拟真缝线工艺
- 上海今起对快递外卖每人每天补贴60元 元旦春节补贴150元
- 全球观焦点:15.5小时!阿里云史上最长大规模中断:官方公告四大问题
- 不吃饭光吃补充剂 真的可以避免营养缺乏吗?
- 历时9个月 时速350高铁成功“穿海入城”
- 别再说RTX 4090功耗比A卡高了:4K 120帧仅需150W
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
全球消息!【踩坑】Debian编译安装Podman和Prometheus-podman-exporter
这个月一直在折腾 Grafana,中途遇到了各种各样的问题这两天折腾得差不多了,才有空把遇到的问题写出来一方面做个记录,另一方面也当给想要折腾的小伙伴们踩踩坑估计最近会陆续写一系列 Grafana 相关的文章
(前提是不像以前一样动不动鸽几个月),欢迎关注ヾ(≧▽≦*)oGrafana 折腾日志(相关资料图)
前几个月,我把服务器上的容器管理工具从 Docker 全部换成了Podman
所以搭完 Grafana 后,就开始思考怎么把 Podman 给添加上去
一通搜索后,在 Github 上找到了prometheus-podman-exporter这个项目
但在阅读安装说明时发现它只支持 Podman 4.x,而 Debian11 的 stable 源中的最近版本是3.0.1
,没办法只能自己编译新版本了 ̄へ ̄
系统环境
本文中的内容都在以下环境中测试:
用户: root架构: X86_64系统: Debian 11.6(bullseye)内核: 6.0.11-x64v1-xanmod1
编译安装 Podman
准备工作
安装依赖
按照文档,首先要使用apt
安装以下依赖:
其中golang因为版本太老,这里暂时忽略,稍候单独从官网安装
apt install \ btrfs-progs \ crun \ git \ go-md2man \ iptables \ libassuan-dev \ libbtrfs-dev \ libc6-dev \ libdevmapper-dev \ libglib2.0-dev \ libgpgme-dev \ libgpg-error-dev \ libprotobuf-dev \ libprotobuf-c-dev \ libseccomp-dev \ libselinux1-dev \ libsystemd-dev \ pkg-config \ uidmap
执行以下命令安装Golang 1.19.4
(撰写本文时的最新版本):
cd /tmp && \wget -O go.linux-amd64.tar.gz https://go.dev/dl/go1.19.4.linux-amd64.tar.gz && \rm -rf /usr/local/go && \tar -C /usr/local -xzf go.linux-amd64.tar.gz && \echo "export PATH=$PATH:/usr/local/go/bin;" > /etc/profile.d/golang.sh && \. /etc/profile.d/golang.sh && \rm go.linux-amd64.tar.gz
检查依赖版本
如果你和我一样使用的是 Debian11.x,那么可以跳过这个的步骤
golang
>= 1.16 :# 查看当前版本 go version
conmon
官方说要尽可能新,这个大家自己看着办吧ヾ(•ω•`)o# 获取最新版本curl -s https://api.github.com/repos/containers/conmon/releases/latest | grep ""tag_name":" | sed -E "s/.*"([^"]+)".*/\1/"# 查看当前版本conmon --version
runc
>= 1.0.0-rc4 或 1.0.1 (本文中使用crun
替代)# 查看当前版本runc --version
安装 CNI Plugins
这里是一个大坑,我当初看到
is done by default
和no further configuration is needed
就直接跳过去了,结果安装完尝试启动容器的时候就会报错,找了好久才发现是这里漏了>︿<
以下命令可以下载最新版本的 CNI Plugins 并添加到/opt/cni/bin
下:
cd /tmp && \wget -O cni-plugins.tar.gz \https://github.com/containernetworking/plugins/releases/download/v1.1.1/cni-plugins-linux-amd64-$(curl -s https://api.github.com/repos/containernetworking/plugins/releases/latest | grep ""tag_name":" | sed -E "s/.*"([^"]+)".*/\1/").tgz && \tar -C /opt/cni/bin cni-plugins.tar.gz && \rm cni-plugins.tar.gz
编译 Podman
首先克隆源码存储库,并检出到最新的tag
:
git clone https://github.com/containers/podman.git && \cd podman && \git checkout $(curl -s https://api.github.com/repos/containers/podman/releases/latest | grep ""tag_name":" | sed -E "s/.*"([^"]+)".*/\1/")
以下为推荐的构建参数,更多选项参见编译文档:
make BUILDTAGS="selinux seccomp"
如果没有错误,执行以下命令安装:
sudo make install PREFIX=/usr
Bash 自动补全
执行以下命令开启自动补全:
podman completion -f /etc/bash_completion.d/podman bash
重启终端后就可以享受类似 Docker 的自动补全了
删除无用的包(可选)
如果磁盘空间紧张或者短时间内不会再次编译,可以酌情删除以下依赖:
apt autoremove libbtrfs-dev \ libc6-dev \ libdevmapper-dev \ libglib2.0-dev \ libprotobuf-dev \ libprotobuf-c-dev \ libseccomp-dev \ libselinux1-dev
编译安装 prometheus-podman-exporter
解决完 Podman 的版本问题,接下来就轮到 exporter 了
Github:containers/prometheus-podman-exporter
安装说明: install.md
编译
照例先安装依赖:
apt install -y libgpgme-dev libbtrfs-dev libdevmapper-dev libassuan-dev pkg-config
克隆仓库并进入:
git clone https://github.com/containers/prometheus-podman-exporter && \cd prometheus-podman-exporter
编译可执行文件:
make binary
安装
实测项目自带的make install
没有什么效果,所以我参考 prometheus-node-exporter 进行了安装:
首先把可执行文件复制到/usr/bin
下:
cp ./bin/prometheus-podman-exporter /usr/bin/
为了实现后台运行,我写了一份 service 文件 (当然还是抄的 node-exporter),保存到/lib/systemd/system/prometheus-podman-exporter.service
中:
[Unit]Description=Prometheus exporter for PodmanDocumentation=https://github.com/containers/prometheus-podman-exporter[Service]Restart=on-failureUser=rootEnvironmentFile=/etc/default/prometheus-podman-exporterExecStart=/usr/bin/prometheus-podman-exporter $ARGSExecReload=/bin/kill -HUP $MAINPIDTimeoutStopSec=20sSendSIGKILL=no[Install]WantedBy=multi-user.target
它会从/etc/default/prometheus-podman-exporter
中读取环境变量ARGS
,并用作启动的参数
例如想开启所有收集器,可以这么写:
# /etc/default/prometheus-podman-exporterARGS="--collector.enable-all"
提示:更多命令行参数见这里
写入 service 文件后,记得先重新加载一遍 daemon:
systemctl daemon-reload
现在我们就可以使用systemctl
来管理 prometheus-podman-exporter 啦:
# 开启systemctl start prometheus-podman-exporter# 停止systemctl stop prometheus-podman-exporter# 开机启动systemctl enable prometheus-podman-exporter
下期预告
Grafana 折腾日志-其二 适用于 prometheus-podman-exporter 的 Grafana 仪表盘
最后
不得不吐槽一句,一个 exporter 最高占用将近 40M 内存,对低配小鸡真的不友好ヽ(≧□≦)ノ
-
全球消息!【踩坑】Debian编译安装Podman和Prometheus-podman-exporter
这个月一直在折腾Grafana,中途遇到了各种各样的问题这两天折腾得差不多了,才有空把遇到的问题写出来一方...
来源: 全球消息!【踩坑】Debian编译安装Podman和Prometheus-podman-exporter
全球信息:我国多省雨雪上线!北方局地降温超8℃
第三章 --------------------XAML的属性和事件
AcWing.7 混合背包问题
每日快讯!统一异常处理——BlockException
环球快资讯丨Codeforces 983 D Arkady and Rectangles 题解
全球今热点:功耗只有65W!14核心i5-13500偷跑:解锁到154W太生猛了
全球视点!教你用JavaScript实现调皮的字母
【新视野】PHP Composer 虚拟依赖包 - 实现按需载入钉钉对应功能模块的 php sdk
全球新动态:Safari浏览器对SVG中的
标签支持不友好,渲染容易错位 【环球热闻】实拍日本多地暴雪:1.6米高积雪掩埋车辆、14人死亡
Redmi Buds 4青春版耳机亮相:单耳轻至3.9g 活力4色
环球快资讯:《阿凡达2》中的“海怪”:原来真的存在于地球!
AcWing241. 楼兰图腾
天天速递!CentOS7配置静态IP
天天快消息!男生考研分到高中母校被班主任监考:网友一句话扎心
天天信息:山东小伙用1个月微缩30倍农村老屋:惟妙惟肖
MAUI新生6.1-Shell导航视觉层次结构
每日播报!2022年优化最差游戏榜单出炉:《巫师3》次世代版上榜
世界通讯!能跑虚幻5特效!Centerpiece机械键盘自带CPU+GPU
环球滚动:康辉被调侃为“天选打工人”:连上六天班、领带惹眼
世界百事通!Redmi K60首款素皮机身揭秘:参照跑车内饰 拟真缝线工艺
上海今起对快递外卖每人每天补贴60元 元旦春节补贴150元
全球观焦点:15.5小时!阿里云史上最长大规模中断:官方公告四大问题
不吃饭光吃补充剂 真的可以避免营养缺乏吗?
历时9个月 时速350高铁成功“穿海入城”
别再说RTX 4090功耗比A卡高了:4K 120帧仅需150W
简讯:权威结果出炉:今年画质最好的游戏有答案了
炉石关服前夕:网易同类卡牌游戏《秘境对决》宣布恢复运营
今日最新!洛谷 P5721 【入门3】循环结构
【pygame游戏】用Python实现一个蔡徐坤大战篮球的小游戏,可还行?【附源码】
环球热议:大货车雪地滑坡 山东小伙神操作“拔草相助”!后续令网友感动
超长寿命TLC闪存 金邦2TB PCIe 4.0硬盘679元:5GB/s速度
热门:再不努力就要归零 2nm工艺成日本半导体最后的机会
教你用JavaScript实现搜索展开
天天新资讯:李斌:创业的没有几个真的是骗子 要多鼓励
AMD 8年真身接连被破 Intel 13代酷睿“开挂“:超频无敌了
【焦点热闻】索尼被质疑虚假宣传:上市两年后 PS5仍不支持8K
中国千年酒文化传承 酒祖杜康白酒大促:礼盒装110两瓶
今日聚焦!李斌再回应蔚来数据泄露:会承担所有责任 哪怕破产也不妥协
环球微动态丨「杂题乱写」AtCoderDP26 题
(二)elasticsearch 源码目录
【新视野】碳纤维纹理后盖!Redmi K60回归硬核设计:刀锋战士理念
速看:无惧严寒!网易严选牛奶绒床品四件套:159元起
新的全国铁路列车运行图实行:石家庄至北京将实现一小时通达
新版以太坊Ethereum库ethersV5.0配合后端Golang1.18实时链接区块链钱包(Metamask/Okc)以及验签操作
环球关注:高速上飞来钢管插进驾驶室:差点害死驾驶员
热消息:联想:小红点会在ThinkPad笔记本上永远存在
天天头条:正式发布前 盒装RTX 4070 Ti线下偷跑:售价感人
天天热资讯!保时捷为Taycan推出全新充电器:充电速度提升一倍 改装费用上万
环球通讯!Epic喜加一!免费送大作《地铁》:下款将是《死亡搁浅》
每日头条!2023考研报告发布:“逆向考研”成亮点!附报告源文
世界快播:锐龙7000系列三款非X型号曝光:价格感受下
囧!日本老师暴打初二男生 因学“左手定则”时比中指
老人故意推倒摩托车损坏被抓:车主回应希望判决不手软 惯犯了
焦点速递!Sentinel的规则
天天热议:一加11下周官宣:安卓性能天花板
MAUI新生5.3-Layout布局类控件难点
国产OS统信UOS家庭版22.0明年1月发布:免费用1年 可与Windows共存
全靠移民硬撑?美国人口增长率仍贴近历史低位
视点!18岁女生因焦虑2个月减25斤:最终瘦成95斤
天天消息!男子无聊送外卖发现2小时挣150:开豪车也干
天天精选!Kubernetes监控手册03-宿主监控实操
今日观点!一路用到安卓17?OPPO将提供4年ColorOS重大更新
环球即时看!同价位罕见!雷军:Redmi K60系列这三款全都上2K直屏
微资讯!“联盟号”发生泄漏:俄罗斯或派遣救援飞船接回机组人员
世界播报:cmake-4
Redmi可穿戴新品公布:手表、耳机全都有
行业最快!红魔8 Pro系列搭载520Hz游戏体感肩键:毫秒级触控响应
《阿凡达2:水之道》国内票房突破6亿:卡梅隆光环褪色 回本太难
每日焦点!终结起火、爆炸困扰!红旗全固态电芯试制完成:10Ah级大容量
27款笔记软件的介绍
全球视点!ts10_使用webpack打包ts文件3
环球今日报丨C#封装GRPC类库及调用简单实例
百事通!Spring IOC官方文档学习笔记(四)之依赖项(下)
【天天报资讯】Web 标准 & W3C 规范
今日热闻!研究人员在柬埔寨发现超级蚊子:对杀虫剂免疫
焦点关注:C++基础3
焦点滚动:惧怕《阿凡达2》 输不起?郭帆回应《流浪地球2》撤档 春节见
播报:Redmi K60全系标配2K柔性屏 专家:国产技术已破局超越
环球即时看!以小博大外小内大,Db数据库SQL优化之小数据驱动大数据
全球快资讯丨最高799元 迪士尼再发布涨价公告:开业以来已涨4次
质感一绝!一加11证件照公布:双曲面屏、流动天阶设计
速递!共计100小时:全球首架C919自12月26日起验证飞行
ts09_使用webpack打包ts文件2
环球热头条丨2022贺岁档票房破10亿!《阿凡达:水之道》5.9亿元能拯救院线吗
曾因“双标”遭网友痛批:好丽友旗舰店发布闭店公告
全球热头条丨AcWing1134/洛谷P1144 最短路计数
WPF开发之Prism详解【内附源码】
不愧是宝马 因机油渗漏:近500台S1000系列摩托车被召回
最新快讯!Codeforces 1097 G Vladislav and a Great Legend 题解 (DP)
焦点日报:肾脏衰竭 球王贝利病情继续恶化:家人开始筹备葬礼
02.关于线程你必须知道的8个问题(上)
当前头条:喜提安卓13!小米平板5/Pro 12.4推送MIUI 14开发版:支持光子引擎
每日热文:SSD/内存白菜价难持续:国产厂商被制裁 三星等大厂减产提价
天天热点!我的2022年个人总结
环球焦点!FreeSWITCH学习笔记:EventSocket
AMD RX7900被吐槽空气卡 溢价千元普遍:国内用户持币等 买它还是4080?
【世界播资讯】小米又一爆款诞生!小米净水器销量破500万台
热推荐:新冠后丧失嗅觉的关键原因找到了 科学家:长期失灵也能恢复