Am 15. August 2022 03:47:18 MESZ schrieb Chew Kok Hoor <kokh...@gmail.com>:
>Hi Thomas,
Hi,
> Thanks for pointing me to another option which is the
>DNSMembershipService.
>
>Hope you can help to clarify two things in the dns-membership-service.yml:
>
>1. For spec.port, is port 8888 mandatory? Or can it be any other number? I
>checked the source code for DNSMembershipService.java and can't find
>reference to the port number in it.
I think the port number is mandatory in k8s manifest, and is not used in tomcat
DNS membership service.
So any valid tcp port number will do.
>2. For spec.selector.app, is this the name to my tomcat app name (
>metadata.labels.app) ?
Yes, the selector must match your pods label, to pick up all pods that will
belong to your tomcat cluster.
>
>Thanks.
>
>Regards,
> Kok Hoor
>
>
>[image: width=]
><https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
>Virus-free.www.avast.com
><https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
><#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
>
>On Sun, 14 Aug 2022 at 17:01, Thomas Meyer <tho...@m3y3r.de> wrote:
>
>> Hi,
>>
>> Two remarks from my side:
>> 1. CloudMembershipService is not so usable, and seems to originally target
>> OpenShift. To make it work you need to create ServiceAccount and give read
>> permission for listing all pods in namespace. This seems to be missing in
>> your case. It also has some assumptions about namespaces and naming of k8s
>> manifests/objects.
>>
>> 2. DNSMembershipService is much easier to use, I suggest you to have a
>> look at this instead:
>> https://tomcat.apache.org/tomcat-9.0-doc/api/org/apache/catalina/tribes/membership/cloud/DNSMembershipProvider.html
>> For this Membership Provider you only need to add headless Service
>> manifest, I.e. ClusterIP: none.
>>
>> Mfg
>> Thomas
>>
>> Am 14. August 2022 09:52:52 MESZ schrieb Chew Kok Hoor <kokh...@gmail.com
>> >:
>>>
>>> Hi,
>>>
>>> I am trying to setup Tomcat clustering running in AKS, however the
>>> standard settings don't seem to work.
>>>
>>> As per the documentation I have setup following Cluster configuration in
>>> server.xml inside my <Host> tag:
>>> <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster">
>>> <Channel
>>> className="org.apache.catalina.tribes.group.GroupChannel">
>>> <Membership
>>> className="org.apache.catalina.tribes.membership.cloud.CloudMembershipService"/>
>>> </Channel>
>>> </Cluster>
>>>
>>> But I received a 'Failed connection to
>>> https://10.0.0.1:443/api/v1/namespaces/tomcat/pods' error. Is there any way
>>> to resolve this?
>>>
>>> Error message:
>>>
>>> INFO: Cluster is about to start
>>> Aug 14, 2022 3:44:26 PM org.apache.catalina.tribes.transport.ReceiverBase
>>> bind
>>> INFO: Receiver Server Socket bound to:[/10.240.0.76:4000]
>>> Aug 14, 2022 3:44:26 PM
>>> org.apache.catalina.tribes.membership.cloud.CloudMembershipProvider
>>> getNamespace
>>> WARNING: Namespace not set
>>> Aug 14, 2022 3:44:26 PM
>>> org.apache.catalina.tribes.membership.cloud.KubernetesMembershipProvider
>>> fetchMembers
>>> SEVERE: Failed to open stream
>>> java.io.IOException: Failed connection to [
>>> https://10.0.0.1:443/api/v1/namespaces/tomcat/pods] with token
>>> [--redacted--]
>>> at
>>> org.apache.catalina.tribes.membership.cloud.TokenStreamProvider.openStream(TokenStreamProvider.java:56)
>>> at
>>> org.apache.catalina.tribes.membership.cloud.KubernetesMembershipProvider.fetchMembers(KubernetesMembershipProvider.java:136)
>>> at
>>> org.apache.catalina.tribes.membership.cloud.CloudMembershipProvider.heartbeat(CloudMembershipProvider.java:127)
>>> at
>>> org.apache.catalina.tribes.membership.cloud.KubernetesMembershipProvider.start(KubernetesMembershipProvider.java:116)
>>> at
>>> org.apache.catalina.tribes.membership.cloud.CloudMembershipService.start(CloudMembershipService.java:152)
>>> at
>>> org.apache.catalina.tribes.group.ChannelCoordinator.internalStart(ChannelCoordinator.java:192)
>>> at
>>> org.apache.catalina.tribes.group.ChannelCoordinator.start(ChannelCoordinator.java:106)
>>> at
>>> org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:190)
>>> at
>>> org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:190)
>>> at
>>> org.apache.catalina.tribes.group.interceptors.MessageDispatchInterceptor.start(MessageDispatchInterceptor.java:224)
>>> at
>>> org.apache.catalina.tribes.group.ChannelInterceptorBase.start(ChannelInterceptorBase.java:190)
>>> at
>>> org.apache.catalina.tribes.group.GroupChannel.start(GroupChannel.java:504)
>>> at
>>> org.apache.catalina.ha.tcp.SimpleTcpCluster.startInternal(SimpleTcpCluster.java:564)
>>> at
>>> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
>>> at
>>> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:908)
>>> at
>>> org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:835)
>>> at
>>> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
>>> at
>>> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396)
>>> at
>>> org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386)
>>> at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
>>> at
>>> org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
>>> at
>>> java.base/java.util.concurrent.AbstractExecutorService.submit(Unknown
>>> Source)
>>> at
>>> org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919)
>>> at
>>> org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:265)
>>> at
>>> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
>>> at
>>> org.apache.catalina.core.StandardService.startInternal(StandardService.java:432)
>>> at
>>> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
>>> at
>>> org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930)
>>> at
>>> org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
>>> at org.apache.catalina.startup.Catalina.start(Catalina.java:772)
>>> at
>>> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
>>> Method)
>>> at
>>> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown
>>> Source)
>>> at
>>> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown
>>> Source)
>>> at java.base/java.lang.reflect.Method.invoke(Unknown Source)
>>> at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345)
>>> at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:476)
>>> Caused by: java.io.IOException: Server returned HTTP response code: 403 for
>>> URL: https://10.0.0.1:443/api/v1/namespaces/tomcat/pods
>>> at
>>> java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(Unknown
>>> Source)
>>> at
>>> java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown
>>> Source)
>>> at
>>> java.base/sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown
>>> Source)
>>> at
>>> org.apache.catalina.tribes.membership.cloud.AbstractStreamProvider.openStream(AbstractStreamProvider.java:110)
>>> at
>>> org.apache.catalina.tribes.membership.cloud.TokenStreamProvider.openStream(TokenStreamProvider.java:53)
>>> ... 35 more
>>>
>>> Aug 14, 2022 3:44:27 PM org.apache.catalina.ha.session.JvmRouteBinderValve
>>> startInternal
>>> INFO: JvmRouteBinderValve started
>>>
>>> Thanks.
>>>
>>> Regards,
>>> Kok Hoor
>>>
>>> [image: width=]
>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
>>> Virus-free.www.avast.com
>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
>>> <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
>>>
>>> --
>> Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.
>>
--
Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org