9月 14

iTop插件命名大小写引发的问题

在Windows上开发 iTop 插件,新增了一个 module,本地测试正常,但是上传到 LInux 系统的服务器上,却怎么也不生效,查看 env-production 下编译的结果,发现有两个 model.xxx.php 格式的文件,不同的是,一个文件名大写,一个小写,编译的代码更新到了大写的文件夹下,小写的没有内容。 查看 Wind … Continue reading

8月 08

msys2 离线安装软件

在没有网络的情况下,可以先在能联网的机器上下载好软件包,然后拷贝到不能联网的机器上安装。以安装 jq 为例,具体步骤如下: 在可以联网的机器上执行 pacman -S -w mingw64/mingw-w64-x86_64-jq 在 /var/cache/pacman/pkg 目录下能找到刚才下载的软件包及其依赖包 将软件包拷贝至不能联网 … Continue reading

7月 19

iTop唯一性检查功能测试

唯一性检查在 CMDB 里比较重要,大部分 CI 都不希望重复。iTop 2.6 之前并没有支持唯一性检查功能,需要使用 DoCheckToWrite 函数在写入前自行检查。 老方法回顾 用DoCheckToWrite函数实现写入前的校验,比如下面的代码校验某些属性,保证其唯一性。还可以在写入前进行简单的校验,例如限制登录用户只能编辑自己 … Continue reading

7月 15

错误:该对象已被创建!

标题是 iTop 新建 teemip 的 IP Subnet Block 对象时,在空表页报出的一个莫名其妙的错误。iTop 版本是 2.7.0,理论上唯一性检查应该在对象页面展示提示信息,而不是一个空白页。 搜索代码,可以知道这个信息是在 iTop 的核心词典里。 继续搜索词典 Key: 可以看到是在 /pages/UI.php 中调用 … Continue reading

7月 07

MySQL Group Replication学习记录

MySQL 常见的高可用方案有 MHA,Galera,Orchestrator,以及官方的 Group Replication(MGR),本文是 MGR 多主集群的搭建及维护学习记录。 MGR特点 支持单主和多主模式 基于 Paxos 算法,实现数据复制的一致性 插件化设计,支持插件检测,新增节点小于集群当前节点主版本号,拒绝加入集群,大 … Continue reading

7月 06

使用vagrant搭建测试环境

使用 vagrant 管理虚拟机,能实现搭建可重复的开发或者测试环境。在需要验证某些集群软件,比如 Ceph,Kubernetes,MySQL Cluster 时,会比较有用。vagrant 是基于 Ruby 开发的,在 Windows 10 上运行会比较慢,但是似乎也没有什么替代品。如果能使用容器代替虚拟机,或许可以试试 Docker … Continue reading