[ 
https://issues.apache.org/jira/browse/FLINK-16789?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rong Rong updated FLINK-16789:
------------------------------
    Description: 
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.

  was:
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}
-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.




> Support JMX RMI 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
>
> 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)

Reply via email to