Skip to content

Commit f1b0eb2

Browse files
authored
Update README w/ docs on feature flag config keys (#308)
1 parent be56185 commit f1b0eb2

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

README.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,20 @@ Setup Required | ❌ | ✅
7777

7878
## Installation and Configuration
7979

80+
The aws-node-termination-handler can operate in two different modes: IMDS Processor and Queue Processor. The `enableSqsTerminationDraining` helm configuration key or the `ENABLE_SQS_TERMINATION_DRAINING` environment variable are used to enable the Queue Processor mode of operation. If `enableSqsTerminationDraining` is set to true, then IMDS paths will NOT be monitored. If the `enableSqsTerminationDraining` is set to false, then IMDS Processor Mode will be enabled. Queue Processor Mode and IMDS Processor Mode cannot be run at the same time.
81+
82+
IMDS Processor Mode allows for a fine-grained configuration of IMDS paths that are monitored. There are currently 3 paths supported that can be enabled or disabled by using the following helm configuration keys:
83+
- `enableSpotInterruptionDraining`
84+
- `enableRebalanceMonitoring`
85+
- `enableScheduledEventDraining`
86+
87+
The `enableSqsTerminationDraining` must be set to false for these configuration values to be considered.
88+
89+
The Queue Processor Mode does not allow for fine-grained configuration of which events are handled through helm configuration keys. Instead, you can modify your Amazon EventBridge rules to not send certain types of events to the SQS Queue so that NTH does not process those events.
90+
91+
92+
The `enableSqsTerminationDraining` flag turns on the SQS Processor Mode. When SQS Processor Mode is enabled, IMDS mode cannot be active. NTH cannot respond to queue events AND monitor IMDS paths. SQS Processor Mode still queries for node information on startup, but this information is not required for normal operation, so it is safe to disable IMDS for the NTH pod.
93+
8094
<details opened>
8195
<summary>AWS Node Termination Handler - IMDS Processor</summary>
8296
<br>
@@ -85,6 +99,7 @@ Setup Required | ❌ | ✅
8599

86100
The termination handler DaemonSet installs into your cluster a [ServiceAccount](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/), [ClusterRole](https://kubernetes.io/docs/reference/access-authn-authz/rbac/), [ClusterRoleBinding](https://kubernetes.io/docs/reference/access-authn-authz/rbac/), and a [DaemonSet](https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/). All four of these Kubernetes constructs are required for the termination handler to run properly.
87101

102+
88103
#### Kubectl Apply
89104

90105
You can use kubectl to directly add all of the above resources with the default configuration into your cluster.
@@ -123,6 +138,8 @@ helm upgrade --install aws-node-termination-handler \
123138
eks/aws-node-termination-handler
124139
```
125140

141+
The `enable*` configuration flags above enable or disable IMDS monitoring paths.
142+
126143
Running Only On Specific Nodes:
127144
```
128145
helm upgrade --install aws-node-termination-handler \

0 commit comments

Comments
 (0)