• Geode多节点集群实验


    服务器说明

    1. 主机(T1): locator1 + server1
    2. 主机(T2): locator2 + server2
    3. 主机(T3): server3
    4. 主机(T4): server4

    分别在各主机创建Geode工作目录geode_work,并在该目录中进入gfsh命令行.
    例如:

    cd /opt/geode_work
    gfsh
    
    • 1
    • 2

    新建多locator集群

    • 主机(T1)
      gfsh>start locator --name=locator1 --port=10334 --locators=T1[10334],T2[10334]
    
    • 1
    • 主机(T2)
      gfsh>start locator --name=locator2 --port=10334 --locators=T1[10334],T2[10334]
    
    • 1
    • 主机(T1)
      gfsh>start server --name=server1 --server-port=40404 --locators=T1[10334],T2[10334]
    
    • 1
    • 主机(T2)
      gfsh>start server --name=server2 --server-port=40404 --locators=T1[10334],T2[10334]
    
    • 1

    主机(T1)

      gfsh>list members
        Name   | Id
      -------- | ---------------------------------------------------
      locator1 | 192.168.79.143(locator1:39175:locator):1024
      locator2 | 192.168.79.145(locator2:33587:locator):1024
      server1  | 192.168.79.143(server1:39334):1025
      server2  | 192.168.79.145(server2:33715):1025
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    主机(T2)

      gfsh>list members  
        Name   | Id
      -------- | ---------------------------------------------------
      locator1 | 192.168.79.143(locator1:39175:locator):1024
      locator2 | 192.168.79.145(locator2:33587:locator):1024
      server1  | 192.168.79.143(server1:39334):1025
      server2  | 192.168.79.145(server2:33715):1025
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    添加新节点

    T3

      gfsh>start server --name=server3 --server-port=40404 --locators=T1[10334],T2[10334]
    
    • 1

    T4

      gfsh>start server --name=server4 --server-port=40404 --locators=T1[10334],T2[10334]
    
    • 1

    T1 & T2

      gfsh>list members
        Name   | Id
      -------- | ---------------------------------------------------
      server3  | 192.168.79.139(server3:5244):1024
      server4  | 192.168.79.142(server4:5160):1024
      locator1 | 192.168.79.143(locator1:39175:locator):1024
      locator2 | 192.168.79.145(locator2:33587:locator):1024
      server1  | 192.168.79.143(server1:39334):1025
      server2  | 192.168.79.145(server2:33715):1025
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    T1

      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"
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    测试关闭节点

      gfsh>stop server --name=server4
    
    • 1
      gfsh>list members
        Name   | Id
      -------- | ---------------------------------------------------
      server3  | 192.168.79.139(server3:5244):1024
      locator1 | 192.168.79.143(locator1:39175:locator):1024
      locator2 | 192.168.79.145(locator2:33587:locator):1024
      server1  | 192.168.79.143(server1:39334):1025
      server2  | 192.168.79.145(server2:33715):1025
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    模拟机器崩溃

    kill T3服务器上的server3进程

      gfsh>list members
        Name   | Id
      -------- | ---------------------------------------------------
      locator1 | 192.168.79.143(locator1:39175:locator):1024
      locator2 | 192.168.79.145(locator2:33587:locator):1024
      server1  | 192.168.79.143(server1:39334):1025
      server2  | 192.168.79.145(server2:33715):1025
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
      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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
      gfsh>put --region=region1 --key="1" --value="one"
      
      Result      : true
      Key Class   : java.lang.String
      Key         : 1
      Value Class : java.lang.String
      Old Value   : 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    启重节点加入集群

    T3

      gfsh>start server --name=server3 --server-port=40401 --locators=T1[10334],T2[10334]
    
    • 1

    T1

      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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
      gfsh>query --query="select * from /region1"
      
      Result     : true
      startCount : 0
      endCount   : 20
      Rows       : 1
      
      Result
      ------
      one
      
      NEXT_STEP_NAME : END
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    模拟locator停机并重启服务

    T2

      $ reboot
    
    • 1

    T1

      gfsh>list members
        Name   | Id
      -------- | ---------------------------------------------------
      server3  | 192.168.79.139(server3:5617):1024
      locator1 | 192.168.79.143(locator1:39175:locator):1024
      server1  | 192.168.79.143(server1:39334):1025
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
      gfsh>query --query="select * from /region1"
      
      Result     : true
      startCount : 0
      endCount   : 20
      Rows       : 1
      
      Result
      ------
      one
      
      NEXT_STEP_NAME : END
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    T2

      gfsh>start locator --name=locator2 --port=10334 --locators=T1[10334],T2[10334]
    
    • 1
      gfsh>start server --name=server2 --server-port=40401 --locator=T1[10334],T2[10334]
    
    • 1
      gfsh>list members
        Name   | Id
      -------- | ---------------------------------------------------
      server3  | 192.168.79.139(server3:3950):1024
      locator2 | 192.168.79.146(locator2:5447:locator):1024
      locator1 | 192.168.79.149(locator1:5200:locator):1024
      server2  | 192.168.79.146(server2:5602):1025
      server1  | 192.168.79.149(server1:5303):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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
      gfsh>query --query="select * from /region1"
      
      Result     : true
      startCount : 0
      endCount   : 20
      Rows       : 1
      
      Result
      ------
      one
      
      NEXT_STEP_NAME : END
      
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    模拟locator崩溃

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

      gfsh>
      No longer connected to T1[1099].
    
    • 1
    • 2

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

      gfsh>connect --locator=T2[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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27

    END!

  • 相关阅读:
    基于Vue+SpringBoot的海南旅游景点推荐系统 开源项目
    C++运算符重载
    黑猫带你学Makefile第11篇:当头文件a.h改变时,如何将所有依赖头文件a.h的.c文件都重新编译
    美东一公司的郁闷面试题
    Python3数据科学包系列(一):数据分析实战
    一文总结 MetaQ/RocketMQ 原理
    如在 Java 中分割 Excel 工作表
    Webrtc丢包率的计算
    HTML+CSS+JS——动漫风二次元论坛(2页) HTML5网页设计成品_学生DW静态网页设计代做_web课程设计网页制作
    React Native实现Toast轻提示和loading
  • 原文地址:https://blog.csdn.net/wjw465150/article/details/126806316