A Helm chart for deploying Monstache on Kubernetes
At very minimum, specify the MongoDB source and ElasticSearch target under config
key.
config:
change-stream-namespaces:
- "elasticsearch-master"
config-database-name: "mongodb"
If you need to customize how Monstache do mapping, specify the configuration under mapping
key. The expected values is array of object, with all the key and value will be transformed into TOML configuration. To learn more, please check the complete documentation
- namespace: target-namespace
index: target-index
To supply Monstache middleware, specify the code under script
key. It expecting an array of object with namespace
and script
key.
script:
- namespace: target-namespace
script:
lang: js
code: |
var counter = 1;
module.exports = function(doc) {
doc.foo += "test" + counter;
counter++;
return doc;
}
Key | Type | Default | Description |
---|---|---|---|
affinity | object | {} |
|
autoscaling.enabled | bool | false |
|
autoscaling.maxReplicas | int | 100 |
|
autoscaling.minReplicas | int | 1 |
|
autoscaling.targetCPUUtilizationPercentage | int | 80 |
|
config | object | {"change-stream-namespaces":["elasticsearch-master"],"config-database-name":"mongodb"} |
Monstache related global config |
env | object | {} |
Environment Variables to be injected |
fullnameOverride | string | "" |
|
image.pullPolicy | string | "IfNotPresent" |
|
image.repository | string | "rwynn/monstache" |
|
image.tag | string | "" |
|
imagePullSecrets | list | [] |
|
ingress.annotations | object | {} |
|
ingress.className | string | "" |
|
ingress.enabled | bool | false |
|
ingress.hosts[0].host | string | "chart-example.local" |
|
ingress.hosts[0].paths[0].path | string | "/" |
|
ingress.hosts[0].paths[0].pathType | string | "ImplementationSpecific" |
|
ingress.tls | list | [] |
|
mapping | list | [] |
Monstache mapping configuration in form of array as follows - namespace: target-namespace index: target-index |
nameOverride | string | "" |
|
nodeSelector | object | {} |
|
podAnnotations | object | {} |
|
podSecurityContext | object | {} |
|
replicaCount | int | 1 |
|
resources | object | {} |
|
script | list | [] |
Monstache scripts configuration. in form of array with the following format ``` - namespace: target-namespace script: lang: js/go code: |
securityContext | object | {} |
|
service.port | int | 80 |
|
service.type | string | "ClusterIP" |
|
serviceAccount.annotations | object | {} |
|
serviceAccount.create | bool | true |
|
serviceAccount.name | string | "" |
|
tolerations | list | [] |
|
worker.count | int | 0 |
Number of worker to spawn |
worker.enabled | bool | false |
Enable worker mode. If enabled, the deployment will be changed into statefulset. |