Dragonfly Configuration
Dragonfly Operator uses a dedicated Dragonfly CRD to create and manage Dragonfly resources. The CRD allows various configurations to define the behaviour of dragonfly controller and the dragonfly pods. Below is the table of Dragonfly CRD fields.
fields | type | Description |
---|---|---|
affinity | Affinity | Dragonfly pod affinity (Optional) You can learn more about affinity here. |
replicas | int | The total number of Dragonfly instances including the master. |
image | string | The dragonfly image to use. Default is docker.dragonflydb.io/dragonflydb/dragonfly:v1.16.0 |
args | []string | (Optional) Dragonfly container args to pass to the container. Refer to the Dragonfly documentation for the list of supported args. Example -
|
annotations | object | (Optional) Annotations to add to the Dragonfly pods. See Annotations to know more about annotations. |
aclFromSecret (since v1.1.1) | SecretKeySelector | (Optional) Acl file Secret to pass to the container |
env | array | Environmental Variables to add to Dragonfly pods. Example -
|
resources | ResourceRequirements | (Optional) Dragonfly container resource limits. Any container limit can be specified. |
tolerations | []Toleration | (Optional) Dragonfly pod tolerations. See k8s doc to know more about tolerations |
serviceAccountName | string | (Optional) Dragonfly pod service account name |
serviceSpec.type | string | (Optional) Dragonfly Service type |
serviceSpec.annotations | object | (Optional) Dragonfly Service Annotations |
authentication.passwordFromSecret | SecretKeySelector | (Optional) Dragonfly Password from Secret as a reference to a specific key. Example -
|
authentication.clientCaCertSecret | SecretReference | (Optional) If specified, the Dragonfly instance will check if the client certificate is signed by one of this CA. Server TLS must be enabled for this. Multiple CAs can be specified with various key names. Example -
|
tlsSecretRef | SecretReference | (Optional) Dragonfly TLS secret to used for TLS Connections to Dragonfly. Dragonfly instance must have access to this secret and be in the same namespace. Example -
|
snapshot.cron | string | (Optional) Dragonfly snapshot schedule |
snapshot.persistentVolumeClaimSpec | PersistentVolumeClaimSpec | (Optional) Dragonfly PVC spec |
nodeSelector (since v1.1.1) | object | (Optional) Dragonfly pod node selector |
topologySpreadConstraints (since v1.1.1) | []TopologySpreadConstraint | (Optional) Dragonfly pod topologySpreadConstraints |
priorityClassName (since v1.1.1) | string | (Optional) Dragonfly pod priority class name |
skipFSGroup (since v1.1.2) | bool | (Optional) Skip Assigning FileSystem Group. Required for platforms such as Openshift that require IDs to not be set, as it injects a fixed randomized ID per namespace into all pods. |
memcachedPort (since v1.1.2) | int | (Optional) Dragonfly memcached port. Use this instead of --memcached_port arg |