Elkhan Dadashov created FLINK-32884:
---------------------------------------

             Summary: PyFlink remote execution should support URLs with paths 
and https scheme
                 Key: FLINK-32884
                 URL: https://issues.apache.org/jira/browse/FLINK-32884
             Project: Flink
          Issue Type: New Feature
          Components: Client / Job Submission, Runtime / REST
    Affects Versions: 1.17.1
            Reporter: Elkhan Dadashov


Currently, the `SUBMIT_ARGS=remote -m http://<hostname>:<port>` format. For 
local execution it works fine `SUBMIT_ARGS=remote -m http://localhost:8081`, 
but it does not support the placement of the JobManager befind a proxy or using 
an Ingress for routing to a specific Flink cluster based on the URL path. In 
current scenario, it expects JobManager access PyFlink jobs at 
`http://<hostname>:<port>/v1/jobs` endpoint. Mapping to a non-root location, 
`https://<hostname>:<port>/flink-clusters/namespace/flink_job_deployment/v1/jobs`
 is not supported.

Since RestClusterClient talks to the JobManager via its REST endpoint, the 
right format for `SUBMIT_ARGS` is URL with path (also support for https scheme).

I intend to change these classes in a backward compatible way

flink-clients/src/main/java/org/apache/flink/client/ClientUtils.java
flink-clients/src/main/java/org/apache/flink/client/cli/DefaultCLI.java
flink-clients/src/main/java/org/apache/flink/client/program/rest/RestClusterClient.java
flink-core/src/main/java/org/apache/flink/configuration/RestOptions.java
flink-core/src/main/java/org/apache/flink/util/NetUtils.java



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to