ElasticsearchClusterTopologyElement

edit

The topology of the Elasticsearch nodes, including the number, capacity, and type of nodes, and where they can be allocated.

Properties

edit
allocator_filter (object)
DEPRECATED: Scheduled for removal in a future version of the API. Controls the allocation strategy of this node type using a simplified version of the Elasticsearch filter DSL (together with 'node_configuration')
elasticsearch (ElasticsearchConfiguration)
The Elasticsearch cluster settings. When specified at the top level, provides a field-by-field default. When specified at the topology level, provides the override settings.
instance_configuration_id (string)
Controls the allocation of this topology element as well as allowed sizes and node_types. It needs to match the id of an existing instance configuration.
memory_per_node (integer as int32)
The memory capacity in MB for each node of this type built in each zone.
node_configuration (string)
DEPRECATED: Scheduled for removal in a future version of the API. Please use instance_configuration_id. Controls the allocation strategy of this node type by pointing to the names of pre-registered allocator settings. Unless otherwise specified for this deployment, only 'default' is supported (equivalent to omitting).
node_count_per_zone (integer as int32)
The number of nodes of this type that are allocated within each zone. (i.e. total capacity per zone = node_count_per_zone * memory_per_node in MB). Cannot be set for tiebreaker topologies. For dedicated master nodes, must be 1 if an entry exists.
node_type (ElasticsearchNodeType)
Controls the combinations of Elasticsearch node types. TIP: By default, the Elasticsearch node is master eligible, can hold data, and run ingest pipelines. WARNING: Do not set for tiebreaker topologies.
size (TopologySize)
Measured by the amount of a resource. The final cluster size is calculated using multipliers from the topology instance configuration.
zone_count (integer as int32)
The default number of zones in which data nodes will be placed

Example

edit
{
   "allocator_filter" : {},
   "elasticsearch" : {
      "curation" : {
         "from_instance_configuration_id" : "string",
         "to_instance_configuration_id" : "string"
      },
      "docker_image" : "string",
      "enabled_built_in_plugins" : [
         "string"
      ],
      "node_attributes" : {
         "some_property" : "string"
      },
      "system_settings" : {
         "auto_create_index" : true,
         "default_shards_per_index" : 0,
         "destructive_requires_name" : true,
         "enable_close_index" : true,
         "monitoring_collection_interval" : 0,
         "monitoring_history_duration" : "string",
         "reindex_whitelist" : [
            "string"
         ],
         "scripting" : {
            "expressions_enabled" : true,
            "file" : {
               "enabled" : true,
               "sandbox_mode" : true
            },
            "inline" : null,
            "mustache_enabled" : true,
            "painless_enabled" : true,
            "stored" : null
         },
         "use_disk_threshold" : true,
         "watcher_trigger_engine" : "string"
      },
      "user_bundles" : [
         {
            "elasticsearch_version" : "string",
            "name" : "string",
            "url" : "string"
         }
      ],
      "user_plugins" : [
         {
            "elasticsearch_version" : "string",
            "name" : "string",
            "url" : "string"
         }
      ],
      "user_settings_json" : {},
      "user_settings_override_json" : {},
      "user_settings_override_yaml" : "string",
      "user_settings_yaml" : "string",
      "version" : "string"
   },
   "instance_configuration_id" : "string",
   "memory_per_node" : 0,
   "node_configuration" : "string",
   "node_count_per_zone" : 0,
   "node_type" : {
      "data" : true,
      "ingest" : true,
      "master" : true,
      "ml" : true
   },
   "size" : {
      "resource" : "string",
      "value" : 0
   },
   "zone_count" : 0
}