Class ApplicationReconciler
- java.lang.Object
-
- org.apache.flink.kubernetes.operator.reconciler.deployment.AbstractFlinkResourceReconciler<CR,SPEC,STATUS>
-
- org.apache.flink.kubernetes.operator.reconciler.deployment.AbstractJobReconciler<org.apache.flink.kubernetes.operator.api.FlinkDeployment,org.apache.flink.kubernetes.operator.api.spec.FlinkDeploymentSpec,org.apache.flink.kubernetes.operator.api.status.FlinkDeploymentStatus>
-
- org.apache.flink.kubernetes.operator.reconciler.deployment.ApplicationReconciler
-
- All Implemented Interfaces:
Reconciler<org.apache.flink.kubernetes.operator.api.FlinkDeployment>
public class ApplicationReconciler extends AbstractJobReconciler<org.apache.flink.kubernetes.operator.api.FlinkDeployment,org.apache.flink.kubernetes.operator.api.spec.FlinkDeploymentSpec,org.apache.flink.kubernetes.operator.api.status.FlinkDeploymentStatus>
Reconciler Flink Application deployments.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.flink.kubernetes.operator.reconciler.deployment.AbstractJobReconciler
AbstractJobReconciler.AvailableUpgradeMode
-
-
Field Summary
-
Fields inherited from class org.apache.flink.kubernetes.operator.reconciler.deployment.AbstractFlinkResourceReconciler
autoscaler, clock, eventRecorder, MSG_ROLLBACK, MSG_SPEC_CHANGED, MSG_SUBMIT, MSG_SUSPENDED, statusRecorder
-
-
Constructor Summary
Constructors Constructor Description ApplicationReconciler(EventRecorder eventRecorder, StatusRecorder<org.apache.flink.kubernetes.operator.api.FlinkDeployment,org.apache.flink.kubernetes.operator.api.status.FlinkDeploymentStatus> statusRecorder, org.apache.flink.autoscaler.JobAutoScaler<io.javaoperatorsdk.operator.processing.event.ResourceID,KubernetesJobAutoScalerContext> autoscaler)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidcancelJob(FlinkResourceContext<org.apache.flink.kubernetes.operator.api.FlinkDeployment> ctx, org.apache.flink.kubernetes.operator.api.spec.UpgradeMode upgradeMode)Cancel the job for the given resource using the specified upgrade mode.protected voidcleanupAfterFailedJob(FlinkResourceContext<org.apache.flink.kubernetes.operator.api.FlinkDeployment> ctx)Removes a failed job.protected io.javaoperatorsdk.operator.api.reconciler.DeleteControlcleanupInternal(FlinkResourceContext<org.apache.flink.kubernetes.operator.api.FlinkDeployment> ctx)Shut down and clean up all Flink job/cluster resources.voiddeploy(FlinkResourceContext<org.apache.flink.kubernetes.operator.api.FlinkDeployment> ctx, org.apache.flink.kubernetes.operator.api.spec.FlinkDeploymentSpec spec, org.apache.flink.configuration.Configuration deployConfig, java.util.Optional<java.lang.String> savepoint, boolean requireHaMetadata)Deploys the target resource spec to Kubernetes.protected AbstractJobReconciler.AvailableUpgradeModegetAvailableUpgradeMode(FlinkResourceContext<org.apache.flink.kubernetes.operator.api.FlinkDeployment> ctx, org.apache.flink.configuration.Configuration deployConfig)booleanreconcileOtherChanges(FlinkResourceContext<org.apache.flink.kubernetes.operator.api.FlinkDeployment> ctx)Reconcile any other changes required for this resource that are specific to the reconciler implementation.-
Methods inherited from class org.apache.flink.kubernetes.operator.reconciler.deployment.AbstractJobReconciler
changeLastStateIfCheckpointTooOld, readyToReconcile, reconcileSpecChange, restoreJob, resubmitJob
-
Methods inherited from class org.apache.flink.kubernetes.operator.reconciler.deployment.AbstractFlinkResourceReconciler
cleanup, flinkVersionChanged, reconcile, setClock, setOwnerReference, shouldRecoverDeployment
-
-
-
-
Constructor Detail
-
ApplicationReconciler
public ApplicationReconciler(EventRecorder eventRecorder, StatusRecorder<org.apache.flink.kubernetes.operator.api.FlinkDeployment,org.apache.flink.kubernetes.operator.api.status.FlinkDeploymentStatus> statusRecorder, org.apache.flink.autoscaler.JobAutoScaler<io.javaoperatorsdk.operator.processing.event.ResourceID,KubernetesJobAutoScalerContext> autoscaler)
-
-
Method Detail
-
getAvailableUpgradeMode
protected AbstractJobReconciler.AvailableUpgradeMode getAvailableUpgradeMode(FlinkResourceContext<org.apache.flink.kubernetes.operator.api.FlinkDeployment> ctx, org.apache.flink.configuration.Configuration deployConfig) throws java.lang.Exception
- Overrides:
getAvailableUpgradeModein classAbstractJobReconciler<org.apache.flink.kubernetes.operator.api.FlinkDeployment,org.apache.flink.kubernetes.operator.api.spec.FlinkDeploymentSpec,org.apache.flink.kubernetes.operator.api.status.FlinkDeploymentStatus>- Throws:
java.lang.Exception
-
deploy
public void deploy(FlinkResourceContext<org.apache.flink.kubernetes.operator.api.FlinkDeployment> ctx, org.apache.flink.kubernetes.operator.api.spec.FlinkDeploymentSpec spec, org.apache.flink.configuration.Configuration deployConfig, java.util.Optional<java.lang.String> savepoint, boolean requireHaMetadata) throws java.lang.Exception
Description copied from class:AbstractFlinkResourceReconcilerDeploys the target resource spec to Kubernetes.- Specified by:
deployin classAbstractFlinkResourceReconciler<org.apache.flink.kubernetes.operator.api.FlinkDeployment,org.apache.flink.kubernetes.operator.api.spec.FlinkDeploymentSpec,org.apache.flink.kubernetes.operator.api.status.FlinkDeploymentStatus>- Parameters:
ctx- Reconciliation context.spec- Spec that should be deployed to Kubernetes.deployConfig- Flink conf for the deployment.savepoint- Optional savepoint path for applications and session jobs.requireHaMetadata- Flag used by application deployments to validate HA metadata- Throws:
java.lang.Exception- Error during deployment.
-
cancelJob
protected void cancelJob(FlinkResourceContext<org.apache.flink.kubernetes.operator.api.FlinkDeployment> ctx, org.apache.flink.kubernetes.operator.api.spec.UpgradeMode upgradeMode) throws java.lang.Exception
Description copied from class:AbstractJobReconcilerCancel the job for the given resource using the specified upgrade mode.- Specified by:
cancelJobin classAbstractJobReconciler<org.apache.flink.kubernetes.operator.api.FlinkDeployment,org.apache.flink.kubernetes.operator.api.spec.FlinkDeploymentSpec,org.apache.flink.kubernetes.operator.api.status.FlinkDeploymentStatus>- Parameters:
ctx- Reconciler context.upgradeMode- Upgrade mode used during cancel.- Throws:
java.lang.Exception- Error during cancellation.
-
cleanupAfterFailedJob
protected void cleanupAfterFailedJob(FlinkResourceContext<org.apache.flink.kubernetes.operator.api.FlinkDeployment> ctx)
Description copied from class:AbstractJobReconcilerRemoves a failed job.- Specified by:
cleanupAfterFailedJobin classAbstractJobReconciler<org.apache.flink.kubernetes.operator.api.FlinkDeployment,org.apache.flink.kubernetes.operator.api.spec.FlinkDeploymentSpec,org.apache.flink.kubernetes.operator.api.status.FlinkDeploymentStatus>- Parameters:
ctx- Reconciler context.
-
reconcileOtherChanges
public boolean reconcileOtherChanges(FlinkResourceContext<org.apache.flink.kubernetes.operator.api.FlinkDeployment> ctx) throws java.lang.Exception
Description copied from class:AbstractFlinkResourceReconcilerReconcile any other changes required for this resource that are specific to the reconciler implementation.- Overrides:
reconcileOtherChangesin classAbstractJobReconciler<org.apache.flink.kubernetes.operator.api.FlinkDeployment,org.apache.flink.kubernetes.operator.api.spec.FlinkDeploymentSpec,org.apache.flink.kubernetes.operator.api.status.FlinkDeploymentStatus>- Parameters:
ctx- Reconciliation context.- Returns:
- True if any further reconciliation action was taken.
- Throws:
java.lang.Exception- Error during reconciliation.
-
cleanupInternal
protected io.javaoperatorsdk.operator.api.reconciler.DeleteControl cleanupInternal(FlinkResourceContext<org.apache.flink.kubernetes.operator.api.FlinkDeployment> ctx)
Description copied from class:AbstractFlinkResourceReconcilerShut down and clean up all Flink job/cluster resources.- Specified by:
cleanupInternalin classAbstractFlinkResourceReconciler<org.apache.flink.kubernetes.operator.api.FlinkDeployment,org.apache.flink.kubernetes.operator.api.spec.FlinkDeploymentSpec,org.apache.flink.kubernetes.operator.api.status.FlinkDeploymentStatus>- Parameters:
ctx- Current context.- Returns:
- DeleteControl object.
-
-