首页
统计信息
友情链接
壁纸
Search
1
【更新】CommentToMail typecho2017&v4.1& Mailer三版本,支持php5.6/7,插件详解
158,090 阅读
2
【90APT开源免费】第三代哈弗H6、哈弗大狗、H6经典版车机开启无线ADB、升级地图、安装软件全流程
13,945 阅读
3
CentOS 7安装bbr教程
12,841 阅读
4
纯小白10分钟变身linux建站高手?宝塔linux面板全体验
12,440 阅读
5
深信服超融合架构测试介绍
11,783 阅读
技术相关
ACG相关
胡言乱语
数码杂烩
登录
Search
标签搜索
进击的巨人
漫画
宝塔
php
typecho
diy
vps
折腾
动漫
优酷路由宝
ubuntu
路由器
QQ
KMS
王忘杰
累计撰写
272
篇文章
累计收到
179
条评论
首页
栏目
技术相关
ACG相关
胡言乱语
数码杂烩
页面
统计信息
友情链接
壁纸
搜索到
272
篇与
的结果
2025-03-20
【90APT开源免费】第三代哈弗H6、哈弗大狗、H6经典版车机开启无线ADB、升级地图、安装软件全流程
{message type="success" content="最后更新时间:2025.3.17"/}{alert type="success"}本文适用于2025年OTA后的 第三代哈弗H6、哈弗大狗、H6经典版、部分型号的坦克300,本方案为密码开启或网络劫持智能手册更新来安装无线ADB工具,实现车机的第三方软件安装和卸载,并将此行为定义为破解;对车机升级高德地图版本、安装自定义软件的行为,会降低车辆安全性,安装带有后门、或不稳定的软件,会对行车安全造成严重危害,对车机软件的修改造成故障,不属于车辆质保范畴,厂家和4S有权拒保,当你使用本文所提到的方法时,请确保自身能够承担相应后果。{/alert}{message type="error" content="一旦导致车机损坏,4S更换费用为6000元,不包含工时费,请量力而行。"/}免责声明{message type="info" content="本文和工具不是为了让“车友”在使用车机时,自己进行破解使用。然而,我认为每个人都应该有测试和备份自己车机程序的选择。本文原理和工具完全免费,仅供研究车机原理测试使用,任何个人和组织不得以任何形式进行出售,任何商业行为与我本人没有任何关系,并非我的本意。如果你车机有任何问题,请前往长城4S店处理。本人不鼓励自行破解,对于不正确的使用,请自行承担责任。我不会同意以任何形式进行车机破解和不负责任的非法使用。当且仅当你拥有了软件的完整副本时,那么你可以将这些程序用于备份目的,且仅用于备份目的。最终用户许可协议(EULA)的影响如何,还有待观察,它不能取代法律,请务必牢记。此外,不对使用工具可能发生的损失或任何数据错误承担任何责任。如果你使用本工具,则表示你自动同意上述书面协议,因此,有关 EULA 影响的任何责任和后果请自负。根据 2013 年 1 月 30 日《计算机软件保护条例》的第十七条规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。本文和工具作为原理研究、交流使用,完全免费,任何人不得用于商业用途,且下载后请务必于 24 小时内删除,如果是付费获得,那么你肯定被骗了!!!"/}防骗指南:90APT教程、原理、软件完全开源公开免费,收费即为骗子{lamp/}一个骗子,让车圈原地踏步4年,长城哈弗车圈知名骗子哈弗益达https://www.bilibili.com/video/BV1v26UYTEDa/ https://www.bilibili.com/video/BV1vLfmY5ELD/ {message type="error" content="根据持续收集的数据推算,交过钱,包含被拉黑的车友,总计超过5千,涉案金额推测已经超过50万。"/}1、伪装官方账号,自称开发者哈弗益达长期伪装为长城汽车官方账号,自称唯一正版开发者,使大量不明真相的车友上当2、交钱当孙子,售后你做梦哈弗益达做出大量虚假承诺,如付费后终身进行车机维护、车辆咨询、车辆故障处理等;付费后,发你一个DNS地址,再提问拉黑踢出群,几年内疯狂敛财预计超过10万。3、攻击其他车圈开发者在本人及其他车友发布免费教程后,哈弗益达立即使用自己的大量小号伪装成本人和其他开发者,在QQ、微信、咸鱼、抖音等数个平台发布信息,妄图使车友产生,作者本人已经被哈弗益达收编的假象,手段低级恶劣。4、篡改官方镜像、忽悠车友刷错包哈弗益达篡改安波福U盘OTA包,故意混淆包名,使坦克车友错刷包变砖,再收取200元费用恢复;篡改过的刷机包做了未知修改,建议使用过的车友自行前往4S店检查,防止哈弗益达再做其他手脚。5、一顿操作,车圈原地踏步4年一代车型的生命周期不过三五年,在哈弗益达的努力下,第三代哈弗H6、哈弗大狗、坦克300、H6经典版的车友,在车型上市的第五年,能够提出的问题,仍然是如何开启ADB这种弱智问题;反观BYD,已经发展出了迪粉桌面、迪友社区、沙发管家车载版等软件和社区。可以说,一个骗子让长城哈弗H6大狗车圈原地踏步了4年;现在第四代哈弗H6已经发布,三代作为过时车型,已经彻底失去了发展的可能,仅仅能在当前安装工装和地图的程度上挣扎,直至车型生命周期终结。真是可悲6、认清骗子账号骗子账号为哈弗益达、长城(诚)汽车车机分享等,并且会伪装为其他开发者账号,并且现在骗子在他的视频上,都会放上他的空调插件,搞钱还是最终目的{lamp/}{alert type="success"}哈弗车机技术交流QQ群:468902455 仅技术讨论,无一对一服务{/alert}快速概要网盘中软件均为网络收集,使用后果自负。123网盘 手机使用123网盘APP,转存到自己的网盘后下载不限速https://www.123865.com/s/UaOljv-5xOHv?提取码:ZyBEhttps://www.123684.com/s/UaOljv-5xOHv?提取码:ZyBE百度网盘 不开会员下的慢https://pan.baidu.com/s/1S3enQhKy91FAal5M-WJRDw?pwd=2yw4 提取码: 2yw4查看视频B站 王忘杰抖音 王忘杰{message type="success" content="90APT哈弗车友群名人堂 排名不分先后 "/}昵称项目The kingdom车友群创建者、早期免费教程公布者王忘杰90APT车机教程网站、笔记本一键包、服务器一键包、华阳原厂地图恢复哇偶工程模式安装助手扁豆docker版工程模式安装TEST华阳MCU二级密码解密Nintaus发现德赛西威无线ADB工具适配华阳安波福情深德赛西威无线ADB工具开发者kinsey车友群在线地图代码提供者小刀移除内置地图可随意安装地图软件Desire安波福原厂地图恢复小虫兮安波福系统签名提取Desire安波福签名高德地图,实现任意版本安装study空调插件 M键控制余生高德7.5全适配{lamp/}OTA后已知BUG1、灵控球白天夜间模式切换会导致亿连闪退,建议设置为白天或夜间模式,不自动切换2、高德地图HUD图标缺失 岔道时在主路执行,缺少这个图标演示路况3、原厂7.1.7地图闪退安波福7.1.7.1232 闪退频率较高华阳7.1.7.1234 闪退频率较低但都存在闪退可能在2025年4月份厂家更新修复4、安波福不能连接5GHz wifi此为安波福常年存在的BUG,华阳无此问题一、 原车功能1、原车地图 无论华阳还是安波福,原车7.1.7均存在闪退BUG、启动缓慢,但原厂适配最佳当前时间白天黄昏 导航模式才显示红绿灯 仪表屏和中控屏分别设置仪表盘:全屏、导航模式、3D模式、放大最大中控屏:全屏、3D模式当前时间夜间 导航模式才显示红绿灯 仪表屏和中控屏分别设置仪表盘:全屏、导航模式、3D模式、放大最大中控屏:全屏、3D模式仪表盘设置方向盘右侧房子按键+上下左右OK,选到导航全屏中控屏设置右侧GPS图标点击切换3D2、CarPlay、亿连若你对车机导航、音乐等功能不满意,推荐先使用原车手机互联功能,车机内置CarPlay、亿连,均支持有线和无线方式,详细请咨询长城汽车官方。示例:VIVO车载 https://www.bilibili.com/video/BV1Li69YJEPG/ {lamp/}二、安装无线ADB、升级地图、安装软件华阳车机1、华阳整体流程恭喜你,你和王工同款华阳车机,你的破解之路毫无阻碍视频教程:B站https://www.bilibili.com/video/BV1qTXMYREnv/看懂看完,你就是大神1.1识别车机系统厂家分为安波福主机、华阳主机1.2安装无线ADB工具1)使用MCU密码配合安卓手机OTG+公对公USB数据线线,通过甲壳虫直接安装德赛西威无线ADB工具2)使用90APT笔记本一键包、工程模式小助手安装德赛西威无线ADB工具3)买云服务器,使用90APT云服务器一键脚本部署后,使用DNS安装德赛西威无线ADB工具1.3升级地图使用手机termux移除内置地图后,即可任意安装卸载任何版本的高德地图1.4安装软件、调优连接无线ADB后,可通过手机甲壳虫软件安装、软件全屏调整等操作。2、详细步骤2.1识别车机系统打开车机系统设置-多次点击版本号出现密码框,输入密码,根据密码可判断车机版本adayo2002能够进入,为华阳车机2.2安装无线ADB工具1)使用MCU密码配合安卓手机OTG+公对公USB数据线线,通过甲壳虫直接安装德赛西威无线ADB工具(开发者test)重点推荐此方法,你只需要花4块钱购买一个安卓OTG线和公对公USB数据线即可,我使用VIVO X80和红米note7pro测试没问题系统设置-系统信息-连续点击系统版本号-输入密码 adayo2002 进入工厂模式-连续点击 MCU_Version 后面的版本号,输入密码@Fygw50*找到其他设置-就会出现usb mode device ADB开关,开启后即可通过USB连接ADB,然后甲壳虫安装德赛西威无线ADB工具2)使用90APT笔记本一键包、工程模式小助手安装德赛西威无线ADB工具你得有笔记本电脑,安装完德赛西威无线ADB工具就可以了90APT笔记本一键包4.0.10更新时间2025.3.5从网盘下载,里面有说明https://www.bilibili.com/video/BV1YQidYGEFA/ 工程模式小助手 从网盘下载,软件打开有说明3)买云服务器,使用90APT云服务器一键脚本部署后,使用DNS安装德赛西威无线ADB工具不推荐,有这个钱你还不如买根线可试用国内云服务器或购买国内外云服务器,需要公网IP服务器,90APT开发 更新时间2025.3.5,可安装无线ADB工具只支持alma8、anolis8、opencloudos8操作系统,请先在云服务面板安全组放行 53UDP 443TCP端口curl -O https://gwm.90apt.com/linux/gwm90apt.sh;bash gwm90apt.sh无线ADB部署DNS服务器搭建 https://www.bilibili.com/video/BV16rcUeAEfP2.3华阳本地任意版本地图安装、返回原厂看视频 https://www.bilibili.com/video/BV1rNAkenEdr/2.3.1、基础准备车机准备车机安装德赛西威无线ADB工具手机准备安卓手机从网盘安装甲壳虫、termux,下载地图app放在手机里,确保后缀是.apk,下面的命令均在termux中执行{message type="info" content="如果你手机上有旧的甲壳虫、termux,全部卸载掉用网盘里的"/}termux中执行pkg install android-tools -y2.3.2、车机连接手机热点,开启无线ADB开关,查询IP{message type="info" content="车机ADB只允许一个设备连接,你用甲壳虫连接后,termux会连不上,需要先退出甲壳虫。"/}termux中执行连接IP,写无线ADB开关里提示的IPadb connect IP地址举例adb connect 192.168.1.1 查看当前连接的设备是否连接成功,成功后进行后续操作adb devices2.3.3、移除内置地图移除内置地图 (开发者小刀){message type="success" content="此步骤无风险,只是移除内置地图,车机就没有地图了"/}termux中执行adb shell pm clear com.autonavi.amapauto;adb root;adb wait-for-device;adb remount;adb root;adb wait-for-device;adb remount;adb shell am force-stop com.autonavi.amapauto;adb shell am force-stop com.autonavi.amapauto;adb shell rm -rf /system/app/Navigation;adb shell rm -rf /system/app/Navigation;adb shell rm -rf /system/app/AutoMap;adb shell rm -rf /system/app/AutoMap;adb reboot2.3.4、任意安装地图卸载上面移除内置地图之后就,后续安装地图就用甲壳虫就行了车机连接手机热点,开启无线ADB开关,甲壳虫安装地图{alert type="warning"}每次安装地图后必须进行清数据给权限启动 设置app ,进行清数据给权限{/alert}{message type="success" content="此步骤无风险"/}想安装其他地图,先从车机自带应用商店中卸载后再用甲壳虫安装地图全屏、状态栏、导航栏显示可以用甲壳虫安装一个应用管家,再设置应用沉浸式,此方法简单也可以直接在甲壳虫中运行命令,也很简单全屏沉浸:adb shell settings put global policy_control immersive.full=com.autonavi.amapauto沉浸状态栏:adb shell settings put global policy_control immersive.status=com.autonavi.amapauto沉浸导航栏:adb shell settings put global policy_control immersive.navigation=com.autonavi.amapauto取消上面的设置:adb shell settings put global policy_control null高德地图车机版8.1公众版不适配飞屏卡片若升级后高德地图8.1声音异常、无声、声音巨大先清空高德地图APP数据、给予权限,然后调整声道,高德声道第一个选10或11,第二个1,第七个1,第14个1,第17个1高德设置-播报图标连续点击10次-进入隐藏设置 https://www.bilibili.com/video/BV1GQApeEEgx/2.3.5、还原原厂7.1.7华阳直装版(开发者王忘杰){message type="success" content="此步骤无风险"/}在车机应用商店中卸载现有的高德地图甲壳虫连接车机后安装高德地图90apt华阳7.1.7.1234即可恢复原厂2.3.6、其他软件1)甲壳虫连接车机后直接安装2)甲壳虫连接车机后安装一个应用管家,再通过应用管家安装{lamp/}安波福车机你是安波福车机,你的破解之路会比较坎坷,教程均为群友制作,你加油吧如果你遇到搜不到5Gwifi、甲壳虫安装不上软件、调试模式安装不上、地图安装不上等问题,请你自己多试试或者换其他方法,因为安波福就这样。1、整体流程1.1识别车机系统厂家分为安波福主机、华阳主机1.2安装无线ADB工具安波福无线ADB工具有调试模式.apk和万能车机ADB工具.apk两个,用哪个都行安波福可以安装调试模式开启无线ADB,端口可能是12888或5555安波福可以使用一键包4.x安装万能车机ADB工具用来开启无线ADB安波福可以使用免费DNS安装调试模式开启无线ADB或自己购买云服务器使用90apt云服务器一键脚本安装开启无线ADB1.3升级地图可以直接安装安波福直装版地图可以使用手机termux移除内置地图后,安装卸载任何版本的高德地图1.4安装软件、调优连接无线ADB后,可通过应用管家、手机甲壳虫软件安装、软件全屏调整等操作。2、详细步骤2.1识别车机系统打开车机系统设置-多次点击版本号出现密码框,输入密码,根据密码可判断车机版本*#34434ab *#4435ab *#1138ab *#1831aa能够进入,为安波福车机2.2安装无线ADB工具{message type="success" content="安装无线ADB工具无风险"/}2.2.1、使用笔记本电脑安装无线ADB工具1)90APT笔记本一键包4.0.10更新时间2025.3.5从网盘下载,里面有说明 https://www.bilibili.com/video/BV1YQidYGEFA/ 2)工程模式小助手 从网盘下载,里面有说明2.2.2、使用DNS方法免费DNS免费安波福调试模式ADB DNS 115.120.216.97 验证时间20250317正常本DNS为免费DNS,由90APT.com提供搭建和教程,点击可查看详细教程,由于免费行为触动车圈某些收费人的利益,群号和DNS持续被举报,因此DNS失效时间不确定,收费均为骗子,谨防上当。DNS使用方法1) 车机恢复出厂。准备一个wifi或手机热点,提供一个稳定的WIFI网络2) 准备第二部手机,第二部需要连接上面的wifi并且能够同时共享热点3) 二部手机的wifi修改DNS为免费DNS的IP4) 车辆,车辆连接第二部手机的热点,点击智能手册,即可安装工装工程模式使用ADBDNS是否有效验证方法https://www.bilibili.com/video/BV1YnwVe9ERD/ DNS简单测试这种是挂了,无响应nslookup dzsms.gwm.com.cn 81.68.72.155 DNS request timed out. timeout was 2 seconds. 服务器: UnKnown Address: 81.68.72.155 DNS request timed out. timeout was 2 seconds. DNS request timed out. timeout was 2 seconds. DNS request timed out. timeout was 2 seconds. DNS request timed out. timeout was 2 seconds. *** 请求 UnKnown 超时这种是成功,返回了IPnslookup dzsms.gwm.com.cn 115.120.216.97 服务器: Address: 115.120.216.97 名称: dzsms.gwm.com.cn Address: 115.120.216.972.2.2、自行搭建无线ADB部署DNS服务器 (开发者王忘杰)可试用国内云服务器或购买国内外云服务器,需要公网IP服务器,90APT开发 更新时间2025.3.5,可安装无线ADB工具只支持alma8、anolis8、opencloudos8操作系统,请先在云服务面板安全组放行 53UDP 443TCP端口curl -O https://gwm.90apt.com/linux/gwm90apt.sh;bash gwm90apt.sh无线ADB部署DNS服务器搭建 https://www.bilibili.com/video/BV16rcUeAEfP2.3安波福地图安装、返回原厂、安装第三方软件2.3.1、直接安装安波福直装版地图 推荐1)直接安装安波福直装版地图,在90APT网盘中,安波福直装地图通过自带应用商店卸载后还能返回原厂2)你想自己制作直装版地图手机下载MT工具箱免费版、安波福签名文件B站抖音搜索MT工具箱签名教程,自己签名后使用如果地图打不开黑屏退出,启动 系统设置,进行清数据给权限2.3.2、移除内置地图后任意安装卸载地图{alert type="error"}高风险,后果自负{/alert}看视频 https://www.bilibili.com/video/BV1rNAkenEdr/1)基础准备车机准备车机安装调试模式或万能车机无线ADB工具手机准备安卓手机从网盘安装甲壳虫、termux,下载地图app放在手机里,确保后缀是.apk,下面的命令均在termux中执行{message type="info" content="如果你有旧的甲壳虫、termux,全部卸载掉用网盘里的"/}termux中执行pkg install android-tools -y2)机连接手机热点,开启无线ADB开关,查询IP{message type="info" content="车机ADB只允许一个设备连接,你用甲壳虫连接后,termux会连不上,需要先退出甲壳虫。"/}termux中执行连接IP,写无线ADB开关里提示的IP和端口,无线ADB默认端口是5555,调试模式端口可能是12888adb connect IP地址:5555举例adb connect 192.168.1.1:5555 adb connect 192.168.1.1:12888查看当前连接的设备是否连接成功,成功后进行后续操作adb devices3)移除内置地图移除内置地图 (开发者小刀){message type="success" content="此步骤无风险,只是移除内置地图,车机就没有地图了"/}termux中执行adb shell pm clear com.autonavi.amapauto;adb root;adb wait-for-device;adb remount;adb root;adb wait-for-device;adb remount;adb shell am force-stop com.autonavi.amapauto;adb shell am force-stop com.autonavi.amapauto;adb shell rm -rf /system/app/Navigation;adb shell rm -rf /system/app/Navigation;adb shell rm -rf /system/app/AutoMap;adb shell rm -rf /system/app/AutoMap;adb reboot4)任意安装地图上面移除内置地图之后就,后续安装地图就用甲壳虫就行了,注意先卸载在安装车机连接手机热点,开启无线ADB开关,甲壳虫安装地图{alert type="warning"}每次安装地图后必须进行清数据给权限启动 设置app ,进行清数据给权限{/alert}{message type="success" content="此步骤无风险"/}5)地图全屏、状态栏、导航栏显示安装应用管家后可以设置软件沉浸式使用甲壳虫命令可以设置软件全屏全屏沉浸:adb shell settings put global policy_control immersive.full=com.autonavi.amapauto沉浸状态栏:adb shell settings put global policy_control immersive.status=com.autonavi.amapauto沉浸导航栏:adb shell settings put global policy_control immersive.navigation=com.autonavi.amapauto清除上面的效果:adb shell settings put global policy_control null高德地图车机版8.1公众版不适配飞屏卡片若升级后高德地图8.1声音异常、无声、声音巨大先清空高德地图APP数据、给予权限,然后调整声道,高德声道第一个选10或11,第二个1,第七个1,第14个1,第17个1高德设置-播报图标连续点击10次-进入隐藏设置 https://www.bilibili.com/video/BV1GQApeEEgx/6)还原原厂7.1.7终极方法:{message type="success" content="此步骤安全"/}去4S刷回原车系统方法一: 安波福直装版(开发者努力){message type="success" content="此步骤无风险"/}使用应用管家直接安装7.1.7.1232原厂包、高德地图努力安波福7.1.7.1232原厂方法二: (开发者Desire)修改系统文件有风险,谨慎操作,风险自行承担!{message type="error" content="此步骤高风险,目前有两位车友黑屏车机故障,可能是操作错误,无法判定具体原因"/}1、车机安装应用管家1.5.6公签版(任意应用管家内文件下载选项内可进入下载)需授权ADB或ROOT权限。车机无法覆盖安装的话,使用手机甲壳虫覆盖安装(1) 1.5.6 网盘链接:https://www.123912.com/s/F1skjv-65BGd?提取码:1234(2) 应用管家截图(注意系统要显示可写入,不显示则无权限)(3) 若提示无权限可在《实验室》选项中提权并挂载为读写2、提取原版文件夹压缩并放入123网盘,使用U盘无需压缩(可在4038U盘刷机包,system.img 文件内提取)(1) 安波福123云盘链接:https://www.123912.com/s/F1skjv-czBGd?提取码:12343、使用应用管家的网络存储功能将123网盘挂载好,找到相应的地图压缩文件,下载,解压,应用管家下载解压后在Download文件夹内,(没挂载的先点添加)(1) 应用管家截图4、解压《7.1.7(安波福).zip》文件(1) 应用管家截图(2) 完成后将整个Automap 文件夹放入《根文件→system→app》文件夹内,此时发现文件夹内无文件,需要修改文件夹权限为313(第一列打三个√,第二列只有第一个打√,第三列打三个√,选择应用于子文件夹)5、重启车机,恢复7.1.7,无需清楚数据和权限,正常使用6、备注:需要删除《根文件→system→app》和《根文件→data→app》内高德的文件夹,注意不要删除错了。7)其他软件安装可使用调试模式 推送可使用甲壳虫 安装可使用应用管家 安装{lamp/}其他软件遮挡调整、高德地图升级调整、开机自启动亿连1、软件全屏1)使用应用管家设置沉浸式2)甲壳虫运行ADB命令软件名从甲壳虫查全屏沉浸: adb shell settings put global policy_control immersive.full=软件1,软件2 沉浸状态栏: adb shell settings put global policy_control immersive.status=软件1,软件2 沉浸导航栏: adb shell settings put global policy_control immersive.navigation=软件1,软件2 我们还可以单独控制哪些app不沉浸,例如以下代码设置google即时桌面不沉浸,其他程序沉浸: adb shell settings put global policy_control immersive.full=apps,-com.google.android.googlequicksearchbox 如果想恢复到正常模式,运行下面的代码: adb shell settings put global policy_control null2、亿连自动启动安装自动启动APK,使用ADB命令设置软件全屏,勾选亿连设置自动启动即可3、CarLife群里和网盘中有此应用,手机互联更快更稳定4、百度地图车机版32位32位版本不卡顿,只用来巡航,自动进入巡航,显示的红绿灯比高德多,能显示前面三个路口的红绿灯,非常好32位https://opn.baidu.com/map/2024/carmapbaidux32?tpltype=1{lamp/}三、更多1、一部安卓手机实现服务器功能,直接给车机装无线ADB调试工具{message type="warning" content="此步骤可能有风险,不是高手别整"/}手机插SIM卡后开热点,车机连接热点,点击智慧手册即可 https://www.bilibili.com/video/BV14vk2Y9EzA/ 注意,手机root后失去保修,量力而行。 技术架构部署服务我使用的是红米note7pro,解锁BL安装面具magisk,注入boot,刷入,获取root权限tsu后成功获取root权限激活自带的Systemless Hosts模块下面文件均需root权限编辑sudo su修改hosts文件,劫持dzsms.gwm.com.cn请求路径 /data/adb/modules/hosts/system/etc/hostsIP为手机热点的IP,可以用其他手机连上看看网关我这里红米为192.168.43.1 dzsms.gwm.com.cn保存重启手机,面具会将这个hosts文件作为系统请求的hosts部署nginx服务,将需要的代码和脚本都放入指定手机中,使用root运行nginx测试安装nginxpkg install nginx无线ADB工具放置位置,命名为 3.0.apk/data/data/com.termux/files/usr/share/nginx/html/3.0.apkssl证书放置位置/data/data/com.termux/files/usr/etc/nginx/cert.pem/data/data/com.termux/files/usr/etc/nginx/key.pem配置文件/data/data/com.termux/files/usr/etc/nginx/nginx.confuser root; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 80; listen 443 ssl; server_name gwm.90apt.com; server_name dzsms.gwm.com.cn; server_name hzsms.gwm.com.cn; ssl_certificate /data/data/com.termux/files/usr/etc/nginx/cert.pem; ssl_certificate_key /data/data/com.termux/files/usr/etc/nginx/key.pem; ssl_prefer_server_ciphers on; ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_session_cache shared:SSL:5m; ssl_session_timeout 5m; keepalive_timeout 75s; keepalive_requests 100; root /data/data/com.termux/files/usr/share/nginx/html; gzip off; charset utf-8; location / { index index.html index.htm index.php; autoindex on; charset utf-8; } location /apiv2/car_apk_update { default_type application/json; return 200 '{ "code": 200, "message": "\u67e5\u8be2\u6210\u529f", "data": { "apk_version": "99999", "apk_url": "https://dzsms.gwm.com.cn/3.0.apk", "apk_msg": "90APT提供,不欢迎哈弗益达使用", "isUpdate": "Yes", "apk_forceUpdate": "Yes", "notice": { "vin_notice": [ "VIN码可以在仪表板左上方(前风挡玻璃后面)和车辆铭牌上获得。", "本应用适用于2019年及之后生产的车型。" ], "add_notice": [ "制造年月可通过车辆铭牌获得。", "本应用适用于2019年及之后生产的车型。" ] }, "notice_en": { "vin_notice": [ ], "add_notice": [ "The date can be obtained from the certification label." ] } } }'; }} # another virtual host using mix of IP-, name-, and port-based configuration # #server { # listen 8000; # listen somename:8080; # server_name somename alias another.alias; # location / { # root html; # index index.html index.htm; # } #} # HTTPS server # #server { # listen 443 ssl; # server_name localhost; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m; # ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; # location / { # root html; # index index.html index.htm; # } #} } 使用root权限启动nginxsudo nginx此手机开启热点后,其他设备连接后访问https://dzsms.gwm.com.cn/ 能显示3.0.apk即为成功直接实战手机升级高德地图8.1长城三代哈弗H6哈弗大狗坦克300安波福华阳笔记本一键部署3.1DNS工程模式跑代码 https://www.bilibili.com/video/BV14vk2Y9EzA/2、原理解析https://www.bilibili.com/video/BV1eXCAYjEi5/ ADB在哪里在第三代哈弗H6车机中,ADB程序位于工程模式中,在2021、2022出厂的车固件中内置,2023年起移除;这个程序只有厂家有,我们可以从2023之前的系统中,用ADB工具将工程模式APP导出。完成第一项:获得ADB程序车机有没有对外请求数据由于没有了ADB程序,我们是无法安装工程模式到车机中的,这时候就需要利用哈弗车机的一个漏洞,即智能手册APP证书无验证漏洞。进入智能手册APP后,APP会向哈弗服务器一个URL发送请求,用来请求最新版本,让车机WIFI连接到我们的设备进行抓包,查看请求状态,智能手册APP会解析JSON格式的回复内容判断是否下载APK升级。完成第二项:获取一个系统漏洞怎么把ADB装进去我们参照官方服务器,自行搭建DNS和web服务器,让车机连到我们的DNS服务器上,进行请求的劫持,这样,我们自己的APP就会被以程序更新的方式发送到车机中进行安装。完成第三项:将ADB注入到车机中,重新取得ADB权限ADB安装软件开启无线ADB或使用有线ADB,都可以使用ADB工具进行软件安装,如安卓内置命令pm、电脑搞机工具箱、手机甲壳虫。3、高德地图车机版修改导航栏遮蔽https://www.bilibili.com/video/BV1Y2ApeDExW/ 1) MT管理器 去除签名校验2) 开发助手 查看布局3) 用Android Killer修改地图文件配置文件位置res\layout\main_map_view.xmlbackground_dark 框架层ui_surface UI层map_surface 地图层android:layout_marginLeft="100.0dip" 左侧避让100dipandroid:layout_marginTop="64.0dip" 上侧避让100dip例如左侧地图层规避、上侧元素层规避 <com.autonavi.amapauto.view.MapSurfaceViewEx android:id="@id/map_surface" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="100.0dip" /> <SurfaceView android:id="@id/ui_surface" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_marginLeft="100.0dip" android:layout_marginTop="64.0dip" />4) 使用MT管理器 重新签名4、把无线ADB软件移动到系统目录,还原不丢失termux中执行连接IP,写无线ADB开关里提示的IPadb connect IP地址查看当前连接的设备是否连接成功,成功后进行后续操作adb devices{message type="info" content="此步骤无风险,但可能移除后无线ADB软件就找不到了,此步骤可以不执行"/}termux中执行adb root;adb wait-for-device;adb remount;adb root;adb wait-for-device;adb remount;adb shell mv /data/app/com.example.xadb* /system/app/;adb shell mv /data/app/com.tencent.sotainstaller* /system/app/;adb shell pm path com.tencent.sotainstaller;adb shell pm path com.example.xadb{lamp/}四、小结OTA后新版本已足够完美,折腾的意义已经不大了
2025年03月20日
13,945 阅读
0 评论
197 点赞
2025-03-20
H3C无线控制器AC主备配置、AP license共享配置 、DHCP服务器Option 43配置
注意:HCL模拟器当前无法完成AP license共享,本文为虚拟机+实际设备演示,虚拟机中无法执行的命令从实际设备中演示。一、环境介绍 0、需求两台无线AC,进行主备配置,希望在AC1宕机掉线的时候,AP自动切换到AC2上,减小网络故障时间,AC license授权进行共享。1、运行环境新华三模拟器HCL v5.10.3实际设备 WX3510X两台2、地址规划AC1管理地址VLAN1 192.168.56.11 模拟器中AC1网页管理地址AC2管理地址VLAN1 192.168.56.12 模拟器中AC2网页管理地址AC1网络地址VLAN100 192.168.100.11 DHCP服务器Option 43配置地址AC2网络地址VLAN100 192.168.100.12 DHCP服务器Option 43配置地址PC地址VLAN110 192.168.110.2 手动获取AP地址VLAN120 192.168.120.x 自动获取phone地址VLAN130 192.168.130.x 自动获取核心交换机 作为上述设备的网关wifi SSID名称 haha 无加密,模拟器不支持输入密码,不支持自动重连wifi3、网络拓扑4、前期配置 仅主要配置核心交换机配置 sysname core dhcp enable vlan 1 # vlan 100 # vlan 110 # vlan 120 # vlan 130 # # dhcp server ip-pool 120 gateway-list 192.168.120.1 network 192.168.120.0 mask 255.255.255.0 option 43 hex 800b000002c0a8640bc0a8640c # dhcp server ip-pool 130 gateway-list 192.168.130.1 network 192.168.130.0 mask 255.255.255.0 # interface Vlan-interface100 ip address 192.168.100.1 255.255.255.0 # interface Vlan-interface110 ip address 192.168.110.1 255.255.255.0 # interface Vlan-interface120 ip address 192.168.120.1 255.255.255.0 # interface Vlan-interface130 ip address 192.168.130.1 255.255.255.0 # interface GigabitEthernet1/0/11 port link-mode bridge port link-type trunk port trunk permit vlan all combo enable fiber # interface GigabitEthernet1/0/12 port link-mode bridge port link-type trunk port trunk permit vlan all combo enable fiber # interface GigabitEthernet1/0/21 port link-mode bridge port access vlan 120 combo enable fiber # interface GigabitEthernet1/0/31 port link-mode bridge port access vlan 110 combo enable fiberAC1配置 sysname AC1 # vlan 1 # vlan 100 # vlan 130 # wlan service-template haha ssid haha vlan 130 service-template enable # interface Vlan-interface1 ip address 192.168.56.11 255.255.255.0 # interface Vlan-interface100 ip address 192.168.100.11 255.255.255.0 # interface GigabitEthernet1/0/0 port link-mode bridge combo enable fiber # interface GigabitEthernet1/0/11 port link-mode bridge port link-type trunk port trunk permit vlan all combo enable fiber # ip route-static 0.0.0.0 0 192.168.100.1 line vty 0 31 user-role network-operator sys user-group system # local-user admin class manage password hash 密码 service-type http authorization-attribute user-role level-15 authorization-attribute user-role network-operator # local-user ip class manage authorization-attribute user-role network-operator # ip http enable # wlan auto-ap enable wlan auto-persistent enable # wlan ap-group default-group vlan 1 # wlan virtual-ap-group default-virtualapgroup # wlan ap ap1 model WA6320-HCL serial-id H3C_66-C9-40-45-04-00 firmware-upgrade enable vlan 1 radio 1 radio enable service-template haha radio 2 radio enable service-template haha gigabitethernet 1 # return AC2配置 sysname AC2 # vlan 1 # vlan 100 # vlan 130 # wlan service-template haha ssid haha vlan 130 service-template enable # interface Vlan-interface1 ip address 192.168.56.12 255.255.255.0 # interface Vlan-interface100 ip address 192.168.100.12 255.255.255.0 # interface GigabitEthernet1/0/0 port link-mode bridge combo enable fiber # interface GigabitEthernet1/0/12 port link-mode bridge port link-type trunk undo port trunk permit vlan 1 port trunk permit vlan 2 to 4094 combo enable fiber line vty 0 31 user-role network-operator # user-group system # local-user admin class manage password hash 密码 service-type http authorization-attribute user-role level-15 authorization-attribute user-role network-operator # ip http enable # wlan auto-ap enable wlan auto-persistent enable # wlan ap-group default-group vlan 1 # wlan ap ap1 model WA6320-HCL serial-id H3C_66-C9-40-45-04-00 firmware-upgrade enable vlan 1 radio 1 radio enable service-template haha radio 2 radio enable service-template haha gigabitethernet 1 # return PC手动固定IPphone链接wifi,自动获取IP测试前期配置后,能够完成设备的PC ping 通phone二、AC主备配置 主AC配置 在我文章演示的环境中,希望主AC的全部AP都能切换到备用AC中,那么主AC仅需要配置默认AP组的优先级即可,配置优先级为7(默认为4),配置备用AC地址,配置CAPWAP主动隧道抢占功能。wlan ap-group default-group priority 7 backup-ac ip 192.168.100.12 wlan tunnel-preempt enable备用AC配置在我文章演示的环境中,备用AC需在默认AP组中声明自己是主AC的备份,配置CAPWAP主动隧道抢占功能。wlan ap-group default-group backup-ac ip 192.168.100.11 wlan tunnel-preempt enable二、AP license共享 模拟器中无法执行,配置为实际设备local 为自身member 为成员主AC配置wlan ap-license-group local ip 192.168.100.11 member ip 192.168.100.12 ap-license-synchronization enable 备用AC配置wlan ap-license-group local ip 192.168.100.12 member ip 192.168.100.11 ap-license-synchronization enable 三、DHCP服务器Option 43配置 如使用H3C作为DHCP服务器,则Option43配置如下H3C官方手册https://www.h3c.com/cn/Service/Document_Software/Document_Center/Home/Server/00-Public/Configure/Typical_Configuration_Example/DHCP_Option_43_CE-9895/#示例1: 采用PXE格式配置1个AC IPv4地址时(AC:10.23.200.1),Option选项内容各字段的配置如下。 · 80:Sub-option type,表示PXE格式的固定值。 · 07:Sub-option length,此处后面所跟数据为0000010a17c801,所以长度为7个字节。 · 0000:固定值,不可改变。 · 01:表示其后面AC IPv4地址的个数,此处为1个IPv4地址。 · 0a17c801:表示AC的十六进制IPv4地址。 最终在DHCP服务器的DHCP地址池视图下配置为option 43 hex 80070000010a17c801。 示例2: 采用PXE格式配置2个AC IPv4地址时(AC 1:10.23.200.1,AC 2:10.23.200.2),Option选项内容各字段的配置如下。 · 80:Sub-option type,表示PXE格式的固定值。 · 0b:Sub-option length,此处后面所跟数据为0000020a17c8010a17c802,所以长度为11个字节。 · 0000:固定值,不可改变。 · 02:表示其后面AC IPv4地址的个数,此处为2个IPv4地址。 · 0a17c8010a17c802:0a17c801表示AC 1的十六进制IPv4地址,0a17c802表示AC2的十六进制IPv4地址。 最终在DHCP服务器的DHCP地址池视图下配置为option 43 hex 800b0000020a17c8010a17c802。核心交换机实际配置,IP转换十六进制请自行百度dhcp server ip-pool 120 gateway-list 192.168.120.1 network 192.168.120.0 mask 255.255.255.0 option 43 hex 800b000002c0a8640bc0a8640c四、配置文件手动同步 在本文中的AC主备配置、AP license共享配置,是无法进行主备AC配置同步的,需要手动在备用AC中添加AP每次上线新AP,都需要手动在AC2中创建一次AP第一步将备用AC中MAC上线的名字修改为主AC中AP的名字wlan rename-ap 66C9-4045-0400 ap1第二步复制AC1中ap1的配置文件覆盖到AC2wlan ap ap1 model WA6320-HCL serial-id H3C_66-C9-40-45-04-00 firmware-upgrade enable vlan 1 radio 1 radio enable service-template haha radio 2 radio enable service-template haha gigabitethernet 1五、测试 PC持续ping phone当前AP在主AC上线,左侧为主此时断开主AC网络AP会在60秒内切换到备用AC上线因为模拟器不支持phone自动连接,所以需要手动让phone再次连接网络,随后ping恢复主AC恢复因模拟器限制无法演示,理论上主AC优先级高,主AC恢复后,AP会从备用AC返回主AC上线六、小结 新华三就是好啊查找资料时发现文档小BUG,已反馈H3C
2025年03月20日
245 阅读
0 评论
2 点赞
2025-03-05
VeeamBackup&Replication11 + SAPHANA COCKPIT备份恢复综合实验
Veeam卫盟是什么?Veeam在 Gartner 2021年“企业备份与恢复软件解决方案”魔力象限,同时也是Veeam 第五次入选领导者象限,实力和地位毋庸置疑。Veeam的官网为 https://www.veeam.com/cn/Veeam与其他备份软件的对比 https://www.veeam.com/cn/backup-software-comparison-for-small-business.html勒索软件猖獗,备份非常重要SAP HANA是什么?SAP HANA(高性能分析工具)是一款将数据存储在内存而不是硬盘的多模型数据库。这款列式内存数据库支持企业在同一系统中执行快速的事务处理和先进的分析处理。为什么 SAP HANA 如此重要?因为该产品支持企业近乎零延迟地处理海量数据,即时查询数据,并真正实现由数据驱动。SAP HANA 拥有独特的优势。该平台将数据存储在主内存的列存储表中,并且集联机分析处理 (OLAP) 和联机事务处理 (OLTP) 于一体,处理速度比目前市场上的其他数据库管理系统 (DBMS) 快很多。实验目标1、windows平台+linux存储库架构部署2、虚拟机备份还原3、物理机完全崩溃还原4、应用感知、数据库备份还原5、SAP数据库安装配置SAP备份插件6、接入SAP COCKPIT7、SAP HANA数据库备份还原8、故障处理9、升级veeam10、升级veeam hana插件实验环境windows2022+Alma8搭建备份系统vSphere7下进行windows2016虚拟机备份还原Centos7系统进行rm -rf /*,模拟系统完全崩溃,物理机恢复windows2016系统安装sqlserver2014进行数据库感知、备份、还原运行HANA数据库的SLES系统一套正常运行的SAP COCKPIT系统一、windows2022+Alma8搭建备份系统从官网下载Veeam Backup & Replication 11 其中免费社区版提供10个工作负载,而企业版购买后授权50个起步,本次实验使用社区免费版搭建https://www.veeam.com/cn/downloads.htmlwindows2022配置为 8cpu 16Gram 200G硬盘Alma8配置为 8cpu 16Gram 200G系统盘+1T存储盘1、安装windows平台软件,Veeam安全包包含所需的全部组件,按提示下一步直至安装完成2、部署Alma8存储库查看当前磁盘信息,1T的硬盘是我们的目标[root@alma8 ~]# fdisk -l Disk /dev/sda: 200 GiB, 214748364800 bytes, 419430400 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: A2B91132-AE20-4646-8C52-9DACFD8A31AF Device Start End Sectors Size Type /dev/sda1 2048 1230847 1228800 600M EFI System /dev/sda2 1230848 3327999 2097152 1G Linux filesystem /dev/sda3 3328000 419428351 416100352 198.4G Linux LVM Disk /dev/sdb: 1 TiB, 1099511627776 bytes, 2147483648 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes创建分区[root@alma8 ~]# fdisk /dev/sdb Welcome to fdisk (util-linux 2.32.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0xf70aaad4. Command (m for help): n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): Using default response p. Partition number (1-4, default 1): First sector (2048-2147483647, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (2048-2147483647, default 2147483647): Created a new partition 1 of type 'Linux' and of size 1024 GiB. Command (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.查看创建后的分区[root@alma8 ~]# fdisk -l /dev/sdb Disk /dev/sdb: 1 TiB, 1099511627776 bytes, 2147483648 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xf70aaad4 Device Boot Start End Sectors Size Id Type /dev/sdb1 2048 2147483647 2147481600 1024G 83 Linux创建文件系统[root@alma8 ~]# mkfs.xfs -b size=4096 -m reflink=1,crc=1 /dev/sdb1 meta-data=/dev/sdb1 isize=512 agcount=4, agsize=67108800 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=0 = reflink=1 data = bsize=4096 blocks=268435200, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1 log =internal log bsize=4096 blocks=131071, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 Discarding blocks...Done.创建挂载目录,挂载,设置开机启动挂载,重启确认挂载是否正常[root@alma8 ~]# mkdir /mnt/veeamRepo [root@alma8 ~]# mount /dev/sdb1 /mnt/veeamRepo/ [root@alma8 ~]# df -hT /dev/sdb1 Filesystem Type Size Used Avail Use% Mounted on /dev/sdb1 xfs 1.0T 7.2G 1017G 1% /mnt/veeamRepo [root@alma8 ~]# blkid /dev/sdb1 /dev/sdb1: UUID="b805dd02-9105-4ddc-ad64-1004e01d10cb" BLOCK_SIZE="512" TYPE="xfs" PARTUUID="f70aaad4-01" [root@alma8 ~]# vi /etc/fstab UUID=b805dd02-9105-4ddc-ad64-1004e01d10cb /mnt/veeamRepo xfs defaults 0 0添加Veeam专属用户,为目标目录配置权限[root@alma8 ~]# useradd -d /home/VeeamRepo -m VeeamRepo [root@alma8 ~]# passwd VeeamRepo Changing password for user VeeamRepo. New password: Retype new password: passwd: all authentication tokens updated successfully. [root@alma8 ~]# chown VeeamRepo:VeeamRepo /mnt/veeamRepo/ [root@alma8 ~]# chmod 700 /mnt/veeamRepo/ [root@alma8 ~]# ls -l /mnt/ total 0 drwx------. 2 VeeamRepo VeeamRepo 6 Jun 24 19:44 veeamRepo为VeeamRepo用户配置sudo权限,此权限是为了安装veeam存储库软件,后面安装完会取消[root@alma8 ~]# visudo ## Allow root to run any commands anywhere root ALL=(ALL) ALL VeeamRepo ALL=(ALL) ALL3、在veeam平台添加Backup Repository存储库存储库系统类型linux存储库命名添加服务器目标IP目标用户名密码保存ssh指纹点击Populate可查看分区情况选择保存位置、开启XFS fast cloning、开启7天内防删除添加完成4、关闭linux sudo用户[root@alma8 ~]# visudo ## Allow root to run any commands anywhere root ALL=(ALL) ALL #VeeamRepo ALL=(ALL) ALL查看linux上veeam进程信息[root@alma8 ~]# ps aux | grep veeam VeeamRe+ 8874 0.0 0.1 1348496 19640 ? Ssl 20:01 0:00 /opt/veeam/transport/veeamtransport --run-service root 8878 0.0 0.0 100212 7168 ? Sl 20:01 0:00 /opt/veeam/transport/veeamtransport --run-environmentsvc 7:6 root 8880 0.1 0.0 167304 4600 ? Sl 20:01 0:00 /opt/veeam/transport/veeamimmureposvc --subprocess --log /var/log/VeeamBackup --stdio 9:7 root 9657 0.0 0.0 221928 1152 pts/0 S+ 20:10 0:00 grep --color=auto veeam添加linux存储库后,可将windows上默认的存储库删除二、vSphere7下进行windows2016虚拟机备份还原1、接入vCenter,按提示下一步即可添加完成2、创建备份计划配置定时执行策略我这里仅执行一次备份中备份完成可查看备份报告3、快速恢复veeam快速恢复功能,可以在通过挂载备份库的方式直接拉起虚拟机,快速恢复业务可以选择要恢复的时间点,默认为最后一次备份覆盖原虚拟机还是新建虚拟机如果原虚拟机还在线,那么快速恢复的虚拟机不要同时连接网络,防止IP冲突虚拟机已经快速上线注意:此方法同样可以用于物理机到虚拟机(P2V)的停机转换此时我们可以在veeam选择将所有文件迁移到虚拟化,或者关闭这个虚拟机三、物理机Centos7系统进行rm -rf /*模拟系统完全崩溃备份还原对物理机centos7系统进行完全备份,此时需要添加物理机备份组和策略对系统执行破坏操作,重启后无法进入系统rm -rf /*恢复方案一:将备份挂载到虚拟化快速恢复业务挂载到虚拟机后需要重新配置网络恢复方案二:通过恢复镜像对物理机进行完全恢复物理机制作 veeam-recovery-media-5.0.2.4567_x86_64.iso 启动盘并启动同意协议设置网络选择卷还原,链接到veeam平台选择还原点还原中还原完成,移除启动盘,此时业务已经完全恢复四、windows2016系统安装sqlserver2014进行数据库感知备份还原添加2016系统,并开启应用感知,接入虚拟化和物理机都可以如果系统管理员也是数据库管理员,那么只需要配置系统管理员账号密码;如果系统管理员不是数据库管理员,那么还需要单独配置sa用户立即进行备份模拟黑客攻击,删除3个数据库通过veeam进行sql数据库单独恢复,需要开放数据库1433端口快速挂载成功五、centos7安装配置SAP备份插件进行SAP备份时需要将存储库的访问设置为管理员访问登录hdbstudio查看当前数据库状态1、上传、安装、配置SAP插件exp-hana:~ # ls .ICEauthority .cache .hdb .viminfo Downloads Public Videos .Xauthority .config .local Desktop Music Templates bin .bash_history .gnupg .ssh Documents Pictures VeeamPluginforSAPHANA-11.0.1.1261-1.x86_64.rpm inst-sys 安装插件 exp-hana:~ # rpm -ivh VeeamPluginforSAPHANA-11.0.1.1261-1.x86_64.rpm Preparing... ################################# [100%] Updating / installing... 1:VeeamPluginforSAPHANA-11.0.1.1261################################# [100%] Run "SapBackintConfigTool --wizard" to configure the Veeam Plug-in for SAP HANA 配置插件 exp-hana:~ # SapBackintConfigTool --wizard Enter backup server name or IP address: 172.16.21.118 Enter backup server port number [10006]: Enter username: administrator Enter password for administrator: Available backup repositories: 1. Backup Repository linux Enter repository number: 1 Configuration result: SID EDB has been configured 查看插件配置 exp-hana:~ # SapBackintConfigTool --show-config Backup server name: 172.16.21.118 Port: 10006 User name: administrator Domain: Repository: 1. Backup Repository linux Delete orphaned backups after (days): Disabled Restore from copy: Disabled Source server: Disabled Source repository: Disabled2、进行HANA数据库接入Veeam登录hdbstudio控制台,打开备份管理终端backup console确认接口对接正常,配置日志记录方式为backint启动全局控制管理台open administration启用catalog和log的备份接口双击修改为true修改完成在备份还原中可以查看当前所有租户库当前数据库有一个系统数据库和两个租户数据库3、查看Veeam控制台,会生成HANA backint任务,log和catalog同步存储到Veeam中六、接入SAP COCKPIT登录SAP COCKPIT管理控制台,我们要接入的目标数据库为172.16.10.240,接入三个数据库EDBsystemdb、E4T、EDB1、登录Cockpit Manager管理控制台,将上面三个数据库注册到Cockpit中2、注册系统数据库填写相关信息创建备份专用用户注册成功3、分别注册两个租户数据库七、SAP HANA数据库备份还原登录Cockpit Manager操作控制台1、这次添加的三个为正式数据库点击查看数据库状态,首次添加需验证保存凭证,点击Credentials和SAP Control Credentials分别验证SAP Control Credentials为数据库管理员edbadm,Credentials为SYSTEM用户保存凭证后,点击数据库可查看详细信息并配置备份计划和备份选项2、配置备份选项Backup Configuration开启备份计划启用保留策略启用启动删除备份,保留60天,最低保存2个备份,删除时同时删除本地和backint文件,备份选项配置完成3、配置备份计划Backup Schedules创建备份计划每天11:08完全备份到backint创建完成4、登录Veeam观察备份状态备份中cockpit观察备份状态备份完成5、还原测试登录hdbstudio,还原租户库E4T停止数据库选择备份Veeam显示为恢复任务恢复完成八、故障处理故障一当有一天你的veeam使用中报错无法打开,出现如下错误,不必惊慌此故障是因为veeam默认安装的数据库版本是sqlserver2016 Express,此版本的数据库有体积限制,上面的报错触发上限了,升级为开发版或企业版后无限制,即可解决问题故障二当有一天你升级veeam时,升级包提示错误,不必惊慌一般情况下是因为授权文件导致的C:\Program Files\Common Files\Veeam\VeeamLicense.dll根据以往的经验,“VeeamLicense.dll 把这文件重名名,升级成功之后再 重名名回去就好了升级完成故障三进行备份时提示LvmDriver: Failed to create LVM instance.按官方说明在 /etc/lvm/lvm.conf中添加units="h"故障四进行SAP备份时,周期性出现"Backint process was canceled due to a connection timeout"错误,出现时间与SAP备份任务相同,具有关联性联系veeam亚洲技术支持得知,Backup Repositories默认有并限制,取消并发限制后正常https://helpcenter.veeam.com/archive/backup/110/vsphere/limiting_tasks.htmlLimit maximum concurrent tasks to:4九、Veeam11升级Veeam121、下载12安装包注册下载Veeam Backup & Replication 12.2版 : 12.2.0.334大小 : 12.3 GBhttps://www.veeam.com/cn/products/downloads/latest-version.html?ad=downloads&tab=currentMD5:70d4688a70d92287ff9bbf0e6bce9b19SHA1:0edeb141af8ddd368a9e6dac1fdbae15e0e55c55下载完一定要核对MD52、升级安装无特殊注意事项,升级后默认是社区版,再加载11的授权文件即可3、升级后按提示进行组件的升级即可十、Veeam12.2升级Veeam12.3升级方式相同,无特别注意事项 SAP HANA插件升级 从安装包找到插件 rpm -Uvh VeeamPluginforSAPHANA-12.3.0.310-1.x86_64.rpm SapBackintConfigTool --wizard Enter backup server name or IP address [x.x.x.x]: Enter backup server port number [10006]: Enter username [administrator]: Enter password for administrator [(do not change the existing password)]: Available backup repositories: 1. Backup Repository linux Enter repository number [1]: 1 Configuration result: SID XXX has been configured SID XXX has been configured 完成完毕一键三连
2025年03月05日
827 阅读
0 评论
3 点赞
2025-02-19
Zabbix运维监控系统对接ollama deepseek 本地AI大模型进行故障告警分析企业微信机器人webhook推送
前言 大家好,我是王忘杰,刷到社区一篇zabbix与AI结合的文章,感觉与AI结合的方向对了 Zabbix运维监控系统与AI大模型交互实践分享 随后整理思路,考虑如何以合理的方式来进行故障告警AI分析故障AI分析发送到企业微信可能存在以下问题:1、不能使用企业微信应用的方式发送,企业微信应用是对用户一对一发送,每发送一次就要调用一次AI,应当使用企业微信机器人的方式,发送到群里,这样仅发送一次就行了。2、AI服务器可能存在故障,脚本必须能够处理故障,防止因为服务器故障导致告警无法接收3、AI问答速度必须足够快,并且要限制字数,如果AI响应缓慢并且长篇大论,则会失去时效性。aiwebhook脚本设计思路实际效果展示一、前提准备 首先,你应当本地部署了zabbix告警系统,如果你还不会,可以查看王工相关教程 ALMA Linux 8飞速搭建zabbix6LTS、微信邮箱短信报警、windows、linux、交换机、vCenter监控、grafana面板、modbus动环采集、ZbxTable分析系统、Mysql、MSsql数据库监控、分组报警 https://90apt.com/2982其次,你应当本地部署了ollama开源大模型,如果你还不会,可以查看王工相关教程 个人电脑 服务器 快速部署深度求索DeepSeek-R1本地大模型 https://90apt.com/5370你的zabbix服务器上,必须使用python3.8及以上版本,安装ollama库和requests库 ollama python库 https://github.com/ollama/ollama-python ollama python库Python: 安装 Python 3.8 或更高版本。pip: 确保已安装 pip,Python 的包管理工具。ollama 库: 用于更方便地与 Ollama API 交互。安装命令如下:pip install ollama pip install requests可以使用ollama-python示例代码进行测试from ollama import Client client = Client( host='http://localhost:11434', headers={'x-some-header': 'some-value'} ) response = client.chat(model='qwen2.5:1.5b', messages=[ { 'role': 'user', 'content': '王忘杰是谁?', }, ]) print(response) 以上准备好,我们继续二、软件开发 企业微信webhook代码我从百度搜索,找篇文章 zabbix基于webhook发送到企业微信 https://blog.csdn.net/u010533742/article/details/109068187结合ollama-python示例代码,进行组合开发aiwebhook.py#!/bin/python3.8 import requests import sys import json from ollama import Client class WechatImage(object): # 发送消息 def send_news_message(self, qwurl, subject, content, strairesponse): url = qwurl data = { "msgtype": "markdown", "markdown": { "content": subject + '\n' + content + '\nAI分析\n' + strairesponse } } headers = {'content-type': 'application/json'} reponse = requests.post(url, json.dumps(data), headers=headers) return reponse if __name__ == '__main__': qwurl = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=00000000000000000000000' #替换为企微的专用地址 subject = str(sys.argv[2]) content = str(sys.argv[3]) try: client = Client( host='http://locahost:11434', #ollama地址 headers={'x-some-header': 'some-value'}, timeout = 10 #超时时间 ) airesponse = client.chat(model='qwen2.5:1.5b', messages=[ #选择的模型 { 'role': 'user', 'content': "你是一个专业的IT工程师,简短简洁的告诉我下面信息的原因和处理措施,字数控制在100字以内" + content}, #提示词 ]) strairesponse = str(airesponse['message']['content']) #print(strairesponse) except: strairesponse = "\nAI超时,请检查AI后端" #超时处理 wechat_img = WechatImage() wechat_img.send_news_message(qwurl, subject, content, strairesponse) print("执行完毕") 代码中model='qwen2.5:1.5b'为模型,如果使用deepseek,可以根据显卡配置改为deepseek-r1:1.5b提示词可以自己编辑三、部署测试 1、在企业微信群中创建机器人,获取webhook地址2、将脚本放置到zabbix脚本目录中 /usr/lib/zabbix/alertscripts/aiwebhook.py并给予执行权限 chmod +x aiwebhook.py3、配置zabbix服务器3.1 新建报警媒介管理-媒介-创建媒介类型名称 aiwebhook 类型 脚本 脚本名称 aiwebhook.py 脚本参数 {ALERT.SENDTO} {ALERT.SUBJECT} {ALERT.MESSAGE} 描述 企业微信ai报警3.2 消息模板消息类型 问题 主题 告警通知 消息 主机:{HOST.NAME} 地址:{HOST.IP} 项目:{ITEM.NAME} 取值:{ITEM.LASTVALUE} 等级:<font color="warning">{TRIGGER.SEVERITY}</font> 状态:<font color="warning">{TRIGGER.STATUS}</font> 信息:{TRIGGER.NAME} 时间:{EVENT.DATE} {EVENT.TIME} 事件ID:{EVENT.ID}消息类型 问题恢复 主题 恢复通知 消息 主机:{HOST.NAME} 地址:{HOST.IP} 项目:{ITEM.NAME} 取值:{ITEM.LASTVALUE} 等级:<font color="info">{TRIGGER.SEVERITY}</font> 状态:<font color="info">{TRIGGER.STATUS}</font> 信息:{TRIGGER.NAME} 时间:{EVENT.DATE} {EVENT.TIME} 事件ID:{EVENT.ID}3.3 触发器动作配置-动作-触发器动作-创建动作发送给管理员操作添加 操作和恢复操作操作恢复操作4、重启一台闲置业务,触发告警完成四、小结 王工666
2025年02月19日
414 阅读
0 评论
4 点赞
2025-02-16
windows PC/服务器使用技巧、经验记录
1、关闭“幽灵”和“熔断”漏洞防护可恢复部分性能,有风险:https://www.grc.com/inspectre.htm2、Chrome开启多线程下载在地址栏输入 chrome://flags/,然后在搜索框中输入 Parallel downloading,选择enabled,重启Chrome3、如何在 Windows 上查看 HEIC 格式照片?https://www.microsoft.com/en-us/p/heif-image-extensions/9pmmsr1cgpwg?activetab=pivot:overviewtab4、win10自动登陆账号打开“设置-账户-登录选项”;取消“需要通过Windows Hello登录Microsoft账户”前面的复选框;点击桌面左下角的搜索栏,输入“netplwiz”,然后右侧点击“以管理员身份运行”;取消“要使用本计算机,用户必须输入用户名和密码”前面的复选框,并根据提示输入正确的账号名和密码;5、关闭休眠文件使用管理员运行cmd,执行:powercfg -h off 6、win10企业版无法访问共享文件夹首先我们按“window R键”打开运行窗口。在该窗口文本输入处输入“gpedit.msc”,这样本地组策略编辑器就能被启动。进入编辑器页面后,找到并点击页面左侧列的“计算机配置”。4.接着点击计算机配置下的“管理模板”选项。然后在管理模板下,依次点开“网络”-“Lanman工作站”。打开“Lanman工作站”后,在页面右侧列找到“启用不安全的来宾登录”。7.双击该选项,并选择“已启用”,再点击“确定”即可。启动不安全的来宾登录7、WIN10 添加自动启动程序无效的解决方案将启动项目加入Hkey_local_machine\software\wow6432node\microsoft\windows\currentversion\run或放入开机启动目录 运行-shell:Common Startup8、WPS右键无新建doc、xls等快捷方式重置插件,重新注册9、使加域的计算机具备本地管理员权限使用本地管理员登录计算机,在本地管理员组中加入域用户10、win11右键管理员菜单样式j经典 reg add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f /ve x新版 reg delete "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}" /f11、命令行禁用UACC:\Windows\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f 0为禁用 1为默认12、win11任务栏展开https://github.com/valinet/ExplorerPatcher/releases13、windows查看wifi无线信号强度netsh wlan show interfaces14、解决FTP因windows防火墙拦截的方法防火墙放行 windows-system32-svchost.exe(windows服务主进程)15、windows远程桌面登录提示内部错误Error Code 0x4微软论坛搜索https://social.technet.microsoft.com/Forums/en-US/f7ed9049-36a5-4def-90f8-14ebb70e6671/error-code-0x4新建注册表项Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server MaxOutstandingConnections DWORD 300016、一键修改远程桌面端口、开放防火墙、开启ping回显REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Remote Assistance" /v "fAllowToGetHelp" reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd\Tds\tcp" /v "PortNumber" /t REG_DWORD /d "0xf3b6" /f reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v "PortNumber" /t REG_DWORD /d "0xf3b6" /f net stop TermService /y net start TermService /y netsh advfirewall firewall add rule name="secrdp" dir=in action=allow protocol=TCP localport=62390 netsh advfirewall firewall add rule name="_Ping" dir=in protocol=icmpv4 action=allow17、配置windows计划任务运行 任务计划程序常规-不管用户是否登录等要运行常规-使用最高权限运行每天每2分钟运行一次触发器操作-启动程序设置-如果此任务已经运行,以下规则适用:停止现有实例18、windows重置SIDC:\Windows\System32\Sysprep勾选通用,等待重启即可18、.NET:这台计算机中已经安装了.net framework 4.8或更高的更新安装.NET Framework 4.8 开发者工具包https://dotnet.microsoft.com/zh-cn/download/visual-studio-sdks19、windows计算md5certutil -hashfile 文件 MD5
2025年02月16日
569 阅读
0 评论
5 点赞
2025-02-16
VMware vSphere 笔记记录
最新版本下载:https://customerconnect.vmware.com/cn/downloads/#all_products1、loading esxi installer 卡死在 loading /lsi_mr3.v00 使用UEFI模式安装2、vSphere Clustering Service (vCLS)虚拟机异常处理 缺少功能进BIOS把MWAIT开启3、vCenter Converter standalone 转换物理机到虚拟机问题 提交任务后,总是停留在1%,进度信息停在:Connecting to the Converter helper server on the destination virtual machine.但是错误提示,一直等待。取消任务后,提示:Unable to connect to the Converter helper server on the destination virtual machine问题解决:因为Converter Server在 vCenter上创建的 helper vm虚拟机的缺省网络设置是自动获取ip地址,而网络上没有可用的dhcp服务,所以Converter Server和helper vm通讯失败。应该在vCenter Converter提交任务前的配置页,静态配置helper vm的ip地址,最好用ipv4,并且和vCenter Converter同网段,速度会更快。————————————————版权声明:本文为CSDN博主「我是超级用户」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/petrosofts/article/details/750034594、VMware EXSI 启用vMotion 选择编辑 VMkernel适配器启用 vMotion功能5、vSphere下载 当前下载还是免费的https://support.broadcom.com/group/ecx/solutionfiles?displayGroup=VMware%20vSphere%20-%20Standard&os=&release=7.0&solution=VMware%20vSphere%20-%20Standard&subfamily=VMware%20vSphere6、vSAN 内部版本建议警报“vSAN 内部版本建议引擎” https://vcsa.vmware.com/ph/api/v1/results?deploymentId=2d02e861-7e93-4954-9a73-b08692a330d1&collectorId=VsanCloudHealth.6_5&objectId=0c3e9009-ba5d-4e5f6-bae8-f25ec506d219&type=vsan-updates-json下载文件,从文件更新7、vSAN 硬件兼容性警报“vSAN HCL 数据库最新版本” https://partnerweb.vmware.com/service/vsan/all.json 下载文件,从文件更新8、vSphere兼容列表 smartX兼容列表 https://compatibilityguide.broadcom.com/https://www.smartx.com/smtxos-compatibility/
2025年02月16日
979 阅读
0 评论
0 点赞
2025-02-06
中小企业快速合规,快速部署开源堡垒机TELEPORT v3.x 解决win11黑屏问题、远程报错
为什么不是JumpServer? 说起开源堡垒机,恐怕JumpServer已经成为了代表,如果中小型企业要部署一台堡垒机,为什么不是JumpServer? 这就要说JumpServer的两个小缺点: 1、大型且繁琐 随着版本的迭代,JumpServer已经变得大型且繁琐,安装、升级、配置维护都成了运维的负担。 2、不支持本地RDP客户端 开源版JumpServer只支持linux发起本地客户端,但不支持windowsRDP客户端,这对中小型企业来说相当不友好 而TELEPORT正是为了解决这个两个痛点而来。官方介绍: Teleport是一款简单易用的开源堡垒机系统,具有小巧、易用的特点,支持 RDP/SSH/SFTP/Telnet 协议的远程连接和审计管理。Teleport由两大部分构成:跳板核心服务 WEB操作界面Teleport非常小巧且极易安装部署:仅需一分钟,就可以安装部署一套您自己的堡垒机系统!!因为Teleport内建了所需的脚本引擎、WEB服务等模块,因此不需要额外安装其他的库或者模块,整个系统的安装与部署非常方便。官方网站: https://tp4a.com/一、安装 1、服务端服务端安装包下载https://tp4a.com/download安装文档https://docs.tp4a.com/install/安装tar -zxvf teleport-linux-3.x.tar.gz cd teleport-linux-3.x sudo ./setup.sh登录初始化即可http://teleport服务器IP:7190/系统界面2、客户端https://tp4a.com/download客户端放置在服务器位置,即可点击页面下载[root@baoleiji ~]# mkdir /usr/local/teleport/data/assist -p [root@baoleiji assist]# ls teleport-assist-macos-3.6.3.dmg teleport-assist-windows-3.6.3.exe二、接入用户 导入域账号 用户-用户管理-设置LDAP三、添加主机 添加主机 资产-主机及账号-添加主机四、添加账号 绑定账号 资产-主机及账号-账号数五、运维授权 创建授权 运维-运维授权-新建授权策略编辑授权策略 添加用户 添加主机六、审计授权-查看录像 审计授权与运维授权相同 审计-审计授权-新建授权策略 添加用户 添加主机查看录像 审计-会话审计-查看回放七、使用方式 普通用户安装客户端后登录浏览器提示时选择打开teleport助手登录主机 运维-主机运维1、windows主机选择合适的分辨率唤醒客户端登陆成功2、linux主机点击SSH唤醒客户端 登陆成功3、其他可在助手设置修改本地客户端类型八、故障处理 1、存在core服务崩溃BUG,可以通过定时任务启动*/10 * * * * /etc/init.d/teleport start2、win11远程黑屏默认路径RDP客户端为 C:\Windows\System32\mstsc.exe黑屏原因由于win11更新RDP客户端程序不兼容,导致TP堡垒机远程黑屏解决方案从win10 LTSC系统中提取RDP客户端程序给win11使用RDP程序所需文件wbem目录、zh-CH目录、mstsc.exe、mstscax.dll我这里放置在D盘mstsc目录下,堡垒机助手指定文件再次远程,恢复正常3、清理录像teleport V3堡垒机快速清除180天前的录像 cd /usr/local/teleport/data/replay/ find . -mtime +180 -exec ls -l {} \; find . -mtime +180 -exec rm -rf {} \;4、远程连接报错核心日志 The server requires that the client support Enhanced RDP Security with CredSSP原因是堡垒机不支持使用RDP协议链接,只能使用SSL在目标服务器上 开始菜单-组策略-计算机配置-管理模板-windows组件-远程桌面服务-远程桌面会话主机-安全-远程(RDP)连接要求使用指定的安全层另外不要开启 仅允许运行使用网络级别身份验证的远程桌面的计算机连接九、总结 开源、快速、功能强大项目捐赠:https://tp4a.com/donate
2025年02月06日
1,465 阅读
0 评论
8 点赞
2025-02-05
个人电脑 服务器 快速部署深度求索DeepSeek-R1本地大模型
一、项目链接 ollamahttps://ollama.com/1Panelhttps://1panel.cn/深度求索DeepSeek-R1https://www.deepseek.com/DeepSeek-R1蒸馏模型https://ollama.com/library/deepseek-r1Anolis OS 8https://openanolis.cn/anolisos二、windows个人电脑本地使用DeepSeek-R1本地大模型 下载ollama windows客户端 https://ollama.com/downloadhttps://github.com/ollama/ollama/releases 安装运行DeepSeek-R1-蒸馏-Qwen-1.5Bollama run deepseek-r1:1.5b我的GTX4060显卡,可以运行DeepSeek-R1-Distill-Llama-8B蒸馏模型,为了演示快速我使用1.5b模型,大小仅为1.1G完整量化模型为ollama run deepseek-r1:671b 404G,跟openai-o1掰手腕的正是他,量化模型与显存几乎1:1,如果运行671b 404G,那么显存也要在671G以上,我的GTX4060仅有8G,所以能使用8b 4.9G模型进行对话终端输入ollama run deepseek-r1:1.5b直接进行对话正确安装显卡驱动的情况下,默认调用显卡退出>>> /? Available Commands: /set Set session variables /show Show model information /load <model> Load a session or model /save <model> Save your current session /clear Clear session context /bye Exit /?, /help Help for a command /? shortcuts Help for keyboard shortcuts Use """ to begin a multi-line message. >>> /bye默认ollama开机启动,可以通过任务管理器关闭三、服务器使用1panel面板快速部署DeepSeek-R1本地大模型 使用龙蜥anolis8系统,部署dockeryum install -y yum-utils #阿里云加速源 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum install docker-ce docker-ce-cli containerd.io systemctl enable --now docker部署1panel面板curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sh quick_start.shdocker镜像 2月5日可用,配置到1panel面板中https://docker.xuanyuan.me安装MaxKB和Ollama应用端口默认不允许外部访问,注意勾选 允许端口外部访问会放开防火墙端口查看Ollama接口密钥,容器日志配置MaxKB登录默认账户密码username:admin password:MaxKB@123..配置deepseek-r1:1.5b添加ollama模型添加自动下载,等待下载完成即可配置使用体验大模型进行对话MaxKB更多功能可查看MaxKB文档自行体验四、windows ollama给外部用为当前windows系统添加环境变量:电脑-属性-高级系统设置-环境变量变量:OLLAMA_HOST,值:0.0.0.0:11434同时加载5个模型变量: OLLAMA_NUM_PARALLEL,值:5变量: OLLAMA_MAX_LOADED_MODELS,值:5模型位置OLLAMA_MODELS,值:E:\ollamaimagers模型在内存中驻留24小时OLLAMA_KEEP_ALIVE,值:24h重启电脑防火墙根据情况开放访问地址为 http://IP:11434五、N卡安装CUDA ollama显卡支持列表 https://ollama.readthedocs.io/gpu/ 不在列表中的ollama无法调用GPU命令行输入nvidia-smi 根据显示的CUDA Version安装对应的CUDA Toolkit Archive https://developer.nvidia.com/cuda-toolkit-archive 如CUDA Version12.8则下载CUDA Toolkit 12.8.0 (January 2025)
2025年02月05日
332 阅读
0 评论
1 点赞
2025-02-04
思通数科舆情网络情报分析系统docker一键部署
在线体验环境地址:https://open-yuqing.stonedt.com/docker run -itd --name stonedt_yuqing -p 8085:8085 registry.cn-beijing.aliyuncs.com/stonedt_yuqing/stonedt_yuqing:1.0.7访问地址 http://ip:8085 用户名13900000000 密码stonedt完成账号已过期! 注意,默认的账号会过期,并且没有地方配置过期时间,莫慌跟我操作进入容器登陆数据库 # mysql -uroot -p123456 查看当前数据库 mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | stonedt_portal | | sys | +--------------------+ 5 rows in set (0.04 sec) 进入stonedt_portal库 mysql> use stonedt_portal; Database changed 列出表 mysql> show tables; +--------------------------+ | Tables_in_stonedt_portal | +--------------------------+ | data_favorite | | systemlog | | user | 查看user表 mysql> select * from user; +----+---------------------+-------------+-------------+----------------------------------+--------------------+---------------------+--------+----------+---------------+--------+-------------+----------+-----------------+-----------+------------+------------+-----------+---------------+----------------+----------+---------------+----------------+----------+---------------------+-----------+ | id | create_time | user_id | telephone | password | email | end_login_time | status | username | wechat_number | openid | login_count | identity | organization_id | user_type | user_level | wechatflag | is_online | nlp_secret_id | nlp_secret_key | nlp_flag | xie_secret_id | xie_secret_key | xie_flag | term_of_validity | mail_json | +----+---------------------+-------------+-------------+----------------------------------+--------------------+---------------------+--------+----------+---------------+--------+-------------+----------+-----------------+-----------+------------+------------+-----------+---------------+----------------+----------+---------------+----------------+----------+---------------------+-----------+ | 97 | 2022-02-14 11:23:13 | 13900000000 | 13900000000 | xx | 13900000000@qq.com | 2025-01-17 12:06:40 | 1 | NULL | NULL | NULL | 132 | NULL | NULL | 3 | NULL | NULL | 1 | NULL | NULL | 0 | NULL | NULL | 0 | 2025-01-19 00:00:00 | NULL | 可以看到term_of_validity上个月就过期了,改一下,改到2099年 mysql> UPDATE user SET term_of_validity='2099-01-19 00:00:00' WHERE id=97; Query OK, 1 row affected (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 0 登陆成功,修改完成
2025年02月04日
444 阅读
0 评论
0 点赞
2024-11-28
大型数据库sysbench测试结果 oceanbase4.3.4集群 MYSQL8.0.40单机调优 PGSQL17调优
一、系统配置和调优参数 MYSQL8.0.40单机 24C128G调优key_buffer_size=2048MB join_buffer_size=17000KB tmp_table_size=4096MB innodb_buffer_pool_size=8200MB sort_buffer_size=8200KB read_buffer_size=8200KB read_rnd_buffer_size=4096KB thread_stack=1024KB binlog_cache_size=512KB thread_cache_size=512 table_open_cache=4096 max_connections=10000PGSQL17单机 24C128G调优max_connections = 10000 shared_buffers = 2048MB work_mem = 512MB maintenance_work_mem = 1024MBOB集群 1zone6主机 租户24C48G默认设置二、测试参数 每个表行数1千万,350个表,总行数35亿,并发数80,在同一个超融合集群中三、测试数据 OB集群OLTP读写混合场景[ 10s ] thds: 80 tps: 260.33 qps: 5296.02 (r/w/o: 3718.86/1048.51/528.65) lat (ms,95%): 802.05 err/s: 0.00 reconn/s: 0.00 [ 20s ] thds: 80 tps: 371.01 qps: 7423.65 (r/w/o: 5196.51/1485.13/742.02) lat (ms,95%): 502.20 err/s: 0.00 reconn/s: 0.00 [ 30s ] thds: 80 tps: 608.00 qps: 12156.95 (r/w/o: 8509.74/2431.21/1216.01) lat (ms,95%): 193.38 err/s: 0.00 reconn/s: 0.00 [ 40s ] thds: 80 tps: 793.99 qps: 15880.87 (r/w/o: 11117.61/3175.27/1587.99) lat (ms,95%): 137.35 err/s: 0.00 reconn/s: 0.00 [ 50s ] thds: 80 tps: 922.80 qps: 18465.23 (r/w/o: 12924.92/3694.71/1845.60) lat (ms,95%): 114.72 err/s: 0.00 reconn/s: 0.00 [ 60s ] thds: 80 tps: 929.30 qps: 18603.13 (r/w/o: 13023.95/3720.59/1858.59) lat (ms,95%): 130.13 err/s: 0.00 reconn/s: 0.00OB集群OLTP只读场景压测[ 10s ] thds: 80 tps: 1893.03 qps: 30354.81 (r/w/o: 26560.74/0.00/3794.06) lat (ms,95%): 68.05 err/s: 0.00 reconn/s: 0.00 [ 20s ] thds: 80 tps: 2909.96 qps: 46562.29 (r/w/o: 40742.58/0.00/5819.71) lat (ms,95%): 41.10 err/s: 0.00 reconn/s: 0.00 [ 30s ] thds: 80 tps: 2642.26 qps: 42274.92 (r/w/o: 36990.19/0.00/5284.73) lat (ms,95%): 50.11 err/s: 0.00 reconn/s: 0.00 [ 40s ] thds: 80 tps: 3473.07 qps: 55563.89 (r/w/o: 48617.76/0.00/6946.14) lat (ms,95%): 37.56 err/s: 0.00 reconn/s: 0.00 [ 50s ] thds: 80 tps: 3646.52 qps: 58341.39 (r/w/o: 51048.65/0.00/7292.74) lat (ms,95%): 31.37 err/s: 0.00 reconn/s: 0.00 [ 60s ] thds: 80 tps: 3812.57 qps: 61006.78 (r/w/o: 53381.54/0.00/7625.23) lat (ms,95%): 29.19 err/s: 0.00 reconn/s: 0.00MYSQL单机OLTP读写混合场景[ 10s ] thds: 80 tps: 0.40 qps: 96.67 (r/w/o: 84.68/3.20/8.80) lat (ms,95%): 9799.46 err/s: 0.00 reconn/s: 0.00 [ 20s ] thds: 80 tps: 8.00 qps: 144.01 (r/w/o: 93.10/34.90/16.00) lat (ms,95%): 19778.24 err/s: 0.00 reconn/s: 0.00 [ 30s ] thds: 80 tps: 12.00 qps: 234.50 (r/w/o: 164.20/46.30/24.00) lat (ms,95%): 9284.15 err/s: 0.00 reconn/s: 0.00 [ 40s ] thds: 80 tps: 10.90 qps: 238.60 (r/w/o: 173.20/43.60/21.80) lat (ms,95%): 10722.67 err/s: 0.00 reconn/s: 0.00 [ 50s ] thds: 80 tps: 14.70 qps: 289.10 (r/w/o: 199.20/60.50/29.40) lat (ms,95%): 10722.67 err/s: 0.00 reconn/s: 0.00 [ 60s ] thds: 80 tps: 16.40 qps: 323.10 (r/w/o: 225.80/64.50/32.80) lat (ms,95%): 8795.93 err/s: 0.00 reconn/s: 0.00MYSQL单机OLTP只读场景压测[ 10s ] thds: 80 tps: 19.20 qps: 372.12 (r/w/o: 325.73/0.00/46.39) lat (ms,95%): 6713.97 err/s: 0.00 reconn/s: 0.00 [ 20s ] thds: 80 tps: 41.10 qps: 650.72 (r/w/o: 568.51/0.00/82.20) lat (ms,95%): 5217.92 err/s: 0.00 reconn/s: 0.00 [ 30s ] thds: 80 tps: 59.50 qps: 958.60 (r/w/o: 839.60/0.00/119.00) lat (ms,95%): 3706.08 err/s: 0.00 reconn/s: 0.00 [ 40s ] thds: 80 tps: 78.90 qps: 1260.00 (r/w/o: 1102.20/0.00/157.80) lat (ms,95%): 2932.60 err/s: 0.00 reconn/s: 0.00 [ 50s ] thds: 80 tps: 94.80 qps: 1521.49 (r/w/o: 1331.90/0.00/189.60) lat (ms,95%): 2320.55 err/s: 0.00 reconn/s: 0.00 [ 60s ] thds: 80 tps: 102.90 qps: 1640.71 (r/w/o: 1434.91/0.00/205.80) lat (ms,95%): 2082.91 err/s: 0.00 reconn/s: 0.00PG单机OLTP读写混合场景[ 10s ] thds: 80 tps: 8.29 qps: 249.21 (r/w/o: 188.56/36.07/24.58) lat (ms,95%): 8638.96 err/s: 0.00 reconn/s: 0.00 [ 20s ] thds: 80 tps: 13.51 qps: 276.96 (r/w/o: 195.21/54.73/27.02) lat (ms,95%): 10343.39 err/s: 0.00 reconn/s: 0.00 [ 30s ] thds: 80 tps: 15.90 qps: 308.30 (r/w/o: 214.70/61.80/31.80) lat (ms,95%): 9118.47 err/s: 0.00 reconn/s: 0.00 [ 40s ] thds: 80 tps: 16.50 qps: 324.00 (r/w/o: 224.40/66.60/33.00) lat (ms,95%): 8638.96 err/s: 0.00 reconn/s: 0.00 [ 50s ] thds: 80 tps: 15.10 qps: 308.70 (r/w/o: 217.20/61.30/30.20) lat (ms,95%): 9452.83 err/s: 0.00 reconn/s: 0.00 [ 60s ] thds: 80 tps: 17.50 qps: 358.40 (r/w/o: 252.70/70.70/35.00) lat (ms,95%): 9118.47 err/s: 0.00 reconn/s: 0.00PG单机OLTP只读场景压测[ 10s ] thds: 80 tps: 317.53 qps: 5149.51 (r/w/o: 4506.46/0.00/643.05) lat (ms,95%): 1032.01 err/s: 0.00 reconn/s: 0.00 [ 20s ] thds: 80 tps: 525.90 qps: 8423.06 (r/w/o: 7371.25/0.00/1051.81) lat (ms,95%): 337.94 err/s: 0.00 reconn/s: 0.00 [ 30s ] thds: 80 tps: 789.40 qps: 12622.80 (r/w/o: 11044.10/0.00/1578.70) lat (ms,95%): 211.60 err/s: 0.00 reconn/s: 0.00 [ 40s ] thds: 80 tps: 1327.89 qps: 21255.90 (r/w/o: 18600.01/0.00/2655.89) lat (ms,95%): 99.33 err/s: 0.00 reconn/s: 0.00 [ 50s ] thds: 80 tps: 1347.00 qps: 21545.69 (r/w/o: 18851.69/0.00/2694.00) lat (ms,95%): 102.97 err/s: 0.00 reconn/s: 0.00 [ 60s ] thds: 80 tps: 1450.39 qps: 23206.88 (r/w/o: 20306.30/0.00/2900.59) lat (ms,95%): 95.81 err/s: 0.00 reconn/s: 0.00四、测试结果 OB集群占用空间大约628GMYSQL单机占用空间大约1.4TPG单机数据量大约860G读写混合场景下OB 53倍领先 >PG≈MYSQL PG、MYSQL几乎无法使用只读场景下OB 2.5倍领先>PG 10倍领先>MYSQL
2024年11月28日
320 阅读
0 评论
0 点赞
2024-11-22
快速部署Citus Postgres集群 6节点,SysBench对比测试mysql8.4、OceanBase 集群、Postgres17、mariaDB11
前文快速部署OceanBase 集群 1ZONE 6节点,使用SysBench对比测试mysql8.4单节点https://90apt.com/5039一、环境准备 1、安装规划仍在同一套超融合中部署测试,保证硬件性能相同。本次部署的对象为:Postgres17单机 32C64GmariaDB11单机 32C64GCitus Postgres单机6容器集群 2副本5工作节点哈希分布 32C64GCitus Postgres集群 2副本5工作节点32分片哈希分布 48C96GCitus Postgres集群 2副本5工作节点5分片哈希分布 48C96G关闭防火墙,避免影响实验 systemctl stop firewalld && systemctl disable firewalld2、安装部署Postgres17单机、mariaDB11单机使用anolis8系统 1panel面板一键部署Citus Postgres单机6容器集群 2副本5工作节点哈希分布 使用anolis8系统Citus Postgres集群 使用alma9系统二、1panel一键部署Postgres17单机、mariaDB11单机 1、使用1P面板一键部署即可Postgres17单机、mariaDB11单机2、性能测试2.1、MYSQL单机OLTP读写混合场景清除数据sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-host=IP地址 --mysql-port=端口 --mysql-db=数据库名 --mysql-user=用户名 --mysql-password=密码 --table_size=1000000 --tables=350 --threads=80 --report-interval=10 --rand-type=uniform --time=60 cleanup初始化测试数据sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-host=IP地址 --mysql-port=端口 --mysql-db=数据库名 --mysql-user=用户名 --mysql-password=密码 --table_size=1000000 --tables=350 --threads=80 --report-interval=10 --rand-type=uniform --time=60 prepare执行测试sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-host=IP地址 --mysql-port=端口 --mysql-db=数据库名 --mysql-user=用户名 --mysql-password=密码 --table_size=1000000 --tables=350 --threads=80 --report-interval=10 --time=60 --rand-type=uniform --db-ps-mode=disable run2.2、MYSQL单机OLTP只读场景压测准备数据sysbench --db-driver=mysql --mysql-host=IP地址 --mysql-port=端口 --mysql-user=用户名 --mysql-password=密码 --mysql-db=数据库名 --table_size=1000000 --tables=350 --events=0 --time=300 --threads=80 oltp_read_only prepare运行压测sysbench --db-driver=mysql --mysql-host=IP地址 --mysql-port=端口 --mysql-user=用户名 --mysql-password=密码 --mysql-db=数据库名 --table_size=1000000 --tables=350 --events=0 --time=300 --threads=80 --percentile=95 --report-interval=1 oltp_read_only run清理数据sysbench --db-driver=mysql --mysql-host=IP地址 --mysql-port=端口 --mysql-user=用户名 --mysql-password=密码 --mysql-db=数据库名 --table_size=1000000 --tables=350 --events=0 --time=300 --threads=80 --percentile=95 oltp_read_only cleanup2.3、PG单机OLTP读写混合场景清除数据sysbench /usr/share/sysbench/oltp_read_write.lua --db-driver=pgsql --pgsql-host=IP地址 --pgsql-port=端口 --pgsql-db=数据库名 --pgsql-user=用户名 --pgsql-password=密码 --table_size=1000000 --tables=350 --threads=80 --report-interval=10 --rand-type=uniform cleanup初始化测试数据sysbench /usr/share/sysbench/oltp_read_write.lua --db-driver=pgsql --pgsql-host=IP地址 --pgsql-port=端口 --pgsql-db=数据库名 --pgsql-user=用户名 --pgsql-password=密码 --table_size=1000000 --tables=350 --threads=80 --report-interval=10 --rand-type=uniform prepare执行测试sysbench /usr/share/sysbench/oltp_read_write.lua --db-driver=pgsql --pgsql-host=IP地址 --pgsql-port=端口 --pgsql-db=数据库名 --pgsql-user=用户名 --pgsql-password=密码 --table_size=1000000 --tables=350 --threads=80 --report-interval=10 --time=60 --rand-type=uniform --db-ps-mode=disable run 2.4、PG单机OLTP只读场景压测准备数据sysbench --db-driver=pgsql --pgsql-host=IP地址 --pgsql-port=端口 --pgsql-db=数据库名 --pgsql-user=用户名 --pgsql-password=密码 --table_size=1000000 --tables=350 --events=0 --time=300 --threads=80 oltp_read_only prepare运行压测sysbench --db-driver=pgsql --pgsql-host=IP地址 --pgsql-port=端口 --pgsql-db=数据库名 --pgsql-user=用户名 --pgsql-password=密码 --table_size=1000000 --tables=350 --events=0 --time=300 --threads=80 --percentile=95 --report-interval=1 oltp_read_only run清理数据sysbench --db-driver=pgsql --pgsql-host=IP地址 --pgsql-port=端口 --pgsql-db=数据库名 --pgsql-user=用户名 --pgsql-password=密码 --table_size=1000000 --tables=350 --events=0 --time=300 --threads=80 --percentile=95 oltp_read_only cleanup最后放测试结果三、搭建Citus Postgres单机容器集群 1、Citus相关概念分布表分布在所有节点create_distributed_table参考表全部内容集中在一个分片中,每个数据节点复制该内容,保证数据一致性create_reference_table本地表协调节点不切分就是普通本地数据库,默认并行查询跨多个节点查询允许同时运行更多查询,协调节点需增强性能数据分布方式按哈希分布 默认 扩容节点需要迁移数据重新分布按数据范围分布按数据量分布2、下载docker镜像docker pull citusdata/citus3、创建docker网络bridge网桥模式docker network create --subnet=192.168.88.0/24 citus-network查看创建的网络docker network ls NETWORK ID NAME DRIVER SCOPE 3ba81d539b5d 1panel-network bridge local c24c0167d92e bridge bridge local de9fd59a6f8a citus-network bridge local a253a0857538 host host local 4aae934ed291 none null local4、启动citus服务创建协调节点 coordinate服务节点 docker run -dit --name citus-cod -p 5433:5432 -v /citus/citus-cod:/var/lib/postgresql/data -e POSTGRES_PASSWORD=123456 --net=citus-network citusdata/citus -c listen_addresses="*" -c shared_preload_libraries='citus'创建工作节点docker run -dit --name citus-worker10 -v /citus/worker10:/var/lib/postgresql/data -e POSTGRES_PASSWORD=123456 -e POSTGRES_HOST_AUTH_METHOD='trust' --net=citus-network citusdata/citus -c listen_addresses="*" -c shared_preload_libraries='citus' docker run -dit --name citus-worker11 -v /citus/worker11:/var/lib/postgresql/data -e POSTGRES_PASSWORD=123456 -e POSTGRES_HOST_AUTH_METHOD='trust' --net=citus-network citusdata/citus -c listen_addresses="*" -c shared_preload_libraries='citus' docker run -dit --name citus-worker12 -v /citus/worker12:/var/lib/postgresql/data -e POSTGRES_PASSWORD=123456 -e POSTGRES_HOST_AUTH_METHOD='trust' --net=citus-network citusdata/citus -c listen_addresses="*" -c shared_preload_libraries='citus' docker run -dit --name citus-worker13 -v /citus/worker13:/var/lib/postgresql/data -e POSTGRES_PASSWORD=123456 -e POSTGRES_HOST_AUTH_METHOD='trust' --net=citus-network citusdata/citus -c listen_addresses="*" -c shared_preload_libraries='citus' docker run -dit --name citus-worker14 -v /citus/worker14:/var/lib/postgresql/data -e POSTGRES_PASSWORD=123456 -e POSTGRES_HOST_AUTH_METHOD='trust' --net=citus-network citusdata/citus -c listen_addresses="*" -c shared_preload_libraries='citus' docker run -dit --name citus-worker15 -v /citus/worker15:/var/lib/postgresql/data -e POSTGRES_PASSWORD=123456 -e POSTGRES_HOST_AUTH_METHOD='trust' --net=citus-network citusdata/citus -c listen_addresses="*" -c shared_preload_libraries='citus'5、往集群添加节点进入postgresql协调节点docker exec -it citus-cod psql -U postgres添加工作节点 select * from master_add_node('citus-worker10',5432); select * from master_add_node('citus-worker11',5432); select * from master_add_node('citus-worker12',5432); select * from master_add_node('citus-worker13',5432); select * from master_add_node('citus-worker14',5432); select * from master_add_node('citus-worker15',5432);查看工作节点select * from master_get_active_worker_nodes(); node_name | node_port ----------------+----------- citus-worker10 | 5432 citus-worker11 | 5432 ........6、管理节点删除工作节点 DELETE FROM pg_dist_placement WHERE groupid = (SELECT groupid FROM pg_dist_node WHERE nodename ='citus-worker11' AND nodeport = '5432' LIMIT 1);移除节点SELECT master_remove_node('citus-worker11', '5432');重新平衡分片SELECT rebalance_table_shards();7、数据库文件转入转出使用docker cp转入docker cp 主机文件 容器名:/容器文件使用docker cp转出docker cp 容器名:/容器文件 主机文件导入数据库备份pg_restore -U postgres -d postgres < 数据库备份.backup导出数据库备份pg_dump -U postgres postgres > 数据库备份.sql8、设置分布表分片、副本分片数为5set citus.shard_count = 5;副本数为2SET citus.shard_replication_factor = 2;分布表SELECT create_distributed_table('表名','主键'); SELECT create_distributed_table('sbtest1','id');查看分片数show citus.shard_count; citus.shard_count ------------------- 32 (1 row)查看分片详情select * from pg_dist_shard; 默认为hash分片 select * from pg_dist_shard_placement; 查看分片与节点的关系更改分片数SELECT alter_distributed_table('表名',shard_count:=2,cascade_to_colocated:=true); SELECT alter_distributed_table('sbtest1',shard_count:=2,cascade_to_colocated:=true);查看数据存放位置select get_shard_id_for_distribution_column('sbtest1',1);9、故障修复9.1、模拟协调节点故障 docker stop citus-cod工作节点仍然可以查询进入工作节点10docker exec -it citus-worker10 psql -U postgres查看数据select * from sbtest1;9.2、工作节点故障工作节点故障后,可以进行查询,不能进行写入;若要继续写入,需要先禁用故障节点citus_disable_node 恢复节点后在重新复制分片 replicate_table_shards10、性能测试命令与单机相同,但准备数据库,要先进行表分片,分片后测试性能SELECT create_distributed_table('sbtest1','id'); SELECT create_distributed_table('sbtest2','id'); ...... SELECT create_distributed_table('sbtest350','id');最后放测试结果四、搭建Citus Postgres集群 有上面的搭建经验,其实多主机集群就很简单了安装教程参考官网 https://docs.citusdata.com/en/stable/installation/multi_node_rhel.html#post-enterprise-rhel1、添加仓库curl https://install.citusdata.com/community/rpm.sh | sudo bash2、安装 PostgreSQL + Citus 并初始化数据库# 安装PG数据库和Citus扩展 sudo yum install -y citus121_16 # 初始化PG数据库 sudo /usr/pgsql-16/bin/postgresql-16-setup initdb # 加载Citus扩展 echo "shared_preload_libraries = 'citus'" | sudo tee -a /var/lib/pgsql/16/data/postgresql.conf3、配置连接和身份验证在启动数据库之前,让我们更改其访问权限。默认情况下,数据库服务器仅侦听 localhost 上的 Client 端。作为此步骤的一部分,我们指示它侦听所有 IP 接口,然后配置客户端身份验证文件以允许来自本地网络的所有传入连接。sudo vi /var/lib/pgsql/16/data/postgresql.conf # Uncomment listen_addresses for the changes to take effect listen_addresses = '*' sudo vi /var/lib/pgsql/16/data/pg_hba.conf # Allow unrestricted access to nodes in the local network. The following ranges # correspond to 24, 20, and 16-bit blocks in Private IPv4 address spaces. host all all 10.0.0.0/8 trust # Also allow the host unrestricted access to connect to itself host all all 127.0.0.1/32 trust host all all ::1/128 trust启动数据库服务器,创建 Citus 扩展# 启动数据库 sudo systemctl restart postgresql-16 # 配置开机启动 sudo systemctl enable postgresql-16 您必须将 Citus 扩展添加到要在集群中使用的每个数据库。以下示例将扩展添加到名为 postgres 的默认数据库。 sudo -i -u postgres psql -c "CREATE EXTENSION citus;"5、要在 coordinator 节点上执行的步骤在执行上述步骤后,只能在协调器节点上执行下面列出的步骤。5.1、添加 worker 节点信息我们需要通知 coordinator 有关其 worker 的信息。要添加此信息,请执行以下操作: 我们调用 UDF,它将节点信息添加到 pg_dist_node catalog 表,协调器使用该表来获取 worker 节点。对于我们的示例,我们假设有两个 worker(名为 worker-101、worker-102)。添加工作人员的 DNS 名称(或 IP 地址) 和服务器端口添加到表中。# Register the hostname that future workers will use to connect # to the coordinator node. # # You'll need to change the example, 'coord.example.com', # to match the actual hostname sudo -i -u postgres psql -c \ "SELECT citus_set_coordinator_host('coord.example.com', 5432);" # Add the worker nodes. # # Similarly, you'll need to change 'worker-101' and 'worker-102' to the # actual hostnames5.2、验证安装是否成功为了验证安装是否成功,我们检查协调器节点是否具有 选取所需的 worker 配置。此命令在 psql 中的 shell 应该输出我们添加到上面 pg_dist_node 表中的工作节点。sudo -i -u postgres psql -c "SELECT * FROM citus_get_active_worker_nodes();"6、性能测试与容器集群相同五、测试结果MYSQL单机OLTP读写混合场景[ 10s ] thds: 80 tps: 279.82 qps: 5649.14 (r/w/o: 3961.11/1120.39/567.64) lat (ms,95%): 467.30 err/s: 0.00 reconn/s: 0.00[ 20s ] thds: 80 tps: 336.51 qps: 6786.91 (r/w/o: 4759.38/1354.52/673.01) lat (ms,95%): 390.30 err/s: 0.00 reconn/s: 0.00[ 30s ] thds: 80 tps: 246.00 qps: 4918.91 (r/w/o: 3441.11/985.80/492.00) lat (ms,95%): 520.62 err/s: 0.00 reconn/s: 0.00[ 40s ] thds: 80 tps: 306.70 qps: 6129.61 (r/w/o: 4290.91/1225.30/613.40) lat (ms,95%): 434.83 err/s: 0.00 reconn/s: 0.00[ 50s ] thds: 80 tps: 354.50 qps: 7104.99 (r/w/o: 4974.69/1421.30/709.00) lat (ms,95%): 369.77 err/s: 0.00 reconn/s: 0.00[ 60s ] thds: 80 tps: 339.50 qps: 6785.12 (r/w/o: 4741.72/1364.40/679.00) lat (ms,95%): 376.49 err/s: 0.00 reconn/s: 0.00MYSQL单机OLTP只读场景压测[ 1s ] thds: 80 tps: 2322.83 qps: 37870.75 (r/w/o: 33145.27/0.00/4725.49) lat (ms,95%): 51.02 err/s: 0.00 reconn/s: 0.00[ 2s ] thds: 80 tps: 2927.99 qps: 46815.91 (r/w/o: 40960.92/0.00/5854.99) lat (ms,95%): 35.59 err/s: 0.00 reconn/s: 0.00[ 3s ] thds: 80 tps: 3440.21 qps: 55064.31 (r/w/o: 48183.89/0.00/6880.41) lat (ms,95%): 31.94 err/s: 0.00 reconn/s: 0.00[ 4s ] thds: 80 tps: 3973.17 qps: 63529.73 (r/w/o: 55585.39/0.00/7944.34) lat (ms,95%): 27.17 err/s: 0.00 reconn/s: 0.00[ 5s ] thds: 80 tps: 4175.91 qps: 66879.59 (r/w/o: 58526.76/0.00/8352.82) lat (ms,95%): 26.20 err/s: 0.00 reconn/s: 0.00[ 76s ] thds: 80 tps: 4714.21 qps: 75534.39 (r/w/o: 66105.97/0.00/9428.42) lat (ms,95%): 22.69 err/s: 0.00 reconn/s: 0.00[ 77s ] thds: 80 tps: 4679.42 qps: 74748.76 (r/w/o: 65388.92/0.00/9359.85) lat (ms,95%): 23.10 err/s: 0.00 reconn/s: 0.00[ 78s ] thds: 80 tps: 4737.18 qps: 75766.94 (r/w/o: 66295.57/0.00/9471.37) lat (ms,95%): 22.28 err/s: 0.00 reconn/s: 0.00[ 79s ] thds: 80 tps: 4650.49 qps: 74527.85 (r/w/o: 65222.87/0.00/9304.98) lat (ms,95%): 23.10 err/s: 0.00 reconn/s: 0.00[ 80s ] thds: 80 tps: 4664.70 qps: 74592.18 (r/w/o: 65266.78/0.00/9325.40) lat (ms,95%): 22.69 err/s: 0.00 reconn/s: 0.00OB集群 1zone6主机OLTP读写混合场景[ 10s ] thds: 80 tps: 194.03 qps: 3980.77 (r/w/o: 2799.12/785.60/396.05) lat (ms,95%): 960.30 err/s: 0.00 reconn/s: 0.00[ 20s ] thds: 80 tps: 585.61 qps: 11728.84 (r/w/o: 8211.80/2345.83/1171.21) lat (ms,95%): 267.41 err/s: 0.00 reconn/s: 0.00[ 30s ] thds: 80 tps: 1159.31 qps: 23173.24 (r/w/o: 16218.30/4636.33/2318.61) lat (ms,95%): 104.84 err/s: 0.00 reconn/s: 0.00[ 40s ] thds: 80 tps: 1573.49 qps: 31474.50 (r/w/o: 22032.76/6294.86/3146.88) lat (ms,95%): 70.55 err/s: 0.00 reconn/s: 0.00[ 50s ] thds: 80 tps: 1568.68 qps: 31364.68 (r/w/o: 21954.30/6272.92/3137.46) lat (ms,95%): 89.16 err/s: 0.00 reconn/s: 0.00[ 60s ] thds: 80 tps: 1876.77 qps: 37543.14 (r/w/o: 26280.21/7509.89/3753.04) lat (ms,95%): 55.82 err/s: 0.00 reconn/s: 0.00OB集群 1zone6主机OLTP只读场景压测[ 1s ] thds: 80 tps: 258.36 qps: 4791.07 (r/w/o: 4194.56/0.00/596.51) lat (ms,95%): 646.19 err/s: 0.00 reconn/s: 0.00[ 2s ] thds: 80 tps: 523.06 qps: 8405.99 (r/w/o: 7359.87/0.00/1046.12) lat (ms,95%): 601.29 err/s: 0.00 reconn/s: 0.00[ 3s ] thds: 80 tps: 678.97 qps: 10798.50 (r/w/o: 9440.56/0.00/1357.94) lat (ms,95%): 376.49 err/s: 0.00 reconn/s: 0.00[ 4s ] thds: 80 tps: 974.06 qps: 15628.02 (r/w/o: 13679.90/0.00/1948.13) lat (ms,95%): 277.21 err/s: 0.00 reconn/s: 0.00[ 5s ] thds: 80 tps: 1244.00 qps: 19876.04 (r/w/o: 17388.04/0.00/2488.01) lat (ms,95%): 207.82 err/s: 0.00 [ 76s ] thds: 80 tps: 5320.92 qps: 85129.68 (r/w/o: 74486.85/0.00/10642.83) lat (ms,95%): 19.29 err/s: 0.00 reconn/s: 0.00[ 77s ] thds: 80 tps: 5331.83 qps: 85282.34 (r/w/o: 74620.67/0.00/10661.67) lat (ms,95%): 18.95 err/s: 0.00 reconn/s: 0.00[ 78s ] thds: 80 tps: 5279.20 qps: 84432.24 (r/w/o: 73874.84/0.00/10557.41) lat (ms,95%): 19.29 err/s: 0.00 reconn/s: 0.00[ 79s ] thds: 80 tps: 5431.77 qps: 86835.31 (r/w/o: 75971.77/0.00/10863.54) lat (ms,95%): 18.61 err/s: 0.00 reconn/s: 0.00[ 80s ] thds: 80 tps: 5411.58 qps: 86724.27 (r/w/o: 75901.11/0.00/10823.16) lat (ms,95%): 18.61 err/s: 0.00 reconn/s: 0.00PG单机OLTP读写混合场景[ 10s ] thds: 80 tps: 150.17 qps: 3145.15 (r/w/o: 2213.04/623.77/308.34) lat (ms,95%): 1050.76 err/s: 0.00 reconn/s: 0.00[ 20s ] thds: 80 tps: 189.60 qps: 3731.26 (r/w/o: 2612.54/739.51/379.21) lat (ms,95%): 1327.91 err/s: 0.00 reconn/s: 0.00[ 30s ] thds: 80 tps: 299.30 qps: 5992.23 (r/w/o: 4196.32/1197.31/598.60) lat (ms,95%): 530.08 err/s: 0.00 reconn/s: 0.00[ 40s ] thds: 80 tps: 340.40 qps: 6804.74 (r/w/o: 4763.56/1360.39/680.79) lat (ms,95%): 484.44 err/s: 0.00 reconn/s: 0.00[ 50s ] thds: 80 tps: 425.30 qps: 8512.85 (r/w/o: 5959.04/1703.21/850.61) lat (ms,95%): 376.49 err/s: 0.00 reconn/s: 0.00[ 60s ] thds: 80 tps: 592.39 qps: 11850.79 (r/w/o: 8294.72/2371.28/1184.79) lat (ms,95%): 257.95 err/s: 0.00 reconn/s: 0.00PG单机OLTP只读场景压测[ 1s ] thds: 80 tps: 358.25 qps: 6397.54 (r/w/o: 5602.21/0.00/795.33) lat (ms,95%): 467.30 err/s: 0.00 reconn/s: 0.00[ 2s ] thds: 80 tps: 675.16 qps: 10843.59 (r/w/o: 9492.27/0.00/1351.32) lat (ms,95%): 282.25 err/s: 0.00 reconn/s: 0.00[ 3s ] thds: 80 tps: 773.98 qps: 12380.60 (r/w/o: 10833.65/0.00/1546.95) lat (ms,95%): 235.74 err/s: 0.00 reconn/s: 0.00[ 4s ] thds: 80 tps: 583.02 qps: 9271.26 (r/w/o: 8104.23/0.00/1167.03) lat (ms,95%): 419.45 err/s: 0.00 reconn/s: 0.00[ 5s ] thds: 80 tps: 900.02 qps: 14466.28 (r/w/o: 12666.24/0.00/1800.03) lat (ms,95%): 272.27 err/s: 0.00 reconn/s: 0.00[ 75s ] thds: 80 tps: 7219.92 qps: 115510.73 (r/w/o: 101073.88/0.00/14436.84) lat (ms,95%): 16.12 err/s: 0.00 reconn/s: 0.00[ 76s ] thds: 80 tps: 7312.11 qps: 117077.83 (r/w/o: 102446.60/0.00/14631.23) lat (ms,95%): 15.55 err/s: 0.00 reconn/s: 0.00[ 77s ] thds: 80 tps: 7336.09 qps: 117346.48 (r/w/o: 102677.30/0.00/14669.19) lat (ms,95%): 15.27 err/s: 0.00 reconn/s: 0.00[ 78s ] thds: 80 tps: 6918.94 qps: 110807.00 (r/w/o: 96968.13/0.00/13838.88) lat (ms,95%): 18.61 err/s: 0.00 reconn/s: 0.00[ 79s ] thds: 80 tps: 6900.01 qps: 110262.12 (r/w/o: 96464.11/0.00/13798.02) lat (ms,95%): 20.00 err/s: 0.00 reconn/s: 0.00[ 80s ] thds: 80 tps: 7222.03 qps: 115629.55 (r/w/o: 101186.49/0.00/14443.07) lat (ms,95%): 15.00 err/s: 0.00 reconn/s: 0.00PG单机6容器集群OLTP读写混合场景[ 10s ] thds: 80 tps: 68.18 qps: 1453.28 (r/w/o: 1031.17/277.74/144.37) lat (ms,95%): 2362.72 err/s: 0.00 reconn/s: 0.00[ 20s ] thds: 80 tps: 111.10 qps: 2229.06 (r/w/o: 1564.75/442.21/222.11) lat (ms,95%): 893.56 err/s: 0.00 reconn/s: 0.00[ 30s ] thds: 80 tps: 128.00 qps: 2567.82 (r/w/o: 1796.71/515.00/256.10) lat (ms,95%): 773.68 err/s: 0.00 reconn/s: 0.00[ 40s ] thds: 80 tps: 136.10 qps: 2713.78 (r/w/o: 1898.08/543.60/272.10) lat (ms,95%): 719.92 err/s: 0.00 reconn/s: 0.00[ 50s ] thds: 80 tps: 138.90 qps: 2773.51 (r/w/o: 1940.90/554.70/277.90) lat (ms,95%): 707.07 err/s: 0.00 reconn/s: 0.00[ 60s ] thds: 80 tps: 137.50 qps: 2750.50 (r/w/o: 1927.00/548.50/275.00) lat (ms,95%): 719.92 err/s: 0.00 reconn/s: 0.00PG单机6容器集群OLTP只读场景压测[ 1s ] thds: 80 tps: 0.00 qps: 820.05 (r/w/o: 740.24/0.00/79.81) lat (ms,95%): 0.00 err/s: 0.00 reconn/s: 0.00[ 2s ] thds: 80 tps: 11.00 qps: 256.10 (r/w/o: 234.09/0.00/22.01) lat (ms,95%): 1973.38 err/s: 0.00 reconn/s: 0.00[ 3s ] thds: 80 tps: 71.01 qps: 1037.15 (r/w/o: 895.13/0.00/142.02) lat (ms,95%): 2778.39 err/s: 0.00 reconn/s: 0.00[ 4s ] thds: 80 tps: 67.00 qps: 1121.96 (r/w/o: 987.97/0.00/134.00) lat (ms,95%): 1678.14 err/s: 0.00 reconn/s: 0.00[ 5s ] thds: 80 tps: 84.00 qps: 1388.04 (r/w/o: 1220.03/0.00/168.00) lat (ms,95%): 2009.23 err/s: 0.00 reconn/s: 0.00[ 75s ] thds: 80 tps: 221.98 qps: 3532.71 (r/w/o: 3088.75/0.00/443.96) lat (ms,95%): 467.30 err/s: 0.00 reconn/s: 0.00[ 76s ] thds: 80 tps: 224.99 qps: 3537.87 (r/w/o: 3087.89/0.00/449.98) lat (ms,95%): 493.24 err/s: 0.00 reconn/s: 0.00[ 77s ] thds: 80 tps: 223.02 qps: 3609.26 (r/w/o: 3163.23/0.00/446.03) lat (ms,95%): 502.20 err/s: 0.00 reconn/s: 0.00[ 78s ] thds: 80 tps: 222.00 qps: 3577.02 (r/w/o: 3133.02/0.00/444.00) lat (ms,95%): 502.20 err/s: 0.00 reconn/s: 0.00[ 79s ] thds: 80 tps: 232.99 qps: 3643.80 (r/w/o: 3177.82/0.00/465.97) lat (ms,95%): 502.20 err/s: 0.00 reconn/s: 0.00[ 80s ] thds: 80 tps: 215.02 qps: 3571.29 (r/w/o: 3141.26/0.00/430.03) lat (ms,95%): 458.96 err/s: 0.00 reconn/s: 0.00PG6主机集群 2副本5工作节点32分片哈希分布OLTP读写混合场景[ 10s ] thds: 80 tps: 6.20 qps: 217.91 (r/w/o: 172.23/25.29/20.39) lat (ms,95%): 9624.59 err/s: 0.00 reconn/s: 0.00[ 20s ] thds: 80 tps: 17.80 qps: 351.61 (r/w/o: 244.91/71.10/35.60) lat (ms,95%): 11523.48 err/s: 0.00 reconn/s: 0.00[ 30s ] thds: 80 tps: 18.90 qps: 374.59 (r/w/o: 261.60/75.20/37.80) lat (ms,95%): 6476.48 err/s: 0.00 reconn/s: 0.00[ 40s ] thds: 80 tps: 14.60 qps: 294.10 (r/w/o: 206.50/58.40/29.20) lat (ms,95%): 7895.16 err/s: 0.00 reconn/s: 0.00[ 50s ] thds: 80 tps: 17.60 qps: 351.69 (r/w/o: 246.09/70.40/35.20) lat (ms,95%): 7615.89 err/s: 0.00 reconn/s: 0.00[ 60s ] thds: 80 tps: 20.70 qps: 414.81 (r/w/o: 290.50/82.90/41.40) lat (ms,95%): 6026.41 err/s: 0.00 reconn/s: 0.00PG6主机集群 2副本5工作节点32分片哈希分布OLTP只读场景压测[ 1s ] thds: 80 tps: 0.00 qps: 253.20 (r/w/o: 173.45/0.00/79.75) lat (ms,95%): 0.00 err/s: 0.00 reconn/s: 0.00[ 2s ] thds: 80 tps: 0.00 qps: 315.14 (r/w/o: 315.14/0.00/0.00) lat (ms,95%): 0.00 err/s: 0.00 reconn/s: 0.00[ 3s ] thds: 80 tps: 0.00 qps: 310.98 (r/w/o: 310.98/0.00/0.00) lat (ms,95%): 0.00 err/s: 0.00 reconn/s: 0.00[ 4s ] thds: 80 tps: 0.00 qps: 0.00 (r/w/o: 0.00/0.00/0.00) lat (ms,95%): 0.00 err/s: 0.00 reconn/s: 0.00[ 5s ] thds: 80 tps: 0.00 qps: 0.00 (r/w/o: 0.00/0.00/0.00) lat (ms,95%): 0.00 err/s: 0.00 reconn/s: 0.00[ 75s ] thds: 80 tps: 17.00 qps: 272.01 (r/w/o: 238.01/0.00/34.00) lat (ms,95%): 4280.32 err/s: 0.00 reconn/s: 0.00[ 76s ] thds: 80 tps: 22.00 qps: 351.98 (r/w/o: 307.98/0.00/44.00) lat (ms,95%): 4203.93 err/s: 0.00 reconn/s: 0.00[ 77s ] thds: 80 tps: 27.00 qps: 432.02 (r/w/o: 378.02/0.00/54.00) lat (ms,95%): 4855.31 err/s: 0.00 reconn/s: 0.00[ 78s ] thds: 80 tps: 20.00 qps: 320.00 (r/w/o: 280.00/0.00/40.00) lat (ms,95%): 4358.09 err/s: 0.00 reconn/s: 0.00[ 79s ] thds: 80 tps: 21.00 qps: 318.97 (r/w/o: 276.97/0.00/42.00) lat (ms,95%): 4280.32 err/s: 0.00 reconn/s: 0.00[ 80s ] thds: 80 tps: 26.00 qps: 435.97 (r/w/o: 383.98/0.00/52.00) lat (ms,95%): 4280.32 err/s: 0.00 reconn/s: 0.00PG6主机集群 2副本5工作节点5分片哈希分布OLTP读写混合场景[ 10s ] thds: 80 tps: 18.70 qps: 480.68 (r/w/o: 354.91/80.38/45.39) lat (ms,95%): 6247.39 err/s: 0.00 reconn/s: 0.00[ 20s ] thds: 80 tps: 49.90 qps: 992.92 (r/w/o: 693.82/199.30/99.80) lat (ms,95%): 2828.87 err/s: 0.00 reconn/s: 0.00[ 30s ] thds: 80 tps: 68.90 qps: 1369.50 (r/w/o: 958.00/273.70/137.80) lat (ms,95%): 2082.91 err/s: 0.00 reconn/s: 0.00[ 40s ] thds: 80 tps: 51.40 qps: 1051.00 (r/w/o: 736.00/212.20/102.80) lat (ms,95%): 2880.27 err/s: 0.00 reconn/s: 0.00[ 50s ] thds: 80 tps: 58.80 qps: 1164.10 (r/w/o: 815.90/230.60/117.60) lat (ms,95%): 2198.52 err/s: 0.00 reconn/s: 0.00[ 60s ] thds: 80 tps: 62.90 qps: 1242.19 (r/w/o: 867.69/248.70/125.80) lat (ms,95%): 1973.38 err/s: 0.00 reconn/s: 0.00PG6主机集群 2副本5工作节点5分片哈希分布OLTP读写混合场景[ 1s ] thds: 80 tps: 0.00 qps: 195.52 (r/w/o: 115.72/0.00/79.80) lat (ms,95%): 0.00 err/s: 0.00 reconn/s: 0.00[ 2s ] thds: 80 tps: 1.00 qps: 578.18 (r/w/o: 576.18/0.00/2.00) lat (ms,95%): 1973.38 err/s: 0.00 reconn/s: 0.00[ 3s ] thds: 80 tps: 67.00 qps: 989.03 (r/w/o: 855.03/0.00/134.00) lat (ms,95%): 2985.89 err/s: 0.00 reconn/s: 0.00[ 4s ] thds: 80 tps: 136.99 qps: 2305.88 (r/w/o: 2031.89/0.00/273.99) lat (ms,95%): 3095.38 err/s: 0.00 reconn/s: 0.00[ 5s ] thds: 80 tps: 200.98 qps: 3237.63 (r/w/o: 2835.67/0.00/401.95) lat (ms,95%): 787.74 err/s: 0.00 reconn/s: 0.00[ 75s ] thds: 80 tps: 795.93 qps: 12744.86 (r/w/o: 11154.01/0.00/1590.86) lat (ms,95%): 458.96 err/s: 0.00 reconn/s: 0.00[ 76s ] thds: 80 tps: 749.04 qps: 11941.61 (r/w/o: 10442.53/0.00/1499.08) lat (ms,95%): 475.79 err/s: 0.00 reconn/s: 0.00[ 77s ] thds: 80 tps: 729.03 qps: 11708.42 (r/w/o: 10250.37/0.00/1458.05) lat (ms,95%): 484.44 err/s: 0.00 reconn/s: 0.00[ 78s ] thds: 80 tps: 744.98 qps: 11892.74 (r/w/o: 10402.77/0.00/1489.97) lat (ms,95%): 442.73 err/s: 0.00 reconn/s: 0.00[ 79s ] thds: 80 tps: 739.02 qps: 11824.28 (r/w/o: 10346.25/0.00/1478.04) lat (ms,95%): 434.83 err/s: 0.00 reconn/s: 0.00[ 80s ] thds: 80 tps: 761.99 qps: 12226.87 (r/w/o: 10702.88/0.00/1523.98) lat (ms,95%): 419.45 err/s: 0.00 reconn/s: 0.00mariaDB单机OLTP读写混合场景[ 10s ] thds: 80 tps: 100.18 qps: 2130.57 (r/w/o: 1507.19/415.02/208.36) lat (ms,95%): 1280.93 err/s: 0.00 reconn/s: 0.00[ 20s ] thds: 80 tps: 125.20 qps: 2464.65 (r/w/o: 1721.73/492.51/250.40) lat (ms,95%): 909.80 err/s: 0.00 reconn/s: 0.00[ 30s ] thds: 80 tps: 135.70 qps: 2726.24 (r/w/o: 1908.86/545.99/271.39) lat (ms,95%): 816.63 err/s: 0.00 reconn/s: 0.00[ 40s ] thds: 80 tps: 156.80 qps: 3113.73 (r/w/o: 2178.95/621.19/313.59) lat (ms,95%): 719.92 err/s: 0.00 reconn/s: 0.00[ 50s ] thds: 80 tps: 133.71 qps: 2690.01 (r/w/o: 1886.48/536.12/267.41) lat (ms,95%): 802.05 err/s: 0.00 reconn/s: 0.00[ 60s ] thds: 80 tps: 132.90 qps: 2663.70 (r/w/o: 1862.30/535.60/265.80) lat (ms,95%): 1032.01 err/s: 0.00 reconn/s: 0.00mariaDB单机OLTP只读场景压测[ 1s ] thds: 80 tps: 1053.26 qps: 17530.32 (r/w/o: 15344.01/0.00/2186.30) lat (ms,95%): 458.96 err/s: 0.00 reconn/s: 0.00[ 2s ] thds: 80 tps: 3058.47 qps: 48963.52 (r/w/o: 42846.58/0.00/6116.94) lat (ms,95%): 39.65 err/s: 0.00 reconn/s: 0.00[ 3s ] thds: 80 tps: 3993.09 qps: 63878.37 (r/w/o: 55892.20/0.00/7986.17) lat (ms,95%): 29.19 err/s: 0.00 reconn/s: 0.00[ 4s ] thds: 80 tps: 3401.95 qps: 54410.25 (r/w/o: 47606.34/0.00/6803.91) lat (ms,95%): 38.25 err/s: 0.00 reconn/s: 0.00[ 5s ] thds: 80 tps: 3410.99 qps: 54540.82 (r/w/o: 47718.84/0.00/6821.98) lat (ms,95%): 38.25 err/s: 0.00 reconn/s: 0.00[ 75s ] thds: 80 tps: 3695.36 qps: 59142.79 (r/w/o: 51753.07/0.00/7389.72) lat (ms,95%): 34.33 err/s: 0.00 reconn/s: 0.00[ 76s ] thds: 80 tps: 3858.59 qps: 61812.42 (r/w/o: 54095.24/0.00/7717.18) lat (ms,95%): 31.94 err/s: 0.00 reconn/s: 0.00[ 77s ] thds: 80 tps: 3674.11 qps: 58735.75 (r/w/o: 51387.54/0.00/7348.22) lat (ms,95%): 36.24 err/s: 0.00 reconn/s: 0.00[ 78s ] thds: 80 tps: 3974.16 qps: 63621.59 (r/w/o: 55672.26/0.00/7949.32) lat (ms,95%): 33.12 err/s: 0.00 reconn/s: 0.00[ 79s ] thds: 80 tps: 5416.04 qps: 86639.63 (r/w/o: 75808.55/0.00/10831.08) lat (ms,95%): 21.11 err/s: 0.00 reconn/s: 0.00[ 80s ] thds: 80 tps: 5403.05 qps: 86473.78 (r/w/o: 75667.68/0.00/10806.10) lat (ms,95%): 21.50 err/s: 0.00 reconn/s: 0.00六、小结 table_size=1000000 tables=350 threads=80 mysql单机数据量大约140GMYSQL8.4.3单机 32C64G默认设置PGSQL17单机 32C64G默认设置OB集群 1zone6主机 租户48C96G默认设置PG单机6容器集群 2副本5工作节点哈希分布PG6主机集群 2副本5工作节点32分片哈希分布 48C96GPG6主机集群 2副本5工作节点5分片哈希分布 48C96GmariaDB11.5.2 32C64G默认设置读写混合场景下OB集群遥遥领先>PG单机>MYSQL单机>Maria DB单机>PG单机容器集群>PG6主机集群几乎无法使用 只读场景下PG单机>OB集群>MYSQL单机≈mariaDB单机>PG单机容器集群>PG6主机集群几乎无法使用
2024年11月22日
313 阅读
0 评论
0 点赞
2024-11-19
采用开源Zabbix+500块硬件平替5万块动环检测系统,实现UPS、温湿度、烟雾等数据采集、存储、告警、大屏展示、RS485 Modbus采集、RS232采集
架构展示: 大屏展示: 所需软件: ZabbixGrafana安装Zabbix-agent2的采集服务器MThings串口调试软件厂家自带UPS监控软件USR-VCOM有人虚拟串口软件所需硬件: 有人串口服务器(USR-N510)有人串口服务器 USR-TCP232-306自制RS485连接线万图思睿 SD123-ST01 RS485温湿度变送器万图思睿 SD123-SA01-R4 RS485烟感报警器所需资料: 科士达YDC3330 modbus开发文档YDC3330说明书一、安装、配置串口服务器 1、硬件安装制作UPS所需要的RS485通讯线,我使用了1、2、8,分别是485+、485-、GND地线,而12V是不需要连接的,因为我们连接的对象是UPS,它并不需要我们通过12V为其供电。如果我们连接的是温湿度计,则需要通过12V为其供电。YDC3330自带两个RS485接口,其支持菊花链连接,所以我使用RS485线一根接一根串起来,这样外观美观。注意,UPS接线非常危险,注意安全!串口服务器只需要将串口模式拨到RS485,并且连接电源、网线、串口线即可2、网络更改按串口服务器背面IP地址,登录,修改IP地址和串口参数、协议参数。右上角更改语言,左侧更改IP地址、按UPS说明书要求调整串口内容,我这里使用的9600:8n1,下方我这里需要使用厂家的UPS软件测试,所以使用的TcpServer None,后面使用Zabbix modbus-get的时候,就需要改成ModbusTCP了二、解析文档 1、使用厂家软件测试安装USR-VCOM有人虚拟串口软件,这个软件的作用可以理解为通过网络将串口无限延长。串口 - 有人串口服务器 - 虚拟串口此时我们使用厂家的UPS软件,软件正常运行通过菊花链串联的方式,4台UPS都上线了,可以搜索到站号分别为1、5、6、7,这个后面要用到2、解析参数如何获取我们需要的参数呢假设,我们要获取A相输入电压,查看说明书采用的modbus-RTU报文格式如图功能码对照表A相输入电压地址,大小2Byte按modbus-RTU组合参数,此时的报文为 01 04 75 30 00 01 XX XX01为站号1 04为功能码,我们要取的30001在功能码中为04H读 75 30为30000的十六进制 00 01为读取一个寄存器地址,即30001的数据,同理我们要读取ABC三相输入,此处就为00 03三个寄存器地址 XX XX为校验码,modbus调试软件可以自动生成使用MThings调试,确认我们要获取的数据没问题此处发现厂家说明书印刷错误,印刷运行状态为30070,实际测试为30080三、配置Zabbix 1、修改串口服务器为modbus-tcp模式2、通过zabbix-agent2获取数据安装一台主机,并安装zabbix-agent2,接入zabbix在zabbix服务器上通过命令请求数据,可以看到数据返回正常zabbix_get -s 172.16.21.5 -k modbus.get[tcp://172.16.10.201:9000,1,4,30000,81] zabbix_get -s 172.16.21.5 指定请求的客户端 -k modbus.get 以modbus.get方式请求 tcp://172.16.10.201:9000,1,4,30000,81 串口服务器IP端口,站号1,功能码4,从30000开始请求,请求81个寄存器数据3、制作zabbix监控项我们采用的方式是一次请求,分段解析添加监控项制作modbus-get监控项,按图片填写即可键值:modbus.get[tcp://172.16.10.201:9000,1,4,30000,81] 信息类型:文本添加监控项制作数据分类监控项,从modbus-get监控项获取数据注意类型为:相关项目 主要项是modbus-get监控项还没完,点击到进程中,此处是配置获取第几位的数值,有没有倍率关系,倍率关系看说明书JSONPath = $[17] 自定义倍数 = 0.14、制作zabbix报警项添加触发器last(/donghuan/ups1yunxingzhuangtai)=5当ups1yunxingzhuangtai值为5时报警,5的值在说明书中为市电中断拉闸测试,5s内收到微信告警添加监控数据获取失败报警表达式: nodata(/donghuan/modbus.get[tcp://172.16.10.201:9000,7,4,30000,81],30)=1 30秒后无数据进行报警四、配置大屏 Grafana正常接入Zabbix添加一项,一看就懂按自己的喜好风格制作大屏即可五、温湿度、烟雾传感器协议解析 新增内容:温湿度采集修改设备地址烟雾采集手动触发烟雾告警读取烟雾信号万图思睿的产品修改设备地址方式相同六、施耐德APC Smart-UPS RS232采集 1、连接信息默认波特率为24002、查询字符Y 让设备进入查询模式 j 续航时间 L 输入电压 O 输出电压 C 当前温度 Q 电池状态 f 电容容量 \ 当前负载3、发送数据编写python程序形成UPSdata数据,格式建议为[x,y,z],便于zabbix解析服务器安装有人vcom软件,将串口连接到服务器zabbix_sender.exe -c zabbix_agent2.conf -k 键值 -o "发送的数据"4、zabbix接收创建 zabbix采集器 键值与zabbix_sender发送的键值对应5、查看接收的数据6、python采集程序示例import serial,time,os def main(): # 配置串口参数 ser = serial.Serial( port='COM11', # 根据实际情况修改串口号,例如 Windows 上可能是 'COM3' baudrate=2400, # 设置波特率,根据实际情况修改 timeout=1 # 设置读取超时时间 ) if ser.is_open: print(f"串口 {ser.port} 已打开,查询 施耐德UPS 信息") else: print(f"无法打开串口 {ser.port}") return try: # 发送字符 'Y' ser.write(b'Y') # 等待一段时间让设备响应 time.sleep(0.1) # 读取返回的数据 response = ser.read(ser.in_waiting ) # 读取所有等待数据或至少1字节 if response: UPS1_list = response.decode('utf-8', errors='ignore').splitlines() if UPS1_list[0] == "SM": try: ser.write(b'jLOCQf\\Y') # 等待一段时间让设备响应 time.sleep(0.1) # 读取返回的数据 response = ser.read(ser.in_waiting or 100) # 读取所有等待数据或至少1字节 if response: UPS2_list = response.decode('utf-8', errors='ignore').splitlines() if UPS2_list[7] == "SM": print("续航时间"+UPS2_list[0].lstrip('0').replace(':','')+"分钟 输入电压"+UPS2_list[1]+"V 输出电压"+UPS2_list[2]+"V 当前温度"+UPS2_list[3].lstrip('0')+"摄氏度 电池容量"+UPS2_list[5]+"% 当前负载"+UPS2_list[6].lstrip('0')+"%") UPS3_list = str("["+UPS2_list[0].lstrip('0').replace(':','')+","+UPS2_list[1]+","+UPS2_list[2]+","+UPS2_list[3].lstrip('0')+","+UPS2_list[5]+","+UPS2_list[6].lstrip('0')+"]") command_array = ['zabbix_sender.exe','-c','zabbix_agent2.conf','-k','upsrs232','-o',UPSdata] command_str = ' '.join(command_array) print(command_array) print(command_str) result = os.popen(command_str) print(result.read()) else: print("没有接收到返回数据,连接错误") except Exception as e: print(f"通信过程中发生错误: {e}") else: print("UPS连接错误") else: print("没有接收到返回数据,连接错误") except Exception as e: print(f"通信过程中发生错误: {e}") finally: # 关闭串口 ser.close() print(f"串口 {ser.port} 已关闭") if __name__ == "__main__": main() 七、小结 文章很流畅,但现实并不会如此顺利。第一次,使用的串口线有问题,导致无法连接UPS第二次,厂家给我发错了文档,连续一星期无法测试成功第三次,厂家发对了文档,但是文档的内容错误,导致获取的数据不正确半个月时间分析协议,最后接入Zabbix制作大屏仅用了半天而已最后,Zabbix无比强大,值得深入学习!时隔两年,增加了RS232采集Zabbix真的太强大了
2024年11月19日
1,080 阅读
0 评论
16 点赞
1
2
...
23