Skip to content

Latest commit

 

History

History

arlas-subscriptions

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

This is a Helm chart packaging ARLAS-subscriptions.

It comprises 3 components:

  • arlas-subscriptions-manager
  • arlas-subscriptions-matcher
  • arlas-subscriptions-server (an instance of ARLAS-server)

The Helm chart deploys a Kubernetes service for the manager, so that its API can be used.

Compatibility

This Helm chart has been tested with:

  • Helm 2.12
  • Kubernetes 1.12

Prerequisites

ARLAS-subscriptions relies on an Elasticsearch index for subscriptions. The chart can take care of initializing the index, if you explicitly set manager.init.elasticsearchIndex.enabled: true. If you want to manage the index on your own, you have to create it prior to installing the chart. Then, upon installation you should pass the following values:

  • elasticsearch.index: name of the index
  • elasticsearch.mappingType.name: name of the index's mapping type

Values

When installing the chart, here are the configuration values you can parameter:

Value Type Required Default Description
elasticsearch.endpoints.http sequence required if either manager.init.elasticsearchIndex.enabled or matcher.init.serverCollection.enabled HTTP endpoints for the Elasticsearch cluster the components are going to connect to, under the form <host>:<port>
elasticsearch.endpoints.transport sequence required Transport endpoints for the Elasticsearch cluster the components are going to connect to, under the form <host>:<port>
elasticsearch.index string subs Elasticsearch index for subscriptions
elasticsearch.mappingType.name string sub Name of the Elasticsearch mapping type for subscriptions
elasticsearch.mappingType.definition Elasticsearch Mapping type in JSON or YAML required if manager.init.elasticsearchIndex.enabled Definition of the Elasticsearch mapping type for subscriptions, see example here
fullnameOverride string When the chart gets installed, all created Kubernetes objects are named based on the release name, for example the ARLAS subscription manager's deployment is named <release name>-arlas-sub-manager. fullnameOverride allows using something else as the base name: <fullnameOverride>-arlas-sub-manager.
manager.affinity io.k8s.api.core.v1.Affinity {} Allows assigning the Kubernetes deployment to certain Kubernetes nodes. Official docs here
manager.environmentVariables mapping required Allows defining environment variables for the container. Available values are documented here
manager.environmentVariables.MONGO_AUTH_DATABASE string MongoDB database against which to authenticate
manager.environmentVariables.MONGO_HOST string required See definition here
manager.environmentVariables.MONGO_PASSWORD string Password for authentication to MongoDB
manager.environmentVariables.MONGO_USERNAME string Username for authentication to MongoDB
manager.image.repository string gisaia/arlas-subscriptions-manager Docker image's repository
manager.image.tag string 24.0.1 Docker image's tag
manager.image.pullPolicy string IfNotPresent Docker image's pull policy. See field imagePullPolicy in reference for Kubernetes object container
manager.imagePullSecrets sequence of strings Names of imagePullSecrets to be used by pod to pull docker images
manager.init.elasticsearchIndex.container.image.pullPolicy string IfNotPresent There is an initContainer in charge of initializing the subscriptions' index in elasticsearch. This value defines image pull policy for this container. See field imagePullPolicy in reference for Kubernetes object container
manager.init.elasticsearchIndex.container.image.repository string centos There is an initContainer in charge of initializing the subscriptions' index in elasticsearch. This value defines image repository for this container.
manager.init.elasticsearchIndex.container.image.tag string 7 There is an initContainer in charge of initializing the subscriptions' index in elasticsearch. This value defines image tag for this container.
manager.init.elasticsearchIndex.container.image.resources.limits.cpu string 1 There is an initContainer in charge of initializing the subscriptions' index in elasticsearch. This value defines maximum amount of CPU it is allowed to use. See documentation
manager.init.elasticsearchIndex.container.image.resources.limits.memory string 1G There is an initContainer in charge of initializing the subscriptions' index in elasticsearch. This value defines maximum amount of memory it is allowed to use. See documentation
manager.init.elasticsearchIndex.container.image.resources.requests.cpu string 1 There is an initContainer in charge of initializing the subscriptions' index in elasticsearch. This value defines the minimum amount of CPU required on a Kubernetes node for this container to be scheduled onto it. See documentation
manager.init.elasticsearchIndex.container.image.resources.requests.memory string 1G There is an initContainer in charge of initializing the subscriptions' index in elasticsearch. This value defines the minimum amount of memory required on a Kubernetes node for this container to be scheduled onto it. See documentation
manager.init.elasticsearchIndex.enabled boolean false There is an initContainer in charge of initializing the subscriptions' index in elasticsearch. This value allows disabling/enabling it.
manager.nodeSelector io.k8s.api.core.v1.NodeSelector {} Allows selecting the nodes on which the pod is to run
manager.resources.limits.cpu string 1 Maximum amount of CPU the container is allowed to use. See documentation
manager.resources.limits.memory string 4G Maximum amount of memory the container is allowed to use. See documentation
manager.resources.requests.cpu string 1 Minimum amount of CPU required on a Kubernetes node for this container to be scheduled onto it. See documentation
manager.resources.requests.memory string 4G Minimum amount of memory required on a Kubernetes node for this container to be scheduled onto it. See documentation
manager.service.type string ClusterIP Type for the Kubernetes service, see documentation
manager.service.port integer 80 Port on which the Kubernetes service will expose the component's interface
manager.tolerations sequence of io.k8s.api.core.v1.Toleration [] To prevent pod from running on certain nodes. See documentation
manager.triggerSchema.content mapping required See example this section of the documentation
matcher.affinity io.k8s.api.core.v1.Affinity {} Allows assigning the Kubernetes deployment to certain Kubernetes nodes. Official docs here
matcher.environmentVariables mapping required Allows defining environment variables for the container. Available values are documented here
manager.environmentVariables.ARLAS_SERVER_BASE_PATH string required See definition here
manager.environmentVariables.KAFKA_BROKERS string required See definition here
matcher.image.repository string gisaia/arlas-subscriptions-matcher Docker image's repository
matcher.image.tag string 24.0.1 Docker image's tag
matcher.image.pullPolicy string IfNotPresent Docker image's pull policy. See field imagePullPolicy in reference for Kubernetes object container
matcher.imagePullSecrets sequence of strings Names of imagePullSecrets to be used by pod to pull docker images
matcher.init.serverCollection.container.image.pullPolicy string IfNotPresent There is an initContainer in charge of creating the subscriptions collection in the arlas-subscriptions-server. This value defines image pull policy for this container. See field imagePullPolicy in reference for Kubernetes object container
matcher.init.serverCollection.container.image.repository string centos There is an initContainer in charge of creating the subscriptions collection in the arlas-subscriptions-server. This value defines image repository for this container.
matcher.init.serverCollection.container.image.tag string 7 There is an initContainer in charge of creating the subscriptions collection in the arlas-subscriptions-server. This value defines image tag for this container.
matcher.init.serverCollection.container.image.resources.limits.cpu string 1 There is an initContainer in charge of creating the subscriptions collection in the arlas-subscriptions-server. This value defines maximum amount of CPU it is allowed to use. See documentation
matcher.init.serverCollection.container.image.resources.limits.memory string 1G There is an initContainer in charge of creating the subscriptions collection in the arlas-subscriptions-server. This value defines maximum amount of memory it is allowed to use. See documentation
matcher.init.serverCollection.container.image.resources.requests.cpu string 1 There is an initContainer in charge of creating the subscriptions collection in the arlas-subscriptions-server. This value defines the minimum amount of CPU required on a Kubernetes node for this container to be scheduled onto it. See documentation
matcher.init.serverCollection.container.image.resources.requests.memory string 1G There is an initContainer in charge of creating the subscriptions collection in the arlas-subscriptions-server. This value defines the minimum amount of memory required on a Kubernetes node for this container to be scheduled onto it. See documentation
matcher.init.serverCollection.enabled boolean true There is an initContainer in charge of creating the subscriptions collection in the arlas-subscriptions-server. This value allows disabling/enabling it.
matcher.nodeSelector io.k8s.api.core.v1.NodeSelector {} Allows selecting the nodes on which the pod is to run
matcher.resources.limits.cpu string 1 Maximum amount of CPU the container is allowed to use. See documentation
matcher.resources.limits.memory string 4G Maximum amount of memory the container is allowed to use. See documentation
matcher.resources.requests.cpu string 1 Minimum amount of CPU required on a Kubernetes node for this container to be scheduled onto it. See documentation
matcher.resources.requests.memory string 4G Minimum amount of memory required on a Kubernetes node for this container to be scheduled onto it. See documentation
matcher.tolerations sequence of io.k8s.api.core.v1.Toleration [] To prevent pod from running on certain nodes. See documentation
server.affinity io.k8s.api.core.v1.Affinity {} Allows assigning the Kubernetes deployment to certain Kubernetes nodes. Official docs here
server.collection.centroidPath string required Path, in the Elasticsearch mapping type for subscription, to the field representing the centroid
server.collection.geometryPath string required Path, in the Elasticsearch mapping type for subscription, to the field representing the geometry
server.collection.idPath string required Path, in the Elasticsearch mapping type for subscription, to the field representing the id
server.collection.name string subscriptions Name of the subscriptions' collection in arlas-subscriptions-server
server.collection.timestampPath string required Path, in the Elasticsearch mapping type for subscription, to the field representing the timestamp
server.environmentVariables mapping Allows defining environment variables for the container. Available values are documented here
server.environmentVariables.ARLAS_PREFIX string /arlas/ See definition here
server.image.repository string gisaia/arlas-subscriptions-server Docker image's repository
server.image.tag string 24.0.1 Docker image's tag
server.image.pullPolicy string IfNotPresent Docker image's pull policy. See field imagePullPolicy in reference for Kubernetes object container
matcher.imagePullSecrets sequence of strings Names of imagePullSecrets to be used by pod to pull docker images
server.nodeSelector io.k8s.api.core.v1.NodeSelector {} Allows selecting the nodes on which the pod is to run
server.resources.limits.cpu string 1 Maximum amount of CPU the container is allowed to use. See documentation
server.resources.limits.memory string 4G Maximum amount of memory the container is allowed to use. See documentation
server.resources.requests.cpu string 1 Minimum amount of CPU required on a Kubernetes node for this container to be scheduled onto it. See documentation
server.resources.requests.memory string 4G Minimum amount of memory required on a Kubernetes node for this container to be scheduled onto it. See documentation
server.service.type string ClusterIP Type for the Kubernetes service, see documentation
server.service.port integer 9999 Port on which the Kubernetes service will expose the component's interface
server.tolerations sequence of io.k8s.api.core.v1.Toleration [] To prevent pod from running on certain nodes. See documentation

Docker images