public class KubernetesRemoteConfigurationSource extends PollingRemoteConfigurationSource
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 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 in break glass scenarios (incident remediation) where we need to remotely configure a single cluster
Constructor and Description |
---|
KubernetesRemoteConfigurationSource(KubernetesRemoteConfigurationConfig config,
Optional<String> physicalClusterId,
Consumer<io.confluent.telemetry.config.v2.remote.RemoteConfiguration> callback) |
Modifier and Type | Method and Description |
---|---|
static String |
parseDefaultEndpointFromEnv(KubernetesRemoteConfigurationConfig config,
String objectPath) |
static String |
parseEndpointFromEnv(KubernetesRemoteConfigurationConfig config,
String objectName,
String objectPath) |
getConfig, setConfigurationChangeCallback, start, stop
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
configureMapper
public KubernetesRemoteConfigurationSource(KubernetesRemoteConfigurationConfig config, Optional<String> physicalClusterId, Consumer<io.confluent.telemetry.config.v2.remote.RemoteConfiguration> callback) throws CertificateException, NoSuchAlgorithmException, KeyStoreException, IOException, KeyManagementException
public static String parseEndpointFromEnv(KubernetesRemoteConfigurationConfig config, String objectName, String objectPath)
public static String parseDefaultEndpointFromEnv(KubernetesRemoteConfigurationConfig config, String objectPath)