Set instance configuration
Creates or updates an instance configuration.
Path parameters
-
ID of the instance configuration
Query parameters
-
version integer
This is a database-level field, not related to the application-level 'config_version', except as described in the following docs. If specified, checks for conflicts against 'x-cloud-resource-version' from the GET request (where the 'config_version' in the GET should match the the 'configuration_version' in the PUT body if the IC is configuration controlled).
-
config_control boolean
If true, then an update that changes immutable fields will create a new version of the IC (leaving the previous ones accessible via 'config_version'). Otherwise such updates will fail.
-
test_config boolean
If true, The IC is added as a test version (set 'instance_config_version': -1 in the deployment request to reference), leaving the existing IC alone. Will error if the IC doesn't already exist.
-
strict_mode boolean
If true, then allocator_filter and storage_multiplier cannot be changed in an existing IC. Defaults to false unless config_control is true (in which case a new version is created)
-
create_only boolean
If true, will fail if an instance configuration already exists at the given id
Body Required
the Instance Configuration
-
id string
Unique identifier for the instance configuration
-
Display name for the instance configuration.
-
config_version integer(int32)
If the IC is configuration controlled, this field is the version either being read back (reads return the latest IC unless specified by the 'config_version' URL param), or the version to update. Cannot be used in creates. For unversioned IC reads it is left empty.
-
description string
Optional description for the instance configuration
-
instance_type string
The type of instance. For instance configurations where the type is specified in the 'id', the default value of 'instance_type' will be automatically inferred.
Values are
elasticsearch
,kibana
,apm
,integrations_server
,appsearch
, orenterprise_search
. -
node_types array[string]
Node types (master, data) for the instance. For instance configurations where the type (and tier) is specified in the 'id', the default value of 'node_types' will be automatically inferred.
-
Numerics representing possible instance sizes that the instance configuration supports.
Additional properties are allowed.
-
allocator_filter object
The container for all of the allowed Elasticsearch queries. Specify only one property each time.
Additional properties are allowed.
-
storage_multiplier number(double)
Settings for the instance storage multiplier
-
deleted_on string(date-time)
Date/time that this instance configuration was marked for deletion
-
system_owned boolean
Indicates if a instance configuration is system owned (restricts the set of operations that can be performed on it)
-
metadata object
Optional arbitrary metadata to associate with this template.
Additional properties are allowed.
-
cpu_multiplier number(double)
Settings for the instance CPU multiplier
-
allowed_zones array[string]
The zones this instance configuration may exist in. Leaving out this parameter or specifying an empty list implies all zones are allowed. Normally not needed, but can be useful for exceptional infrastructure constraints.
Responses
-
The instance configuration was updated successfully.
-
The instance configuration was created successfully.
-
cluster_type in the InstanceConfiguration model is invalid (code: 'configuration.invalid_cluster_type') or the ZooKeeper operation failed due to bad version, etc. (code: 'configuration.instance_configuration_update_failed') or the id in the InstanceConfiguration model is reserved/prohibited (code: 'configuration.configuration_id_reserved') or the discrete_sizes in the InstanceConfiguration model is invalid (code: 'configuration.invalid_discrete_sizes') or the metadata in the InstanceConfiguration model has empty keys or values (code: 'configuration.bad_meta_data')
-
system_owned or deleted_on cannot be set externally (code: 'configuration.system_owned')
-
Instance configuration specified by {id} cannot be found or the operation failed (code: 'configuration.instance_configuration_not_found')
curl \
-X PUT https://{{hostname}}/api/v1/platform/configuration/instances/{id} \
-d '{"id":"string","name":"string","config_version":42,"description":"string","instance_type":"elasticsearch","node_types":["string"],"discrete_sizes":{"sizes":[42],"default_size":42,"resource":"memory"},"allocator_filter":{"match":{"additionalProperty1":{"query":"string","operator":"string","minimum_should_match":42,"analyzer":"string"},"additionalProperty2":{"query":"string","operator":"string","minimum_should_match":42,"analyzer":"string"}},"match_all":{},"match_none":{},"term":{"additionalProperty1":{"value":"string"},"additionalProperty2":{"value":"string"}},"bool":{"must":[{}],"should":[{}],"must_not":[{}],"filter":[{}],"minimum_should_match":42},"query_string":{"query":"string","default_field":"string","analyzer":"string","default_operator":"string","allow_leading_wildcard":true},"nested":{"query":{},"path":"string","score_mode":"avg"},"prefix":{"additionalProperty1":{"value":"string","boost":42.0},"additionalProperty2":{"value":"string","boost":42.0}},"exists":{"field":"string"},"range":{"additionalProperty1":{"gt":{},"gte":{},"lt":{},"lte":{},"boost":42.0,"format":"string","time_zone":"string"},"additionalProperty2":{"gt":{},"gte":{},"lt":{},"lte":{},"boost":42.0,"format":"string","time_zone":"string"}},"simple_query_string":{"query":"string","fields":["string"],"default_operator":"string","analyze_wildcard":true,"analyzer":"string","auto_generate_synonyms_phrase_query":true,"flags":"string","fuzzy_max_expansions":42,"fuzzy_prefix_length":42,"fuzzy_transpositions":true,"lenient":true,"minimum_should_match":"string","quote_field_suffix":"string"}},"storage_multiplier":42.0,"deleted_on":"2024-05-04T09:42:00+00:00","system_owned":true,"metadata":{},"cpu_multiplier":42.0,"allowed_zones":["string"]}'
{
"id": "string",
"name": "string",
"config_version": 42,
"description": "string",
"instance_type": "elasticsearch",
"node_types": [
"string"
],
"discrete_sizes": {
"sizes": [
42
],
"default_size": 42,
"resource": "memory"
},
"allocator_filter": {
"match": {
"additionalProperty1": {
"query": "string",
"operator": "string",
"minimum_should_match": 42,
"analyzer": "string"
},
"additionalProperty2": {
"query": "string",
"operator": "string",
"minimum_should_match": 42,
"analyzer": "string"
}
},
"match_all": {},
"match_none": {},
"term": {
"additionalProperty1": {
"value": "string"
},
"additionalProperty2": {
"value": "string"
}
},
"bool": {
"must": [
{}
],
"should": [
{}
],
"must_not": [
{}
],
"filter": [
{}
],
"minimum_should_match": 42
},
"query_string": {
"query": "string",
"default_field": "string",
"analyzer": "string",
"default_operator": "string",
"allow_leading_wildcard": true
},
"nested": {
"query": {},
"path": "string",
"score_mode": "avg"
},
"prefix": {
"additionalProperty1": {
"value": "string",
"boost": 42.0
},
"additionalProperty2": {
"value": "string",
"boost": 42.0
}
},
"exists": {
"field": "string"
},
"range": {
"additionalProperty1": {
"gt": {},
"gte": {},
"lt": {},
"lte": {},
"boost": 42.0,
"format": "string",
"time_zone": "string"
},
"additionalProperty2": {
"gt": {},
"gte": {},
"lt": {},
"lte": {},
"boost": 42.0,
"format": "string",
"time_zone": "string"
}
},
"simple_query_string": {
"query": "string",
"fields": [
"string"
],
"default_operator": "string",
"analyze_wildcard": true,
"analyzer": "string",
"auto_generate_synonyms_phrase_query": true,
"flags": "string",
"fuzzy_max_expansions": 42,
"fuzzy_prefix_length": 42,
"fuzzy_transpositions": true,
"lenient": true,
"minimum_should_match": "string",
"quote_field_suffix": "string"
}
},
"storage_multiplier": 42.0,
"deleted_on": "2024-05-04T09:42:00+00:00",
"system_owned": true,
"metadata": {},
"cpu_multiplier": 42.0,
"allowed_zones": [
"string"
]
}
{
"id": "string",
"config_version": {},
"config_version_updated": {}
}
{
"id": "string",
"config_version": {},
"config_version_updated": {}
}
{
"errors": [
{
"code": "string",
"message": "string",
"fields": [
"string"
]
}
]
}
{
"errors": [
{
"code": "string",
"message": "string",
"fields": [
"string"
]
}
]
}
{
"errors": [
{
"code": "string",
"message": "string",
"fields": [
"string"
]
}
]
}