ElasticsearchClusterTopologyElement

edit

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

Properties

edit
autoscaling_max (TopologySize)
The maximum size of this topology element when autoscaling is enabled. This property is only supported, and must be provided, for data and ML topology elements.
autoscaling_min (TopologySize)
The minimum size of this topology element when autoscaling is enabled. This property is only supported, and must be provided, for ML topology elements.
autoscaling_policy_override_json (object)
An arbitrary JSON object overriding the default autoscaling policy. Don't set unless you really know what you are doing.
autoscaling_tier_override (boolean)
Set to true to enable autoscaling for this topology element, even if the cluster-level 'autoscaling_enabled' field is false. Note that 'autoscaling_tier_override' cannot be set to false if cluster-level 'autoscaling_enabled' is true. Currently only supported for the 'ml' tier
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.
id (string)
Unique identifier of this topology element
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.
instance_configuration_version (integer as int32)
The version of the Instance Configuration Id. If it is unset, the meaning depends on read vs writes. For deployment reads, it is equivalent to version 0 (or the IC is unversioned); for deployment creates and deployment template use, it is equivalent to 'the latest version&#39
and for deployment updates, it is equivalent to 'retain the current version'.
memory_per_node (integer as int32)
The memory capacity in MB for each node of this type built in each zone.
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_roles (array[string])
The list of node roles for this topology element (ES version >= 7.10). Allowable values are: master, ingest, ml, data_hot, data_content, data_warm, data_cold, data_frozen, remote_cluster_client, transform
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.
topology_element_control (TopologyElementControl)
Controls for the topology element. Only used as part of the deployment template. Ignored if included as part of a deployment.
zone_count (integer as int32)
The default number of zones in which data nodes will be placed

Example

edit
{
   "autoscaling_max" : {
      "resource" : "string",
      "value" : 0
   },
   "autoscaling_min" : {
      "resource" : "string",
      "value" : 0
   },
   "autoscaling_policy_override_json" : {},
   "autoscaling_tier_override" : true,
   "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" : {
               "enabled" : true,
               "sandbox_mode" : true
            },
            "mustache_enabled" : true,
            "painless_enabled" : true,
            "stored" : {
               "enabled" : true,
               "sandbox_mode" : 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"
   },
   "id" : "string",
   "instance_configuration_id" : "string",
   "instance_configuration_version" : 0,
   "memory_per_node" : 0,
   "node_count_per_zone" : 0,
   "node_roles" : [
      "string"
   ],
   "node_type" : {
      "data" : true,
      "ingest" : true,
      "master" : true,
      "ml" : true
   },
   "size" : {
      "resource" : "string",
      "value" : 0
   },
   "topology_element_control" : {
      "min" : {
         "resource" : "string",
         "value" : 0
      }
   },
   "zone_count" : 0
}