Hello Christopher.
Thanks for the response!

Let me walk you through the Environment.,
I have a cluster and I am installing multiple microservices in the cluster. And 
one of the microservices I am integrating the JMX on of the microservices.,
and the mentioned IP of the pod is being changed dynamically after each 
deployment .

Here are the annotations that I am using in my deployment:
- name: JAVA_OPTS
            #   value: >-
            #     -Dcom.sun.management.jmxremote
            #     -Dcom.sun.management.jmxremote.authenticate=false
            #     -Dcom.sun.management.jmxremote.ssl=false
            #     -Dcom.sun.management.jmxremote.local.only=false
            #     -Dcom.sun.management.jmxremote.port=49151
            #     -Dcom.sun.management.jmxremote.rmi.port=49151
            #     
-Djava.rmi.server.hostname=lab1workflow4scalsvc2zus1-service.hqm-lab1.svc.cluster.local

as i said , I have implemented these in three scenarios., Catalina_opts / 
Java_opts / Java_Tool_opts

I have tried deploying catalina_ots and Java_opts as in the case of above 
mentioned.
I also tried other way, mentioning all these in the values.yaml file ( I am 
using Helm Deployment to upgrade my deployments) and referring these 
annotations as , and mentioning them in the Value
env:
            - name: CATALINA_OPTS
              value: {{ .Values.deployment.javaVMMemoryArgument }}


getting netstat output from my pod:
root@lab1workflow4scalsvc2zus1-deployment-fd64ff775-cwzn6:/# netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       
PID/Program name
tcp6       0      0 :::10109                :::*                    LISTEN      
1/java
tcp6       0      0 :::9109                 :::*                    LISTEN      
1/java

root@lab1workflow4scalsvc2zus1-deployment-fd64ff775-cwzn6:/# ps aux | grep 
tomcat
root         563  0.0  0.0   6328   748 pts/0    S+   15:55   0:00 grep 
--color=auto tomcat

right now , I am passing my args with Catalina_opts in my deployment and I am 
not able to get any tomcat process pid while i check with netstat -apn , I can 
see multiple Java Process but not single tomcat process

My Jmx port is being configured as a service., so that it could be bounded with 
Tcp protocol externally to the container., and allow all tcp connections.

Hope I am able to provide you some detailed information.,
Please let me know., if I can help you with anything in further!

Thanks & Regards,
--

SAI VAMSI .B
Senior DevOps Engineer


________________________________
From: Christopher Schultz <ch...@christopherschultz.net>
Sent: Wednesday, December 6, 2023 20:40
To: users@tomcat.apache.org <users@tomcat.apache.org>
Subject: Re: [EXT] Re: Datadog _ JMX Integration facing connection issues.

Sai Vamsi,

On 12/5/23 08:57, Bodavula, Sai Vamsi Mohan Krishna (TR Technology) wrote:
> I have added my annotations in Catalina_opts ., and I am not able to see any 
> Java Process with the JMX, neither the port is being listened.
> It came back to previous stage where Annotations are not on the JVM .,
> Came back to previous stage, where connection refused error.,  as follows.
>
> Could not initialize instance: tomcat-10.75.12.136-49151:
> java.util.concurrent.ExecutionException: java.io.IOException: Failed to 
> retrieve RMIServer stub: javax.naming.ServiceUnavailableException [Root 
> exception is java.rmi.ConnectException: Connection refused to host: 
> 10.75.12.136; nested exception is:
>          java.net.ConnectException: Connection refused (Connection refused)]
>          at 
> java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
>          at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
>          at org.datadog.jmxfetch.App.processRecoveryResults(App.java:953)
>          at org.datadog.jmxfetch.App$5.invoke(App.java:927)
>          at 
> org.datadog.jmxfetch.tasks.TaskProcessor.processTasks(TaskProcessor.java:63)
>          at org.datadog.jmxfetch.App.init(App.java:917)
>          at org.datadog.jmxfetch.App.start(App.java:413)
>          at org.datadog.jmxfetch.App.run(App.java:173)
>          at org.datadog.jmxfetch.JmxFetch.main(JmxFetch.java:57)
>          at org.datadog.jmxfetch.App.main(App.java:91)

Right: the DataDog server is unable to connect to your appication via
JMX. I'm assuming that 10.75.12.136 is the IP where Tomcat is running,
and that DataDog isn't running on that server. It's on some other IP, right?

> Here we were not able to find any process , to confirm that atleast
> port is being listened to.
What is your exact CATALINA_OPTS value (masking any secrets that may be
in there).

Is Tomcat definitely running? Can you prove that with a "ps" listing,
for example? That will also confirm it's running with the proper
CATALINA_OPTS settings.

Can you run "netstat" and show all of the ports your Tomcat process is
listening to?

I'm assuming that your Tomcat process is being hosted in some kind of
container. Is the IP address 10.75.12.136 the IP of the container, or
the IP of the host which hosts the container? Is your JMX port
configured to be visible external to the container itself, or only
internally to the container?

-chris



> Thanks & Regards,
> --
>
> SAI VAMSI .B
> Senior DevOps Engineer
>
> ________________________________
> From: Christopher Schultz <ch...@christopherschultz.net>
> Sent: Tuesday, December 5, 2023 19:19
> To: users@tomcat.apache.org <users@tomcat.apache.org>
> Subject: Re: [EXT] Re: Datadog _ JMX Integration facing connection issues.
>
> Sai Vamsa,
>
> On 12/5/23 01:25, Bodavula, Sai Vamsi Mohan Krishna (TR Technology) wrote:
>> Thanks for the response..
>>
>> as you suggested., I tried adding my annotations in CATALINA_OPTS., Instead 
>> of Java_Opts and Java_tool_options.,
>>
>> But its not even working out., Java process is not getting created., and 
>> port is not bound to any process.
>> Let me know if I am missing anything.
>
> Okay. Can you please summarize the current situation? I think you've
> made a few changes, etc. so it would help to know the current state.
>
> Stop Tomcat and any other related services, delete all appropriate log
> files, etc. and start Tomcat (or attempt to). Then post any output that
> is relevant, and if you get things like "address in use" then please
> post the details about which process id owns that port and the full
> command-line that launched that process.
>
> Thanks,
> -chris
>
>> ________________________________
>> From: Christopher Schultz <ch...@christopherschultz.net>
>> Sent: Monday, December 4, 2023 23:22
>> To: users@tomcat.apache.org <users@tomcat.apache.org>
>> Subject: Re: [EXT] Re: Datadog _ JMX Integration facing connection issues.
>>
>> Sai Vamsi,
>>
>> On 12/4/23 03:53, Bodavula, Sai Vamsi Mohan Krishna (TR Technology) wrote:
>>> Firstly thanks for adding a point me in asking me to check, if the 
>>> annotations are reflecting in the Java process, which opened me a door to 
>>> add the concerned annotations in correct place., by adding in 
>>> java_tool_options in stead of Java_opts.
>>
>> You will probably want to use CATALINA_OPTS instead of any of the other
>> ones. JAVA_TOOL_OPTS isn't an environment variable regognized by Tomcat.
>> You certainly don't want to use JAVA_OPTS, because Tomcat uses JAVA_OPTS
>> any time it invokes a JVM. For example, running bind/digest.sh doesn't
>> need to have the JMX subsystem starting-up and trying to grab a port.
>>
>> JAVA_TOOL_OPTS is an environment variable used by JVM-launching
>> processes, like jps for example...
>>
>>> yeah they are reflecting and creating a Java Process.
>>> but I am facing a problem here., while i am checking JSP, Thats :  the port 
>>> i am using here to enable JMX is been opening a process with the mentioned 
>>> port and at the same time shows port is being used.:
>>>
>>> root@lab1workflow4scalsvc2zus1-deployment-577d856494-ftb22:/# jps
>>> Picked up JAVA_TOOL_OPTIONS: -Xms2048M -Xmx10240M 
>>> -XX:+UseStringDeduplication -XX:+UseContainerSupport 
>>> -Dcom.sun.management.jmxremote 
>>> -Dcom.sun.management.jmxremote.authenticate=false 
>>> -Dcom.sun.management.jmxremote.ssl=false 
>>> -Dcom.sun.management.jmxremote.local.only=false 
>>> -Dcom.sun.management.jmxremote.port=49151 
>>> -Djava.rmi.server.hostname=tomcat.default.svc.cluster.local 
>>> -javaagent:/datadog-lib/dd-java-agent.jar 
>>> -XX:OnError=/datadog-lib/continuousprofiler/tmp/dd_crash_uploader.sh 
>>> -XX:ErrorFile=/datadog-lib/continuousprofiler/tmp/hs_err_pid_%p.log
>>> Error: Exception thrown by the agent : java.rmi.server.ExportException: 
>>> Port already in use: 49151; nested exception is:
>>>            java.net.BindException: Address already in use (Bind failed)
>>
>> Yes: you have set JAVA_TOOL_OPTS and then run jps. jps is trying to bind
>> to your port which is aready bound by your Tomcat process.
>>
>> The solution is to use only CATALINA_OPTS to set these options.
>>
>> -chris
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
>> For additional commands, e-mail: users-h...@tomcat.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

  • Re: [EXT] Re: Datadog _ ... Bodavula, Sai Vamsi Mohan Krishna (TR Technology)
    • Re: [EXT] Re: Datad... Christopher Schultz
      • Re: [EXT] Re: D... Bodavula, Sai Vamsi Mohan Krishna (TR Technology)
        • Re: [EXT] R... Christopher Schultz
          • Re: [EX... Thomas Meyer
            • Re... Bodavula, Sai Vamsi Mohan Krishna (TR Technology)
          • Re: [EX... Bodavula, Sai Vamsi Mohan Krishna (TR Technology)
            • Re... Christopher Schultz
            • Re... Bodavula, Sai Vamsi Mohan Krishna (TR Technology)
            • Re... Christopher Schultz
            • Re... Bodavula, Sai Vamsi Mohan Krishna (TR Technology)
            • Re... Christopher Schultz
            • Re... Bodavula, Sai Vamsi Mohan Krishna (TR Technology)
            • Re... logo
            • Re... Christopher Schultz
            • Re... Bodavula, Sai Vamsi Mohan Krishna (TR Technology)
            • Re... Chuck Caldarale
            • Re... Bodavula, Sai Vamsi Mohan Krishna (TR Technology)
            • Re... Christopher Schultz
            • Re... Bodavula, Sai Vamsi Mohan Krishna (TR Technology)
            • Re... Christopher Schultz

Reply via email to