温馨提示×

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