Debian Informix高可用实现方案
Informix在Debian系统上的高可用性主要依赖以下内置技术与外部工具组合:
INFORMIXDIR、ONCONFIG、PATH)。onconfig文件($INFORMIXDIR/etc/onconfig.primary),设置HDR相关参数:HDR_PRIMARY=yes # 标识为主节点
HDR_HOST=node2 # 备节点主机名
HDR_PORT=1527 # HDR同步端口
LOGSYNC_INTERVAL=5 # 日志同步间隔(秒)
cd $INFORMIXDIR/bin
onpassword -k "your_password" -e ./hdr.pwd
chmod 600 hdr.pwd
onconfig文件($INFORMIXDIR/etc/onconfig.secondary),设置HDR相关参数:HDR_SECONDARY=yes # 标识为备节点
HDR_HOST=node1 # 主节点主机名
HDR_PORT=1527 # HDR同步端口
oninit -i),进入命令行工具onstat,执行onstat -g hdr确认HDR状态为“Standby”。onmode -m将实例切换至“Online”模式,HDR开始实时同步数据。onstat -g hdr验证同步状态(“Sync”表示同步正常,“Lag”显示延迟秒数)。sudo apt-get install pacemaker corosync pcs
/etc/corosync/corosync.conf),定义集群成员及通信参数:totem {
version: 2
cluster_name: informix_cluster
transport: udpu
interface {
ringnumber: 0
bindnetaddr: 192.168.1.0 # 集群节点所在网段
mcastport: 5405
}
}
nodelist {
node {
ring0_addr: node1
nodeid: 1
}
node {
ring0_addr: node2
nodeid: 2
}
}
quorum {
provider: corosync_votequorum
two_node: 1 # 两节点集群启用此选项
}
sudo systemctl start corosync
sudo systemctl start pacemaker
sudo systemctl enable corosync
sudo systemctl enable pacemaker
sudo pcs resource create vip ocf:heartbeat:IPaddr2 ip=192.168.1.100 cidr_netmask=24 op monitor interval=30s
informix_primary):sudo pcs resource create informix ocf:heartbeat:informix \
binary="$INFORMIXDIR/bin/oninit" \
config="$INFORMIXDIR/etc/onconfig.primary" \
op monitor interval=60s timeout=30s
sudo pcs constraint colocation add vip with informix INFINITY
sudo pcs constraint order informix then vip
sudo pcs status
onstat命令监控Informix实例状态(如onstat -g ses查看会话、onstat -g dri查看磁盘空间),通过Pacemaker的crm_mon -1查看集群资源状态。grep+mail)或第三方监控系统(如Prometheus+Granafa),当检测到HDR同步延迟、节点宕机或VIP漂移时发送邮件/短信告警。$INFORMIXDIR/logs)和系统日志(/var/log/syslog)集中存储(如ELK Stack),便于故障排查。