Kubernetes controllers configuration
A Calico Enterprise Kubernetes controllers configuration resource (KubeControllersConfiguration) represents configuration options for the Calico Enterprise Kubernetes controllers.
Sample YAML​
apiVersion: projectcalico.org/v3
kind: KubeControllersConfiguration
metadata:
name: default
spec:
logSeverityScreen: Info
healthChecks: Enabled
prometheusMetricsPort: 9094
controllers:
node:
reconcilerPeriod: 5m
leakGracePeriod: 15m
syncLabels: Enabled
hostEndpoint:
autoCreate: Disabled
Kubernetes controllers configuration definition​
Metadata​
| Field | Description | Accepted Values | Schema |
|---|---|---|---|
| name | Unique name to describe this resource instance. Required. | Must be default | string |
- Calico Enterprise automatically creates a resource named
defaultcontaining the configuration settings, only the namedefaultis used and only one object of this type is allowed. You can use calicoctl to view and edit these settings
Spec​
| Field | Description | Accepted Values | Schema | Default |
|---|---|---|---|---|
| logSeverityScreen | The log severity above which logs are sent to the stdout. | Debug, Info, Warning, Error, Fatal | string | Info |
| healthChecks | Enable support for health checks | Enabled, Disabled | string | Enabled |
| prometheusMetricsPort | Port on which to serve prometheus metrics. | Set to 0 to disable, > 0 to enable. | TCP port | 9094 |
| controllers | Enabled controllers and their settings | Controllers |
Controllers​
| Field | Description | Schema |
|---|---|---|
| node | Enable and configure the node controller | omit to disable, or NodeController |
| federatedservices | Enable and configure the federated services controller | omit to disable, or FederatedServicesController |
NodeController​
The node controller automatically cleans up configuration for nodes that no longer exist. Optionally, it can create host endpoints for all Kubernetes nodes.
| Field | Description | Accepted Values | Schema | Default |
|---|---|---|---|---|
| reconcilerPeriod | Period to perform reconciliation with the Calico Enterprise datastore | Duration string | 5m | |
| syncLabels | When enabled, Kubernetes node labels will be copied to Calico Enterprise node objects. | Enabled, Disabled | string | Enabled |
| hostEndpoint | Controls allocation of host endpoints | HostEndpoint | ||
| leakGracePeriod | Grace period to use when garbage collecting suspected leaked IP addresses. | Duration string | 15m |
HostEndpoint​
| Field | Description | Accepted Values | Schema | Default |
|---|---|---|---|---|
| autoCreate | When enabled, automatically create a host endpoint for each node | Enabled, Disabled | string | Disabled |
FederatedServicesController​
The federated services controller syncs Kubernetes services from remote clusters defined through RemoteClusterConfigurations.
| Field | Description | Schema | Default |
|---|---|---|---|
| reconcilerPeriod | Period to perform reconciliation with the Calico Enterprise datastore | Duration string | 5m |
Supported operations​
| Datastore type | Create | Delete (Global default) | Update | Get/List | Notes |
|---|---|---|---|---|---|
| Kubernetes API server | Yes | Yes | Yes | Yes |