Class KubernetesRemoteConfigurationSource
- All Implemented Interfaces:
RemoteConfigurationSource
This RemoteConfigurationSource will continuously poll the Kubernetes API for ConfigMap and Secret containing the RemoteConfiguration objects. It will merge the objects into a single RemoteConfiguration object. It is forbidden to define the same high-level configs in both ConfigMap and Secret (e.g., if "clients" is defined in Secret, it should not be defined in ConfigMap, and vice versa).
First, this source will query for ConfigMap and Secret with the same name as the cluster. If that ConfigMap and Secret do not exist, then it will use the one configured by CONFIG_MAP_NAME_CONFIG.
ConfigMap and Secret with the same name as the cluster are used when particular configs have to be applied for particular clusters (overrides) or in break glass scenarios (incident remediation) where we need to remotely configure a single cluster.
-
Constructor Summary
ConstructorsConstructorDescriptionKubernetesRemoteConfigurationSource(KubernetesRemoteConfigurationConfig config, Optional<String> physicalClusterId, Consumer<io.confluent.telemetry.config.v2.remote.RemoteConfiguration> callback, TelemetryReporterSelfMetrics telemetryReporterSelfMetrics) -
Method Summary
Modifier and TypeMethodDescriptionstatic StringparseDefaultEndpointFromEnv(KubernetesRemoteConfigurationConfig config, String objectPath) static StringparseEndpointFromEnv(KubernetesRemoteConfigurationConfig config, String objectName, String objectPath) Methods inherited from class io.confluent.telemetry.config.remote.polling.PollingRemoteConfigurationSource
getConfig, setConfigurationChangeCallback, start, stop
-
Constructor Details
-
KubernetesRemoteConfigurationSource
public KubernetesRemoteConfigurationSource(KubernetesRemoteConfigurationConfig config, Optional<String> physicalClusterId, Consumer<io.confluent.telemetry.config.v2.remote.RemoteConfiguration> callback, TelemetryReporterSelfMetrics telemetryReporterSelfMetrics) throws CertificateException, NoSuchAlgorithmException, KeyStoreException, IOException, KeyManagementException
-
-
Method Details
-
parseEndpointFromEnv
public static String parseEndpointFromEnv(KubernetesRemoteConfigurationConfig config, String objectName, String objectPath) -
parseDefaultEndpointFromEnv
public static String parseDefaultEndpointFromEnv(KubernetesRemoteConfigurationConfig config, String objectPath)
-