Summary: Building a custom cluster from a standard cluster schema.
Overview
To build a custom cluster from a standard cluster schema:
Viewing Cluster Configuration in Space BrowserThe space browser allows you to view the relationships and expected behavior of a cluster.
Starting the customcluster and Creating a Truly Customized ClusterWhen creating a cluster configuration file, only the URLs are specified for each member as it exposes itself to the Lookup Service. You will now have the opportunity to specify the space schema and any additional specifications of each instance as you create a start script and start them.
The customclusterstartup.cmd starts up the following script: start "customcluster1" gsInstance "java://localhost/customcluster_container1/customcluster?properties=customcluster&schema=default" start "customcluster2" gsInstance "java://localhost/customcluster_container2/customcluster?properties=customcluster&schema=default" start "customcluster1_back" gsInstance "java://localhost/customcluster_containecustomcluster?properties=customcluster&schema=default" start "customcluster2_back" gsInstance "java://localhost/customcluster_container2_1/customcluster?properties=customcluster&schema=default" The properties file: -Dsun.rmi.dgc.client.gcInterval=20000000 -Dsun.rmi.dgc.server.gcInterval=20000000 com.gs.env.report=true gs.space.url.arg.nowritelease=true -Dcom.gs.debug=true -Dcom.gs.clusterXML.debug=false -Dcom.gs.client.debug=false -Dcom.gs.cluster.cluster_enabled=true -Dcom.gs.cluster.config-url=config/customcluster.xml The cluster XML file: <?xml version="1.0"?> <cluster-config> <cluster-name>customcluster</cluster-name> <dist-cache> <config-name>DefaultConfig</config-name> </dist-cache> <cluster-members> <member> <member-name>customcluster_container1:customcluster</member-name> <member-url>jini://*/customcluster_container1/customcluster</member-url> </member> <member> <member-name>customcluster_container1_1:customcluster</member-name> <member-url>jini://*/customcluster_container1_1/customcluster</member-url> </member> <member> <member-name>customcluster_container2:customcluster</member-name> <member-url>jini://*/customcluster_container2/customcluster</member-url> </member> <member> <member-name>customcluster_container2_1:customcluster</member-name> <member-url>jini://*/customcluster_container2_1/customcluster</member-url> </member> </cluster-members> <groups> <group> <group-name>LB_FO_Backup</group-name> <group-members> <member> <member-name>customcluster_container1:customcluster</member-name> </member> <member> <member-name>customcluster_container1_1:customcluster</member-name> </member> <member> <member-name>customcluster_container2:customcluster</member-name> </member> <member> <member-name>customcluster_container2_1:customcluster</member-name> </member> </group-members> <load-bal-policy> <load-bal-impl-class>com.gigaspaces.cluster.loadbalance.LoadBalanceImpl</load-bal-impl-class> <disable-parallel-scattering>false</disable-parallel-scattering> <notify> <policy-type>hash-based</policy-type> <broadcast-condition>broadcast-if-null-values</broadcast-condition> </notify> <default> <policy-type>hash-based</policy-type> <broadcast-condition>broadcast-if-null-values</broadcast-condition> </default> </load-bal-policy> <fail-over-policy> <fail-back>false</fail-back> <fail-over-find-timeout>2000</fail-over-find-timeout> <default> <policy-type>fail-to-backup</policy-type> <backup-members> <member> <source-member>customcluster_container1:customcluster</source-member> <backup-member>customcluster_container1_1:customcluster</backup-member> </member> <member> <source-member>customcluster_container2:customcluster</source-member> <backup-member>customcluster_container2_1:customcluster</backup-member> </member> </backup-members> <backup-members-only> <backup-member-only>customcluster_container1_1:customcluster</backup-member-only> <backup-member-only>customcluster_container2_1:customcluster</backup-member-only> </backup-members-only> </default> </fail-over-policy> </group> <group> <group-name>replGroupcustomcluster_0</group-name> <group-members> <member> <member-name>customcluster_container1:customcluster</member-name> </member> <member> <member-name>customcluster_container1_1:customcluster</member-name> </member> </group-members> <repl-policy> <replication-mode>async</replication-mode> <policy-type>full-replication</policy-type> <recovery>true</recovery> <replicate-notify-templates>true</replicate-notify-templates> <trigger-notify-templates>false</trigger-notify-templates> <repl-find-timeout>5000</repl-find-timeout> <communication-mode>unicast</communication-mode> <async-replication> <repl-original-state>false</repl-original-state> <sync-on-commit>false</sync-on-commit> <sync-on-commit-timeout>300000</sync-on-commit-timeout> <repl-chunk-size>500</repl-chunk-size> <repl-interval-millis>3000</repl-interval-millis> <repl-interval-opers>500</repl-interval-opers> </async-replication> <sync-replication> <todo-queue-timeout>1500</todo-queue-timeout> <unicast> <min-work-threads>4</min-work-threads> <max-work-threads>16</max-work-threads> </unicast> <multicast> <ip-group>224.0.0.1</ip-group> <port>28672</port> <min-work-threads>4</min-work-threads> <max-work-threads>16</max-work-threads> </multicast> </sync-replication> </repl-policy> </group> <group> <group-name>replGroupcustomcluster_1</group-name> <group-members> <member> <member-name>customcluster_container2:customcluster</member-name> </member> <member> <member-name>customcluster_container2_1:customcluster</member-name> </member> </group-members> <repl-policy> <replication-mode>async</replication-mode> <policy-type>full-replication</policy-type> <recovery>true</recovery> <replicate-notify-templates>true</replicate-notify-templates> <trigger-notify-templates>false</trigger-notify-templates> <repl-find-timeout>5000</repl-find-timeout> <communication-mode>unicast</communication-mode> <async-replication> <repl-original-state>false</repl-original-state> <sync-on-commit>false</sync-on-commit> <sync-on-commit-timeout>300000</sync-on-commit-timeout> <repl-chunk-size>500</repl-chunk-size> <repl-interval-millis>3000</repl-interval-millis> <repl-interval-opers>500</repl-interval-opers> </async-replication> <sync-replication> <todo-queue-timeout>1500</todo-queue-timeout> <unicast> <min-work-threads>4</min-work-threads> <max-work-threads>16</max-work-threads> </unicast> <multicast> <ip-group>224.0.0.1</ip-group> <port>28672</port> <min-work-threads>4</min-work-threads> <max-work-threads>16</max-work-threads> </multicast> </sync-replication> </repl-policy> </group> </groups> </cluster-config> |
![]() |
GigaSpaces.com - Legal Notice - 3rd Party Licenses - Site Map - API Docs - Forum - Downloads - Blog - White Papers - Contact Tech Writing - Gen. by Atlassian Confluence |