关闭

Gemfire集群配置服务的一些操作

标签: Gemfire检错点集群配置服务导出导入
1363人阅读 评论(0) 收藏 举报
分类:

使用成员组

Pivotl Gemfire允许你组织分布式系统中的成员成为逻辑成员组。

在Pivotl Gemfire中使用逻辑成员组是可选择的,使用逻辑成员组的好处是:基于逻辑成员组,有能力去协调在一些成员组中的特定操作。例如,通过定义和使用成员组你可以:

为一个特定的成员或者特定的多个成员改变配置属性的子集。

通过一个成员组可以执行特定从磁盘操作,例如:磁盘存储压缩。

通过成员组的所有成员管理特定的索引和regions。

通过成员组可以开启或者停止多站点服务,例如:网关接受器,网关发送器。

在一个成员组的所有成员中部署或者取消部署所有的JAR文件应用。

执行在一个特定组中所有成员的功能。

你可以在成员的gemfire.properties文件的group属性下定义组的名字,或者成员在gfsh下启动。

注意:当前存在的Genfire属性的角色定义的任何角色都将被认为是统一个组。如果你想要在分布式系统中添加一个成员角色,你应该在组属性上将它们作为成员组添加,为了能够支持使用组属性,需要将roles属性弃用。

添加一个成员到一个组中,

 

 

一个成员可以属于多个组。

成员组也可以用来从客户端的角度或者从对等点的角度来组织成员。在客户端一边,当配置一个客户端连接池的时候,你可以支持成员组的名字,使用cache.xml文件中的<pool server-group>元素进行配置。

 

导出和导入配置信息

这个集群配置服务导出和导入通过gfsh为一个Pivotal Gemfire建立的配置文件。

这个集群配置服务可以在你创建region,磁盘存储和其他的一些对象的时候,将这些行为保存在配置信息中,你可以将这个配置信息以zip的形式导出来,然后可以将这个配置文件导入从而常见一个新的集群。
    导出集群配置

可以通过gfsh工具中的export cluster-configuration命令来将集群的配置信息保存在zip文件中,这个zip文件的子目录包括每一个集群级的配置信息,集群中每一个指定组的配置信息目录。这些内容会在第137页具体描述。

 

当链接到一个Pivotal Gemfire集群的时候,通过gfsh工具的export cluster-conf

iguration命令来导出集群的配置信息。

 

注意:gfsh仅仅为通过使用gfsh产生的特定的配置信息来保存集群配置的值。对那些管理API的配置信息是不会被保存在集群配置中的。

 

导入一个集群配置

你可以将一个配置信息导入到一个正在运行的locator中,导入这个配置信息之后,你启动的任何一个服务器都会接受这个集群配置信息。

启动一个或者多个locator,通过gfsh中的import cluster-configuration命令来导入集群配置信息。

    import cluster-configuration --zip-file-name=/home/username/configs/

myClusterConfig.zip

 

注意:当一个集群的cache服务器运行的时候,你是不能将配置信息文件导入的。

 

集群配置文件和检错

当你在Gemfire中使用集群配置服务的时候,你可以在集群本地的cluster_config目录中检测生成的配置文件,gfsh将配置文件分为集群级和组级进行保存。

当locator运行在集群配置服务的时候,下面的目录和配置文件是可以使用的:

    集群级的配置

为了使配置能够适用于集群的所有成员,这个locator需要在cluster_config文件夹中新建一个cluster子目录(or in the cluster configuration directory when starting up the locator with the --cluster-config-dir=value parameter),当使用gfsh启动服务器的时候,所有的服务器都会接受这个配置信息。这个目录下包括:

   Cache.xml  一个Pivotal Gemfire的cache.xml文件包含所有成员的常见配置。

   Cluster.properties 一个Pivotal Gemfire的Cluster.properties文件包含所有成员的常见属性。

    JAR文件用于部署到所有的成员中。

    组级别的配置

当你在gfsh命令中指定--group参数(比如启动服务器或者新建region),这个locator就会将配置信息写到每个具有相同名字的组的子目录下。当你在启动一个服务器的时候指定了一个或多个组的名字,这个服务器将会接受集群级的配置,以及来自指定组的组级别的配置信息。这个子目录包括:

<group-name>.xml 一个Pivotal Gemfire的<group-name>.xml文件包含属于这个组的所有成员的常见配置。

<group-name>.properties 一个Pivotal Gemfire的<group-name>.xml文件包含属于这个组的所有成员的常见属性。

JAR文件用于部署到所有的属于该组的成员中。

 

你可以导出包含群集配置的所有工件的zip文件:这个zip文件包含所有的locator文件下cluster-config的子目录,你可以将这个zip文件导入一个新的集群。

 

个别的配置文件和集群的配置文件

    Gemfire首先使用集群级的配置文件,然后使用组级的配置文件,如果一个成员有它自己定义的配置文件(Cache.xml文件和Cluster.properties文件),这些配置文件会在最后使用。(Whenever possible, use the member group-level configuration files in the

cluster-configuration service to apply non-cluster-wide configurations on individual members).只要有可能,使用集群配置服务中的成员组级别配置文件,用于在单个成员上应用非群集配置。

    

检错点

当你使用gfsh启动一个locator的时候,你应该看到下面的信息:

 

如果你没有看到最后的那条信息,说明在集群服务中可能存在问题,可以使用status cluster-configuration-service命令去检查集群配置的状态。

如果这条命令返回running,说明这个集群在正常运行。

如果这条命令返回waiting,运行status locator命令,这条命令是返回waiting状态的原因。

 

如果一个服务器启动失败,并且报下面的异常

ClusterConfigurationNotAvailableException异常:这个集群配置服务可能不是出于running的状态,因为这个服务器从locator中请求集群配置服务,但是这个locator是不可用的,这个server start命令失败。

 

你可以通过检查服务器的日志文件来确定从定位器接收到的服务器的配置

 

如果启动服务器的命令指定cache.xml文件,这个文件与现有的集群配置发生冲突,服务器启动失败。

    

如果因为集群配置不能保存而导致gfsh命令失败,那么会显示下面的信息:

Failed to persist the configuration changes due to this command,

Revert the command to maintain consistency. Please use "status clusterconfig-

service"

to determine whether Cluster configuration service is RUNNING."

    

有一些配置不能够通过使用gfsh来建立。

 

 

加载已经存在的集群配置文件到集群配置中

当启动一个locator的时候,通过配置--loadcluster-configuration-from-dir的参数,来将已经存在的cache.xml文件和 Gemfire.properties文件加载到新的集群中。

你可以使用这种技术将一个服务器的配置迁移到一个集群配置服务中,通过下面的步骤,可以将已经存在的cache.xml文件和 cluster.properties文件加载到新的集群中。

1.确定locator当前不在运行

2.在locator的工作目录下,如果不存在cluster_config/cluster文件,就新建这个文件。

3.将已经存在的cache.xml文件和 cluster.properties文件拷贝到上面建立的目录下。

4.按照下面的格式重新命名这两个文件

      Cache.xml  命名为  cluster.xml

      Gemfire.properties 命名为 cluster.properties

5.在gfsh命令工具下启动locator

  start locator --name=<locator_name> --enable-cluster-configuration=true --load-cluster-configuration-from-dir=true

      当成功启动之后,这个locator将会显示出"Cluster configuration service is up and running."。任何加入到这个集群或者将参数--use-cluster-configuration设置成true的服务器都会获得这个配置文件。

注意:如果你要对cluster.xml文件和cluster.properties文件进行任何手工修改,你必须停止这个locator,并且使用--load-cluster-configuration-from-dir参数进行重启,(Direct file modifications are not picked up iby the cluster configuration service without a locator restart.)

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:25985次
    • 积分:572
    • 等级:
    • 排名:千里之外
    • 原创:17篇
    • 转载:11篇
    • 译文:13篇
    • 评论:2条
    最新评论