AWSHazelcastDiscovery Extension
Introduction
The AWSHazelcastDiscovery extension provides automatic Cluster node discovery in AWS (Amazon Web Services). This is useful when you do not want to or cannot provide a list of possible IP addresses.
The AWSHazelcastDiscovery extension is useful when installing Appway (see the System Installation article related to your Appway version) and configuring Hazelcast for use in a multi-node environment.
Note: The extension is based on the Hazelcast AWS module.
Extension Configuration
Configure the AWS auto-discovery mechanism before starting the extension. Use the following extension properties for configuration (required properties are indicated):
com.nm.extensions.awshazelcastdiscovery.accessKey(required*) – Access key of your account on EC2.com.nm.extensions.awshazelcastdiscovery.secretKey(required*) – Secret key of your account on EC2.com.nm.extensions.awshazelcastdiscovery.iamRole(required*) – If you do not want to use access key and secret key, specify an IAM role instead. The specified IAM role is then used to fetch your credentials.com.nm.extensions.awshazelcastdiscovery.region(required) – The region where your members are running.com.nm.extensions.awshazelcastdiscovery.hostHeader– The URL used as an entry point for a web service. Default:ec2.amazonaws.comcom.nm.extensions.awshazelcastdiscovery.securityGroupName– Name of the security group you specified in the EC2 management console. The security group name is used as a filter, it allows only the Hazelcast members which are within this security group to pass.com.nm.extensions.awshazelcastdiscovery.tagKey,com.nm.extensions.awshazelcastdiscovery.tagValue– The defined key and value are used as a filter, which allows only the Hazelcast members with the according key and value to connect to the cluster. Set these parameters according to the parameters you specified in the EC2 console.com.nm.extensions.awshazelcastdiscovery.connectionTimeoutSeconds– Defines the connection timeout when trying to connect to a well-known member (in seconds). Setting the value too high risks that member startup could slow down because of longer timeouts (for example, when a well-known member is not up). Increasing this value is recommended if you have many IPs listed and the members cannot properly form the Cluster. Default: 10com.nm.extensions.awshazelcastdiscovery.portRange– Defines the range of ports within which to search for members. Default: 5713-5721
* You have to specify either the access and secret key of your EC2 account or an IAM role. The preferred way is to configure an IAM role.
Start Extension
After completing the configuration, start the AWSHazelcastDiscovery extension to activate this auto-discovery mechanism. No further steps are needed.
Hazelcast Performance on AWS
For more details about best practices when using Hazelcast in AWS to ensure optimized performance, check this documentation.