创建集群配置
1. 创建一个工作目录,并进入该目录,该目录将会保存集群的配置
2. 进gfsh命令行
$ gfsh
3. 启动一个locator,该命令会返回消息,提示集群配置服务已经启动并在运行,如果有错误信息就去查看locator日志,日志文件目录在返回消息中的Log File: /path…./locator*.log
gfsh> start locator --name=locator1
4. 启动servers,其中server1和server2指定在group1组中,server3没有指定分组
gfsh>start server --name=server1 --group=group1 --server-port=40404 gfsh>start server --name=server2 --group=group1 --server-port=40405 gfsh>start server --name=server3 --server-port=40406
5. 创建regions,其中region1在group1分组的所有server中,group2没有指定分组,会存在于所有的cache server中
gfsh>create region --name=region1 --group=group1 --type=REPLICATE Member | Status ------- | -------------------------------------- server2 | Region "/region1" created on "server2" server1 | Region "/region1" created on "server1"
gfsh>create region --name=region2 --type=REPLICATE Member | Status ------- | -------------------------------------- server1 | Region "/region2" created on "server1" server2 | Region "/region2" created on "server2" server3 | Region "/region2" created on "server3"
6. 导出集群配置
gfsh>export cluster-configuration --zip-file-name=/root/ClusterConfig.zip
7. 关闭集群中所有locators,并退出gfsh命令行
gfsh>shutdown --include-locators=true gfsh>quit
使用配置
1. 创建一个新的工作目录并进入该目录
2. 进gfsh命令行
$ gfsh
3. 开启一个新的locator
gfsh>start locator --name=locator2 --port=10335
4. 导入前面的集群配置
gfsh>import cluster-configuration --zip-file-name=/root/ClusterConfig.zip
5. 开启新server4,不指定分组
gfsh>start server --name=server4 --server-port=40414
6. 开启新的server5并指定到group1分组
gfsh>start server --name=server5 --group=group1 --server-port=40415
7. 查看locator2的mebers和regions信息可以看到前面的region1和region2已经被采用了。
gfsh>list members Name | Id -------- | --------------------------------------------------- locator2 | 192.168.79.137(locator2:17013:locator)<ec><v0>:1024 server4 | 192.168.79.137(server4:17126)<v1>:1025 server5 | 192.168.79.137(server5:17216)<v2>:1026
gfsh>list regions List of regions --------------- region1 region2
gfsh>describe region --name=region1 .......................................................... Name : region1 Data Policy : replicate Hosting Members : server5
Non-Default Attributes Shared By Hosting Members
Type | Name | Value ------ | ----------- | --------------- Region | data-policy | REPLICATE | size | 0 | scope | distributed-ack
gfsh>describe region --name=region2 .......................................................... Name : region2 Data Policy : replicate Hosting Members : server5 server4
Non-Default Attributes Shared By Hosting Members
Type | Name | Value ------ | ----------- | --------------- Region | data-policy | REPLICATE | size | 0 | scope | distributed-ack
加载已有的集群配置文件到集群
1. 解压前面导出的ZIP文件,得到cluster目录包含cluster.properties和cluster.xml配置文件,和group1目录包含group1.properties和group1.xml两个配置文件(这里是从上面导出来的配置,实际上的配置文件会有cluster配置+[gorup配置],分组可有可无,并且目录名也会以实际的分组名命名,这里也可以看到cluster保存的配置是以集群和分组维度来存放的。)
[root@dn2 ~]# ls cluster cluster.properties cluster.xml [root@dn2 ~]# ls group1 group1.properties group1.xml [root@dn2 ~]#
2. 在/root目录下创建子目录cluster_config
3. 拷贝cluster和group1到cluster_config目录下。
4. 进入gfsh
$ gfsh
5. 启动一个locator,并且加载已有的集群配置,–cluster-config-dir=<value>指定集群配置cluster_config存放的目录
start locator --name=locator03 --load-cluster-configuration-from-dir=true --cluster-config-dir=/root
返回的消息最后应该包含“Cluster configuration service is up and running.”,否则可能就是失败了,
6. 查看集群配置状态
gfsh>status cluster-config-service Status of shared configuration on locators Name | Status --------- | ------- locator03 | RUNNING
7. 配置导入成功后,所有加入集群的server都将会采纳该配置
8. 如果修改了配置需要使用–load-cluster-configuration-from-dir=true –cluster-config-dir=/root重启locator。
*不能导入集群配置到一个servers已经在运行的集群。
*可以导入集群配置到一个运行中的locator。导入后,所有的新开启的servers将会采用该集群配置。
*集群配置服务导出和导入用gfsh命令为整个Apache Geode 集群创建的配置。用Management API创建的配置不会保存在集群配置中。