Skip to main content

Sharded Cluster Definitions File

Sharded Cluster Definitions File

The definitions.json file for the sharded cluster configuration must define three load-balanced mirrored DATA nodes. This is illustrated in the following:

Sharded Cluster to be Deployed by ICM
null

The table that follows lists the field/value pairs that are required for this configuration.

Definition Field: Value
  • Six data nodes (DATA) using a sharding-enabled InterSystems IRIS license, configured as three mirrors because “Mirror”: “true” in shared defaults file

  • Instance type and data volume size override settings in defaults file to meet data node resource requirements

  • Load balancer for data nodes is automatically provisioned

"Role": "DATA"

"Count": "6"

"LicenseKey": "ubuntu-sharding-iris.key”

"InstanceType": "m4.4xlarge"

“DataVolumeSize": "250"

"LoadBalancer": "true"

  • One arbiter (AR) for data server mirror, no license required, use of arbiter image overrides InterSystems IRIS image specified in defaults file

  • Node is numbered 0007

  • Instance type overrides defaults file because arbiter requires only limited resources

"Role": “AR”

"Count": "1"

"DockerImage": "intersystems/arbiter:latest-em"

"StartCount": "7"

"InstanceType": "t2.small"

A definitions.json file incorporating the settings in the preceding table would look like this:

[
    {
        "Role": "DATA",
        "Count": "6",
        "LicenseKey": "sharding-iris.key”,
        "InstanceType": "m4.xlarge",
        "DataVolumeSize": "250",
        "LoadBalancer": "true"
    },
    {
        "Role": "AR",
        "Count": "1",
        "DockerImage": "intersystems/arbiter:latest-em",
        "StartCount": "7",
        "InstanceType": "t2.small"
    }
]

Note:

The DATA and COMPUTE node types were added to ICM in Release 2019.3 to support the node-level sharding architecture. Previous versions of this document described the namespace-level sharding architectureOpens in a new tab, which involves a different, larger set of node types. The namespace-level architecture remains in place as the transparent foundation of the node-level architecture and is fully compatible with it, and the node types used to deploy it are still available in ICM. For information about all available node types, see ICM Node Types.

For more detailed information about the specifics of deploying a sharded cluster, such as database cache size and data volume size requirements, see Deploying the Sharded ClusterOpens in a new tab in the “Horizontally Scaling for Data Volume with Sharding” chapter of the Scalability Guide.

The recommended best practice is to load-balance application connections across all of the data nodes in a cluster.

FeedbackOpens in a new tab