You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/content/en/docs/Advance Configuration/Feature Gates/_index.md
+24Lines changed: 24 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,10 +17,34 @@ Feature gates can be configured in the Helm chart values:
17
17
featureGates:
18
18
# Enable generating Redis configuration using an init container instead of a regular container
19
19
GenerateConfigInInitContainer: false
20
+
# Never execute redis-cli -a <password>, even if authentication cannot succeed without it
21
+
AvoidCommandLinePassword: false
20
22
```
21
23
22
24
## Available Feature Gates
23
25
26
+
### AvoidCommandLinePassword
27
+
28
+
When enabled, Redis Operator will never execute `redis-cli -a <password>`, which can leak passwords. The Operator sets the
29
+
`REDISCLI_AUTH`variable on all Redis pods, so the password does not need to be provided on the command line and it is normally
30
+
safe to turn this on unless you are simultaneously upgrading the operator. This is an alpha feature and may change in future releases.
31
+
32
+
However, if you upgrade from a version that does not add `REDISCLI_AUTH` to the pods (a behavior introduced in the same version that
33
+
added `AvoidCommandLinePassword`), simultaneously enabling `AvoidCommandLinePassword` will make Redis Operator unable to manage
34
+
your current pods, since `-a <password>` is still needed on them. Hence, to guarantee that the Redis password will never be included
35
+
on a command line, you must either risk an operator downtime or upgrade in two steps:
36
+
37
+
1. Upgrade to a version that adds `REDISCLI_AUTH` to the pods (which was introduced at the same time as `AvoidCommandLinePassword`).
38
+
2. Turn on `AvoidCommandLinePassword`.
39
+
40
+
**Default**: `false`
41
+
42
+
**Usage**:
43
+
```yaml
44
+
featureGates:
45
+
AvoidCommandLinePassword: true
46
+
```
47
+
24
48
### GenerateConfigInInitContainer
25
49
26
50
When enabled, Redis configuration will be generated using an init container instead of a regular container. This is an alpha feature and may change in future releases.
cmd.Flags().BoolVar(&opts.enableLeaderElection, "leader-elect", false, "Enable leader election for controller manager. Enabling this will ensure there is only one active controller manager.")
cmd.Flags().StringVar(&opts.featureGatesString, "feature-gates", internalenv.GetFeatureGates(), "A set of key=value pairs that describe feature gates for alpha/experimental features. "+
101
-
"Options are:\n GenerateConfigInInitContainer=true|false: enables using init container for config generation")
100
+
cmd.Flags().StringVar(&opts.featureGatesString, "feature-gates", internalenv.GetFeatureGates(), "A set of key=value pairs that describe feature gates for alpha/experimental features. Options are:"+
101
+
"\n GenerateConfigInInitContainer=true|false: enables using init container for config generation"+
102
+
"\n AvoidCommandLinePassword=true|false: prevents using -a <password> in redis-cli commands")
0 commit comments