Class FlinkService
- java.lang.Object
-
- org.apache.flink.kubernetes.operator.service.FlinkService
-
public class FlinkService extends java.lang.ObjectService for submitting and interacting with Flink clusters and jobs.
-
-
Constructor Summary
Constructors Constructor Description FlinkService(io.fabric8.kubernetes.client.KubernetesClient kubernetesClient, FlinkConfigManager configManager)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcancelJob(FlinkDeployment deployment, UpgradeMode upgradeMode, org.apache.flink.configuration.Configuration conf)voidcancelSessionJob(FlinkSessionJob sessionJob, UpgradeMode upgradeMode, org.apache.flink.configuration.Configuration conf)voiddeleteClusterDeployment(io.fabric8.kubernetes.api.model.ObjectMeta meta, FlinkDeploymentStatus status, boolean deleteHaData)voiddisposeSavepoint(java.lang.String savepointPath, org.apache.flink.configuration.Configuration conf)SavepointFetchResultfetchSavepointInfo(java.lang.String triggerId, java.lang.String jobId, org.apache.flink.configuration.Configuration conf)protected org.apache.flink.client.program.ClusterClient<java.lang.String>getClusterClient(org.apache.flink.configuration.Configuration config)java.util.Map<java.lang.String,java.lang.String>getClusterInfo(org.apache.flink.configuration.Configuration conf)protected static org.apache.flink.api.common.JobStatusgetEffectiveStatus(org.apache.flink.runtime.messages.webmonitor.JobDetails details)io.fabric8.kubernetes.api.model.PodListgetJmPodList(FlinkDeployment deployment, org.apache.flink.configuration.Configuration conf)io.fabric8.kubernetes.client.KubernetesClientgetKubernetesClient()java.util.Optional<Savepoint>getLastCheckpoint(org.apache.flink.api.common.JobID jobId, org.apache.flink.configuration.Configuration conf)booleanisHaMetadataAvailable(org.apache.flink.configuration.Configuration conf)booleanisJobManagerPortReady(org.apache.flink.configuration.Configuration config)java.util.Collection<org.apache.flink.runtime.client.JobStatusMessage>listJobs(org.apache.flink.configuration.Configuration conf)org.apache.flink.runtime.jobmaster.JobResultrequestJobResult(org.apache.flink.configuration.Configuration conf, org.apache.flink.api.common.JobID jobID)voidsubmitApplicationCluster(JobSpec jobSpec, org.apache.flink.configuration.Configuration conf, boolean requireHaMetadata)org.apache.flink.api.common.JobIDsubmitJobToSessionCluster(io.fabric8.kubernetes.api.model.ObjectMeta meta, FlinkSessionJobSpec spec, org.apache.flink.configuration.Configuration conf, java.lang.String savepoint)voidsubmitSessionCluster(org.apache.flink.configuration.Configuration conf)voidtriggerSavepoint(java.lang.String jobId, SavepointTriggerType triggerType, SavepointInfo savepointInfo, org.apache.flink.configuration.Configuration conf)protected voidvalidateHaMetadataExists(org.apache.flink.configuration.Configuration conf)protected voidwaitForClusterShutdown(org.apache.flink.configuration.Configuration conf)
-
-
-
Constructor Detail
-
FlinkService
public FlinkService(io.fabric8.kubernetes.client.KubernetesClient kubernetesClient, FlinkConfigManager configManager)
-
-
Method Detail
-
getEffectiveStatus
@VisibleForTesting protected static org.apache.flink.api.common.JobStatus getEffectiveStatus(org.apache.flink.runtime.messages.webmonitor.JobDetails details)
-
getKubernetesClient
public io.fabric8.kubernetes.client.KubernetesClient getKubernetesClient()
-
submitApplicationCluster
public void submitApplicationCluster(JobSpec jobSpec, org.apache.flink.configuration.Configuration conf, boolean requireHaMetadata) throws java.lang.Exception
- Throws:
java.lang.Exception
-
isHaMetadataAvailable
public boolean isHaMetadataAvailable(org.apache.flink.configuration.Configuration conf)
-
validateHaMetadataExists
protected void validateHaMetadataExists(org.apache.flink.configuration.Configuration conf)
-
submitSessionCluster
public void submitSessionCluster(org.apache.flink.configuration.Configuration conf) throws java.lang.Exception- Throws:
java.lang.Exception
-
submitJobToSessionCluster
public org.apache.flink.api.common.JobID submitJobToSessionCluster(io.fabric8.kubernetes.api.model.ObjectMeta meta, FlinkSessionJobSpec spec, org.apache.flink.configuration.Configuration conf, @Nullable java.lang.String savepoint) throws java.lang.Exception- Throws:
java.lang.Exception
-
isJobManagerPortReady
public boolean isJobManagerPortReady(org.apache.flink.configuration.Configuration config)
-
listJobs
public java.util.Collection<org.apache.flink.runtime.client.JobStatusMessage> listJobs(org.apache.flink.configuration.Configuration conf) throws java.lang.Exception- Throws:
java.lang.Exception
-
requestJobResult
public org.apache.flink.runtime.jobmaster.JobResult requestJobResult(org.apache.flink.configuration.Configuration conf, org.apache.flink.api.common.JobID jobID) throws java.lang.Exception- Throws:
java.lang.Exception
-
getClusterClient
@VisibleForTesting protected org.apache.flink.client.program.ClusterClient<java.lang.String> getClusterClient(org.apache.flink.configuration.Configuration config) throws java.lang.Exception- Throws:
java.lang.Exception
-
cancelJob
public void cancelJob(FlinkDeployment deployment, UpgradeMode upgradeMode, org.apache.flink.configuration.Configuration conf) throws java.lang.Exception
- Throws:
java.lang.Exception
-
waitForClusterShutdown
@VisibleForTesting protected void waitForClusterShutdown(org.apache.flink.configuration.Configuration conf)
-
deleteClusterDeployment
public void deleteClusterDeployment(io.fabric8.kubernetes.api.model.ObjectMeta meta, FlinkDeploymentStatus status, boolean deleteHaData)
-
cancelSessionJob
public void cancelSessionJob(FlinkSessionJob sessionJob, UpgradeMode upgradeMode, org.apache.flink.configuration.Configuration conf) throws java.lang.Exception
- Throws:
java.lang.Exception
-
triggerSavepoint
public void triggerSavepoint(java.lang.String jobId, SavepointTriggerType triggerType, SavepointInfo savepointInfo, org.apache.flink.configuration.Configuration conf) throws java.lang.Exception- Throws:
java.lang.Exception
-
getLastCheckpoint
public java.util.Optional<Savepoint> getLastCheckpoint(org.apache.flink.api.common.JobID jobId, org.apache.flink.configuration.Configuration conf) throws java.lang.Exception
- Throws:
java.lang.Exception
-
fetchSavepointInfo
public SavepointFetchResult fetchSavepointInfo(java.lang.String triggerId, java.lang.String jobId, org.apache.flink.configuration.Configuration conf)
-
disposeSavepoint
public void disposeSavepoint(java.lang.String savepointPath, org.apache.flink.configuration.Configuration conf) throws java.lang.Exception- Throws:
java.lang.Exception
-
getClusterInfo
public java.util.Map<java.lang.String,java.lang.String> getClusterInfo(org.apache.flink.configuration.Configuration conf) throws java.lang.Exception- Throws:
java.lang.Exception
-
getJmPodList
public io.fabric8.kubernetes.api.model.PodList getJmPodList(FlinkDeployment deployment, org.apache.flink.configuration.Configuration conf)
-
-