geode(二)配置

来源:互联网 发布:佳能9100cdn网络驱动 编辑:程序博客网 时间:2024/05/19 23:54

配置的方法

集群配置-gfsh

需要在standalone的locator执行,以便cluster范围内有效。
所有locator启动时,使用–enable-cluster-configuration=true选项(这个选项是默认值。),如果想取消–enable-cluster-configuration=false

server启动时也需要–use-cluster-configuration=true这个选项,当然这个选项也是默认的。

locator启动时可以从配置文件加载配置:–load-cluster-configuration-from-dir=true,这个选项可以让locator启动时加载这个locator目录下的cluster_config/cluster目录中的cluster.xml和cluster.properties文件(包括这个文件夹中的jar文件都会应用到所有成员)。如果配置文件有变更,则需要重启locator以便使配置生效。

–cluster-config-dir=value 这个参数可以变更配置中文件夹的位置。

group-level的配置可以覆盖cluster-level配置。

现在问题来了,组配置的文件放在了什么地方呢?
cluster_config目录下的组名形成的子目录,并且配置名是组名.xml或组名.properties文件,当然组部署的jar文件也在这里

查看配置服务状态

status cluster-config-serviceStatus of shared configuration on locators  Name   | Status-------- | -------locator1 | RUNNING

gfsh命令配置,会通过locator传播到集群中的节点,新加入的集群节点,也会获取到配置。

下面配置会传播到集群中生效:

configure pdx*create regionalter regionalter runtimedestroy regioncreate indexdestroy indexcreate disk-storedestroy disk-storecreate async-event-queuedeploy jarundeploy jar

configure pdx*
这个命令只对执行这个命令后,加入集群的成员有效

下面两个命令配置,只保存在locator

create gateway-sendercreate gateway-receiver

不能使用gfsh配置的属性

客户端缓存配置不可修改对象:functioncustom-load-probecache-listenercache-loadercache-writercompressorserializerinstantiatorpdx-serializergfsh配置pdx只能指定:org.apache.geode.pdx.ReflectionBasedAutoSerializer.custom-expiryinitializerdeclarablelru-heap-percentagelru-memory-sizepartition-resolverpartition-listenertransaction-listenertransaction-writer增加或移除TransactionListenerAdding JNDI bindingsDeleting an AsyncEventQueue对于gateway的配置限制,只能在cache.xml或Java APIs配置的项目:Configuring a GatewayConflictResolvergateway-listenergateway-conflict-resolvergateway-event-filtergateway-transport-filtergateway-event-substitution-filter

配置

客户端也可以有自己的配置 cache.xml.

部署jar文件

在group1组内部署mail.jar:
deploy –groups=group1 –jars=/lib/mail.jar
如果没有使用–groups参数则表示在所有成员中部署。

下面命令部署目录下的jar
deploy –dir=libs/group1-libs

部署的jar放到了什么位置呢?

deploy-working-dir=/usr/local/gemfire/deploy
可以在启动时配置,也可以在gemfire.properties文件中配置

关闭时自动卸载删除部署的jar文件

卸载jar

卸载所有jar
gfsh> undeploy

卸载指定jar
gfsh> undeploy –jars=group1_functions.jar

卸载组中的jar
gfsh> undeploy –groups=MemberGroup1

卸载jar后,class不会自动从classloader卸载,需要重启server

导出配置

下面这个命令可以导出zip配置,实际是cluster_config目录的拷贝。

gfsh>export cluster-configuration --zip-file-name=myClConfig.zip --dir=/Users/username

导入配置

将配置导入到新的集群

gfsh>import cluster-configuration --zip-file-name=/Users/username/myClConfig.zipCluster configuration successfully imported

这样在新的集群中配置和原集群一致。可以查到相同的region等信息。

启动时使用gemfire.properties和cache.xml

启动应用时使用配置

java -Dgemfire.cache-xml-file=/gemfireSamples/examples/dist/cacheRunner/queryPortfolios.xml-DgemfirePropertyFile=defaultConfigs/gemfire.propertiestestApplication.TestApp1

开始服务时使用配置

gfsh>start server-J-Dgemfire.cache-xml-file=/gemfireSamples/examples/dist/cacheRunner/queryPortfolios.xml-J-DgemfirePropertyFile=defaultConfigs/gemfire.properties

也可以在gemfire.properties文件中指定cache.xml

#Tue May 09 17:53:54 PDT 2006mcast-address=192.0.2.0mcast-port=10333locators=cache-xml-file=/gemfireSamples/examples/dist/cacheRunner/queryPortfolios.xml

配置可以放置到jar中,然后在properties中设置jar中的目录,当然加载时也要加载这个jar文件

丢失文件启动

gfsh>show missing-disk-storesDisk Store ID             |   Host    |               Directory                                           ------------------------------------ | --------- | -------------------------------------60399215-532b-406f-b81f-9b5bd8d1b55a | excalibur | /usr/local/gemfire/deploy/disk_store1 gfsh>revoke missing-disk-store --id=60399215-532b-406f-b81f-9b5bd8d1b55a

java api

region分类

复制

multiple masters,多主,集群中的节点都维护一份数据拷贝,适合多读少写操作

分区

single master,单主,节点间备份副本,适合大数据量缓存。

分布式事务

在不锁表的情况下,实现分布式事务。

分布式锁

在键上加锁

持久化磁盘

分区模式溢出磁盘,或将数据持久化磁盘

超时超限

配置超时,或设置最大量

服务器重新平衡

服务器节点变化,数据重新组织。local-max-memory 属性设置服务器最大内存数量,为0时不维护区域数据

数据的一致性

redundant-copies 属性大于 0
冗余可以使服务器宕机后不丢失数据,也不会影响服务

WAN Gateway

远程复制

原创粉丝点击