API Reference #

Packages #

api.astarte-platform.org/v1alpha2 #

Package v1alpha2 contains API Schema definitions for the api v1alpha2 API group

Resource Types #

Astarte #

Astarte is the Schema for the astartes API

Appears in:

Field Description
apiVersion string api.astarte-platform.org/v1alpha2
kind string Astarte
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec AstarteSpec
status AstarteStatus

AstarteAPISpec #

Appears in:

Field Description
ssl boolean
host string

AstarteAppengineAPISpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
disableAuthentication boolean
maxResultsLimit integer
roomEventsQueueName string Configures the name of the Room Events queue. Should be configured only in installations with a highly customized RabbitMQ. It is advised to leave empty unless you know exactly what you’re doing.
roomEventsExchangeName string Configures the name of the Room Events exchange. Should be configured only in installations with a highly customized RabbitMQ. It is advised to leave empty unless you know exactly what you’re doing.

AstarteCFSSLCARootConfigSigningCAConstraintSpec #

Underlying type: struct{k8s.io/apimachinery/pkg/apis/meta/v1.TypeMeta “json:",inline"”; MaxPathLen int “json:"max_path_len"”; IsCA bool “json:"is_ca"”; MaxPathLenZero bool “json:"max_path_len_zero"”}

Appears in:

AstarteCFSSLCARootConfigSigningDefaultSpec #

Appears in:

Field Description
usages string array
expiry string
ca_constraint AstarteCFSSLCARootConfigSigningCAConstraintSpec

AstarteCFSSLCARootConfigSigningSpec #

Appears in:

Field Description
default AstarteCFSSLCARootConfigSigningDefaultSpec

AstarteCFSSLCARootConfigSpec #

Appears in:

Field Description
signing AstarteCFSSLCARootConfigSigningSpec

AstarteCFSSLCSRRootCACASpec #

Appears in:

Field Description
expiry string

AstarteCFSSLCSRRootCAKeySpec #

Appears in:

Field Description
algo string
size integer

AstarteCFSSLCSRRootCANamesSpec #

Appears in:

Field Description
C string
L string
O string
OU string
ST string

AstarteCFSSLCSRRootCASpec #

Appears in:

Field Description
CN string
key AstarteCFSSLCSRRootCAKeySpec
names AstarteCFSSLCSRRootCANamesSpec array
ca AstarteCFSSLCSRRootCACASpec

AstarteCFSSLDBConfigSpec #

Appears in:

Field Description
driver string
dataSource string

AstarteCFSSLSpec #

Appears in:

Field Description
deploy boolean
url string
caExpiry string
caSecret LocalObjectReference
certificateExpiry string
dbConfig AstarteCFSSLDBConfigSpec
resources ResourceRequirements Compute Resources for this Component.
version string
image string
storage AstartePersistentStorageSpec
csrRootCa AstarteCFSSLCSRRootCASpec
caRootConfig AstarteCFSSLCARootConfigSpec
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.

AstarteCassandraConnectionSpec #

Appears in:

Field Description
poolSize integer
autodiscovery boolean
sslConfiguration AstarteCassandraSSLConfigurationSpec
secret LoginCredentialsSecret
username string
password string

AstarteCassandraSSLConfigurationSpec #

Appears in:

Field Description
enabled boolean
customCASecret LocalObjectReference
sni boolean
customSNI string

AstarteCassandraSpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
nodes string
maxHeapSize string
heapNewSize string
storage AstartePersistentStorageSpec
connection AstarteCassandraConnectionSpec

AstarteClusterHealth #

Underlying type: string

AstarteClusterHealth represents the overall health of the cluster

Appears in:

AstarteComponentsSpec #

Appears in:

Field Description
resources ResourceRequirements Compute Resources for this Component.
flow AstarteGenericAPISpec
housekeeping AstarteGenericComponentSpec
realmManagement AstarteGenericComponentSpec
pairing AstarteGenericComponentSpec
dataUpdaterPlant AstarteDataUpdaterPlantSpec
appengineApi AstarteAppengineAPISpec
triggerEngine AstarteTriggerEngineSpec
dashboard AstarteDashboardSpec

AstarteDashboardConfigAuthSpec #

Appears in:

Field Description
type string
oauth_api_url string

AstarteDashboardConfigSpec #

Appears in:

Field Description
realmManagementApiUrl string
appEngineApiUrl string
pairingApiUrl string
flowApiUrl string
defaultRealm string
defaultAuth string
auth AstarteDashboardConfigAuthSpec array

AstarteDashboardSpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
realmManagementApiUrl string
appEngineApiUrl string
pairingApiUrl string
flowApiUrl string
defaultRealm string
defaultAuth string
auth AstarteDashboardConfigAuthSpec array

AstarteDataUpdaterPlantSpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
dataQueueCount integer
prefetchCount integer Controls the prefetch count for Data Updater Plant. When fine-tuning Astarte, this parameter can make a difference for what concerns Data Updater Plant ingestion performance. However, it can also degrade performance significantly and/or increase risk of data loss when misconfigured. Configure this value only if you know what you’re doing and you have experience with RabbitMQ. Defaults to 300

AstarteFeatures #

AstarteFeatures enables/disables selectively a set of global features in Astarte

Appears in:

Field Description
realmDeletion boolean
autoscaling boolean
astartePodPriorities AstartePodPrioritiesSpec

AstarteGenericAPISpec #

AstarteGenericAPISpec represents a generic Astarte API Component in the Deployment spec

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
disableAuthentication boolean

AstarteGenericClusteredResource #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.

AstarteGenericClusteredResourceAutoscalerSpec #

Appears in:

Field Description
horizontal string Name of the HorizontalPodAutoscaler for this deployment/statefulset. This will take precedence over the “Replicas” field of the parent Astarte component.

AstarteGenericComponentSpec #

Appears in:

Field Description
api AstarteGenericAPISpec
backend AstarteGenericClusteredResource

AstarteList #

AstarteList contains a list of Astarte

Field Description
apiVersion string api.astarte-platform.org/v1alpha2
kind string AstarteList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items Astarte array

AstartePersistentStorageSpec #

Appears in:

Field Description
size Quantity
className string
volumeDefinition Volume

AstartePodPrioritiesSpec #

AstartePodPriorities allows to set different priorityClasses for Astarte pods. Note that enabling this feature might generate some counter-intuitive scheduling beahaviour if not done properly.

Appears in:

Field Description
enabled boolean
astarteHighPriority integer The value of the highest PriorityClass for Astarte pods. Once the value is set, updating it will not have effect.
astarteMidPriority integer The value of the medium PriorityClass for Astarte pods. Once the value is set, updating it will not have effect.
astarteLowPriority integer The value of the least PriorityClass for Astarte pods. Once the value is set, updating it will not have effect.

AstarteRabbitMQConnectionSpec #

Appears in:

Field Description
host string
port integer
username string
password string
virtualHost string
sslConfiguration AstarteRabbitMQSSLConfigurationSpec
secret LoginCredentialsSecret

AstarteRabbitMQSSLConfigurationSpec #

Appears in:

Field Description
enabled boolean
customCASecret LocalObjectReference
sni boolean
customSNI string

AstarteRabbitMQSpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
connection AstarteRabbitMQConnectionSpec
storage AstartePersistentStorageSpec
additionalPlugins string array
dataQueuesPrefix string Configures the data queues prefix on RabbitMQ. You should change this setting only in custom RabbitMQ installations.
eventsExchangeName string Configures the events exchange name on RabbitMQ. You should change this setting only in custom RabbitMQ installations.

AstarteSpec #

AstarteSpec defines the desired state of Astarte

Appears in:

Field Description
version string The Astarte Version for this Resource
imagePullPolicy PullPolicy
imagePullSecrets LocalObjectReference array
distributionChannel string
deploymentStrategy DeploymentStrategy
features AstarteFeatures
rbac boolean
storageClassName string
api AstarteAPISpec
rabbitmq AstarteRabbitMQSpec
cassandra AstarteCassandraSpec
vernemq AstarteVerneMQSpec
cfssl AstarteCFSSLSpec
components AstarteComponentsSpec
astarteSystemKeyspace AstarteSystemKeyspaceSpec
astarteInstanceID string AstarteInstanceID is the unique ID that is associated with an Astarte instance. This parameter is used to let different Astarte instances employ a shared database infrastructure. Once set, the AstarteInstanceID cannot be changed. Defaults to “”.
manualMaintenanceMode boolean ManualMaintenanceMode pauses all reconciliation activities but still computes the resource status. It should be used only when the managed Astarte resources requires manual intervention and the Operator cannot break out of the problem by itself. Do not set this field unless you know exactly what you are doing.

AstarteStatus #

AstarteStatus defines the observed state of Astarte

Appears in:

Field Description
phase ReconciliationPhase
astarteVersion string
operatorVersion string
health AstarteClusterHealth
baseAPIURL string
brokerURL string

AstarteSystemKeyspaceSpec #

astarteSystemKeyspace configures the main system keyspace for Astarte. As of now, these settings have effect only upon cluster initialization, and will be ignored otherwise.

Appears in:

Field Description
replicationFactor integer The Replication Factor for the keyspace

AstarteTriggerEngineSpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
eventsQueueName string Configures the name of the Events queue. Should be configured only in installations with a highly customized RabbitMQ. It is advised to leave empty unless you know exactly what you’re doing.
eventsRoutingKey string Configures the routing key for Trigger Events. Should be configured only in installations with a highly customized RabbitMQ and a custom Trigger Engine setup. It is advised to leave empty unless you know exactly what you’re doing, misconfiguring this value can cause heavy breakage within Trigger Engine.

AstarteVerneMQSpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
host string
port integer
caSecret string
storage AstartePersistentStorageSpec
deviceHeartbeatSeconds integer Controls the device heartbeat from the broker to Astarte. The heartbeat is sent periodically to prevent Astarte from keeping up stale connections from Devices in case the broker misbehaves and does not send disconnection events. You should usually not tweak this value. Moreover, keep in mind that when a lot of devices are connected simultaneously, having a short heartbeat time might cause performance issues. Defaults to an hour.
maxOfflineMessages integer The maximum number of QoS 1 or 2 messages to hold in the offline queue. Defaults to 1000000. Set to -1 for no maximum (not recommended). Set to 0 if no messages should be stored offline.
persistentClientExpiration string This option allows persistent clients ( = clean session set to false) to be removed if they do not reconnect within ‘persistent_client_expiration’. This is a non-standard option. As far as the MQTT specification is concerned, persistent clients persist forever. The expiration period should be an integer followed by one of ’d’, ‘w’, ’m’, ‘y’ for day, week, month, and year. Default: 1 year
mirrorQueue string
sslListener boolean This option allows, when true, to handle SSL termination at VerneMQ level. Default: false
sslListenerCertSecretName string Reference the name of the secret containing the TLS certificate for VerneMQ. The secret must be present in the same namespace in which Astarte resides. The field will be used only if SSLListener is set to true.

BlockWorker #

BlockWorker defines a Worker for a Container Block

Appears in:

Field Description
id string
dataProvider DataProvider

ContainerBlockSpec #

ContainerBlockSpec defines a Container Block in a Flow

Appears in:

Field Description
id string
image string
imagePullSecrets LocalObjectReference array
environment EnvVar array
resources ResourceRequirements
config string Configuration represents the JSON string carrying the user configuration for this block
workers BlockWorker array

DataProvider #

DataProvider is a struct which defines which Data Providers (e.g. Brokers) are available for a Worker

Appears in:

Field Description
rabbitmq RabbitMQDataProvider

Flow #

Flow is the Schema for the flows API

Appears in:

Field Description
apiVersion string api.astarte-platform.org/v1alpha2
kind string Flow
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec FlowSpec
status FlowStatus

FlowList #

FlowList contains a list of Flow

Field Description
apiVersion string api.astarte-platform.org/v1alpha2
kind string FlowList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items Flow array

FlowSpec #

FlowSpec defines the desired state of Flow

Appears in:

Field Description
astarte LocalObjectReference
astarteRealm string
nativeBlocks integer Defines the amount of non-container blocks in the Flow
nativeBlocksResources ResourceList Defines the overall resources consumed by Native Blocks
flowPool LocalObjectReference EE Only: Defines the Flow Pool in which the Flow will be allocated.
blocks ContainerBlockSpec array

FlowState #

Underlying type: string

FlowState describes the global state of a Flow

Appears in:

FlowStatus #

FlowStatus defines the observed state of Flow

Appears in:

Field Description
state FlowState State defines the overall state of the Flow
totalContainerBlocks integer Represents the total number of the Container Blocks in the Flow
readyContainerBlocks integer Represents the total number of Ready Container Blocks in the Flow. In a healthy Flow, this matches the number of Total Container Blocks.
resources ResourceList The overall resources allocated in the cluster for this Block
failingContainerBlocks integer Represents the total number of Container Blocks with non temporary failures. Present only if any of the Blocks is in such state. When present, manual intervention is most likely required.
unrecoverableFailures ContainerState array UnrecoverableFailures lists all the ContainerStates of failing containers, for further inspection.

LoginCredentialsSecret #

Appears in:

Field Description
name string
usernameKey string
passwordKey string

RabbitMQConfig #

Underlying type: struct{k8s.io/apimachinery/pkg/apis/meta/v1.TypeMeta “json:",inline"”; Host string “json:"host"”; Port int16 “json:"port,omitempty"”; SSL *bool “json:"ssl,omitempty"”; Username string “json:"username"”; Password string “json:"password"”}

RabbitMQConfig represents configuration for RabbitMQ

Appears in:

RabbitMQDataProvider #

RabbitMQDataProvider is a representation of a Data Provider based upon RabbitMQ

Appears in:

Field Description
queues string array
exchange RabbitMQExchange
rabbitmq RabbitMQConfig RabbitMQConfig is an optional field which allows to specify configuration for an external RabbitMQ broker. If not specified, Astarte’s main Broker will be used.

RabbitMQExchange #

Underlying type: struct{k8s.io/apimachinery/pkg/apis/meta/v1.TypeMeta “json:",inline"”; Name string “json:"name"”; RoutingKey string “json:"routingKey"”}

RabbitMQExchange is a representation of a RabbitMQ Exchange

Appears in:

ReconciliationPhase #

Underlying type: string

ReconciliationPhase describes the reconciliation phase the Resource is in

Appears in:

api.astarte-platform.org/v1alpha3 #

Package v1alpha3 contains API Schema definitions for the api v1alpha3 API group

Resource Types #

Astarte #

Astarte is the Schema for the astartes API

Appears in:

Field Description
apiVersion string api.astarte-platform.org/v1alpha3
kind string Astarte
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec AstarteSpec
status AstarteStatus

AstarteAPISpec #

Appears in:

Field Description
ssl boolean
host string

AstarteAppengineAPISpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
disableAuthentication boolean
maxResultsLimit integer
roomEventsQueueName string Configures the name of the Room Events queue. Should be configured only in installations with a highly customized RabbitMQ. It is advised to leave empty unless you know exactly what you’re doing.
roomEventsExchangeName string Configures the name of the Room Events exchange. Should be configured only in installations with a highly customized RabbitMQ. It is advised to leave empty unless you know exactly what you’re doing.

AstarteCFSSLCARootConfigSigningCAConstraintSpec #

Appears in:

Field Description
max_path_len integer
is_ca boolean
max_path_len_zero boolean

AstarteCFSSLCARootConfigSigningDefaultSpec #

Appears in:

Field Description
usages string array
expiry string
ca_constraint AstarteCFSSLCARootConfigSigningCAConstraintSpec

AstarteCFSSLCARootConfigSigningSpec #

Appears in:

Field Description
default AstarteCFSSLCARootConfigSigningDefaultSpec

AstarteCFSSLCARootConfigSpec #

Appears in:

Field Description
signing AstarteCFSSLCARootConfigSigningSpec

AstarteCFSSLCSRRootCACASpec #

Appears in:

Field Description
expiry string

AstarteCFSSLCSRRootCAKeySpec #

Appears in:

Field Description
algo string
size integer

AstarteCFSSLCSRRootCANamesSpec #

Appears in:

Field Description
C string
L string
O string
OU string
ST string

AstarteCFSSLCSRRootCASpec #

Appears in:

Field Description
CN string
key AstarteCFSSLCSRRootCAKeySpec
names AstarteCFSSLCSRRootCANamesSpec array
ca AstarteCFSSLCSRRootCACASpec

AstarteCFSSLDBConfigSpec #

Appears in:

Field Description
driver string
dataSource string

AstarteCFSSLSpec #

Appears in:

Field Description
deploy boolean
url string
caExpiry string
caSecret LocalObjectReference
certificateExpiry string
dbConfig AstarteCFSSLDBConfigSpec
resources ResourceRequirements Compute Resources for this Component.
version string
image string
storage AstartePersistentStorageSpec
csrRootCa AstarteCFSSLCSRRootCASpec
caRootConfig AstarteCFSSLCARootConfigSpec
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.

AstarteCassandraConnectionSpec #

Appears in:

Field Description
poolSize integer
autodiscovery boolean
sslConfiguration AstarteCassandraSSLConfigurationSpec
secret LoginCredentialsSecret
username string
password string

AstarteCassandraSSLConfigurationSpec #

Appears in:

Field Description
enable boolean
customCASecret LocalObjectReference
sni boolean
customSNI string

AstarteCassandraSpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
nodes string
maxHeapSize string
heapNewSize string
storage AstartePersistentStorageSpec
connection AstarteCassandraConnectionSpec

AstarteClusterHealth #

Underlying type: string

AstarteClusterHealth represents the overall health of the cluster

Appears in:

AstarteComponentsSpec #

Appears in:

Field Description
resources ResourceRequirements Compute Resources for this Component.
flow AstarteGenericAPISpec
housekeeping AstarteGenericComponentSpec
realmManagement AstarteGenericComponentSpec
pairing AstarteGenericComponentSpec
dataUpdaterPlant AstarteDataUpdaterPlantSpec
appengineApi AstarteAppengineAPISpec
triggerEngine AstarteTriggerEngineSpec
dashboard AstarteDashboardSpec

AstarteDashboardConfigAuthSpec #

Appears in:

Field Description
type string
oauth_api_url string

AstarteDashboardConfigSpec #

Appears in:

Field Description
realmManagementApiUrl string
appEngineApiUrl string
pairingApiUrl string
flowApiUrl string
defaultRealm string
defaultAuth string
auth AstarteDashboardConfigAuthSpec array

AstarteDashboardSpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
realmManagementApiUrl string
appEngineApiUrl string
pairingApiUrl string
flowApiUrl string
defaultRealm string
defaultAuth string
auth AstarteDashboardConfigAuthSpec array

AstarteDataUpdaterPlantSpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
dataQueueCount integer
prefetchCount integer Controls the prefetch count for Data Updater Plant. When fine-tuning Astarte, this parameter can make a difference for what concerns Data Updater Plant ingestion performance. However, it can also degrade performance significantly and/or increase risk of data loss when misconfigured. Configure this value only if you know what you’re doing and you have experience with RabbitMQ. Defaults to 300

AstarteFeatures #

AstarteFeatures enables/disables selectively a set of global features in Astarte

Appears in:

Field Description
realmDeletion boolean
autoscaling boolean
astartePodPriorities AstartePodPrioritiesSpec

AstarteGenericAPISpec #

AstarteGenericAPISpec represents a generic Astarte API Component in the Deployment spec

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
disableAuthentication boolean

AstarteGenericClusteredResource #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.

AstarteGenericClusteredResourceAutoscalerSpec #

Appears in:

Field Description
horizontal string Name of the HorizontalPodAutoscaler for this deployment/statefulset. This will take precedence over the “Replicas” field of the parent Astarte component.

AstarteGenericComponentSpec #

Appears in:

Field Description
api AstarteGenericAPISpec
backend AstarteGenericClusteredResource

AstarteList #

AstarteList contains a list of Astarte

Field Description
apiVersion string api.astarte-platform.org/v1alpha3
kind string AstarteList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items Astarte array

AstartePersistentStorageSpec #

Appears in:

Field Description
size Quantity
className string
volumeDefinition Volume

AstartePodPrioritiesSpec #

AstartePodPriorities allows to set different priorityClasses for Astarte pods. Note that enabling this feature might generate some counter-intuitive scheduling beahaviour if not done properly.

Appears in:

Field Description
enable boolean
astarteHighPriority integer The value of the highest PriorityClass for Astarte pods. Once the value is set, updating it will not have effect.
astarteMidPriority integer The value of the medium PriorityClass for Astarte pods. Once the value is set, updating it will not have effect.
astarteLowPriority integer The value of the least PriorityClass for Astarte pods. Once the value is set, updating it will not have effect.

AstarteRabbitMQConnectionSpec #

Appears in:

Field Description
host string
port integer
username string
password string
virtualHost string
sslConfiguration AstarteRabbitMQSSLConfigurationSpec
secret LoginCredentialsSecret

AstarteRabbitMQSSLConfigurationSpec #

Appears in:

Field Description
enable boolean
customCASecret LocalObjectReference
sni boolean
customSNI string

AstarteRabbitMQSpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
connection AstarteRabbitMQConnectionSpec
storage AstartePersistentStorageSpec
additionalPlugins string array
dataQueuesPrefix string Configures the data queues prefix on RabbitMQ. You should change this setting only in custom RabbitMQ installations.
eventsExchangeName string Configures the events exchange name on RabbitMQ. You should change this setting only in custom RabbitMQ installations.

AstarteSpec #

AstarteSpec defines the desired state of Astarte

Appears in:

Field Description
version string The Astarte Version for this Resource
imagePullPolicy PullPolicy
imagePullSecrets LocalObjectReference array
distributionChannel string
deploymentStrategy DeploymentStrategy
features AstarteFeatures
rbac boolean
storageClassName string
api AstarteAPISpec
rabbitmq AstarteRabbitMQSpec
cassandra AstarteCassandraSpec
vernemq AstarteVerneMQSpec
cfssl AstarteCFSSLSpec
components AstarteComponentsSpec
astarteSystemKeyspace AstarteSystemKeyspaceSpec
astarteInstanceID string AstarteInstanceID is the unique ID that is associated with an Astarte instance. This parameter is used to let different Astarte instances employ a shared database infrastructure. Once set, the AstarteInstanceID cannot be changed. Defaults to “”.
manualMaintenanceMode boolean ManualMaintenanceMode pauses all reconciliation activities but still computes the resource status. It should be used only when the managed Astarte resources requires manual intervention and the Operator cannot break out of the problem by itself. Do not set this field unless you know exactly what you are doing.

AstarteStatus #

AstarteStatus defines the observed state of Astarte

Appears in:

Field Description
phase ReconciliationPhase
astarteVersion string
operatorVersion string
health AstarteClusterHealth
baseAPIURL string
brokerURL string

AstarteSystemKeyspaceSpec #

astarteSystemKeyspace configures the main system keyspace for Astarte. As of now, these settings have effect only upon cluster initialization, and will be ignored otherwise.

Appears in:

Field Description
replicationFactor integer The Replication Factor for the keyspace

AstarteTriggerEngineSpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
eventsQueueName string Configures the name of the Events queue. Should be configured only in installations with a highly customized RabbitMQ. It is advised to leave empty unless you know exactly what you’re doing.
eventsRoutingKey string Configures the routing key for Trigger Events. Should be configured only in installations with a highly customized RabbitMQ and a custom Trigger Engine setup. It is advised to leave empty unless you know exactly what you’re doing, misconfiguring this value can cause heavy breakage within Trigger Engine.

AstarteVerneMQSpec #

Appears in:

Field Description
deploy boolean
replicas integer
antiAffinity boolean
customAffinity Affinity
deploymentStrategy DeploymentStrategy
version string
image string
resources ResourceRequirements Compute Resources for this Component.
additionalEnv EnvVar array Additional environment variables for this Component
podLabels object (keys:string, values:string) Additional labels for this Component’s pod(s). Label keys can’t be of the form “app”, “component”, “astarte-”, “flow-
autoscaler AstarteGenericClusteredResourceAutoscalerSpec Autoscaling resources for this deployment/statefulset. If autoscaling is enabled, this will take precedence over the “Replicas” field.
priorityClass string The PriorityClass for this component. Must be one of “high”, “mid”, “low” or unspecified. Ignored if astartePodPriorities is not enabled.
host string
port integer
caSecret string
storage AstartePersistentStorageSpec
deviceHeartbeatSeconds integer Controls the device heartbeat from the broker to Astarte. The heartbeat is sent periodically to prevent Astarte from keeping up stale connections from Devices in case the broker misbehaves and does not send disconnection events. You should usually not tweak this value. Moreover, keep in mind that when a lot of devices are connected simultaneously, having a short heartbeat time might cause performance issues. Defaults to an hour.
maxOfflineMessages integer The maximum number of QoS 1 or 2 messages to hold in the offline queue. Defaults to 1000000. Set to -1 for no maximum (not recommended). Set to 0 if no messages should be stored offline.
persistentClientExpiration string This option allows persistent clients ( = clean session set to false) to be removed if they do not reconnect within ‘persistent_client_expiration’. This is a non-standard option. As far as the MQTT specification is concerned, persistent clients persist forever. The expiration period should be an integer followed by one of ’d’, ‘w’, ’m’, ‘y’ for day, week, month, and year. Default: 1 year
mirrorQueue string
sslListener boolean This option allows, when true, to handle SSL termination at VerneMQ level. Default: false
sslListenerCertSecretName string Reference the name of the secret containing the TLS certificate for VerneMQ. The secret must be present in the same namespace in which Astarte resides. The field will be used only if SSLListener is set to true.

BlockWorker #

BlockWorker defines a Worker for a Container Block

Appears in:

Field Description
id string
dataProvider DataProvider

ContainerBlockSpec #

ContainerBlockSpec defines a Container Block in a Flow

Appears in:

Field Description
id string
image string
imagePullSecrets LocalObjectReference array
environment EnvVar array
resources ResourceRequirements
config string Configuration represents the JSON string carrying the user configuration for this block
workers BlockWorker array

DataProvider #

DataProvider is a struct which defines which Data Providers (e.g. Brokers) are available for a Worker

Appears in:

Field Description
rabbitmq RabbitMQDataProvider

Flow #

Flow is the Schema for the flows API

Appears in:

Field Description
apiVersion string api.astarte-platform.org/v1alpha3
kind string Flow
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec FlowSpec
status FlowStatus

FlowList #

FlowList contains a list of Flow

Field Description
apiVersion string api.astarte-platform.org/v1alpha3
kind string FlowList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items Flow array

FlowSpec #

FlowSpec defines the desired state of Flow

Appears in:

Field Description
astarte LocalObjectReference
astarteRealm string
nativeBlocks integer Defines the amount of non-container blocks in the Flow
nativeBlocksResources ResourceList Defines the overall resources consumed by Native Blocks
flowPool LocalObjectReference EE Only: Defines the Flow Pool in which the Flow will be allocated.
blocks ContainerBlockSpec array

FlowState #

Underlying type: string

FlowState describes the global state of a Flow

Appears in:

FlowStatus #

FlowStatus defines the observed state of Flow

Appears in:

Field Description
state FlowState State defines the overall state of the Flow
totalContainerBlocks integer Represents the total number of the Container Blocks in the Flow
readyContainerBlocks integer Represents the total number of Ready Container Blocks in the Flow. In a healthy Flow, this matches the number of Total Container Blocks.
resources ResourceList The overall resources allocated in the cluster for this Block
failingContainerBlocks integer Represents the total number of Container Blocks with non temporary failures. Present only if any of the Blocks is in such state. When present, manual intervention is most likely required.
unrecoverableFailures ContainerState array UnrecoverableFailures lists all the ContainerStates of failing containers, for further inspection.

LoginCredentialsSecret #

Appears in:

Field Description
name string
usernameKey string
passwordKey string

RabbitMQConfig #

Underlying type: struct{k8s.io/apimachinery/pkg/apis/meta/v1.TypeMeta “json:",inline"”; Host string “json:"host"”; Port int16 “json:"port,omitempty"”; SSL *bool “json:"ssl,omitempty"”; Username string “json:"username"”; Password string “json:"password"”}

RabbitMQConfig represents configuration for RabbitMQ

Appears in:

RabbitMQDataProvider #

RabbitMQDataProvider is a representation of a Data Provider based upon RabbitMQ

Appears in:

Field Description
queues string array
exchange RabbitMQExchange
rabbitmq RabbitMQConfig RabbitMQConfig is an optional field which allows to specify configuration for an external RabbitMQ broker. If not specified, Astarte’s main Broker will be used.

RabbitMQExchange #

Underlying type: struct{k8s.io/apimachinery/pkg/apis/meta/v1.TypeMeta “json:",inline"”; Name string “json:"name"”; RoutingKey string “json:"routingKey"”}

RabbitMQExchange is a representation of a RabbitMQ Exchange

Appears in:

ReconciliationPhase #

Underlying type: string

ReconciliationPhase describes the reconciliation phase the Resource is in

Appears in:

ingress.astarte-platform.org/v1alpha1 #

Package v1alpha1 contains API Schema definitions for the ingress v1alpha1 API group

Resource Types #

AstarteDefaultIngress #

AstarteDefaultIngress is the Schema for the astartedefaultingresses API

Appears in:

Field Description
apiVersion string ingress.astarte-platform.org/v1alpha1
kind string AstarteDefaultIngress
metadata ObjectMeta Refer to Kubernetes API documentation for fields of metadata.
spec AstarteDefaultIngressSpec
status AstarteDefaultIngressStatus

AstarteDefaultIngressAPISpec #

AstarteDefaultIngressAPISpec defines how the Astarte APIs are served.

Appears in:

Field Description
deploy boolean When true, deploy the API ingress.
tlsSecret string The secret containing the TLS certificates and keys used to access the Astarte API. The secret must be present in the namespace in which Astarte resides. If set, this secret overrides the TLSSecret field contained in AstarteDefaultIngressSpec.
cors boolean When true, enable Cross-Origin Resource Sharing (CORS). Default: false.
exposeHousekeeping boolean When true, the housekeeping endpoint is publicly exposed. Default: true.
serveMetrics boolean When true, all /metrics endpoints for Astarte services will be served by a dedicated metrics ingress. Metrics can be gathered by querying the /metrics/ path. Beware this might be a security hole. You can control which IPs can access /metrics with serveMetricsToSubnet. Default: false.
serveMetricsToSubnet string When specified and when serveMetrics is true, /metrics endpoints will be served only to IPs in the provided subnet range. The subnet has to be compatible with the HAProxy ACL src syntax (e.g.: “10.0.0.0/16”). Default: “”.

AstarteDefaultIngressBrokerSpec #

AstarteDefaultIngressBrokerSpec defines how the Astarte Broker is served.

Appears in:

Field Description
deploy boolean When true, expose the Broker.
serviceType ServiceType Set the type of service employed to expose the broker. Supported values are “NodePort” and “LoadBalancer”. The AstarteDefaultIngress handles TLS termination at VerneMQ level and, as such, no TLSSecret is needed to configure the broker service. Default: “LoadBalancer”
loadBalancerIP string Set the LoadBalancerIP if and only if the broker service is of type “LoadBalancer”. This feature depends on whether the cloud provider supports specifying the LoadBalancerIP when a load balancer is created.
serviceAnnotations object (keys:string, values:string) Additional annotations for the service exposing this broker.

AstarteDefaultIngressDashboardSpec #

AstarteDefaultIngressDashboardSpec defines how the Astarte Dashboard is served.

Appears in:

Field Description
deploy boolean When true, deploy the Ingress for the Dashboard.
ssl boolean When true, enable TLS authentication for the Dashboard.
host string The host handling requests addressed to the dashboard. When deploy is true and host is not set, the dashboard will be exposed at the following URL: https:///dashboard.
tlsSecret string The secret containing the TLS certificates and keys used to access the Astarte Dashboard. The secret must be present in the namespace in which Astarte resides. If set, this secret overrides the TLSSecret field contained in AstarteDefaultIngressSpec.

AstarteDefaultIngressList #

AstarteDefaultIngressList contains a list of AstarteDefaultIngress

Field Description
apiVersion string ingress.astarte-platform.org/v1alpha1
kind string AstarteDefaultIngressList
metadata ListMeta Refer to Kubernetes API documentation for fields of metadata.
items AstarteDefaultIngress array

AstarteDefaultIngressSpec #

AstarteDefaultIngressSpec defines the desired state of the AstarteDefaultIngress resource

Appears in:

Field Description
astarte string The name of the Astarte instance served by the AstarteDefaultIngress.
ingressClass string In clusters with more than one instance of the Ingress-NGINX controller, all instances of the controllers must be aware of which Ingress object they must serve. The ingressClass field of a ingress object is the way to let the controller know about that. Default: “nginx”.
api AstarteDefaultIngressAPISpec Define the desired state of the AstarteDefaultIngressAPISpec resource.
dashboard AstarteDefaultIngressDashboardSpec Define the desired state of the AstarteDefaultIngressDashboardSpec resource.
broker AstarteDefaultIngressBrokerSpec Define the desired state of the AstarteDefaultIngressBrokerSpec resource.
tlsSecret string The secret containing the TLS certificates and keys used to connect to Astarte. The secret must be present in the namespace in which Astarte resides and it will be used to authenticate requests for API and Dashboard. If specific configurations are required, the TLSSecret can be overridden by setting the secret in any of AstarteDefaultIngressAPISpec and AstarteDefaultIngressDashboardSpec.

AstarteDefaultIngressStatus #

AstarteDefaultIngressStatus defines the observed state of AstarteDefaultIngress

Appears in:

Field Description
api IngressStatus
broker ServiceStatus