ICEGrid部署和測試

部署環境:使用4臺服務器來部署grid應用,必須把4臺服務器的防火牆都關閉

Register主服務192.168.10.11, Register從服務:192.168.11.12

Node1:192.168.10.13

Node2:192.168.10.14

客戶端:192.168.11.44

 

注:以下是windows下部署方案,linux部署類同,配置文件可以複用。

 

192.168.10.11部署步驟:

1. 創建ICE運行環境。

具體動作:複製ICEbin目錄到150的任何位置,該目錄約400MB,例如:D:\ZeroC\Ice-3.5.1\bin

 

2. 創建ICE配置文件目錄

具體動作:創建一個目錄來存放配置文件。例如:D:\MyIceGrid

 

3. 配置Register主服務

具體動作:創建config.register文件,填寫以下內容。

#實例名稱,不能重複

IceGrid.InstanceName=DemoIceGrid  

   

Ice.Default.Locator=DemoIceGrid/Locator:default -p 4061   

 # IceGrid registry configuration.   

  

訪問授權相關,默認就行  

IceGrid.Registry.Client.Endpoints=default  -p 4061     

IceGrid.Registry.Server.Endpoints=default    

IceGrid.Registry.Internal.Endpoints=default  

 

#定位服務的持續化存儲,如果不存在要手工創建

IceGrid.Registry.Data=db/registry   

 

#標識爲主服務

IceGrid.Registry.ReplicaName=Master

 

 

訪問授權相關,默認就行   

IceGrid.Registry.PermissionsVerifier=DemoIceGrid/NullPermissionsVerifier   

IceGrid.Registry.AdminPermissionsVerifier=DemoIceGrid/NullPermissionsVerifier     

IceGrid.Registry.SSLPermissionsVerifier=DemoIceGrid/NullSSLPermissionsVerifier   

IceGrid.Registry.AdminSSLPermissionsVerifier=DemoIceGrid/NullSSLPermissionsVerifier   

 

#配置管理授權的帳號和密碼

IceGridAdmin.Username=foo

IceGridAdmin.Password=bar 

 

4. 運行Register主服務。

具體動作:D:\ZeroC\Ice-3.5.1\bin\icegridregistry  --Ice.Config=config.register

 

 

5. 配置應用信息。

具體動作:複製一份application.xml文件,修改名稱爲application_with_replication.xml,內容更新成以下內容。

 

<icegrid>

 

  <application name="Simple">

 

    <server-template id="SimpleServer">

      <parameter name="index"/>

      <server id="SimpleServer-${index}" exe="./server.exe" activation="on-demand">

        <adapter name="Hello" endpoints="tcp"  replica-group="ReplicatedHelloAdapter"/>

        <property name="Identity" value="hello"/>

 

        <property name="IceMX.Metrics.Debug.GroupBy" value="id"/>

        <property name="IceMX.Metrics.Debug.Disabled" value="1"/>

        <property name="IceMX.Metrics.ByParent.GroupBy" value="parent"/>

        <property name="IceMX.Metrics.ByParent.Disabled" value="1"/>

      </server>

    </server-template>

 

    <replica-group id="ReplicatedHelloAdapter">

      <load-balancing type="round-robin"/>

      <object identity="hello" type="::Demo::Hello"/>

    </replica-group>

 

    <node name="node1">

      <server-instance template="SimpleServer" index="1"/>

      <server-instance template="SimpleServer" index="2"/>

      <server-instance template="SimpleServer" index="3"/>

    </node>

    <node name="node2">

      <server-instance template="SimpleServer" index="4"/>

      <server-instance template="SimpleServer" index="5"/>

      <server-instance template="SimpleServer" index="6"/>

    </node>

 

  </application>

 

</icegrid>

 

6. 運行管理命令。

具體動作:

D:\ZeroC\Ice-3.5.1\bin\icegridadmin --Ice.Config=config.register  -e "application add  'application_with_replication.xml' " 

如果已經存在,則運行更新命令

D:\ZeroC\Ice-3.5.1\bin\icegridadmin --Ice.Config=config.register  -e "application update 'application_with_replication.xml' "

 

7. 用工具測試效果

具體動作:打開bin\IceGridGUI.jar

創建直接連接,輸入IP,端口,管理的帳號和密碼。不報錯就表示成功

 

 

 

 

192.168.10.12部署步驟:

1. 創建ICE運行環境。

具體動作:複製ICEbin目錄到150的任何位置,該目錄約400MB,例如:D:\ZeroC\Ice-3.5.1\bin

 

2. 創建ICE配置文件目錄

具體動作:創建一個目錄來存放配置文件。例如:D:\MyIceGrid

 

3. 配置Register從服務

具體動作:創建config.register2文件,填寫以下內容。

IceGrid.InstanceName=DemoIceGrid  

  

#   

  

# The IceGrid locator proxy.   

  

#   

#定位主服務的地址,必須配置  

Ice.Default.Locator=DemoIceGrid/Locator:default -h 192.168.10.11 -p 4061

  

#   

  

# IceGrid registry configuration.   

  

#   

#當前定位服務的地址,必須配置  

IceGrid.Registry.Client.Endpoints=default  -h 192.168.10.12 -p 4061   

#IceGrid.Registry.Client.Endpoints=default

  

IceGrid.Registry.Server.Endpoints=default  

  

IceGrid.Registry.Internal.Endpoints=default  

  

IceGrid.Registry.Data=db/registry   

 

#標識爲從服務,名稱不爲master就行

IceGrid.Registry.ReplicaName=slave1

  

IceGrid.Registry.PermissionsVerifier=DemoIceGrid/NullPermissionsVerifier   

  

IceGrid.Registry.AdminPermissionsVerifier=DemoIceGrid/NullPermissionsVerifier   

  

IceGrid.Registry.SSLPermissionsVerifier=DemoIceGrid/NullSSLPermissionsVerifier   

  

IceGrid.Registry.AdminSSLPermissionsVerifier=DemoIceGrid/NullSSLPermissionsVerifier   

 

4. 運行Register從服務。

具體動作:D:\ZeroC\Ice-3.5.1\bin\icegridregistry  --Ice.Config=config.register2

 

 

5. 用工具測試效果

具體動作:打開bin\IceGridGUI.jar

創建直接連接,輸入IP,端口,管理的帳號和密碼。不報錯就表示成功

 

 

 

 

 

 

 

192.168.10.13部署步驟:

1. 創建ICE運行環境。

具體動作:複製ICEbin目錄到150的任何位置,該目錄約400MB,例如:D:\ZeroC\Ice-3.5.1\bin

 

2. 創建ICE配置文件目錄

具體動作:創建一個目錄來存放配置文件。例如:D:\MyIceGrid

 

3. 配置Node1服務

具體動作:創建config.node1文件,填寫以下內容。

#配置定位器的地址爲 定位主服務的地址和從服務的地址,由node節點主動向定位服務進行註冊

Ice.Default.Locator=DemoIceGrid/Locator:default -h 192.168.10.11 -p 4061:default -h 192.168.10.12 -p 4061 

 

#

 

# IceGrid registry configuration.

 

#

 

#

 

# IceGrid node configuration.

 

#結點配置信息

 

IceGrid.Node.Name=node1

 

IceGrid.Node.Endpoints=default

 

IceGrid.Node.Data=db/node

 

#IceGrid.Node.Output=db

 

#IceGrid.Node.RedirectErrToOut=1

 

#

 

# Trace properties.

 

#

 

IceGrid.Node.Trace.Activator=1 

 

4. 運行Node1服務

具體動作:D:\ZeroC\Ice-3.5.1\bin\icegridnode --Ice.Config=config.node1

 

 

 

192.168.10.14部署步驟:

1. 創建ICE運行環境。

具體動作:複製ICEbin目錄到150的任何位置,該目錄約400MB,例如:D:\ZeroC\Ice-3.5.1\bin

 

2. 創建ICE配置文件目錄

具體動作:創建一個目錄來存放配置文件。例如:D:\MyIceGrid

 

3. 配置Node1服務

具體動作:創建config.node2文件,填寫以下內容。

#配置定位器的地址爲 定位主服務的地址和從服務的地址,由node節點主動向定位服務進行註冊

Ice.Default.Locator=DemoIceGrid/Locator:default -h 192.168.10.11 -p 4061:default -h 192.168.10.12 -p 4061 

 

#

 

# IceGrid registry configuration.

 

#

 

#

 

# IceGrid node configuration.

 

#結點配置信息

 

IceGrid.Node.Name=node2

 

IceGrid.Node.Endpoints=default

 

IceGrid.Node.Data=db/node2

 

#IceGrid.Node.Output=db/node2

 

#IceGrid.Node.RedirectErrToOut=1

 

#

 

# Trace properties.

 

#

 

IceGrid.Node.Trace.Activator=1 

 

4. 運行Node2服務

具體動作:D:\ZeroC\Ice-3.5.1\bin\icegridnode --Ice.Config=config.node2

 

客戶端配置:

Ice.Default.Locator=DemoIceGrid/Locator:default -h 192.168.10.11 -p 4061:default -h 192.168.10.12 -p 4061 

 

 

 

測試過程:

1. 把定位主服務關閉, 客戶端連接正常,信息顯示正確。

2. 把定位從服務關閉,客戶端連接正常,信息顯示正確。

3. 把node1關閉,客戶端連接正常,信息顯示正確。

4. 把node2關閉,客戶端連接正常,信息顯示正確。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章