You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by GitBox <gi...@apache.org> on 2020/02/16 15:26:06 UTC

[GitHub] [tomcat] bohmber opened a new pull request #243: Improved CloudMembershipService documentation and configuration

bohmber opened a new pull request #243: Improved CloudMembershipService documentation and configuration
URL: https://github.com/apache/tomcat/pull/243
 
 
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[GitHub] [tomcat] bohmber edited a comment on issue #243: Improved CloudMembershipService documentation and configuration

Posted by GitBox <gi...@apache.org>.
bohmber edited a comment on issue #243: Improved CloudMembershipService documentation and configuration
URL: https://github.com/apache/tomcat/pull/243#issuecomment-586875798
 
 
   DnsMembershipProvider is needed if you are in the cloud and you don't have kubernetes api access and multicast is not available. Therefore I added an example how to configure DNSMembershipProvider in kubernetes. 
   
   Here is an example from Jean-Frederic Clere
   https://github.com/jfclere/tomcat-openshift/blob/master/conf/server.xml
   
   DNSMembershipProvider is inspired by this i guess: 
   http://jgroups.org/manual4/index.html#_dns_ping
   
   Please read the first few lines

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[GitHub] [tomcat] rmaucher commented on a change in pull request #243: Improved CloudMembershipService documentation and configuration

Posted by GitBox <gi...@apache.org>.
rmaucher commented on a change in pull request #243: Improved CloudMembershipService documentation and configuration
URL: https://github.com/apache/tomcat/pull/243#discussion_r380040258
 
 

 ##########
 File path: java/org/apache/catalina/tribes/membership/cloud/DNSMembershipProvider.java
 ##########
 @@ -30,6 +30,61 @@
 import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
 
+/**
+ * A {@link org.apache.catalina.tribes.MembershipProvider} that uses DNS to retrieve the members of a cluster.<br>
+ *
+ * <p>
+ * <strong>Configuration example for Kubernetes</strong>
+ * </p>
+ *
+ * {@code server.xml }
+ *
+ * <pre>
+ * {@code
+ * <Server ...
+ *
+ *   <Service ...
+ *
+ *     <Engine ...
+ *
+ *       <Host ...
+ *
+ *         <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"
+ *                 membershipProviderClassName="org.apache.catalina.tribes.membership.cloud.DNSMembershipProvider"/>
+ *           </Channel>
+ *         </Cluster>
+ *         ...
+ *  }
+ *  </pre>
+ *
+ * {@code dns-membership-service.yml }
+ *
+ * <pre>
+ * {@code
+ * apiVersion: v1
 
 Review comment:
   One uses rhe Kubernetes API and parses the JSON, the other one is "lightweight" and does the same with a DNS hack request. Personally, I have found the DNS technique wasn't so reliable, so I don't like it. But this is "recommended" as the proper way (access to the REST API) needs security tuning.
   At line 150, it uses Kubernetes logging message because the two do the same thing and run into the same error. If you would want a separate key "because", feel free to "fix" it.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[GitHub] [tomcat] martin-g commented on a change in pull request #243: Improved CloudMembershipService documentation and configuration

Posted by GitBox <gi...@apache.org>.
martin-g commented on a change in pull request #243: Improved CloudMembershipService documentation and configuration
URL: https://github.com/apache/tomcat/pull/243#discussion_r380034929
 
 

 ##########
 File path: java/org/apache/catalina/tribes/membership/cloud/DNSMembershipProvider.java
 ##########
 @@ -30,6 +30,61 @@
 import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
 
+/**
+ * A {@link org.apache.catalina.tribes.MembershipProvider} that uses DNS to retrieve the members of a cluster.<br>
+ *
+ * <p>
+ * <strong>Configuration example for Kubernetes</strong>
+ * </p>
+ *
+ * {@code server.xml }
+ *
+ * <pre>
+ * {@code
+ * <Server ...
+ *
+ *   <Service ...
+ *
+ *     <Engine ...
+ *
+ *       <Host ...
+ *
+ *         <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"
+ *                 membershipProviderClassName="org.apache.catalina.tribes.membership.cloud.DNSMembershipProvider"/>
+ *           </Channel>
+ *         </Cluster>
+ *         ...
+ *  }
+ *  </pre>
+ *
+ * {@code dns-membership-service.yml }
+ *
+ * <pre>
+ * {@code
+ * apiVersion: v1
 
 Review comment:
   At line 150 it uses Kubernetes logging message too. 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[GitHub] [tomcat] martin-g commented on a change in pull request #243: Improved CloudMembershipService documentation and configuration

Posted by GitBox <gi...@apache.org>.
martin-g commented on a change in pull request #243: Improved CloudMembershipService documentation and configuration
URL: https://github.com/apache/tomcat/pull/243#discussion_r380034690
 
 

 ##########
 File path: java/org/apache/catalina/tribes/membership/cloud/DNSMembershipProvider.java
 ##########
 @@ -30,6 +30,61 @@
 import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
 
+/**
+ * A {@link org.apache.catalina.tribes.MembershipProvider} that uses DNS to retrieve the members of a cluster.<br>
+ *
+ * <p>
+ * <strong>Configuration example for Kubernetes</strong>
+ * </p>
+ *
+ * {@code server.xml }
+ *
+ * <pre>
+ * {@code
+ * <Server ...
+ *
+ *   <Service ...
+ *
+ *     <Engine ...
+ *
+ *       <Host ...
+ *
+ *         <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"
+ *                 membershipProviderClassName="org.apache.catalina.tribes.membership.cloud.DNSMembershipProvider"/>
+ *           </Channel>
+ *         </Cluster>
+ *         ...
+ *  }
+ *  </pre>
+ *
+ * {@code dns-membership-service.yml }
+ *
+ * <pre>
+ * {@code
+ * apiVersion: v1
 
 Review comment:
   This is Kubernetes config. Why it is in DNSMembershipProvider ?

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[GitHub] [tomcat] bohmber commented on issue #243: Improved CloudMembershipService documentation and configuration

Posted by GitBox <gi...@apache.org>.
bohmber commented on issue #243: Improved CloudMembershipService documentation and configuration
URL: https://github.com/apache/tomcat/pull/243#issuecomment-586875798
 
 
   DnsMembershipProvider is need if you are in the cloud and you don't have kubernetes api access and multicast is not available. Therefor I added an example how to configure DNSMembershipProvider in kubernetes. In other env you have 
   
   Here is an example from Jean-Frederic Clere
   https://github.com/jfclere/tomcat-openshift/blob/master/conf/server.xml
   
   DNSMembershipProvider is inspired by this i guess: 
   http://jgroups.org/manual4/index.html#_dns_ping
   
   Please read the first few lines

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[GitHub] [tomcat] rmaucher merged pull request #243: Improved CloudMembershipService documentation and configuration

Posted by GitBox <gi...@apache.org>.
rmaucher merged pull request #243: Improved CloudMembershipService documentation and configuration
URL: https://github.com/apache/tomcat/pull/243
 
 
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[GitHub] [tomcat] martin-g commented on a change in pull request #243: Improved CloudMembershipService documentation and configuration

Posted by GitBox <gi...@apache.org>.
martin-g commented on a change in pull request #243: Improved CloudMembershipService documentation and configuration
URL: https://github.com/apache/tomcat/pull/243#discussion_r380046859
 
 

 ##########
 File path: java/org/apache/catalina/tribes/membership/cloud/DNSMembershipProvider.java
 ##########
 @@ -30,6 +30,61 @@
 import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
 
+/**
+ * A {@link org.apache.catalina.tribes.MembershipProvider} that uses DNS to retrieve the members of a cluster.<br>
+ *
+ * <p>
+ * <strong>Configuration example for Kubernetes</strong>
+ * </p>
+ *
+ * {@code server.xml }
+ *
+ * <pre>
+ * {@code
+ * <Server ...
+ *
+ *   <Service ...
+ *
+ *     <Engine ...
+ *
+ *       <Host ...
+ *
+ *         <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"
+ *                 membershipProviderClassName="org.apache.catalina.tribes.membership.cloud.DNSMembershipProvider"/>
+ *           </Channel>
+ *         </Cluster>
+ *         ...
+ *  }
+ *  </pre>
+ *
+ * {@code dns-membership-service.yml }
+ *
+ * <pre>
+ * {@code
+ * apiVersion: v1
 
 Review comment:
   I am confused. 
   `"One uses rhe Kubernetes API..."` - is this DNSMembershipProvider ?
   `...the other one is "lightweight" and does the same with a DNS hack request` - is this KubernetesMembershipProvider ?
   If this is the case then IMO those classes should swap their names.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


[GitHub] [tomcat] rmaucher commented on a change in pull request #243: Improved CloudMembershipService documentation and configuration

Posted by GitBox <gi...@apache.org>.
rmaucher commented on a change in pull request #243: Improved CloudMembershipService documentation and configuration
URL: https://github.com/apache/tomcat/pull/243#discussion_r380049410
 
 

 ##########
 File path: java/org/apache/catalina/tribes/membership/cloud/DNSMembershipProvider.java
 ##########
 @@ -30,6 +30,61 @@
 import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
 
+/**
+ * A {@link org.apache.catalina.tribes.MembershipProvider} that uses DNS to retrieve the members of a cluster.<br>
+ *
+ * <p>
+ * <strong>Configuration example for Kubernetes</strong>
+ * </p>
+ *
+ * {@code server.xml }
+ *
+ * <pre>
+ * {@code
+ * <Server ...
+ *
+ *   <Service ...
+ *
+ *     <Engine ...
+ *
+ *       <Host ...
+ *
+ *         <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"
+ *                 membershipProviderClassName="org.apache.catalina.tribes.membership.cloud.DNSMembershipProvider"/>
+ *           </Channel>
+ *         </Cluster>
+ *         ...
+ *  }
+ *  </pre>
+ *
+ * {@code dns-membership-service.yml }
+ *
+ * <pre>
+ * {@code
+ * apiVersion: v1
 
 Review comment:
   DNSMembershipProvider does the DNS hack request, and KubernetesMembershipProvider is the one using the Kubernetes REST API.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org