本文将介绍ice搭建高可用集群环境的详细操作步骤,实现 register 的主从备份、双服务器节点负载均衡等功能
1、下载:
到官网 http://www.zeroc.com/ 下载最新的Ice-x.x.x.msi (windows)版本
2、安装:
双击下载下来的安装文件,安装到自己喜欢的目录下(例:D:\Program Files\ZeroC)
3、环境配置:
设置ICE的环境变量 ICEJ_HOME = D:\Program Files\ZeroC\ice-x.x.x
同时将 %ICEJ_HOME%\bin 目录添加到 Path 路径中
更多细节
下边介绍一个伪集群环境的配置和搭建步骤,节点情况如下:
主注册节点(Master):tcp -h 127.0.0.1 -p 4061
从注册节点(Replica):tcp -h 127.0.0.1 -p 4062
服务节点node1: tcp -p 5062
服务节点node2: tcp -p 5063
1、编写主注册节点
register_master.conf 配置文件
IceGrid.InstanceName=DemoGrid #设置注册节点的实例名称,其它的配置均基于该名字配置
IceGrid.Registry.Client.Endpoints=tcp -p 4061 #设置用于监听客户端连接的协议类型及端口
IceGrid.Registry.Data=D:\ice_service\register\data #设置主注册节点的数据存储目录
IceGrid.Registry.Server.Endpoints=tcp #设置与服务器节点之间通讯的协议类型,不指定端口则由系统自动分配
IceGrid.Registry.Internal.Endpoints=tcp #
IceGrid.Registry.AdminPermissionsVerifier=DemoGrid/NullPermissionsVerifier #指定进入管理系统的安全验证方式
IceGridAdmin.Username=test #设置管理用户名
IceGridAdmin.Password=test #设置管理密码
2、编写从注册节点
register_slave.conf 配置文件
Ice.Default.Locator=DemoGrid/Locator:tcp -h 127.0.0.1 -p 4061 #指定主注册节点的位置
IceGrid.Registry.Client.Endpoints=tcp -p 4062 #设置用于监听客户端连接的协议类型及端口
IceGrid.Registry.Data=D:\ice_service\register\replica_data #设置主注册节点的数据存储目录
IceGrid.Registry.Server.Endpoints=tcp #设置与服务器节点之间通讯的协议类型,不指定端口则由系统自动分配
IceGrid.Registry.Internal.Endpoints=tcp #
IceGrid.Registry.AdminPermissionsVerifier=DemoGrid/NullPermissionsVerifier #指定进入管理系统的安全验证方式
IceGridAdmin.Username=test #设置管理用户名
IceGridAdmin.Password=test #设置管理密码
3、编写服务节点
node1.conf 配置文件
Ice.Default.Locator=DemoGrid/Locator:tcp -h 127.0.0.1 -p 4061 #指定主注册节点的位置
IceGrid.Node.Data=D:\ice_service\node\data #设置节点1相关数据的存储目录
IceGrid.Node.Endpoints=tcp -p 5062 #指定节点1用于监听客户端连接的端口号
IceGrid.Node.Name=MyNode1 #指定节点1的名称
Ice.StdErr=D:\ice_service\node\logs\node.stderr.log #指定错误日志文件
Ice.StdOut=D:\ice_service\node\logs\node.stdout.log #指定标准输出流日志文件
4、编写服务节点
node2.conf 配置文件
Ice.Default.Locator=DemoGrid/Locator:tcp -h 127.0.0.1 -p 4061 #指定主注册节点的位置
IceGrid.Node.Data=D:\ice_service\node\data2 #设置节点1相关数据的存储目录
IceGrid.Node.Endpoints=tcp -p 5063 #指定节点1用于监听客户端连接的端口号
IceGrid.Node.Name=MyNode2 #指定节点2的名称
Ice.StdErr=D:\ice_service\node\logs\node2.stderr.log #指定错误日志文件
Ice.StdOut=D:\ice_service\node\logs\node2.stdout.log #指定标准输出流日志文件