Update a DBaaS OpenSearch service

PUT /dbaas-opensearch/{name}

Update a DBaaS OpenSearch service

Path parameters

  • name dbaas-service-name Required

    Service name

    Minimum length is 0, maximum length is 63.

application/json

Body Required

  • max-index-count integer(int64)

    Maximum number of indexes to keep before deleting the oldest one

    Minimum value is 0.

  • Aiven automation resets index.refresh_interval to default value for every index to be sure that indices are always visible to search. If it doesn't fit your case, you can disable this by setting up this flag to true.

  • ip-filter array[string]

    Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16'

  • Service is protected against termination and powering off

  • index-patterns array[object]

    Allows you to create glob style patterns and set a max number of indexes matching this pattern you want to keep. Creating indexes exceeding this value will cause the oldest one to get deleted. You could for example create a pattern looking like 'logs.?' and then create index logs.1, logs.2 etc, it will delete logs.1 once you create logs.6. Do note 'logs.?' does not apply to logs.10. Note: Setting max_index_count to 0 will do nothing and the pattern gets ignored.

    Hide index-patterns attributes Show index-patterns attributes object
    • max-index-count integer(int64)

      Maximum number of indexes to keep

      Minimum value is 0.

    • Deletion sorting algorithm

      Values are alphabetical or creation_date.

    • pattern string

      fnmatch pattern

      Maximum length is 1024.

  • Automatic maintenance settings

    Hide maintenance attributes Show maintenance attributes
    • dow string Required

      Day of week for installing updates

      Values are saturday, tuesday, never, wednesday, sunday, friday, monday, or thursday.

    • time string Required

      Time for installing updates, UTC

      Minimum length is 8, maximum length is 8.

  • Template settings for all new indexes

    Hide index-template attributes Show index-template attributes
    • The maximum number of nested JSON objects that a single document can contain across all nested types. This limit helps to prevent out of memory errors when a document contains too many nested objects. Default is 10000.

      Minimum value is 0, maximum value is 100000.

    • number-of-replicas integer(int64)

      The number of replicas each primary shard has.

      Minimum value is 0, maximum value is 29.

    • number-of-shards integer(int64)

      The number of primary shards that an index should have.

      Minimum value is 1, maximum value is 1024.

  • opensearch-settings json-schema-opensearch

    OpenSearch-specific settings

    Hide opensearch-settings attributes Show opensearch-settings attributes
    • thread_pool_search_throttled_size search_throttled thread pool size

      Size for the thread pool. See documentation for exact details. Do note this may have maximum value depending on CPU count - value is automatically lowered if set to higher than maximum value.

      Minimum value is 1, maximum value is 128.

    • thread_pool_analyze_size analyze thread pool size

      Size for the thread pool. See documentation for exact details. Do note this may have maximum value depending on CPU count - value is automatically lowered if set to higher than maximum value.

      Minimum value is 1, maximum value is 128.

    • thread_pool_get_size get thread pool size

      Size for the thread pool. See documentation for exact details. Do note this may have maximum value depending on CPU count - value is automatically lowered if set to higher than maximum value.

      Minimum value is 1, maximum value is 128.

    • thread_pool_get_queue_size get thread pool queue size

      Size for the thread pool queue. See documentation for exact details.

      Minimum value is 10, maximum value is 2000.

    • indices_recovery_max_concurrent_file_chunks indices.recovery.max_concurrent_file_chunks

      Number of file chunks sent in parallel for each recovery. Defaults to 2.

      Minimum value is 2, maximum value is 5.

    • indices_queries_cache_size indices.queries.cache.size

      Percentage value. Default is 10%. Maximum amount of heap used for query cache. This is an expert setting. Too low value will decrease query performance and increase performance for other operations; too high value will cause issues with other OpenSearch functionality.

      Minimum value is 3, maximum value is 40.

    • thread_pool_search_size search thread pool size

      Size for the thread pool. See documentation for exact details. Do note this may have maximum value depending on CPU count - value is automatically lowered if set to higher than maximum value.

      Minimum value is 1, maximum value is 128.

    • indices_recovery_max_bytes_per_sec indices.recovery.max_bytes_per_sec

      Limits total inbound and outbound recovery traffic for each node. Applies to both peer recoveries as well as snapshot recoveries (i.e., restores from a snapshot). Defaults to 40mb

      Minimum value is 40, maximum value is 400.

    • http_max_initial_line_length http.max_initial_line_length

      The max length of an HTTP URL, in bytes

      Minimum value is 1024, maximum value is 65536.

    • thread_pool_write_queue_size write thread pool queue size

      Size for the thread pool queue. See documentation for exact details.

      Minimum value is 10, maximum value is 2000.

    • script_max_compilations_rate Script max compilation rate - circuit breaker to prevent/minimize OOMs

      Script compilation circuit breaker limits the number of inline script compilations within a period of time. Default is use-context

      Maximum length is 1024.

    • search_max_buckets search.max_buckets | null

      Maximum number of aggregation buckets allowed in a single response. OpenSearch default value is used when this is not defined.

      Minimum value is 1, maximum value is 65536.

    • reindex_remote_whitelist reindex_remote_whitelist[string | null] | null

      Whitelisted addresses for reindexing. Changing this value will cause all OpenSearch instances to restart.

      Not more than 32 elements. Maximum length of each is 261.

    • override_main_response_version compatibility.override_main_response_version

      Compatibility mode sets OpenSearch to report its version as 7.10 so clients continue to work. Default is false

    • http_max_header_size http.max_header_size

      The max size of allowed headers, in bytes

      Minimum value is 1024, maximum value is 262144.

    • email-sender Opensearch Email Sender Settings
      Hide email-sender attributes Show email-sender attributes
      • email_sender_name Sender name placeholder to be used in Opensearch Dashboards and Opensearch keystore Required

        This should be identical to the Sender name defined in Opensearch dashboards

        Maximum length is 40. Format should match the following pattern: ^[a-zA-Z0-9-_]+$.

      • email_sender_password Sender password for Opensearch alerts to authenticate with SMTP server Required

        Sender password for Opensearch alerts to authenticate with SMTP server

        Maximum length is 1024. Format should match the following pattern: ^[^\x00-\x1F]+$.

      • email_sender_username Sender username for Opensearch alerts Required

        Maximum length is 320. Format should match the following pattern: ^[^\x00-\x1F]+$.

    • indices_fielddata_cache_size indices.fielddata.cache.size | null

      Relative amount. Maximum amount of heap memory used for field data cache. This is an expert setting; decreasing the value too much will increase overhead of loading field data; too much memory used for field data cache will decrease amount of heap available for other operations.

      Minimum value is 3, maximum value is 100.

    • action_destructive_requires_name Require explicit index names when deleting | null
    • indices_memory_index_buffer_size indices.memory.index_buffer_size

      Percentage value. Default is 10%. Total amount of heap used for indexing buffer, before writing segments to disk. This is an expert setting. Too low value will slow down indexing; too high value will increase indexing performance but causes performance issues for query performance.

      Minimum value is 3, maximum value is 40.

    • thread_pool_force_merge_size force_merge thread pool size

      Size for the thread pool. See documentation for exact details. Do note this may have maximum value depending on CPU count - value is automatically lowered if set to higher than maximum value.

      Minimum value is 1, maximum value is 128.

    • auth_failure_listeners Opensearch Security Plugin Settings
      Hide auth_failure_listeners attributes Show auth_failure_listeners attributes
      • ip_rate_limiting IP address rate limiting settings
        Hide ip_rate_limiting attributes Show ip_rate_limiting attributes
        • type ip_rate_limiting.type

          The type of rate limiting

          Maximum length is 1024. Value is ip.

        • allowed_tries ip_rate_limiting.allowed_tries

          The number of login attempts allowed before login is blocked

          Minimum value is 1, maximum value is 2147483647.

        • time_window_seconds ip_rate_limiting.time_window_seconds

          The window of time in which the value for allowed_tries is enforced

          Minimum value is 1, maximum value is 36000.

        • block_expiry_seconds ip_rate_limiting.block_expiry_seconds

          The duration of time that login remains blocked after a failed login

          Minimum value is 1, maximum value is 36000.

        • max_blocked_clients ip_rate_limiting.max_blocked_clients

          The maximum number of blocked IP addresses

          Minimum value is 0, maximum value is 2147483647.

        • max_tracked_clients ip_rate_limiting.max_tracked_clients

          The maximum number of tracked IP addresses that have failed login

          Minimum value is 0, maximum value is 2147483647.

      • internal_authentication_backend_limiting Internal Authentication Backend Limiting
        Hide internal_authentication_backend_limiting attributes Show internal_authentication_backend_limiting attributes
        • type internal_authentication_backend_limiting.type

          The type of rate limiting

          Maximum length is 1024. Value is username.

        • authentication_backend internal_authentication_backend_limiting.authentication_backend

          The internal backend. Enter internal

          Maximum length is 1024. Value is internal.

        • allowed_tries internal_authentication_backend_limiting.allowed_tries

          The number of login attempts allowed before login is blocked

          Minimum value is 0, maximum value is 2147483647.

        • time_window_seconds internal_authentication_backend_limiting.time_window_seconds

          The window of time in which the value for allowed_tries is enforced

          Minimum value is 0, maximum value is 2147483647.

        • block_expiry_seconds internal_authentication_backend_limiting.block_expiry_seconds

          The duration of time that login remains blocked after a failed login

          Minimum value is 0, maximum value is 2147483647.

        • max_blocked_clients internal_authentication_backend_limiting.max_blocked_clients

          The maximum number of blocked IP addresses

          Minimum value is 0, maximum value is 2147483647.

        • max_tracked_clients internal_authentication_backend_limiting.max_tracked_clients

          The maximum number of tracked IP addresses that have failed login

          Minimum value is 0, maximum value is 2147483647.

    • ism-history Opensearch ISM History Settings
      Hide ism-history attributes Show ism-history attributes
      • ism_enabled Specifies whether ISM is enabled or not | null Required

        Default value is true.

      • ism_history_enabled Specifies whether audit history is enabled or not. The logs from ISM are automatically indexed to a logs document. | null

        Default value is true.

      • ism_history_max_age The maximum age before rolling over the audit history index in hours | null

        Minimum value is 1, maximum value is 2147483647. Default value is 24.

      • ism_history_max_docs The maximum number of documents before rolling over the audit history index. | null

        Minimum value is 1, maximum value is 9223372036854775807. Default value is 2500000.

      • ism_history_rollover_check_period The time between rollover checks for the audit history index in hours. | null

        Minimum value is 1, maximum value is 2147483647. Default value is 8.

      • ism_history_rollover_retention_period How long audit history indices are kept in days. | null

        Minimum value is 1, maximum value is 2147483647. Default value is 30.

    • cluster_routing_allocation_node_concurrent_recoveries Concurrent incoming/outgoing shard recoveries per node

      How many concurrent incoming/outgoing shard recoveries (normally replicas) are allowed to happen on a node. Defaults to 2.

      Minimum value is 2, maximum value is 16.

    • thread_pool_analyze_queue_size analyze thread pool queue size

      Size for the thread pool queue. See documentation for exact details.

      Minimum value is 10, maximum value is 2000.

    • action_auto_create_index_enabled action.auto_create_index

      Explicitly allow or block automatic creation of indices. Defaults to true

    • http_max_content_length http.max_content_length

      Maximum content length for HTTP requests to the OpenSearch HTTP API, in bytes.

      Minimum value is 1, maximum value is 2147483647.

    • thread_pool_write_size write thread pool size

      Size for the thread pool. See documentation for exact details. Do note this may have maximum value depending on CPU count - value is automatically lowered if set to higher than maximum value.

      Minimum value is 1, maximum value is 128.

    • thread_pool_search_queue_size search thread pool queue size

      Size for the thread pool queue. See documentation for exact details.

      Minimum value is 10, maximum value is 2000.

    • indices_query_bool_max_clause_count indices.query.bool.max_clause_count

      Maximum number of clauses Lucene BooleanQuery can have. The default value (1024) is relatively high, and increasing it may cause performance issues. Investigate other approaches first before increasing this value.

      Minimum value is 64, maximum value is 4096.

    • thread_pool_search_throttled_queue_size search_throttled thread pool queue size

      Size for the thread pool queue. See documentation for exact details.

      Minimum value is 10, maximum value is 2000.

    • cluster_max_shards_per_node cluster.max_shards_per_node

      Controls the number of shards allowed in the cluster per data node

      Minimum value is 100, maximum value is 10000.

  • version string

    Version

  • plan string

    Subscription plan

    Minimum length is 1, maximum length is 128.

  • OpenSearch Dashboards settings

    Hide opensearch-dashboards attributes Show opensearch-dashboards attributes
    • Timeout in milliseconds for requests made by OpenSearch Dashboards towards OpenSearch (default: 30000)

      Minimum value is 5000, maximum value is 120000.

    • enabled boolean

      Enable or disable OpenSearch Dashboards (default: true)

    • max-old-space-size integer(int64)

      Limits the maximum amount of memory (in MiB) the OpenSearch Dashboards process can use. This sets the max_old_space_size option of the nodejs running the OpenSearch Dashboards. Note: the memory reserved by OpenSearch Dashboards is not available for OpenSearch. (default: 128)

      Minimum value is 64, maximum value is 1024.

Responses

  • 200 application/json

    200

    Hide response attributes Show response attributes operation
    • id string(uuid)

      Operation ID

    • reason string

      Operation failure reason

      Values are incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, or conflict.

    • Related resource reference

      Hide reference attributes Show reference attributes
      • id string(uuid)

        Reference ID

      • command string

        Command name

    • message string

      Operation message

    • state string

      Operation status

      Values are failure, pending, success, or timeout.

PUT /dbaas-opensearch/{name}
curl \
 -X PUT https://api-ch-gva-2.exoscale.com/v2/dbaas-opensearch/{name} \
 -H "Content-Type: application/json" \
 -d '{"max-index-count":42,"keep-index-refresh-interval":true,"ip-filter":["string"],"termination-protection":true,"index-patterns":[{"max-index-count":42,"sorting-algorithm":"alphabetical","pattern":"string"}],"maintenance":{"dow":"saturday","time":"string"},"index-template":{"mapping-nested-objects-limit":42,"number-of-replicas":42,"number-of-shards":42},"opensearch-settings":{"thread_pool_search_throttled_size":42,"thread_pool_analyze_size":42,"thread_pool_get_size":42,"thread_pool_get_queue_size":42,"indices_recovery_max_concurrent_file_chunks":42,"indices_queries_cache_size":42,"thread_pool_search_size":42,"indices_recovery_max_bytes_per_sec":42,"http_max_initial_line_length":4096,"thread_pool_write_queue_size":42,"script_max_compilations_rate":"75/5m","search_max_buckets":10000,"reindex_remote_whitelist":["anotherservice.aivencloud.com:12398"],"override_main_response_version":true,"http_max_header_size":8192,"email-sender":{"email_sender_name":"alert-sender","email_sender_password":"very-secure-mail-password","email_sender_username":"jane@example.com"},"indices_fielddata_cache_size":42,"action_destructive_requires_name":true,"indices_memory_index_buffer_size":42,"thread_pool_force_merge_size":42,"auth_failure_listeners":{"ip_rate_limiting":{"type":"ip","allowed_tries":10,"time_window_seconds":3600,"block_expiry_seconds":600,"max_blocked_clients":100000,"max_tracked_clients":100000},"internal_authentication_backend_limiting":{"type":"username","authentication_backend":"internal","allowed_tries":10,"time_window_seconds":3600,"block_expiry_seconds":600,"max_blocked_clients":100000,"max_tracked_clients":100000}},"ism-history":{"ism_enabled":true,"ism_history_enabled":true,"ism_history_max_age":24,"ism_history_max_docs":2500000,"ism_history_rollover_check_period":8,"ism_history_rollover_retention_period":30},"cluster_routing_allocation_node_concurrent_recoveries":42,"thread_pool_analyze_queue_size":42,"action_auto_create_index_enabled":false,"http_max_content_length":42,"thread_pool_write_size":42,"thread_pool_search_queue_size":42,"indices_query_bool_max_clause_count":42,"thread_pool_search_throttled_queue_size":42,"cluster_max_shards_per_node":1000},"version":"string","plan":"string","opensearch-dashboards":{"opensearch-request-timeout":42,"enabled":true,"max-old-space-size":42}}'
Request example
{
  "max-index-count": 42,
  "keep-index-refresh-interval": true,
  "ip-filter": [
    "string"
  ],
  "termination-protection": true,
  "index-patterns": [
    {
      "max-index-count": 42,
      "sorting-algorithm": "alphabetical",
      "pattern": "string"
    }
  ],
  "maintenance": {
    "dow": "saturday",
    "time": "string"
  },
  "index-template": {
    "mapping-nested-objects-limit": 42,
    "number-of-replicas": 42,
    "number-of-shards": 42
  },
  "opensearch-settings": {
    "thread_pool_search_throttled_size": 42,
    "thread_pool_analyze_size": 42,
    "thread_pool_get_size": 42,
    "thread_pool_get_queue_size": 42,
    "indices_recovery_max_concurrent_file_chunks": 42,
    "indices_queries_cache_size": 42,
    "thread_pool_search_size": 42,
    "indices_recovery_max_bytes_per_sec": 42,
    "http_max_initial_line_length": 4096,
    "thread_pool_write_queue_size": 42,
    "script_max_compilations_rate": "75/5m",
    "search_max_buckets": 10000,
    "reindex_remote_whitelist": [
      "anotherservice.aivencloud.com:12398"
    ],
    "override_main_response_version": true,
    "http_max_header_size": 8192,
    "email-sender": {
      "email_sender_name": "alert-sender",
      "email_sender_password": "very-secure-mail-password",
      "email_sender_username": "jane@example.com"
    },
    "indices_fielddata_cache_size": 42,
    "action_destructive_requires_name": true,
    "indices_memory_index_buffer_size": 42,
    "thread_pool_force_merge_size": 42,
    "auth_failure_listeners": {
      "ip_rate_limiting": {
        "type": "ip",
        "allowed_tries": 10,
        "time_window_seconds": 3600,
        "block_expiry_seconds": 600,
        "max_blocked_clients": 100000,
        "max_tracked_clients": 100000
      },
      "internal_authentication_backend_limiting": {
        "type": "username",
        "authentication_backend": "internal",
        "allowed_tries": 10,
        "time_window_seconds": 3600,
        "block_expiry_seconds": 600,
        "max_blocked_clients": 100000,
        "max_tracked_clients": 100000
      }
    },
    "ism-history": {
      "ism_enabled": true,
      "ism_history_enabled": true,
      "ism_history_max_age": 24,
      "ism_history_max_docs": 2500000,
      "ism_history_rollover_check_period": 8,
      "ism_history_rollover_retention_period": 30
    },
    "cluster_routing_allocation_node_concurrent_recoveries": 42,
    "thread_pool_analyze_queue_size": 42,
    "action_auto_create_index_enabled": false,
    "http_max_content_length": 42,
    "thread_pool_write_size": 42,
    "thread_pool_search_queue_size": 42,
    "indices_query_bool_max_clause_count": 42,
    "thread_pool_search_throttled_queue_size": 42,
    "cluster_max_shards_per_node": 1000
  },
  "version": "string",
  "plan": "string",
  "opensearch-dashboards": {
    "opensearch-request-timeout": 42,
    "enabled": true,
    "max-old-space-size": 42
  }
}
Response examples (200)
{
  "id": "string",
  "reason": "incorrect",
  "reference": {
    "id": "string",
    "link": "string",
    "command": "string"
  },
  "message": "string",
  "state": "failure"
}