2792 lines
175 KiB
JSON
2792 lines
175 KiB
JSON
{
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"apiVersion": {
|
|
"type": "string"
|
|
},
|
|
"kind": {
|
|
"type": "string"
|
|
},
|
|
"metadata": {
|
|
"type": "object"
|
|
},
|
|
"spec": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"imagePullSecrets": {
|
|
"items": {
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"name"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"package": {
|
|
"properties": {
|
|
"apiVersion": {
|
|
"type": "string"
|
|
},
|
|
"image": {
|
|
"type": "string"
|
|
},
|
|
"spec": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"admin": {
|
|
"additionalProperties": false,
|
|
"description": "OAuth configuration for restricting access to Clustered",
|
|
"properties": {
|
|
"dsn": {
|
|
"additionalProperties": false,
|
|
"description": "The dsn for the postgres compatible database",
|
|
"examples": [
|
|
"value: ...",
|
|
"valueFrom: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"value"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"valueFrom"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"value": {
|
|
"default": "",
|
|
"description": "Value",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"valueFrom": {
|
|
"additionalProperties": false,
|
|
"description": "Allows to source the value from configMaps or secrets",
|
|
"examples": [
|
|
"configMapKeyRef: ...",
|
|
"secretKeyRef: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"configMapKeyRef"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"secretKeyRef"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"configMapKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "Selects a key from a ConfigMap.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key to select.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"default": false,
|
|
"description": "Specify whether the ConfigMap or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
},
|
|
"secretKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "SecretKeySelector selects a key of a Secret.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key of the secret to select from. Must be a valid secret key.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"default": "",
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"description": "Specify whether the Secret or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"identityProvider": {
|
|
"description": "The identity provider to be used e.g. \"keycloak\", \"auth0\", \"azure\"",
|
|
"type": "string"
|
|
},
|
|
"internalSigningKey": {
|
|
"description": "Internal JWT secrets",
|
|
"properties": {
|
|
"id": {
|
|
"additionalProperties": false,
|
|
"description": "random ID that uniquely identifies this keypair. Generally a UUID.",
|
|
"examples": [
|
|
"value: ...",
|
|
"valueFrom: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"value"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"valueFrom"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"value": {
|
|
"default": "",
|
|
"description": "Value",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"valueFrom": {
|
|
"additionalProperties": false,
|
|
"description": "Allows to source the value from configMaps or secrets",
|
|
"examples": [
|
|
"configMapKeyRef: ...",
|
|
"secretKeyRef: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"configMapKeyRef"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"secretKeyRef"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"configMapKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "Selects a key from a ConfigMap.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key to select.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"default": false,
|
|
"description": "Specify whether the ConfigMap or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
},
|
|
"secretKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "SecretKeySelector selects a key of a Secret.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key of the secret to select from. Must be a valid secret key.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"default": "",
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"description": "Specify whether the Secret or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"privateKey": {
|
|
"additionalProperties": false,
|
|
"examples": [
|
|
"value: ...",
|
|
"valueFrom: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"value"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"valueFrom"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"value": {
|
|
"default": "",
|
|
"description": "Value",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"valueFrom": {
|
|
"additionalProperties": false,
|
|
"description": "Allows to source the value from configMaps or secrets",
|
|
"examples": [
|
|
"configMapKeyRef: ...",
|
|
"secretKeyRef: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"configMapKeyRef"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"secretKeyRef"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"configMapKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "Selects a key from a ConfigMap.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key to select.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"default": false,
|
|
"description": "Specify whether the ConfigMap or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
},
|
|
"secretKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "SecretKeySelector selects a key of a Secret.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key of the secret to select from. Must be a valid secret key.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"default": "",
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"description": "Specify whether the Secret or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"publicKey": {
|
|
"additionalProperties": false,
|
|
"examples": [
|
|
"value: ...",
|
|
"valueFrom: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"value"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"valueFrom"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"value": {
|
|
"default": "",
|
|
"description": "Value",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"valueFrom": {
|
|
"additionalProperties": false,
|
|
"description": "Allows to source the value from configMaps or secrets",
|
|
"examples": [
|
|
"configMapKeyRef: ...",
|
|
"secretKeyRef: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"configMapKeyRef"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"secretKeyRef"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"configMapKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "Selects a key from a ConfigMap.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key to select.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"default": false,
|
|
"description": "Specify whether the ConfigMap or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
},
|
|
"secretKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "SecretKeySelector selects a key of a Secret.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key of the secret to select from. Must be a valid secret key.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"default": "",
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"description": "Specify whether the Secret or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"privateKey",
|
|
"publicKey"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"jwksEndpoint": {
|
|
"description": "The JWKS endpoint given by your identity provider. This should look like \"https://{identityProviderDomain}/.well-known/jwks.json\"",
|
|
"type": "string"
|
|
},
|
|
"users": {
|
|
"description": "The list of users to grant access to Clustered via influxctl",
|
|
"item": {
|
|
"properties": {
|
|
"email": {
|
|
"description": "The email of the user within your identity provider.",
|
|
"type": "string"
|
|
},
|
|
"firstName": {
|
|
"description": "The first name of the user that will be used in Clustered.",
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"description": "The identifier of the user within your identity provider.",
|
|
"type": "string"
|
|
},
|
|
"lastName": {
|
|
"description": "The last name of the user that will be used in Clustered.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"firstName",
|
|
"lastName",
|
|
"email",
|
|
"id"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"catalog": {
|
|
"additionalProperties": false,
|
|
"description": "Configuration for the postgres-compatible database that is used as a catalog/metadata store",
|
|
"properties": {
|
|
"dsn": {
|
|
"additionalProperties": false,
|
|
"examples": [
|
|
"value: ...",
|
|
"valueFrom: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"value"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"valueFrom"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"value": {
|
|
"default": "",
|
|
"description": "Value",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"valueFrom": {
|
|
"additionalProperties": false,
|
|
"description": "Allows to source the value from configMaps or secrets",
|
|
"examples": [
|
|
"configMapKeyRef: ...",
|
|
"secretKeyRef: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"configMapKeyRef"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"secretKeyRef"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"configMapKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "Selects a key from a ConfigMap.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key to select.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"default": false,
|
|
"description": "Specify whether the ConfigMap or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
},
|
|
"secretKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "SecretKeySelector selects a key of a Secret.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key of the secret to select from. Must be a valid secret key.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"default": "",
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"description": "Specify whether the Secret or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"components": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"common": {
|
|
"additionalProperties": false,
|
|
"description": "Common configuration to all components. They will be overridden by component-specific configuration.\nAny value defined in the component-specific settings will be merged with values defined in the common settings.\n",
|
|
"properties": {
|
|
"log": {
|
|
"additionalProperties": false,
|
|
"description": "Configuring logging parameters.\n",
|
|
"properties": {
|
|
"filters": {
|
|
"description": "InfluxDB 3.0 logging verbosity can be configured in fine grained way using a list\nof \"log filters\".\n\nEach log filter is an expression in the form of:\n\ntarget=level\n\nWhere \"target\" matches the \"target\" field in the logs, while level can be one of\nerror, warn, info, debug and trace.\n\nError and warn are less verbose while debug and trace are more verbose.\n\nYou can omit target and just specify a level. In that case the level \nwill set the maximum level for all events that are not enabled by other filters.\n\nIf a filter for a given target appears again in the filter list, it will override\na previous occurrence. This allows you to override the default filters.\n\nThe full documentation for the log filter syntax can be found at:\nhttps://docs.rs/tracing-subscriber/latest/tracing_subscriber/filter/struct.EnvFilter.html\n",
|
|
"item": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"template": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"affinity": {
|
|
"default": { },
|
|
"properties": {
|
|
"nodeAffinity": {
|
|
"properties": {
|
|
"preferredDuringSchedulingIgnoredDuringExecution": {
|
|
"items": {
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"requiredDuringSchedulingIgnoredDuringExecution": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"containers": {
|
|
"default": { },
|
|
"patternProperties": {
|
|
".": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"env": {
|
|
"default": { },
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"metadata": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"annotations": {
|
|
"default": { },
|
|
"description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations",
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"labels": {
|
|
"default": { },
|
|
"description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels",
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"nodeSelector": {
|
|
"default": { },
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"tolerations": {
|
|
"default": [ ],
|
|
"description": "Pod tolerations to place onto this IOx component to affect scheduling decisions.\n\nFor further details, consult the Kubernetes documentation\nhttps://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration\n",
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"compactor": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"log": {
|
|
"additionalProperties": false,
|
|
"description": "Configuring logging parameters.\n",
|
|
"properties": {
|
|
"filters": {
|
|
"description": "InfluxDB 3.0 logging verbosity can be configured in fine grained way using a list\nof \"log filters\".\n\nEach log filter is an expression in the form of:\n\ntarget=level\n\nWhere \"target\" matches the \"target\" field in the logs, while level can be one of\nerror, warn, info, debug and trace.\n\nError and warn are less verbose while debug and trace are more verbose.\n\nYou can omit target and just specify a level. In that case the level \nwill set the maximum level for all events that are not enabled by other filters.\n\nIf a filter for a given target appears again in the filter list, it will override\na previous occurrence. This allows you to override the default filters.\n\nThe full documentation for the log filter syntax can be found at:\nhttps://docs.rs/tracing-subscriber/latest/tracing_subscriber/filter/struct.EnvFilter.html\n",
|
|
"item": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"template": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"affinity": {
|
|
"default": { },
|
|
"properties": {
|
|
"nodeAffinity": {
|
|
"properties": {
|
|
"preferredDuringSchedulingIgnoredDuringExecution": {
|
|
"items": {
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"requiredDuringSchedulingIgnoredDuringExecution": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"containers": {
|
|
"default": { },
|
|
"patternProperties": {
|
|
".": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"env": {
|
|
"default": { },
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"metadata": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"annotations": {
|
|
"default": { },
|
|
"description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations",
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"labels": {
|
|
"default": { },
|
|
"description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels",
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"nodeSelector": {
|
|
"default": { },
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"tolerations": {
|
|
"default": [ ],
|
|
"description": "Pod tolerations to place onto this IOx component to affect scheduling decisions.\n\nFor further details, consult the Kubernetes documentation\nhttps://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration\n",
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"garbage-collector": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"log": {
|
|
"additionalProperties": false,
|
|
"description": "Configuring logging parameters.\n",
|
|
"properties": {
|
|
"filters": {
|
|
"description": "InfluxDB 3.0 logging verbosity can be configured in fine grained way using a list\nof \"log filters\".\n\nEach log filter is an expression in the form of:\n\ntarget=level\n\nWhere \"target\" matches the \"target\" field in the logs, while level can be one of\nerror, warn, info, debug and trace.\n\nError and warn are less verbose while debug and trace are more verbose.\n\nYou can omit target and just specify a level. In that case the level \nwill set the maximum level for all events that are not enabled by other filters.\n\nIf a filter for a given target appears again in the filter list, it will override\na previous occurrence. This allows you to override the default filters.\n\nThe full documentation for the log filter syntax can be found at:\nhttps://docs.rs/tracing-subscriber/latest/tracing_subscriber/filter/struct.EnvFilter.html\n",
|
|
"item": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"template": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"affinity": {
|
|
"default": { },
|
|
"properties": {
|
|
"nodeAffinity": {
|
|
"properties": {
|
|
"preferredDuringSchedulingIgnoredDuringExecution": {
|
|
"items": {
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"requiredDuringSchedulingIgnoredDuringExecution": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"containers": {
|
|
"default": { },
|
|
"patternProperties": {
|
|
".": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"env": {
|
|
"default": { },
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"metadata": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"annotations": {
|
|
"default": { },
|
|
"description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations",
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"labels": {
|
|
"default": { },
|
|
"description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels",
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"nodeSelector": {
|
|
"default": { },
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"tolerations": {
|
|
"default": [ ],
|
|
"description": "Pod tolerations to place onto this IOx component to affect scheduling decisions.\n\nFor further details, consult the Kubernetes documentation\nhttps://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration\n",
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"ingester": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"log": {
|
|
"additionalProperties": false,
|
|
"description": "Configuring logging parameters.\n",
|
|
"properties": {
|
|
"filters": {
|
|
"description": "InfluxDB 3.0 logging verbosity can be configured in fine grained way using a list\nof \"log filters\".\n\nEach log filter is an expression in the form of:\n\ntarget=level\n\nWhere \"target\" matches the \"target\" field in the logs, while level can be one of\nerror, warn, info, debug and trace.\n\nError and warn are less verbose while debug and trace are more verbose.\n\nYou can omit target and just specify a level. In that case the level \nwill set the maximum level for all events that are not enabled by other filters.\n\nIf a filter for a given target appears again in the filter list, it will override\na previous occurrence. This allows you to override the default filters.\n\nThe full documentation for the log filter syntax can be found at:\nhttps://docs.rs/tracing-subscriber/latest/tracing_subscriber/filter/struct.EnvFilter.html\n",
|
|
"item": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"template": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"affinity": {
|
|
"default": { },
|
|
"properties": {
|
|
"nodeAffinity": {
|
|
"properties": {
|
|
"preferredDuringSchedulingIgnoredDuringExecution": {
|
|
"items": {
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"requiredDuringSchedulingIgnoredDuringExecution": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"containers": {
|
|
"default": { },
|
|
"patternProperties": {
|
|
".": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"env": {
|
|
"default": { },
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"metadata": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"annotations": {
|
|
"default": { },
|
|
"description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations",
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"labels": {
|
|
"default": { },
|
|
"description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels",
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"nodeSelector": {
|
|
"default": { },
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"tolerations": {
|
|
"default": [ ],
|
|
"description": "Pod tolerations to place onto this IOx component to affect scheduling decisions.\n\nFor further details, consult the Kubernetes documentation\nhttps://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration\n",
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"querier": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"log": {
|
|
"additionalProperties": false,
|
|
"description": "Configuring logging parameters.\n",
|
|
"properties": {
|
|
"filters": {
|
|
"description": "InfluxDB 3.0 logging verbosity can be configured in fine grained way using a list\nof \"log filters\".\n\nEach log filter is an expression in the form of:\n\ntarget=level\n\nWhere \"target\" matches the \"target\" field in the logs, while level can be one of\nerror, warn, info, debug and trace.\n\nError and warn are less verbose while debug and trace are more verbose.\n\nYou can omit target and just specify a level. In that case the level \nwill set the maximum level for all events that are not enabled by other filters.\n\nIf a filter for a given target appears again in the filter list, it will override\na previous occurrence. This allows you to override the default filters.\n\nThe full documentation for the log filter syntax can be found at:\nhttps://docs.rs/tracing-subscriber/latest/tracing_subscriber/filter/struct.EnvFilter.html\n",
|
|
"item": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"template": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"affinity": {
|
|
"default": { },
|
|
"properties": {
|
|
"nodeAffinity": {
|
|
"properties": {
|
|
"preferredDuringSchedulingIgnoredDuringExecution": {
|
|
"items": {
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"requiredDuringSchedulingIgnoredDuringExecution": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"containers": {
|
|
"default": { },
|
|
"patternProperties": {
|
|
".": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"env": {
|
|
"default": { },
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"metadata": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"annotations": {
|
|
"default": { },
|
|
"description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations",
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"labels": {
|
|
"default": { },
|
|
"description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels",
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"nodeSelector": {
|
|
"default": { },
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"tolerations": {
|
|
"default": [ ],
|
|
"description": "Pod tolerations to place onto this IOx component to affect scheduling decisions.\n\nFor further details, consult the Kubernetes documentation\nhttps://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration\n",
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"router": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"log": {
|
|
"additionalProperties": false,
|
|
"description": "Configuring logging parameters.\n",
|
|
"properties": {
|
|
"filters": {
|
|
"description": "InfluxDB 3.0 logging verbosity can be configured in fine grained way using a list\nof \"log filters\".\n\nEach log filter is an expression in the form of:\n\ntarget=level\n\nWhere \"target\" matches the \"target\" field in the logs, while level can be one of\nerror, warn, info, debug and trace.\n\nError and warn are less verbose while debug and trace are more verbose.\n\nYou can omit target and just specify a level. In that case the level \nwill set the maximum level for all events that are not enabled by other filters.\n\nIf a filter for a given target appears again in the filter list, it will override\na previous occurrence. This allows you to override the default filters.\n\nThe full documentation for the log filter syntax can be found at:\nhttps://docs.rs/tracing-subscriber/latest/tracing_subscriber/filter/struct.EnvFilter.html\n",
|
|
"item": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"template": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"affinity": {
|
|
"default": { },
|
|
"properties": {
|
|
"nodeAffinity": {
|
|
"properties": {
|
|
"preferredDuringSchedulingIgnoredDuringExecution": {
|
|
"items": {
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"requiredDuringSchedulingIgnoredDuringExecution": {
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"containers": {
|
|
"default": { },
|
|
"patternProperties": {
|
|
".": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"env": {
|
|
"default": { },
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"metadata": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"annotations": {
|
|
"default": { },
|
|
"description": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations",
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"labels": {
|
|
"default": { },
|
|
"description": "Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and services. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels",
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"nodeSelector": {
|
|
"default": { },
|
|
"patternProperties": {
|
|
".": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"tolerations": {
|
|
"default": [ ],
|
|
"description": "Pod tolerations to place onto this IOx component to affect scheduling decisions.\n\nFor further details, consult the Kubernetes documentation\nhttps://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration\n",
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"egress": {
|
|
"additionalProperties": false,
|
|
"description": "Configuration for how external resources are accessed from Clustered components",
|
|
"properties": {
|
|
"customCertificates": {
|
|
"additionalProperties": false,
|
|
"description": "Custom certificate or CA Bundle. Used to verify outbound connections performed by influxdb, such as OIDC servers,\npostgres databases, or object store API endpoints.\n\nEquivalent to the SSL_CERT_FILE environment variable used by OpenSSL.\n",
|
|
"examples": [
|
|
"valueFrom: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"valueFrom"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"valueFrom": {
|
|
"additionalProperties": false,
|
|
"description": "Allows to source the value from configMaps or secrets",
|
|
"examples": [
|
|
"configMapKeyRef: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"configMapKeyRef"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"configMapKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "Selects a key from a ConfigMap.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key to select.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"default": false,
|
|
"description": "Specify whether the ConfigMap or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"featureFlags": {
|
|
"description": "An array of feature flag names. Feature flags (aka feature gates) control features that\nhave not yet been released. They can be experimental to varying degrees (alpha, beta, rc).\n",
|
|
"properties": {
|
|
"grafana": {
|
|
"description": "An experimental, minimal installation of a Grafana Deployment to use alongside Clustered.\n\nOnly this flag if you do not have your own metric visualisation setup and wish\nto experiment with Clustered. It is tested with Grafana v10.3.4.\n",
|
|
"type": "string"
|
|
},
|
|
"localTracing": {
|
|
"description": "Experimental installation of Jaeger for tracing capabilities with InfluxDB 3.\n\nOnly enable this flag when instructed to do so by the support team.\n",
|
|
"type": "string"
|
|
},
|
|
"noGrpcProbes": {
|
|
"description": "Remove gRPC liveness/readiness probes for debug service",
|
|
"type": "string"
|
|
},
|
|
"noMinReadySeconds": {
|
|
"description": "Experimental flag for Kubernetes clusters that are lower than v1.25.\n\nNo longer uses minReadySeconds for workloads, this will cause downtime.\n",
|
|
"type": "string"
|
|
},
|
|
"noPrometheus": {
|
|
"description": "Disable the install of the default bare-bones Prometheus StatefulSet installation alongside Clustered.\n\nThis feature flag is useful when you already have a monitoring setup and wish to utilise it.\n\nNOTE: In future releases, the `debug-service` will have a partial, minor, dependency on a Prometheus instance being available.\nIf you do not wish for this service to utilise your own installation of Prometheus, disabling it here may cause issues.\n",
|
|
"type": "string"
|
|
},
|
|
"serviceMonitor": {
|
|
"description": "Deprecated. Use observability.serviceMonitor instead.\n\nCreate a ServiceMonitor resource for InfluxDB3.\n",
|
|
"type": "string"
|
|
},
|
|
"useLicensedBinaries": {
|
|
"description": "Experimental IOx binaries incorporating a license enforcement mechanism.\n\nThese binaries require you to recieve and apply a License resource from InfluxData. They will not start up without it.\nThis allows them to be distributed from a public image repository, eliminating the need to maintain pull secrets.\n",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "array"
|
|
},
|
|
"hostingEnvironment": {
|
|
"additionalProperties": false,
|
|
"description": "Environment or cloud-specific configuration elements which are utilised by InfluxDB Clustered.",
|
|
"properties": {
|
|
"aws": {
|
|
"additionalProperties": false,
|
|
"description": "Configuration for hosting on AWS.",
|
|
"properties": {
|
|
"eksRoleArn": {
|
|
"default": "",
|
|
"description": "IAM role ARN to apply to the IOx ServiceAccount, used with EKS IRSA.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"gke": {
|
|
"additionalProperties": false,
|
|
"description": "Configuration for hosting on Google Kubernetes Engine (GKE).",
|
|
"properties": {
|
|
"workloadIdentity": {
|
|
"additionalProperties": false,
|
|
"description": "Authentication via GKE workload identity. This will annotate the relevant Kubernetes ServiceAccount objects.\nSee https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity for further details.\n",
|
|
"properties": {
|
|
"serviceAccountEmail": {
|
|
"description": "Google IAM Service Account email, this should be in the format \"NAME@PROJECT_ID.iam.gserviceaccount.com\".",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"serviceAccountEmail"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"openshift": {
|
|
"additionalProperties": false,
|
|
"description": "Configuration for hosting on Red Hat OpenShift.",
|
|
"properties": { },
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"images": {
|
|
"description": "Manipulate how images are retrieved for Clustered. This is typically useful for air-gapped environments when you need to use an internal registry.",
|
|
"properties": {
|
|
"overrides": {
|
|
"description": "Override specific images using the contained predicate fields.\n\nThis takes precedence over the registryOverride field.\n",
|
|
"item": {
|
|
"description": "Remaps an image matching naming predicates\n",
|
|
"properties": {
|
|
"name": {
|
|
"description": "Naming predicate: the part of the image name that comes after the registry name, e.g.\nIf the image name is \"oci.influxdata.com/foo/bar:1234\", the name field matches \"foo/bar\"\n",
|
|
"type": "string"
|
|
},
|
|
"newFQIN": {
|
|
"description": "Rewrite expression: when a naming predicate matches this image, rewrite the image reference\nusing this Fully Qualified Image Name. i.e. this replaces the whole registry/imagename:tag@digest\nparts of the input image reference.\n",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"registryOverride": {
|
|
"default": "",
|
|
"description": "Place a new registry prefix infront of all Clustered component images.\n\nThis is used when you wish to maintain the original registry path for images and simply relocate them underneath\nyour own registry.\n\nExample:\nregistryOverride: 'newReg' means 'myregistry/test' becomes 'newReg/myregistry/test'\n",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"ingesterStorage": {
|
|
"additionalProperties": false,
|
|
"description": "Storage configuration for the Clustered ingesters.",
|
|
"properties": {
|
|
"storage": {
|
|
"description": "A higher value provides more disk space for the Write-Ahead Log (WAL) to each ingester, allowing for a greater set of leading edge data to be maintained in-memory.\nThis also reduces the frequency of WAL rotations, leading to better query performance and less burden on the compactor.\n\nNote that at 90% capacity, an ingester will stop accepting writes in order to persist its active WAL into the configured object store as parquet files.\n",
|
|
"type": "string"
|
|
},
|
|
"storageClassName": {
|
|
"default": "",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"storage"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"ingress": {
|
|
"additionalProperties": false,
|
|
"description": "Configuration for how Clustered components are accessed.",
|
|
"properties": {
|
|
"grpc": {
|
|
"additionalProperties": false,
|
|
"description": "Configuration for components which utilise gRPC",
|
|
"properties": {
|
|
"className": {
|
|
"default": "",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"hosts": {
|
|
"description": "A number of hosts/domains to use as entrypoints within the Ingress resources.",
|
|
"type": "array"
|
|
},
|
|
"http": {
|
|
"additionalProperties": false,
|
|
"description": "Configuration for components which utilise HTTP",
|
|
"properties": {
|
|
"className": {
|
|
"default": "",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"template": {
|
|
"additionalProperties": false,
|
|
"description": "Template to apply across configured Ingress-type resources.\nThis allows you to specify a range of third party annotations onto the created Ingress objects and/or\nalter the kind of Ingress you would like to use, e.g. 'Route'.\n",
|
|
"oneOf": [
|
|
{
|
|
"properties": {
|
|
"apiVersion": {
|
|
"const": "networking.istio.io/v1beta1"
|
|
},
|
|
"kind": {
|
|
"const": "Gateway"
|
|
},
|
|
"selector": {
|
|
"default": { },
|
|
"description": "This selector determines which Istio ingress gateway pods will be chosen\nto handle traffic for the created Gateway resources. A blank selector means that all\ngateway pods in the cluster will handle traffic.\n\nFor more details, see https://istio.io/latest/docs/reference/config/networking/gateway/#Gateway\n",
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"apiVersion",
|
|
"kind"
|
|
]
|
|
},
|
|
{
|
|
"properties": {
|
|
"apiVersion": {
|
|
"enum": [
|
|
"networking.k8s.io/v1",
|
|
"route.openshift.io/v1"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"kind": {
|
|
"enum": [
|
|
"Ingress",
|
|
"Route"
|
|
],
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"properties": {
|
|
"apiVersion": {
|
|
"default": "networking.k8s.io/v1",
|
|
"enum": [
|
|
"networking.k8s.io/v1",
|
|
"route.openshift.io/v1",
|
|
"networking.istio.io/v1beta1"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"kind": {
|
|
"default": "Ingress",
|
|
"enum": [
|
|
"Ingress",
|
|
"Route",
|
|
"Gateway"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"metadata": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"annotations": {
|
|
"default": { },
|
|
"description": "Annotations to place onto the objects which enable ingress.",
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"selector": {
|
|
"description": "Selector to specify which gateway deployment utilises the configured ingress configuration.\n\nNote that this is only for Istio Gateway, see https://istio.io/latest/docs/reference/config/networking/gateway/#Gateway for further details\n",
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"tlsSecretName": {
|
|
"default": "",
|
|
"description": "Kubernetes Secret name which contains TLS certificates.\n\nIf you are using cert-manager, this is the name of the Secret to create containing certificates.\nNote that cert-manager is externally managed and is not apart of a Clustered configuration.\n",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"monitoringStorage": {
|
|
"additionalProperties": false,
|
|
"description": "Storage configuration for the Prometheus instance shipped alongside Clustered for basic monitoring purposes.",
|
|
"properties": {
|
|
"storage": {
|
|
"description": "The amount of storage to provision for the attached volume, e.g. \"2Gi\".",
|
|
"type": "string"
|
|
},
|
|
"storageClassName": {
|
|
"default": "",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"storage"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"objectStore": {
|
|
"additionalProperties": false,
|
|
"description": "Configuration for the backing object store of IOx.",
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"bucket",
|
|
"region"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"s3",
|
|
"bucket"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"azure",
|
|
"bucket"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"google",
|
|
"bucket"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"accessKey": {
|
|
"additionalProperties": false,
|
|
"examples": [
|
|
"value: ...",
|
|
"valueFrom: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"value"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"valueFrom"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"value": {
|
|
"default": "",
|
|
"description": "Value",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"valueFrom": {
|
|
"additionalProperties": false,
|
|
"description": "Allows to source the value from configMaps or secrets",
|
|
"examples": [
|
|
"configMapKeyRef: ...",
|
|
"secretKeyRef: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"configMapKeyRef"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"secretKeyRef"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"configMapKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "Selects a key from a ConfigMap.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key to select.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"default": false,
|
|
"description": "Specify whether the ConfigMap or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
},
|
|
"secretKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "SecretKeySelector selects a key of a Secret.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key of the secret to select from. Must be a valid secret key.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"default": "",
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"description": "Specify whether the Secret or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"allowHttp": {
|
|
"default": "false",
|
|
"type": "string"
|
|
},
|
|
"azure": {
|
|
"additionalProperties": false,
|
|
"description": "Configuration for Azure Blob Storage.",
|
|
"properties": {
|
|
"accessKey": {
|
|
"additionalProperties": false,
|
|
"examples": [
|
|
"value: ...",
|
|
"valueFrom: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"value"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"valueFrom"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"value": {
|
|
"default": "",
|
|
"description": "Value",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"valueFrom": {
|
|
"additionalProperties": false,
|
|
"description": "Allows to source the value from configMaps or secrets",
|
|
"examples": [
|
|
"configMapKeyRef: ...",
|
|
"secretKeyRef: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"configMapKeyRef"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"secretKeyRef"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"configMapKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "Selects a key from a ConfigMap.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key to select.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"default": false,
|
|
"description": "Specify whether the ConfigMap or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
},
|
|
"secretKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "SecretKeySelector selects a key of a Secret.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key of the secret to select from. Must be a valid secret key.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"default": "",
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"description": "Specify whether the Secret or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"account": {
|
|
"additionalProperties": false,
|
|
"examples": [
|
|
"value: ...",
|
|
"valueFrom: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"value"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"valueFrom"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"value": {
|
|
"default": "",
|
|
"description": "Value",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"valueFrom": {
|
|
"additionalProperties": false,
|
|
"description": "Allows to source the value from configMaps or secrets",
|
|
"examples": [
|
|
"configMapKeyRef: ...",
|
|
"secretKeyRef: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"configMapKeyRef"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"secretKeyRef"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"configMapKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "Selects a key from a ConfigMap.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key to select.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"default": false,
|
|
"description": "Specify whether the ConfigMap or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
},
|
|
"secretKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "SecretKeySelector selects a key of a Secret.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key of the secret to select from. Must be a valid secret key.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"default": "",
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"description": "Specify whether the Secret or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"accessKey",
|
|
"account"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"bucket": {
|
|
"type": "string"
|
|
},
|
|
"endpoint": {
|
|
"default": "",
|
|
"type": "string"
|
|
},
|
|
"google": {
|
|
"additionalProperties": false,
|
|
"description": "Configuration for Google Cloud Storage.",
|
|
"properties": {
|
|
"serviceAccountSecret": {
|
|
"additionalProperties": false,
|
|
"description": "Authentication via Google IAM Service Account credentials file using a Kubernetes Secret name and key.\nSee https://cloud.google.com/kubernetes-engine/docs/tutorials/authenticating-to-cloud-platform for further details.\n\nIf you wish to use GKE IAM annotations, refer to the hostingEnviornment section of the schema.\n",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key of the secret to select from. Must be a valid secret key.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"default": "",
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"region": {
|
|
"default": "",
|
|
"description": "The region in which the bucket resides. This may not be required dependent on your object store provider.",
|
|
"type": "string"
|
|
},
|
|
"s3": {
|
|
"additionalProperties": false,
|
|
"description": "Configuration for AWS S3 (compatible) object stores.",
|
|
"properties": {
|
|
"accessKey": {
|
|
"additionalProperties": false,
|
|
"examples": [
|
|
"value: ...",
|
|
"valueFrom: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"value"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"valueFrom"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"value": {
|
|
"default": "",
|
|
"description": "Value",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"valueFrom": {
|
|
"additionalProperties": false,
|
|
"description": "Allows to source the value from configMaps or secrets",
|
|
"examples": [
|
|
"configMapKeyRef: ...",
|
|
"secretKeyRef: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"configMapKeyRef"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"secretKeyRef"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"configMapKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "Selects a key from a ConfigMap.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key to select.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"default": false,
|
|
"description": "Specify whether the ConfigMap or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
},
|
|
"secretKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "SecretKeySelector selects a key of a Secret.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key of the secret to select from. Must be a valid secret key.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"default": "",
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"description": "Specify whether the Secret or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"allowHttp": {
|
|
"description": "Allow the S3 client to accept insecure HTTP, as well as HTTPS connections to object store.",
|
|
"type": "string"
|
|
},
|
|
"endpoint": {
|
|
"default": "",
|
|
"description": "S3 bucket region, see https://docs.aws.amazon.com/general/latest/gr/s3.html#s3_region for further details.",
|
|
"type": "string"
|
|
},
|
|
"region": {
|
|
"description": "AWS region for the bucket, such as us-east-1.",
|
|
"type": "string"
|
|
},
|
|
"secretKey": {
|
|
"additionalProperties": false,
|
|
"examples": [
|
|
"value: ...",
|
|
"valueFrom: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"value"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"valueFrom"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"value": {
|
|
"default": "",
|
|
"description": "Value",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"valueFrom": {
|
|
"additionalProperties": false,
|
|
"description": "Allows to source the value from configMaps or secrets",
|
|
"examples": [
|
|
"configMapKeyRef: ...",
|
|
"secretKeyRef: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"configMapKeyRef"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"secretKeyRef"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"configMapKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "Selects a key from a ConfigMap.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key to select.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"default": false,
|
|
"description": "Specify whether the ConfigMap or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
},
|
|
"secretKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "SecretKeySelector selects a key of a Secret.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key of the secret to select from. Must be a valid secret key.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"default": "",
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"description": "Specify whether the Secret or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"region"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"secretKey": {
|
|
"additionalProperties": false,
|
|
"examples": [
|
|
"value: ...",
|
|
"valueFrom: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"value"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"valueFrom"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"value": {
|
|
"default": "",
|
|
"description": "Value",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"valueFrom": {
|
|
"additionalProperties": false,
|
|
"description": "Allows to source the value from configMaps or secrets",
|
|
"examples": [
|
|
"configMapKeyRef: ...",
|
|
"secretKeyRef: ..."
|
|
],
|
|
"oneOf": [
|
|
{
|
|
"required": [
|
|
"configMapKeyRef"
|
|
]
|
|
},
|
|
{
|
|
"required": [
|
|
"secretKeyRef"
|
|
]
|
|
}
|
|
],
|
|
"properties": {
|
|
"configMapKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "Selects a key from a ConfigMap.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key to select.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"default": false,
|
|
"description": "Specify whether the ConfigMap or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
},
|
|
"secretKeyRef": {
|
|
"additionalProperties": false,
|
|
"description": "SecretKeySelector selects a key of a Secret.",
|
|
"properties": {
|
|
"key": {
|
|
"description": "The key of the secret to select from. Must be a valid secret key.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"default": "",
|
|
"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
]
|
|
},
|
|
"optional": {
|
|
"description": "Specify whether the Secret or it's key must be defined",
|
|
"type": [
|
|
"boolean",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"required": [
|
|
"key",
|
|
"name"
|
|
],
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": [
|
|
"object",
|
|
"null"
|
|
]
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"observability": {
|
|
"additionalProperties": false,
|
|
"default": { },
|
|
"description": "Configuration for gaining operational insight into Clustered components",
|
|
"properties": {
|
|
"serviceMonitor": {
|
|
"additionalProperties": false,
|
|
"description": "Configure a ServiceMonitor resource to easily expose InfluxDB metrics via the Prometheus Operator.\nSee the Prometheus Operator documentation for usage:\nhttps://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/user-guides/getting-started.md\n",
|
|
"properties": {
|
|
"interval": {
|
|
"default": "30s",
|
|
"description": "A duration string that controls the length of time between scrape attempts, ex: '15s', or '1m'",
|
|
"type": "string"
|
|
},
|
|
"scrapeTimeout": {
|
|
"default": null,
|
|
"description": "A duration string that controls the scrape timeout duration, ex: '10s'",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [ ],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"resources": {
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"compactor": {
|
|
"additionalProperties": false,
|
|
"description": "See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/#requests-and-limits",
|
|
"properties": {
|
|
"limits": {
|
|
"additionalProperties": false,
|
|
"description": "Limits describes the maximum amount of compute resources allowed.",
|
|
"properties": {
|
|
"cpu": {
|
|
"default": null,
|
|
"type": "string"
|
|
},
|
|
"memory": {
|
|
"default": "512Mi",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"requests": {
|
|
"additionalProperties": false,
|
|
"description": "Requests describes the minimum amount of compute resources required.",
|
|
"properties": {
|
|
"cpu": {
|
|
"default": "1",
|
|
"type": "string"
|
|
},
|
|
"memory": {
|
|
"default": "512Mi",
|
|
"type": "string"
|
|
},
|
|
"replicas": {
|
|
"default": 1,
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"garbage-collector": {
|
|
"additionalProperties": false,
|
|
"description": "See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/#requests-and-limits",
|
|
"properties": {
|
|
"limits": {
|
|
"additionalProperties": false,
|
|
"description": "Limits describes the maximum amount of compute resources allowed.",
|
|
"properties": {
|
|
"cpu": {
|
|
"default": null,
|
|
"type": "string"
|
|
},
|
|
"memory": {
|
|
"default": "1G",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"requests": {
|
|
"additionalProperties": false,
|
|
"description": "See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/#requests-and-limits",
|
|
"properties": {
|
|
"cpu": {
|
|
"default": "500m",
|
|
"type": "string"
|
|
},
|
|
"memory": {
|
|
"default": "1G",
|
|
"type": "string"
|
|
},
|
|
"replicas": {
|
|
"const": 1,
|
|
"description": "Replica configuration for the Garbage Collector.\nNOTE: This component does not support horizontal scaling at this time.\nRefer to https://docs.influxdata.com/influxdb/clustered/reference/internals/storage-engine/#garbage-collector-scaling-strategies\nfor more details.\n",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"ingester": {
|
|
"additionalProperties": false,
|
|
"description": "See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/#requests-and-limits",
|
|
"properties": {
|
|
"limits": {
|
|
"additionalProperties": false,
|
|
"description": "Limits describes the maximum amount of compute resources allowed.",
|
|
"properties": {
|
|
"cpu": {
|
|
"default": null,
|
|
"type": "string"
|
|
},
|
|
"memory": {
|
|
"default": "1Gi",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"requests": {
|
|
"additionalProperties": false,
|
|
"description": "Requests describes the minimum amount of compute resources required.",
|
|
"properties": {
|
|
"cpu": {
|
|
"default": "1",
|
|
"type": "string"
|
|
},
|
|
"memory": {
|
|
"default": "1Gi",
|
|
"type": "string"
|
|
},
|
|
"replicas": {
|
|
"default": 3,
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"querier": {
|
|
"additionalProperties": false,
|
|
"description": "See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/#requests-and-limits",
|
|
"properties": {
|
|
"limits": {
|
|
"additionalProperties": false,
|
|
"description": "Limits describes the maximum amount of compute resources allowed.",
|
|
"properties": {
|
|
"cpu": {
|
|
"default": null,
|
|
"type": "string"
|
|
},
|
|
"memory": {
|
|
"default": "512Mi",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"requests": {
|
|
"additionalProperties": false,
|
|
"description": "Requests describes the minimum amount of compute resources required.",
|
|
"properties": {
|
|
"cpu": {
|
|
"default": "250m",
|
|
"type": "string"
|
|
},
|
|
"memory": {
|
|
"default": "512Mi",
|
|
"type": "string"
|
|
},
|
|
"replicas": {
|
|
"default": 3,
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"router": {
|
|
"additionalProperties": false,
|
|
"description": "See https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/#requests-and-limits",
|
|
"properties": {
|
|
"limits": {
|
|
"additionalProperties": false,
|
|
"description": "Limits describes the maximum amount of compute resources allowed.",
|
|
"properties": {
|
|
"cpu": {
|
|
"default": null,
|
|
"type": "string"
|
|
},
|
|
"memory": {
|
|
"default": "512Mi",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"requests": {
|
|
"additionalProperties": false,
|
|
"description": "Requests describes the minimum amount of compute resources required.",
|
|
"properties": {
|
|
"cpu": {
|
|
"default": "250m",
|
|
"type": "string"
|
|
},
|
|
"memory": {
|
|
"default": "512Mi",
|
|
"type": "string"
|
|
},
|
|
"replicas": {
|
|
"default": 3,
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"catalog",
|
|
"objectStore",
|
|
"ingesterStorage",
|
|
"monitoringStorage"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"image",
|
|
"apiVersion"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"pause": {
|
|
"default": false,
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"status": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
},
|
|
"type": "object"
|
|
}
|
|
|