温馨提示×

centos informix集群搭建方法

小樊
42
2025-10-02 20:21:06
栏目: 智能运维

CentOS上搭建Informix集群的详细步骤

一、准备工作

1. 硬件与环境要求

  • 节点规划:至少准备2台CentOS服务器(如CentOS 7/8),确保CPU(建议多核)、内存(建议16GB+)、存储(建议SSD)满足Informix性能需求;
  • 网络配置:所有节点配置静态IP,确保节点间网络互通(可通过ping命令验证);
  • 操作系统:所有节点安装相同版本的CentOS,关闭SELinux(setenforce 0)和防火墙(systemctl stop firewalld,测试后再开启)。

2. 创建Informix用户与组

  • 执行以下命令创建专用用户和组,避免权限问题:
    groupadd informix useradd -g informix -d /opt/IBM/informix -m informix passwd informix # 设置密码 

3. 设置环境变量

  • 编辑informix用户的~/.bash_profile文件,添加以下变量(根据实际路径调整):
    export INFORMIXDIR=/opt/IBM/informix export PATH=$INFORMIXDIR/bin:$PATH export INFORMIXSERVER=infclus1 # 集群实例名 export ONCONFIG=onconfig.infclus1 # 配置文件名 export INFORMIXSQLHOSTS=$INFORMIXDIR/etc/sqlhosts.infclus1 
  • 生效配置:source ~/.bash_profile

二、安装Informix软件

1. 下载与解压

  • 从IBM官网下载适用于CentOS的Informix安装包(如iif.14.10.FC5DE.Linux-RHEL8-x86_64.tar),解压到指定目录:
    tar -xvf iif.14.10.FC5DE.Linux-RHEL8-x86_64.tar -C /opt/IBM/ 

2. 运行安装程序

  • 切换至informix用户,执行安装脚本:
    su - informix cd /opt/IBM/informix ./ids_install # 按照向导选择“典型安装” 

3. 验证安装

  • 执行dbaccess -v,若显示Informix版本信息,则安装成功。

三、配置Informix基础参数

1. 修改onconfig配置文件

  • 复制模板文件并编辑(以infclus1实例为例):
    cp $INFORMIXDIR/etc/onconfig.std onconfig.infclus1 
  • 关键参数调整:
    ROOTNAME=rootdbs # 根数据库空间名 ROOTPATH=/opt/IBM/informix/storage/rootdbs # 根数据库空间路径 DBSERVERNAME=infclus1 # 数据库服务器名(需与INFORMIXSERVER一致) LOGPATH=/opt/IBM/informix/log # 日志目录 SHMPATH=/opt/IBM/informix/shm # 共享内存路径 BUFFERPOOL=4K,1000,0 # 缓冲池配置(4K页大小,1000页) 

2. 创建目录并授权

  • 创建上述目录并设置权限:
    mkdir -p /opt/IBM/informix/{storage,log,shm} chown -R informix:informix /opt/IBM/informix chmod 660 /opt/IBM/informix/storage/rootdbs # 关键文件权限 

3. 初始化数据库

  • 启动数据库实例:
    oninit -ivy # -i初始化,-v显示详细日志,-y自动应答 

4. 配置sqlhosts文件

  • 编辑$INFORMIXDIR/etc/sqlhosts.infclus1,添加集群节点通信信息(如本地节点):
    infclus1 tcp 192.168.1.101 1526 # 节点IP与端口 

5. 验证实例状态

  • 执行onstat -查看实例是否运行:
    onstat - # 显示实例状态为“Active” 

四、配置集群管理(以Pacemaker+Corosync为例)

1. 安装集群工具

  • 在所有节点执行:
    yum install -y pacemaker corosync pcs systemctl start pcsd systemctl enable pcsd 

2. 配置Corosync

  • 编辑/etc/corosync/corosync.conf(示例为2节点集群):
    totem { version: 2 cluster_name: infclus_cluster transport: udpu interface { ringnumber: 0 bindnetaddr: 192.168.1.0 # 集群网络段 mcastport: 5405 ttl: 1 } } nodelist { node { ring0_addr: 192.168.1.101 # 节点1 IP nodeid: 1 } node { ring0_addr: 192.168.1.102 # 节点2 IP nodeid: 2 } } quorum { provider: corosync_votequorum two_node: 1 # 2节点集群启用 } logging { to_logfile: yes logfile: /var/log/corosync/corosync.log } 

3. 启动集群服务

  • 在节点1执行(同步至所有节点):
    corosync-keygen # 生成密钥 systemctl start corosync systemctl enable corosync pcs cluster auth node1 node2 -u hacluster -p yourpassword # 认证节点 pcs cluster setup --name infclus_cluster node1 node2 # 创建集群 pcs cluster start --all # 启动集群 pcs cluster enable --all # 开机自启 

4. 配置集群资源

  • 创建虚拟IP(VIP)资源:
    pcs resource create Cluster_VIP ocf:heartbeat:IPaddr2 ip=192.168.1.100 cidr_netmask=24 op monitor interval=20s 
  • 创建Informix资源(需根据版本调整资源代理):
    pcs resource create InfclusDB ocf:heartbeat:informix \ infclus_config=/opt/IBM/informix/etc/onconfig.infclus1 \ infclus_dir=/opt/IBM/informix \ op monitor interval=30s 
  • 设置资源约束(VIP依赖Informix):
    pcs constraint colocation add Cluster_VIP with InfclusDB INFINITY pcs constraint order InfclusDB then Cluster_VIP 

5. 验证集群状态

  • 查看集群资源状态:
    pcs status 
  • 若显示“Cluster is online”且资源正常运行,则集群配置成功。

五、验证集群功能

1. 检查集群状态

  • 在任意节点执行:
    onstat -g cl # 显示集群节点信息 
  • 正常应显示所有节点状态为“Up”。

2. 测试故障转移

  • 手动停止主节点上的Informix服务:
    onmode -ky # 强制停止实例 
  • 观察集群状态,备用节点应在1分钟内自动接管(VIP切换至备用节点)。

六、监控与维护

1. 监控工具

  • 使用Informix自带的onstat命令监控实例状态;
  • 部署第三方监控工具(如Prometheus+Grafana),通过Informix Exporter采集指标。

2. 定期维护

  • 备份:每日执行ontapeonbar备份数据库;
  • 日志清理:定期清理$INFORMIXDIR/log目录下的旧日志;
  • 更新:及时安装IBM发布的补丁包,修复安全漏洞。

以上步骤为CentOS上搭建Informix集群的基础流程,实际配置需根据业务需求(如数据同步方式、高可用策略)调整。建议参考IBM官方文档(如《Informix Cluster Deployment Guide》)进行详细验证。

0