构建高可用性、高性能和可扩展的Zabbix Server 7.0架构
简介本教程讲解了一下如何设计构建一个高性能、高可靠、高扩展的Zabbix 监控集群。 架构图架构图PDF下载: https://songxwn.com/file/Zabbix_HA.pdf Pigsty 时序数据库集群Zabbix Server 和 Grafana的数据都是存放在数据库的,而Zabbix性能很大程度取决于数据库。所以要搭建数据库集群,提供性能和冗余性。(数据库最好使用SSD,最好是NVME SSD) Pigsty 集群搭建教程 https://songxwn.com/Pigsty-PG-RDS/ 时序数据库 TimescaleDBTimescaleDB,这是一种基于PostgreSQL的数据库解决方案,可自动将数据分为基于时间的块,以支持更快的大规模的监控性能。能以更好的性能去删除过期的监控数据和进行实时压缩数据,可节省空间。 Zabbix Server HAZabbix 从6.0 开始支持原生的HA故障切换,HA实现需要主备数据连接到同一个数据库实例。(Pigsty PG集群) HA通过数据库心跳实现,若主Zabbix Server在指定时间内不再写入心跳,则...
Stirling PDF 部署 - 强大的PDF Web在线编辑工具箱
简介这是一个强大的、可本地托管的、基于 Web 的 PDF 操作工具,可使用 Docker部署。它使您能够对 PDF 文件执行各种操作,包括拆分、合并、转换、重组、添加图像、旋转、压缩等。这个本地托管的 Web 应用程序已经发展到包含一套全面的功能,可以满足您的所有 PDF 要求。 能代替商业PDF软件的大部分功能,可在内网部署供所有人使用。 项目地址:https://github.com/Stirling-Tools/Stirling-PDF Docker Compose部署注意,先切换 /opt/pdf 目录下 1234567891011121314151617vim /opt/pdf/docker-compose.ymlversion: '3.3'services:stirling-pdf:image: frooodle/s-pdf:latestrestart: alwaysports:- '8080:8080'volumes:- ./trainingData:/usr/share/tessdata #Requir...
Grafana 对接 Zabbix 数据源API错误
介绍主要报错为 Invalid params. Invalid parameter "/": unexpected parameter "user". 主要原因为Zabbix 6.4.0以上的版本更新了API,导致Grafana的数据源插件不兼容。 解决方案更新到最新的Grafana 和 grafana-zabbix 插件即可。(大于 4.2.10) 1grafana-cli plugins upgrade-all 参考:https://github.com/grafana/grafana-zabbix/issues/1583
Cloudpods 强大的多云管理平台部署
简介Cloudpods 是一款简单、可靠的企业IaaS资源管理软件。帮助未云化企业全面云化IDC物理资源,提升企业IT管理效率。 Cloudpods 帮助客户在一个地方管理所有云计算资源。统一管理异构IT基础设施资源,极大简化多云架构复杂度和难度,帮助企业轻松驾驭多云环境。 功能 多云统一登录,允许以统一的身份访问各个云平台的原生控制台的SSO。(免密一键登录,自动创建SSO账号) 多云纳管,Cloudpods 支持管理多云资源的功能,可以管理大多数的主流云,包括私有云,例如OpenStack,PVE、Nutanix以及公有云,例如AWS,Azure,GCP,阿里云,华为云和腾讯云、火山引擎等。管理其云服务器、网络、存储、数据、中间件等。 VMware纳管,实现VMware vShpere虚拟化集群的自助服务和自动化。 支持LDAP/AD认证源外部认证源。 内置私有云,Cloudpods 基于 KVM 实现了轻量级私有云,包含了虚拟机、存储、网络、GPU卡和裸金属等功能。 纳管物理机,支持通过IPMI、PXE 管理裸金属服务器。 登录界面 云账号新建 环境Rocky ...
CentOS Stream 10 测试版下载:未来的RHEL10&Rocky Linux 10
简介最近发现Centos最放出了Stream 10 测试版本,应该是基于Fedora 40构建的。未来RedHat会基于此版本构建RHEL 10。 Linux内核版本:6.9.0Python版本:3.12.2 RHEL系发行版对应关系Fedora (根发行版-软件实时更新-只支持一年) >>某一版本作为基准版本 ⏬ Centos Stream (长期稳定发行版-软件版本固定-RHEL的测试版-支持5年) >> 进行稳定性测试后 ⏬ Red Hat Enterprise Linux (红帽商业发行版-支持5+5年) >> 源码无修改二次编译 ⏬ Rocky Linux (社区免费发行版-与RHEL bug级兼容-支持5+5年) PS:付费推荐RHEL,白嫖用Rocky。 示例:Fedora 34 > Centos Stream 9 > Red Hat Enterprise Linux 9 > Rocky Linux 9 下载ISO 下载连接 最新ISO目录 清华大学镜像站ISO下载目录 清华大学镜像站最新ISO 公众号
CactiEZ中文版 1.2.29 ISO 下载安装
简介 修改了yum源为中国高校联合镜像源 github改为gitee。 系统增加中文语言包。 修改时区为东八区。 增加了常用的软件包。 PS:CactiEZ是一个自动化安装cacti和插件的ISO镜像,本教程的ISO是基于官方的ISO镜像针对国内网络做了修改。 可安装目前最新的Cacti 1.2.27版本,基础系统镜像基于Rocky Linux 9.3 构建。 安装要求和登录信息 要求配置 4C 8G以上,至少 300G硬盘空间。 要求第一张网卡可DHCP获取IP地址,可直接联网。 SSH 系统用户 cactiez 默认密码为 songxwn.com。(有sudo权限,root密码也是这个,但无法远程ssh。) 安装后可通过IP直接访问web,默认账号为admin,默认密码为admin。 界面 预装插件列表 下载链接链接:https://pan.baidu.com/s/1NbSjlXWDcwKTlVCpiP8QXQ?pwd=upez 提取码:upez 公众号 使用修改数据采集器为高性能的spineWeb界面:系统配置→设置→Poller→采集类型→spine→保存
网络工程师的Python3 基础学习笔记1-3 for和while 循环语句
简介Python 中的循环语句有 for 和 while。系列文章: https://songxwn.com/categories/Python3/ for 循环: for 循环主要用于遍历可迭代对象,例如列表、字符串等。 它的执行效率通常较高,因为它不需要执行边界检查和自增操作。 for 循环的次数取决于遍历对象的长度。 遍历列表-打印列表的每一个元素123456网站列表 = ["Baidu", "Google","Songxwn.com","Taobao"]for 每循环网站列表的元素赋值 in 网站列表:print(每循环网站列表的元素赋值)sites = ["Baidu", "Google","Songxwn.com","Taobao"]for site in sites:print(site) 遍历字符串的每一个字符123word = 'songxwn.com'for letter in ...
网络工程师的Python3 企业微信机器人调用
简介企业微信的机器人可以发送文字、图片、Markdown、图文、文件、语音等消息。下面的脚本将其封装为一个class,方便调用。 官方文档:https://developer.work.weixin.qq.com/document/path/91770 PS:首先要获取一个webhook,例如:https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=693a91f6-7xxx-4bc4-97a0-0ec2sifa5aaa 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221...
NetBox 4 中文版 Docker部署教程
前言由于Netbox 官方的中文语言日渐完善,所以新出一个使用官方Docker源部署和升级的教程。 Netbox 系列文章:https://songxwn.com/categories/NetBox/ 环境介绍Rocky Linux 9.7 (理论上也适用于RHEL系列的7-9版本) 南京大学镜像源ISO镜像下载:https://mirror.nju.edu.cn/rocky/9/isos/x86_64/Rocky-9-latest-x86_64-minimal.iso 环境配置12345systemctl disable --now firewalldsed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config && setenforce 0# 关闭防火墙和SELinux。dnf install tree vim bash-completion tar git -y# 安装一些工具,用于之后的部署 Docker-CE 环境安装1234yum install...
猪圈Pigsty-PG私有RDS集群搭建教程
简介Pigsty 是一个更好的本地自建且开源 RDS for PostgreSQL 替代,具有以下特点: 开箱即用的 PostgreSQL 发行版,深度整合地理、时序、分布式、图、向量、分词、AI等 150 余个扩展插件! 运行于裸操作系统之上,无需容器支持,支持主流操作系统: EL7/8/9 及其衍生发行版, Ubuntu 20.04/22.04 以及 Debian 11/12。(推荐使用Rocky Linux) 基于现代的 Prometheus 与 Grafana 技术栈,提供令人惊艳,无可比拟的数据库观测能力:画廊 & 演示站点 基于 patroni, haproxy, 与etcd,打造故障自愈的高可用架构:硬件故障自动切换,流量无缝衔接。 基于 pgBackRest 与可选的 MinIO 集群提供开箱即用的 PITR 时间点恢复,为软件缺陷与人为删库兜底。 基于 Ansible 提供声明式的 API 对复杂度进行抽象,以 Database-as-Code 的方式极大简化了日常运维管理操作。 Pigsty用途广泛,可用作完整...
什么是SD-WAN?
简介SD-WAN(Software Defined Wide Area Network, 软件定义的广域网)将企业的分支、总部和多云之间互联起来,应用在不同混合链路(MPLS,Internet,5G,LTE等)之间选择最优的进行传输,提供优质的上云体验。通过部署SD-WAN可以提高企业分支网络的可靠性、灵活性和运维效率,确保分支网络一直在线,保证业务的连续和稳定。 业界标准中的SD-WAN对于SD-WAN的定义,不同SD-WAN的厂商会给你不同的答案,我们来了解一下业界的标准定义。 Gartner的定义+个人理解Gartner明确定义了SD-WAN的基本特性: 支持混合链路接入:如MPLS、Internet、LTE/5G、专线等。 支持动态调整路径:允许跨WAN连接进行负载分担,质量检测切换。 管理和业务发放简单:如支持在分支机构的零配置开局,应该与家庭Wi-Fi一样易于设置。可控制器自动下发,无需现场配置。 支持VPN以及其他增值业务服务:以及其他第三方服务,如WOC(WAN Optimization Controller,广域网优化控制器)、防火墙等。 支持明细的...
部署企业网站内部导航 Team-Nav 2.0
简介前后端完整的网址导航服务,可以用于公司内部内网使用,提供多种的卡片图标生成方式,能将上传的原型压缩包自动生成可访问的地址,支持私密卡片,发布倒计时等功能。 用于在公司内网部署使用,可在线修改上传、可拖拽排序等。 项目地址:https://github.com/tuituidan/team-nav 要求Java版本为 1.8.0 功能说明 首页 最高支持三级分类的显示,可搜索,点击左侧菜单支持高亮定位右侧卡片。 支持设置自定义主题。 附件的在线查看和下载。 头部可显示通知公告,支持倒计时模式。 设置常用卡片分类,收藏个人常用网址。 申请提交卡片。 后台管理 仅支持管理员角色进入后台管理(管理员角色可设置多人),其他人只能通过首页的卡片申请进行卡片添加,由管理员审核后生效。 后台管理-分类管理 三级分类树的基本增删改查及排序。 对需要归档的分类支持移除到历史分类中,移除后不再显示到首页,可随时从历史分类中还原回来。 可为卡片分类分配角色,未分配角色为公共分类,对所有人公开,不管登录与否,设置角色后必须登录且有对应角色的人才能看到(人员角色设置下面在角色和用户管理模块中)。...
NetBox QR-二维码插件安装教程
简介Netbox 的QR插件,用于给各种实体生成二维码标签,用于贴在实体上。二维码为实体的netbox网址。 最新版本不需要增加中文字体,由浏览器渲染字体。 Netbox系列文章:https://songxwn.com/categories/NetBox/ 适用于版本 Netbox 4.5.3 、netbox_qrcode 0.0.20 适用于对应源码安装教程:https://songxwn.com/netbox4-CN/ 官方文档:https://github.com/netbox-community/netbox-qrcode/blob/master/README.md PS:由于此插件大更新后配置方式变化,所以也更新一波。 安装1234source /opt/netbox/venv/bin/activate# 进入netbox虚拟python环境pip install netbox-qrcode# 安装相关包 开启和配置1234cd /opt/netbox/netbox/netbox# 进入目录sudo -u netbox vim configuration.py# 以...
Zabbix 7.0 LTS + TimescaleDB时序数据库安装教程
简介本教程使用Rocky Linux 8.9 搭建,后端数据库使用PostgreSQL 16 + TimescaleDB 2.14 时序数据库。 TimescaleDB,这是一种基于PostgreSQL的数据库解决方案,可自动将数据分为基于时间的块,以支持更快的大规模的监控性能。能以更好的性能去删除过期的监控数据和进行实时压缩数据,可节省空间。 PS:使用8.9而不使用9的原因,是因为RHEL 9 开始,Net-snmp包不支持DES MD5等过时加密算法了。 PS:本教程是Zabbix 7.0 LTS的版本。 数据库集群安装:https://songxwn.com/Pigsty-PG-RDS/ Zabbix 系列教程:https://songxwn.com/categories/Zabbix/ 6.0 to 7.0 特性 支持SNMP异步 支持Proxy 组,可负载均衡和故障切换。 支持LDAP 实时同步 即时同步主动或被动 Zabbix proxy 和 agent 更改的配置。 对Zabbix Proxy版本向下兼容(最低到6.0的最新版本) SNMP支持 walk,可批量获...
网络工程师的Python3 基础学习笔记1-2 if elif 条件控制
简介Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块。 Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。 系列文章: https://songxwn.com/categories/Python3/ if 语句: if 语句用于执行一个代码块,当指定的条件,运算结果的布尔值为真(True)时。 如果条件满足,那么 if 语句后面的代码块将被执行。 如果条件不满足,那么 if 语句后面的代码块将被跳过。 elif 语句: elif 是 else if 的缩写,用于在多个条件之间进行选择。 elif 会依次按序执行。 当前面的 if 或 elif 条件不满足时,会检查下一个 elif 条件。 如果某个 elif 条件满足,那么对应的代码块将被执行,而后续的 elif 和 else 部分将被跳过。 如果所有elif 条件都不匹配,则什么都不执行 else 语句: else 语句用于在没有满足任何 if 或 elif 条件时执行的代码块。 如果前面的所有条件都不满足,那么 els...