You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Rong Rong (Jira)" <ji...@apache.org> on 2020/08/27 17:28:00 UTC

[jira] [Commented] (FLINK-16789) Support JMX RMI random port assign & retrieval via JMXConnectorServer

    [ https://issues.apache.org/jira/browse/FLINK-16789?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17186002#comment-17186002 ] 

Rong Rong commented on FLINK-16789:
-----------------------------------

After discussion in [#13163|https://github.com/apache/flink/pull/13163], we decided to not support this feature. Although using port 0 is consider standard in JVM for getting random port (see: [https://docs.oracle.com/javase/7/docs/api/java/net/ServerSocket.html]) it is also very convenient for users to just directly configure a large port range after FLINK-5552 has been merged. 

 

Closing this ticket as won't fix.

> Support JMX RMI random port assign & retrieval via JMXConnectorServer
> ---------------------------------------------------------------------
>
>                 Key: FLINK-16789
>                 URL: https://issues.apache.org/jira/browse/FLINK-16789
>             Project: Flink
>          Issue Type: New Feature
>          Components: Runtime / Coordination, Runtime / Task
>    Affects Versions: 1.11.0
>            Reporter: Rong Rong
>            Assignee: Rong Rong
>            Priority: Major
>              Labels: pull-request-available
>
> Currently there are no easy way to assign jmxrmi port to a running Flink job.
> The typical tutorial is to add the following to both TM and JM launch env:
> {code:java}
> -Dcom.sun.management.jmxremote
> -Dcom.sun.management.jmxremote.port=9999
> -Dcom.sun.management.jmxremote.local.only=false
> {code}
> However, setting the jmxremote port to 9999 is not usually a viable solution when Flink job is running on a shared environment (YARN / K8s / etc).
> setting *{{-Dcom.sun.management.jmxremote.port=0}}* is the best option however, there's no easy way to retrieve such port assignment. We proposed to use JMXConnectorServerFactory to explicitly establish a JMXServer inside *{{ClusterEntrypoint}}* & *{{TaskManagerRunner}}*.
> With the JMXServer explicitly created, we can return the JMXRMI information via either REST API or WebUI.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)