Interface ConfluentAdmin
- All Superinterfaces:
Admin
,AutoCloseable
- All Known Implementing Classes:
KafkaAdminClient
- are only present in Confluent Server, or
- existing Admin methods that return or take extra information only available in Confluent Server.
Any new or update to admin client api that need these features should be done here.
-
Method Summary
Modifier and TypeMethodDescriptionalterBrokerReplicaExclusions
(Map<Integer, ExclusionOp> operations) Alters the broker replica exclusions in the cluster.alterBrokerReplicaExclusions
(Map<Integer, ExclusionOp> operations, AlterBrokerReplicaExclusionsOptions options) Alters the broker replica exclusions in the cluster.Change broker leadership priority by promoting / demoting a list of brokerIds for a given reason.alterMirrors
(Map<String, AlterMirrorOp> ops, AlterMirrorsOptions options) Performs a state alteration for topic mirroring.default ComputeEvenClusterLoadPlanResult
Compute even cluster load plan for the cluster.default ComputeEvenClusterLoadPlanResult
computeEvenClusterLoadPlan
(List<String> goalList) Compute even cluster load plan for the cluster.computeEvenClusterLoadPlan
(List<String> goalList, ComputeEvenClusterLoadPlanOptions evenClusterLoadPlanOptions) Compute and return an even cluster load plan for the cluster based on the rebalance goals.static ConfluentAdmin
Create a new ConfluentAdmin with the given configuration.static ConfluentAdmin
create
(Properties props) Create a new ConfluentAdmin with the given configuration.createCentralizedAcls
(Collection<AclBinding> acls, CreateAclsOptions options, String clusterId, int writerBrokerId) Creates access control lists (ACLs) which are bound to specific resources.createClusterLinks
(Collection<NewClusterLink> clusterLinks, CreateClusterLinksOptions options) Creates links to remote clusters with the specified configurations for performing inter-cluster communications.deleteCentralizedAcls
(Collection<AclBindingFilter> filters, DeleteAclsOptions options, String clusterId, int writerBrokerId) Deletes access control lists (ACLs) according to the supplied filters.deleteClusterLinks
(Collection<String> linkNames, DeleteClusterLinksOptions options) Deletes established links to remote clusters with the provided link names.default DescribeBalancerStatusResult
Describes status of Confluent Balancer component.Describes status of confluent balancer component.default DescribeBrokerAdditionsResult
Describes all the broker additions in the cluster.Describes all the broker additions in the cluster.default DescribeBrokerRemovalsResult
Describes all the broker removals in the cluster.Describes all the broker removals in the cluster.Describes the active broker replica exclusions in the cluster.Describes the active broker replica exclusions in the cluster.Describe the cluster links.Describe the status of the even cluster load operation.Describe the status of the even cluster load operation.Describe all brokers with demoted leadership priority and their list of reasons for demotion.describeMirrors
(Collection<String> topics, DescribeMirrorsOptions options) Describes the state of mirrored topics, i.e.describeSwitchoverStatus
(String linkName) Describe the cluster link switchover status.listClusterLinks
(ListClusterLinksOptions options) Lists the cluster links.listMirrors
(ListMirrorsOptions options) Lists the mirrored topics, i.e.default RemoveBrokersResult
removeBrokers
(List<Integer> brokersToRemove) Drain data off a given set of brokers and remove them from the cluster via shutdown.removeBrokers
(List<Integer> brokersToRemove, RemoveBrokersOptions options) Drain data off a given set of brokers and remove them from the cluster via shutdown.replicaStatus
(Set<TopicPartition> partitions, ReplicaStatusOptions options) Retrieves the status of the replicas for a set of partitions, including observers.resolveOffsetRange
(Map<TopicIdAndPartition, ResolveOffsetRangeSpec> topicPartitionOffsets, ResolveOffsetRangeOptions options) default TriggerEvenClusterLoadResult
Triggers the even cluster load operation.default TriggerEvenClusterLoadResult
triggerEvenClusterLoad
(List<String> goalList) Triggers the even cluster load operation.triggerEvenClusterLoad
(List<String> goalList, TriggerEvenClusterLoadOptions options) Triggers the even cluster load operation.Methods inherited from interface org.apache.kafka.clients.admin.Admin
abortTransaction, abortTransaction, addRaftVoter, addRaftVoter, alterClientQuotas, alterClientQuotas, alterConsumerGroupOffsets, alterConsumerGroupOffsets, alterPartitionReassignments, alterPartitionReassignments, alterReplicaLogDirs, alterReplicaLogDirs, alterUserScramCredentials, alterUserScramCredentials, clientInstanceId, close, close, createAcls, createAcls, createDelegationToken, createDelegationToken, createPartitions, createPartitions, createTopics, createTopics, deleteAcls, deleteAcls, deleteConsumerGroupOffsets, deleteConsumerGroupOffsets, deleteConsumerGroups, deleteConsumerGroups, deleteRecords, deleteRecords, deleteTopics, deleteTopics, deleteTopics, deleteTopics, describeAcls, describeAcls, describeClassicGroups, describeClassicGroups, describeClientQuotas, describeClientQuotas, describeCluster, describeCluster, describeConfigs, describeConfigs, describeConsumerGroups, describeConsumerGroups, describeDelegationToken, describeDelegationToken, describeFeatures, describeFeatures, describeLogDirs, describeLogDirs, describeMetadataQuorum, describeMetadataQuorum, describeProducers, describeProducers, describeReplicaLogDirs, describeReplicaLogDirs, describeShareGroups, describeShareGroups, describeTopics, describeTopics, describeTopics, describeTopics, describeTransactions, describeTransactions, describeUserScramCredentials, describeUserScramCredentials, describeUserScramCredentials, electLeaders, electLeaders, expireDelegationToken, expireDelegationToken, fenceProducers, fenceProducers, incrementalAlterConfigs, incrementalAlterConfigs, listClientMetricsResources, listClientMetricsResources, listConsumerGroupOffsets, listConsumerGroupOffsets, listConsumerGroupOffsets, listConsumerGroupOffsets, listConsumerGroups, listConsumerGroups, listGroups, listGroups, listOffsets, listOffsets, listPartitionReassignments, listPartitionReassignments, listPartitionReassignments, listPartitionReassignments, listPartitionReassignments, listShareGroupOffsets, listShareGroupOffsets, listTopics, listTopics, listTransactions, listTransactions, metrics, registerMetricForSubscription, removeMembersFromConsumerGroup, removeRaftVoter, removeRaftVoter, renewDelegationToken, renewDelegationToken, unregisterBroker, unregisterBroker, unregisterMetricFromSubscription, updateFeatures
-
Method Details
-
create
Create a new ConfluentAdmin with the given configuration.- Parameters:
props
- The configuration.- Returns:
- The new KafkaAdminClient.
-
create
Create a new ConfluentAdmin with the given configuration.- Parameters:
conf
- The configuration.- Returns:
- The new KafkaAdminClient.
-
replicaStatus
@Confluent ReplicaStatusResult replicaStatus(Set<TopicPartition> partitions, ReplicaStatusOptions options) Retrieves the status of the replicas for a set of partitions, including observers.The status of the replicas will be as witnessed by the partition leader. That is, the replicas themselves may be further in progress than what's provided, however the leader has not yet processed that state update.
The following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedReplicaStatusResult
:TopicAuthorizationException
If the authenticated user didn't have describe access to the Topic.UnknownTopicOrPartitionException
If a given topic or partition does not exist.NotLeaderOrFollowerException
If the partition leader changed while the request was outstanding.TimeoutException
If the request timed out before the controller could retrieve the partition's replica status.
- Parameters:
partitions
- The partitions to retrieve replica status for.options
- The options to use.- Returns:
- The resulting replica status of every requested partition.
-
createCentralizedAcls
@Confluent CreateAclsResult createCentralizedAcls(Collection<AclBinding> acls, CreateAclsOptions options, String clusterId, int writerBrokerId) Creates access control lists (ACLs) which are bound to specific resources.This operation is not transactional so it may succeed for some ACLs while fail for others.
If you attempt to add an ACL that duplicates an existing ACL, no error will be raised, but no changes will be made.
This operation is supported by brokers with version 0.11.0.0 or higher.
- Parameters:
acls
- The ACLs to createoptions
- The options to use when creating the ACLs.clusterId
- Cluster id for which ACLs are being updatedwriterBrokerId
- Broker id of the current centralized metadata master writer- Returns:
- The CreateAclsResult.
-
deleteCentralizedAcls
@Confluent DeleteAclsResult deleteCentralizedAcls(Collection<AclBindingFilter> filters, DeleteAclsOptions options, String clusterId, int writerBrokerId) Deletes access control lists (ACLs) according to the supplied filters.This operation is not transactional so it may succeed for some ACLs while fail for others.
This operation is supported by brokers with version 0.11.0.0 or higher.
- Parameters:
filters
- The filters to use.options
- The options to use when deleting the ACLs.clusterId
- Cluster id for which ACLs are being updatedwriterBrokerId
- Broker id of the current centralized metadata master writer- Returns:
- The DeleteAclsResult.
-
removeBrokers
Drain data off a given set of brokers and remove them from the cluster via shutdown. This API initiates the removal. It is suggested that the user tracks it viadescribeBrokerRemovals()
Once initiated, the brokers will be shut down and replicas will be reassigned away from them.
This is a convenience method for
removeBrokers(List, RemoveBrokersOptions)
with default options. See the overload for more details.- Parameters:
brokersToRemove
- The broker IDs to drain off partition replicas and shut down. Must not be empty.- Returns:
- The result of the broker removal operation.
-
removeBrokers
@Confluent RemoveBrokersResult removeBrokers(List<Integer> brokersToRemove, RemoveBrokersOptions options) Drain data off a given set of brokers and remove them from the cluster via shutdown. This API initiates the removal. It is suggested that the user tracks it viadescribeBrokerRemovals()
Once initiated, the brokers will be shut down and replicas will be reassigned away from them.
The following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedRemoveBrokersResult
:ClusterAuthorizationException
If we didn't have sufficient permission to initiate the broker removal. None of the requests started.TimeoutException
If the request timed out before the controller could initiate the broker removal. It cannot be guaranteed whether the removal was initiated or not.BalancerOfflineException
If the Confluent Balancer component is disabled or not started yet. Query its status withdescribeBalancerStatus()
for more informationBalancerLoadError
If the Confluent Balancer component failed to load. Query its status withdescribeBalancerStatus()
for more informationBalancerOperationFailedException
If the operation failed during execution of the removal.InsufficientRebalancePlanMetricsException
If computing the rebalance plan for broker removal failed due to insufficient metrics.RebalancePlanComputationException
If computing the rebalance plan for broker removal failed for reasons other than insufficient metrics like not enough disk space, replication factor same as the cluster size in case of broker removal etc.InvalidBrokerRemovalException
If requested broker removal operation is invalid, examples being a non-existent broker ID or some partitions (RF=1) becoming unavailable as a result of the removal.BrokerRemovalInProgressException
If the broker is already being removed.BrokerRemovedException
If the broker was already removed successfully.BalancerBrokerExcludedForReplicaPlacementException
If there are active broker replica exclusions in the cluster for brokers that are not part of the removal request. SeedescribeBrokerReplicaExclusions()
for more information- Parameters:
brokersToRemove
- The broker IDs to drain off partition replicas and shut down. Must not be empty.options
- The options to use for the request.- Returns:
- The result of the broker removal operation.
-
describeBrokerRemovals
Describes all the broker removals in the cluster. Note that a removal is considered cleared once a broker starts up with 0 partitions.This is a convenience method for
describeBrokerRemovals(DescribeBrokerRemovalsOptions)
with default options. See the overload for more details. -
describeBrokerRemovals
@Confluent DescribeBrokerRemovalsResult describeBrokerRemovals(DescribeBrokerRemovalsOptions options) Describes all the broker removals in the cluster. Note that a removal is considered cleared once a broker starts up with 0 partitions.A broker removal consists of broker shutdown and partition reassignments that move all replicas the now-shutdown broker hosted away from it. The status of the removal is tracked by two separate status fields: 1. #
BrokerRemovalDescription.shutdownStatus()
, a #BrokerShutdownStatus
denoting the status of the shutdown operation 2. #BrokerRemovalDescription.reassignmentsStatus()
, a #PartitionReassignmentsStatus
denoting the status of the partition reassignments operationWhen at least one of the two has a failed status, the broker removal operation is considered failed. The user is expected to retry the removal via #
removeBrokers(List)
.When both have a completed status, the broker removal operation is considered a success.
ClusterAuthorizationException
If the authenticated user didn't haveDESCRIBE
access to the cluster.TimeoutException
If the request timed out before the controller could describe the removals.BalancerOfflineException
If the Confluent Balancer component is disabled or not started yet. Query its status withdescribeBalancerStatus()
for more informationBalancerLoadError
If the Confluent Balancer component failed to load. Query its status withdescribeBalancerStatus()
for more information
The following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedDescribeBrokerRemovalsResult
:- Parameters:
options
- The options to use when describing the broker removals.- Returns:
- The DescribeBrokerRemovalResult.
-
describeBrokerAdditions
Describes all the broker additions in the cluster.This is a convenience method for
describeBrokerAdditions(DescribeBrokerAdditionsOptions)
with default options. See the overload for more details.- Returns:
- The DescribeBrokerAdditionsResult
-
describeBrokerAdditions
@Confluent DescribeBrokerAdditionsResult describeBrokerAdditions(DescribeBrokerAdditionsOptions options) Describes all the broker additions in the cluster.Note that broker additions can be interrupted by subsequent higher-priority operations (e.g broker removal operations, even if operating on different brokers).
A broker addition's partition reassignment task can be in one of multiple statuses: 1.
PartitionReassignmentsStatus.ERROR
- when the broker addition operation failed midway 2.PartitionReassignmentsStatus.PENDING
- when the intent of addition is registered but the balancer is yet to start on it (e.g still collecting metrics) 3.PartitionReassignmentsStatus.CANCELED
- when the addition is canceled (e.g due to a higher priority operation coming through) 4.PartitionReassignmentsStatus.IN_PROGRESS
- when the addition is in progress (replicas are being reassigned) 5.PartitionReassignmentsStatus.COMPLETED
- when the broker has successfully been added to the clusterThe operation's status is also exposed through the general #
BalancerOperationStatus
, which can be in one of the following statuses: 1. #BalancerOperationStatus.FAILED
- when the operation has ceased before completing due to an external influence canceling it or an internal error failing it. 2. #BalancerOperationStatus.IN_PROGRESS
- when the intent of the operation is registered and is in the process of being completed. 3. #BalancerOperationStatus.SUCCESS
- when the balancer operation has completed successfully.Additionally, each broker addition exposes a #
BrokerAdditionDescription.additionError()
that provides additional context regarding the reason the operation is in the given statusThe following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedDescribeBrokerAdditionsResult
:BalancerOfflineException
If the Confluent Balancer component is disabled or not started yet. Query its status withdescribeBalancerStatus()
for more informationBalancerLoadError
If the Confluent Balancer component failed to load. Query its status withdescribeBalancerStatus()
for more informationClusterAuthorizationException
If the authenticated user didn't haveDESCRIBE
access to the cluster.TimeoutException
If the request timed out before the controller could describe the removals.
- Parameters:
options
- The options to use when describing the broker additions- Returns:
- The DescribeBrokerAdditionsResult
-
describeBalancerStatus
Describes status of Confluent Balancer component.This is a convenience method for
describeBalancerStatus(DescribeBalancerStatusOptions)
with default options. See the overload for more details.- Returns:
- The DescribeBalancerStatusResult
-
describeBalancerStatus
@Confluent DescribeBalancerStatusResult describeBalancerStatus(DescribeBalancerStatusOptions options) Describes status of confluent balancer component. The Confluent Balancer can have one of the state fromBalancerStatus
.In addition to the status field, the #
BalancerStatusDescription.balancerOperationError()
gives context about the status of the balancer, e.g. why the balancer is in error state etc.The following exceptions can be anticipated when calling
get()
on the future obtained from the returnedDescribeBalancerStatusResult
:ClusterAuthorizationException
If the authenticated user didn't haveDESCRIBE
access to the cluster.TimeoutException
If the request timed out before the controller could fetch balancer status.
- Parameters:
options
- The options to use when fetching the balancer status.- Returns:
- The DescribeBalancerStatusResult
-
triggerEvenClusterLoad
Triggers the even cluster load operation. See the overload for more details. It is suggested that the user tracks it viadescribeEvenClusterLoadStatus()
- Returns:
- The result of the even cluster load request whether it was accepted or denied.
-
triggerEvenClusterLoad
Triggers the even cluster load operation. See the overload for more details. It is suggested that the user tracks it viadescribeEvenClusterLoadStatus()
- Parameters:
goalList
- The list of goals to use for manual rebalance, or an empty list for default goals- Returns:
- The result of the even cluster load request whether it was accepted or denied.
-
triggerEvenClusterLoad
@Confluent TriggerEvenClusterLoadResult triggerEvenClusterLoad(List<String> goalList, TriggerEvenClusterLoadOptions options) Triggers the even cluster load operation.If
ConfluentConfigs.BALANCER_AUTO_HEAL_MODE_CONFIG
is configured toConfluentConfigs.BalancerSelfHealMode.ANY_UNEVEN_LOAD
, then Confluent Balancer is continuously monitoring the cluster and determining whether it can improve the balance of the cluster's load. This API helps manually trigger the operation.The following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedTriggerEvenClusterLoadResult
:ClusterAuthorizationException
If we didn't have sufficient permission to request rebalance. The request would not be started.TimeoutException
If the request timed out as no response was received from the controller, possible reasons could be request was faulted or response being dropped due to some network issue etc. The status of the even cluster load is unknown in this case.BalancerOfflineException
If the Confluent Balancer component is disabled or not started yet. Query its status withdescribeBalancerStatus()
for more informationBalancerLoadError
If the Confluent Balancer component failed to load. Query its status withdescribeBalancerStatus()
for more informationBrokerRemovalInProgressException
If a broker removal operation is in progress.BrokerAdditionInProgressException
If a broker addition operation is in progress.EvenClusterLoadTaskInProgressException
If an even cluster load operation is already in progress.- Parameters:
goalList
- The list of goals to use for manual rebalance, or an empty list for default goalsoptions
- The options to use for the request.- Returns:
- The result of the even cluster load request whether it was accepted or denied.
-
computeEvenClusterLoadPlan
Compute even cluster load plan for the cluster. See the overload for more details. This API returns plan based on the rebalance goals.- Returns:
- The result of even cluster load plan computation.
-
computeEvenClusterLoadPlan
@Confluent default ComputeEvenClusterLoadPlanResult computeEvenClusterLoadPlan(List<String> goalList) Compute even cluster load plan for the cluster. See the overload for more details. This API returns plan based on the rebalance goals.- Parameters:
goalList
- The list of goals to use for manual rebalance, or an empty list for default goals- Returns:
- The result of even cluster load plan computation.
-
computeEvenClusterLoadPlan
@Confluent ComputeEvenClusterLoadPlanResult computeEvenClusterLoadPlan(List<String> goalList, ComputeEvenClusterLoadPlanOptions evenClusterLoadPlanOptions) Compute and return an even cluster load plan for the cluster based on the rebalance goals.The following exceptions can be anticipated for when calling
get()
on the futures obtained from the returnedComputeEvenClusterLoadPlanResult
:ClusterAuthorizationException
If we didn't have sufficient permission to request rebalance plan. The request would not be started.TimeoutException
If the request timed out as no response was received from the controller, possible reasons could be request was faulted or response being dropped due to some network issue etc.BalancerOfflineException
If the Confluent Balancer component is disabled or not started yet. Query its status withdescribeBalancerStatus()
for more information.BalancerLoadError
If the Confluent Balancer component failed to load. Query its status withdescribeBalancerStatus()
for more information.BrokerRemovalInProgressException
If a broker removal operation is in progress.BrokerAdditionInProgressException
If a broker addition operation is in progress.EvenClusterLoadTaskInProgressException
If an even cluster load operation is in progress.BrokerFailureFixInProgressException
If there's an ongoing broker failure anomaly fix.RebalancePlanComputationException
If there's an issue with SBC's plan computation process.- Parameters:
goalList
- The list of goals to use for manual rebalance, or an empty list for default goalsevenClusterLoadPlanOptions
- The options to use for the request.- Returns:
- The result of the even cluster load plan computation.
-
describeEvenClusterLoadStatus
Describe the status of the even cluster load operation.This is a convenience method for
describeEvenClusterLoadStatus(DescribeEvenClusterLoadStatusOptions)
with default options. See the overload for more details.- Returns:
- The DescribeEvenClusterLoadStatusResult
-
describeEvenClusterLoadStatus
@Confluent DescribeEvenClusterLoadStatusResult describeEvenClusterLoadStatus(DescribeEvenClusterLoadStatusOptions options) Describe the status of the even cluster load operation.If enabled, Confluent Balancer is continuously monitoring the cluster and determining whether it can improve the balance of the cluster's load. This API helps describe the status of the operation.
The following exceptions can be anticipated when calling
get()
on the future obtained from the returnedDescribeEvenClusterLoadStatusResult
:ClusterAuthorizationException
If the authenticated user didn't haveDESCRIBE
access to the cluster.TimeoutException
If the request timed out before the controller could fetch even cluster load status.
- Parameters:
options
- The options to use when fetching the even cluster load status.- Returns:
- The DescribeEvenClusterLoadStatusResult
-
alterBrokerReplicaExclusions
@Confluent AlterBrokerReplicaExclusionsResult alterBrokerReplicaExclusions(Map<Integer, ExclusionOp> operations, AlterBrokerReplicaExclusionsOptions options) Alters the broker replica exclusions in the cluster. A replica exclusion on a broker ensures that the broker is prohibited from having any new replicas placed on it (be it from partition creation or reassignment).Updates are atomic, meaning that the call will either succeed for all
ExclusionOp
s or fail for all.The following exceptions can be anticipated when calling
get()
on the future obtained from the returnedAlterBrokerReplicaExclusionsResult
:ClusterAuthorizationException
If the authenticated user didn't haveALTER
access to the cluster.TimeoutException
If the request timed out before the controller could fetch even cluster load status.InvalidBrokerReplicaExclusionException
If any givenExclusionOp.reason()
is invalid (for the constraints, seeExclusionOp.reason()
), or any other exception.UnrepresentableBrokerIdException
If an invalid broker ID was provided.BrokerReplicaExclusionNotFoundException
If an attempt to remove an exclusion which doesn't exist is made.
- Parameters:
operations
- a map of broker ID to the desiredExclusionOp
to be performed on that broker.options
- The options to use when altering the broker replica exclusions.- Returns:
- The AlterBrokerReplicaExclusionsResult consisting of the attempted broker replica exclusions.
-
alterBrokerReplicaExclusions
@Confluent default AlterBrokerReplicaExclusionsResult alterBrokerReplicaExclusions(Map<Integer, ExclusionOp> operations) Alters the broker replica exclusions in the cluster. A replica exclusion on a broker ensures that the broker is prohibited from having any new replicas placed on it (be it from partition creation or reassignment).Updates are atomic, meaning that the call will either succeed for all
ExclusionOp
s or fail for all.This is a convenience method for
alterBrokerReplicaExclusions(Map, AlterBrokerReplicaExclusionsOptions)
with default options. See the overload for more details.- Parameters:
operations
- a map of broker ID to the desiredExclusionOp
to be performed on that broker.- Returns:
- The AlterBrokerReplicaExclusionsResult consisting of the attempted broker replica exclusions.
-
describeBrokerReplicaExclusions
@Confluent DescribeBrokerReplicaExclusionsResult describeBrokerReplicaExclusions(DescribeBrokerReplicaExclusionsOptions options) Describes the active broker replica exclusions in the cluster. An active replica exclusion on a broker ensures that the broker is prohibited from having any new replicas placed on it (be it from partition creation or reassignment).The following exceptions can be anticipated when calling
get()
on the future obtained from the returnedDescribeBrokerReplicaExclusionsResult
:ClusterAuthorizationException
If the authenticated user didn't haveDESCRIBE
access to the cluster.TimeoutException
If the request timed out before the controller could fetch even cluster load status.
- Parameters:
options
- The options to use when describing the broker replica exclusions.- Returns:
- The DescribeBrokerReplicaExclusionsResult consisting of the successfully-altered broker replica exclusions.
-
describeBrokerReplicaExclusions
Describes the active broker replica exclusions in the cluster. An active replica exclusion on a broker ensures that the broker is prohibited from having any new replicas placed on it (be it from partition creation or reassignment).This is a convenience method for
describeBrokerRemovals(DescribeBrokerRemovalsOptions)
with default options. See the overload for more details.- Returns:
- The DescribeBrokerReplicaExclusionsResult consisting of the successfully-altered broker replica exclusions.
-
createClusterLinks
@Confluent CreateClusterLinksResult createClusterLinks(Collection<NewClusterLink> clusterLinks, CreateClusterLinksOptions options) Creates links to remote clusters with the specified configurations for performing inter-cluster communications. Once established, the cluster links can referenced by their link names for issuing requests.The following exceptions can be anticipated when calling get()
on the futures obtained from the returnedCreateClusterLinksResult
:BalancerOfflineException
If the Confluent Balancer component is disabled or not started yet. Query its status withdescribeBalancerStatus()
for more informationBalancerLoadError
If the Confluent Balancer component failed to load. Query its status withdescribeBalancerStatus()
for more informationInvalidClusterLinkException
If the cluster link name is illegal.ClusterAuthorizationException
If the authenticated user didn't haveCREATE
access to the cluster.ClusterLinkExistsException
If a cluster link already exists for the provided link name.TimeoutException
If the request timed out before the controller could create the cluster link.
- Parameters:
clusterLinks
- The cluster links to create.options
- The options to use when creating the cluster links.- Returns:
- The CreateClusterLinksResult.
-
listClusterLinks
Lists the cluster links.The following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedListClusterLinksResult
:ClusterAuthorizationException
If the authenticated user didn't haveDESCRIBE
access to the cluster.TimeoutException
If the request timed out before the controller could list the cluster links.
- Parameters:
options
- The options to use when listing the cluster links.- Returns:
- The ListClusterLinksResult.
-
deleteClusterLinks
@Confluent DeleteClusterLinksResult deleteClusterLinks(Collection<String> linkNames, DeleteClusterLinksOptions options) Deletes established links to remote clusters with the provided link names.Deleting a cluster link does not affect the cluster link's data in any way.
The following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedDeleteClusterLinksResult
:InvalidClusterLinkException
If the cluster link name is illegal.ClusterAuthorizationException
If the authenticated user didn't haveDELETE
access to the cluster.ClusterLinkNotFoundException
If the cluster link to delete doesn't exist.TimeoutException
If the request timed out before the controller could delete the cluster link.
- Parameters:
linkNames
- The names of the cluster links to delete.options
- The options to use when deleting the cluster links.- Returns:
- The DeleteClusterLinksResult.
-
alterMirrors
@Confluent AlterMirrorsResult alterMirrors(Map<String, AlterMirrorOp> ops, AlterMirrorsOptions options) Performs a state alteration for topic mirroring. Used only for operations on mirror topics.The future of the individual alter mirror ops should be used for obtaining the result.
The following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedAlterMirrorsResult
:TopicAuthorizationException
If the authenticated user didn't haveALTER
access to the topic.TimeoutException
If the request timed out before the controller could complete the mirror operation.
- Parameters:
ops
- The mirror alteration operation for each topic.options
- The options to use when altering mirrors.- Returns:
- The AlterMirrorsResult.
-
listMirrors
Lists the mirrored topics, i.e. topics that are mirrors of another over a cluster link.The following exceptions can be anticipated when calling
get()
on the future obtained from the returnedListMirrorsResult
:ClusterAuthorizationException
If the authenticated user didn't haveDESCRIBE
access to the cluster.ClusterLinkNotFoundException
If a specific cluster link was requested and the cluster link doesn't exist.TimeoutException
If the request timed out before the controller could complete the operation.
- Parameters:
options
- The options to use when listing mirrors.- Returns:
- The ListMirrorsResult.
-
describeMirrors
@Confluent DescribeMirrorsResult describeMirrors(Collection<String> topics, DescribeMirrorsOptions options) Describes the state of mirrored topics, i.e. topics that are mirrors of another over a cluster link.The following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedDescribeMirrorsResult
:ClusterAuthorizationException
If the authenticated user didn't haveDESCRIBE
access to the cluster.TimeoutException
If the request timed out before the controller could complete the operation.
- Parameters:
options
- The options to use when describing mirrors.- Returns:
- The DescribeMirrorsResult.
-
alterLeadershipPriority
@Confluent AlterLeadershipPriorityResult alterLeadershipPriority(AlterLeadershipPrioritySpec spec, AlterLeadershipPriorityOptions options) Change broker leadership priority by promoting / demoting a list of brokerIds for a given reason.The following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedAlterLeadershipPriorityResult
:ClusterAuthorizationException
If the authenticated user didn't haveALTER
access to the cluster.InvalidRequestException
If an invalid reason or no brokerIds are specified as request arguments.TimeoutException
If the request timed out before the controller could complete the operation.
- Parameters:
spec
- The request arguments for changing leadership priority request.options
- The options to use when changing leadership priority.- Returns:
- The AlterLeadershipPriorityResult.
-
describeLeadershipPriority
@Confluent DescribeLeadershipPriorityResult describeLeadershipPriority(DescribeLeadershipPriorityOptions options) Describe all brokers with demoted leadership priority and their list of reasons for demotion.The following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedDescribeLeadershipPriorityResult
:ClusterAuthorizationException
If the authenticated user didn't haveDESCRIBE
access to the cluster.TimeoutException
If the request timed out before the controller could complete the operation.
- Parameters:
options
- The options to use when describing leadership priority.- Returns:
- The DescribeLeadershipPriorityResult.
-
describeClusterLinks
Describe the cluster links.The following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedDescribeClusterLinksResult
:ClusterAuthorizationException
If the authenticated user didn't haveDESCRIBE
access to the cluster.NotControllerException
If the Kafka broker is not a controller.ClusterLinkDisabledException
If cluster link is disabled.TimeoutException
If the request timed out before the controller could list the cluster links.
- Parameters:
options
- The options to use when describing the cluster links. When no link name is provided, all the cluster links descriptions will be returned.- Returns:
- The DescribeClusterLinksResult.
-
resolveOffsetRange
@Confluent ResolveOffsetRangeResult resolveOffsetRange(Map<TopicIdAndPartition, ResolveOffsetRangeSpec> topicPartitionOffsets, ResolveOffsetRangeOptions options) -
describeSwitchoverStatus
Describe the cluster link switchover status.The following exceptions can be anticipated when calling
get()
on the futures obtained from the returnedDescribeSwitchoverStatusResult
:ClusterAuthorizationException
If the authenticated user didn't haveDESCRIBE
access to the cluster.ClusterLinkDisabledException
If cluster link is disabled.TimeoutException
If the request timed out before the controller could list the cluster links.
- Parameters:
linkName
- The link name of the cluster- Returns:
- The DescribeSwitchoverStatusResult.
-