public class KafkaConnectController extends Object
| Modifier and Type | Field and Description |
|---|---|
private io.fabric8.openshift.api.model.Route |
apiRoute |
private okhttp3.OkHttpClient |
http |
private HttpUtils |
httpUtils |
private io.strimzi.api.kafka.model.KafkaConnect |
kafkaConnect |
private static org.slf4j.Logger |
LOGGER |
private io.fabric8.openshift.api.model.Route |
metricsRoute |
private io.fabric8.openshift.client.OpenShiftClient |
ocp |
private OpenShiftUtils |
ocpUtils |
private String |
project |
private boolean |
useConnectorResources |
| Constructor and Description |
|---|
KafkaConnectController(io.strimzi.api.kafka.model.KafkaConnect kafkaConnect,
io.fabric8.openshift.client.OpenShiftClient ocp,
okhttp3.OkHttpClient http,
boolean useConnectorResources) |
| Modifier and Type | Method and Description |
|---|---|
io.fabric8.kubernetes.api.model.networking.NetworkPolicy |
allowServiceAccess()
Creates network policy allowing access to ports exposed by Kafka Connect
|
void |
deployConnector(String name,
ConnectorConfigBuilder config)
Deploys Kafka connector with given name and configuration via REST
|
private void |
deployConnectorCr(String name,
ConnectorConfigBuilder config) |
private void |
deployConnectorJson(String name,
ConnectorConfigBuilder config) |
io.fabric8.openshift.api.model.Route |
exposeApi()
Exposes a route for kafka connect API associated with given KafkaConnect resource
|
io.fabric8.openshift.api.model.Route |
exposeMetrics()
Exposes a route for prometheus metrics for kafka connect associated with given KafkaConnect resource
|
okhttp3.HttpUrl |
getApiURL() |
List<String> |
getConnectMetrics() |
okhttp3.HttpUrl |
getMetricsURL() |
private io.fabric8.kubernetes.client.dsl.NonNamespaceOperation<io.strimzi.api.kafka.model.KafkaConnector,io.strimzi.api.kafka.KafkaConnectorList,io.strimzi.api.kafka.model.DoneableKafkaConnector,io.fabric8.kubernetes.client.dsl.Resource<io.strimzi.api.kafka.model.KafkaConnector,io.strimzi.api.kafka.model.DoneableKafkaConnector>> |
kafkaConnectorOperation() |
boolean |
undeployCluster()
Undeploy this Kafka Connect cluster by deleted related KafkaConnect CR
|
void |
undeployConnector(String name)
Deletes Kafka connector with given name
|
private void |
undeployConnectorJson(String name) |
private void |
undeployConnectorrCr(String name) |
io.strimzi.api.kafka.model.KafkaConnector |
waitForKafkaConnector(String name)
Waits until connector is properly deployed.
|
void |
waitForMySqlSnapshot(String connectorName)
Waits until snapshot phase of given MySQL connector completes
|
void |
waitForPostgreSqlSnapshot(String connectorName)
Waits until snapshot phase of given PostgreSQL connector completes
|
private boolean |
waitForReadyStatus(io.strimzi.api.kafka.model.KafkaConnector connector) |
void |
waitForSnapshot(String connectorName,
String metricName)
Waits until Snapshot phase of given connector completes
|
private static final org.slf4j.Logger LOGGER
private final io.fabric8.openshift.client.OpenShiftClient ocp
private final io.strimzi.api.kafka.model.KafkaConnect kafkaConnect
private final okhttp3.OkHttpClient http
private final String project
private final OpenShiftUtils ocpUtils
private final HttpUtils httpUtils
private final boolean useConnectorResources
private io.fabric8.openshift.api.model.Route apiRoute
private io.fabric8.openshift.api.model.Route metricsRoute
public KafkaConnectController(io.strimzi.api.kafka.model.KafkaConnect kafkaConnect,
io.fabric8.openshift.client.OpenShiftClient ocp,
okhttp3.OkHttpClient http,
boolean useConnectorResources)
public io.fabric8.kubernetes.api.model.networking.NetworkPolicy allowServiceAccess()
public io.fabric8.openshift.api.model.Route exposeApi()
Route objectpublic io.fabric8.openshift.api.model.Route exposeMetrics()
Route objectpublic void deployConnector(String name, ConnectorConfigBuilder config) throws IOException, InterruptedException
name - connector nameconfig - connector configIOException - or request errorInterruptedExceptionprivate void deployConnectorJson(String name, ConnectorConfigBuilder config) throws IOException
IOExceptionprivate void deployConnectorCr(String name, ConnectorConfigBuilder config) throws InterruptedException
InterruptedExceptionpublic io.strimzi.api.kafka.model.KafkaConnector waitForKafkaConnector(String name) throws InterruptedException
name - name of the connectorInterruptedException - on wait errorIllegalArgumentException - when deployment doesn't use custom resourcesprivate boolean waitForReadyStatus(io.strimzi.api.kafka.model.KafkaConnector connector)
private io.fabric8.kubernetes.client.dsl.NonNamespaceOperation<io.strimzi.api.kafka.model.KafkaConnector,io.strimzi.api.kafka.KafkaConnectorList,io.strimzi.api.kafka.model.DoneableKafkaConnector,io.fabric8.kubernetes.client.dsl.Resource<io.strimzi.api.kafka.model.KafkaConnector,io.strimzi.api.kafka.model.DoneableKafkaConnector>> kafkaConnectorOperation()
public void undeployConnector(String name) throws IOException
name - connector nameIOException - on request errorprivate void undeployConnectorJson(String name) throws IOException
IOExceptionprivate void undeployConnectorrCr(String name)
public List<String> getConnectMetrics() throws IOException
IOExceptionpublic void waitForSnapshot(String connectorName, String metricName) throws IOException
connectorName - name of the connectmetricName - name of the metric used to determine the stateIOException - on metric request errorpublic void waitForMySqlSnapshot(String connectorName) throws IOException
connectorName - connector nameIOException - on metric request errorpublic void waitForPostgreSqlSnapshot(String connectorName) throws IOException
connectorName - connector nameIOException - on metric request errorpublic okhttp3.HttpUrl getApiURL()
public okhttp3.HttpUrl getMetricsURL()
public boolean undeployCluster()
Copyright © 2020 JBoss by Red Hat. All rights reserved.