Geode多节点集群实验

服务器说明

主机(nn): locator1 + server1
主机(db): locator2 + server2 
主机(dn1): locator3 + server3 
主机(dn2): locator4 + server4 

分别在各主机创建Geode工作目录,并在该目录中进入GFSH命令行。

新建多locator集群

主机(nn)

  gfsh>start locator --name=locator1 --port=10334 --locators=nn[10334],db[10334]

主机(db)

  gfsh>start locator --name=locator2 --port=10334 --locators=nn[10334],db[10334]

主机(nn)

  gfsh>start server --name=server1 --server-port=40401 --locator=nn[10334],db[10334]

主机(db)

  gfsh>start server --name=server2 --server-port=40401 --locator=nn[10334],db[10334]

主机(nn)

  gfsh>list members
    Name   | Id
  -------- | ---------------------------------------------------
  locator1 | 192.168.79.143(locator1:39175:locator)<ec><v0>:1024
  locator2 | 192.168.79.145(locator2:33587:locator)<ec><v1>:1024
  server1  | 192.168.79.143(server1:39334)<v2>:1025
  server2  | 192.168.79.145(server2:33715)<v3>:1025

db

  gfsh>list members  
    Name   | Id
  -------- | ---------------------------------------------------
  locator1 | 192.168.79.143(locator1:39175:locator)<ec><v0>:1024
  locator2 | 192.168.79.145(locator2:33587:locator)<ec><v1>:1024
  server1  | 192.168.79.143(server1:39334)<v2>:1025
  server2  | 192.168.79.145(server2:33715)<v3>:1025

添加新节点

dn1

  gfsh>start server --name=server3 --server-port=40401 --locators=nn[10334],db[10334]

dn2

  gfsh>start server --name=server4 --server-port=40401 --locators=nn[10334],db[10334]

db & nn

  gfsh>list members
    Name   | Id
  -------- | ---------------------------------------------------
  server3  | 192.168.79.139(server3:5244)<v5>:1024
  server4  | 192.168.79.142(server4:5160)<v4>:1024
  locator1 | 192.168.79.143(locator1:39175:locator)<ec><v0>:1024
  locator2 | 192.168.79.145(locator2:33587:locator)<ec><v1>:1024
  server1  | 192.168.79.143(server1:39334)<v2>:1025
  server2  | 192.168.79.145(server2:33715)<v3>:1025

nn

  gfsh>create region --name=region1 --type=REPLICATE_PERSISTENT
  Member  | Status
  ------- | --------------------------------------
  server1 | Region "/region1" created on "server1"
  server2 | Region "/region1" created on "server2"
  server3 | Region "/region1" created on "server3"
  server4 | Region "/region1" created on “server4"

测试关闭节点

  gfsh>stop server --name=server4
  gfsh>list members
    Name   | Id
  -------- | ---------------------------------------------------
  server3  | 192.168.79.139(server3:5244)<v5>:1024
  locator1 | 192.168.79.143(locator1:39175:locator)<ec><v0>:1024
  locator2 | 192.168.79.145(locator2:33587:locator)<ec><v1>:1024
  server1  | 192.168.79.143(server1:39334)<v2>:1025
  server2  | 192.168.79.145(server2:33715)<v3>:1025

模拟机器崩溃

kill dn1服务器上的server3进程

  gfsh>list members
    Name   | Id
  -------- | ---------------------------------------------------
  locator1 | 192.168.79.143(locator1:39175:locator)<ec><v0>:1024
  locator2 | 192.168.79.145(locator2:33587:locator)<ec><v1>:1024
  server1  | 192.168.79.143(server1:39334)<v2>:1025
  server2  | 192.168.79.145(server2:33715)<v3>:1025
  gfsh>describe region --name=region1
  ..........................................................
  Name            : region1
  Data Policy     : persistent replicate
  Hosting Members : server2
                    server1
  
  Non-Default Attributes Shared By Hosting Members  
  
   Type  |    Name     | Value
  ------ | ----------- | --------------------
  Region | data-policy | PERSISTENT_REPLICATE
         | size        | 0
         | scope       | distributed-ack
  gfsh>put --region=region1 --key="1" --value="one"
  
  Result      : true
  Key Class   : java.lang.String
  Key         : 1
  Value Class : java.lang.String
  Old Value   : <NULL>

启重节点加入集群

dn1

  gfsh>start server --name=server3 --server-port=40401 --locators=nn[10334],db[10334]

nn

  gfsh>describe region --name=region1
  ..........................................................
  Name            : region1
  Data Policy     : persistent replicate
  Hosting Members : server3
                    server2
                    server1
  
  Non-Default Attributes Shared By Hosting Members  
  
   Type  |    Name     | Value
  ------ | ----------- | --------------------
  Region | data-policy | PERSISTENT_REPLICATE
         | size        | 1
         | scope       | distributed-ack
  gfsh>query --query="select * from /region1"
  
  Result     : true
  startCount : 0
  endCount   : 20
  Rows       : 1
  
  Result
  ------
  one
  
  NEXT_STEP_NAME : END

模拟locator停机并重启服务

db

  $ reboot

nn

  gfsh>list members
    Name   | Id
  -------- | ---------------------------------------------------
  server3  | 192.168.79.139(server3:5617)<v8>:1024
  locator1 | 192.168.79.143(locator1:39175:locator)<ec><v0>:1024
  server1  | 192.168.79.143(server1:39334)<v2>:1025
  gfsh>query --query="select * from /region1"
  
  Result     : true
  startCount : 0
  endCount   : 20
  Rows       : 1
  
  Result
  ------
  one
  
  NEXT_STEP_NAME : END

db

  gfsh>start locator --name=locator2 --port=10334 --locators=nn[10334],db[10334]
  gfsh>start server --name=server2 --server-port=40401 --locator=nn[10334],db[10334]
  gfsh>list members
    Name   | Id
  -------- | ---------------------------------------------------
  server3  | 192.168.79.139(server3:3950)<v23>:1024
  locator2 | 192.168.79.146(locator2:5447:locator)<ec><v25>:1024
  locator1 | 192.168.79.149(locator1:5200:locator)<ec><v12>:1024
  server2  | 192.168.79.146(server2:5602)<v26>:1025
  server1  | 192.168.79.149(server1:5303)<v13>:1025
  
  gfsh>describe region --name=region1
  ..........................................................
  Name            : region1
  Data Policy     : persistent replicate
  Hosting Members : server3
                    server2
                    server1
  
  Non-Default Attributes Shared By Hosting Members  
  
   Type  |    Name     | Value
  ------ | ----------- | --------------------
  Region | data-policy | PERSISTENT_REPLICATE
         | size        | 1
         | scope       | distributed-ack
  gfsh>query --query="select * from /region1"
  
  Result     : true
  startCount : 0
  endCount   : 20
  Rows       : 1
  
  Result
  ------
  one
  
  NEXT_STEP_NAME : END
  

模拟locator崩溃

nn 模拟停机,kill所有geode相关进程 此时db机上的连接会自动断开(推断启动locator时,会自动连至locators列表中第一台启动的locator),信息如下:

  gfsh>
  No longer connected to nn[1099].

重新连接到db,如果没有断开连接就不用了

  gfsh>connect --locator=db[10334]
  gfsh>describe region --name=region1
  ..........................................................
  Name            : region1
  Data Policy     : persistent replicate
  Hosting Members : server3
                    server2
  
  Non-Default Attributes Shared By Hosting Members  
  
   Type  |    Name     | Value
  ------ | ----------- | --------------------
  Region | data-policy | PERSISTENT_REPLICATE
         | size        | 1
         | scope       | distributed-ack
  gfsh>query --query="select * from /region1"
  
  Result     : true
  startCount : 0
  endCount   : 20
  Rows       : 1
  
  Result
  ------
  one
  
  NEXT_STEP_NAME : END

猜你喜欢

转载自blog.csdn.net/huanghuitan/article/details/71629774