Class CloudMembershipService

java.lang.Object
org.apache.catalina.tribes.membership.MembershipServiceBase
org.apache.catalina.tribes.membership.cloud.CloudMembershipService
All Implemented Interfaces:
CloudMembershipServiceMBean, MembershipListener, MembershipService

public class CloudMembershipService extends MembershipServiceBase implements CloudMembershipServiceMBean
A MembershipService that uses Kubernetes API(default) or DNS to retrieve the members of a cluster.

The default implementation of the MembershipProvider component is the KubernetesMembershipProvider. The MembershipProvider can be configured by the membershipProviderClassName property. Possible shortcuts are kubernetes and dns. For dns look at the DNSMembershipProvider.

Configuration example

server.xml
 
 <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"/>
           </Channel>
         </Cluster>
         ...
  
  
  • Field Details Link icon

    • sm Link icon

      protected static final StringManager sm
    • MEMBERSHIP_PROVIDER_CLASS_NAME Link icon

      public static final String MEMBERSHIP_PROVIDER_CLASS_NAME
      See Also:
    • INITIAL_ID Link icon

      protected static final byte[] INITIAL_ID
  • Constructor Details Link icon

    • CloudMembershipService Link icon

      public CloudMembershipService()
  • Method Details Link icon

    • getProperty Link icon

      public Object getProperty(String name)
      Return a property.
      Parameters:
      name - the property name
      Returns:
      the property value
    • setProperty Link icon

      public boolean setProperty(String name, String value)
      Set a property.
      Parameters:
      name - the property name
      value - the property value
      Returns:
      true if the property was successfully set
    • getMembershipProviderClassName Link icon

      public String getMembershipProviderClassName()
      Return the membership provider class.
      Returns:
      the classname
    • setMembershipProviderClassName Link icon

      public void setMembershipProviderClassName(String membershipProviderClassName)
      Set the membership provider class.
      Parameters:
      membershipProviderClassName - the class name
    • start Link icon

      public void start(int level) throws Exception
      Description copied from interface: MembershipService
      Starts the membership service. If a membership listeners is added the listener will start to receive membership events.
      Specified by:
      start in interface MembershipService
      Parameters:
      level - - level MBR_RX starts listening for members, level MBR_TX starts broadcasting the server
      Throws:
      Exception - if the service fails to start.
    • stop Link icon

      public void stop(int level)
      Description copied from interface: MembershipService
      Stops the membership service. If a membership listeners is added the listener will start to receive membership events.
      Specified by:
      stop in interface MembershipService
      Parameters:
      level - - level MBR_RX stops listening for members, level MBR_TX stops broadcasting the server
    • getLocalMember Link icon

      public Member getLocalMember(boolean incAliveTime)
      Description copied from interface: MembershipService
      Get the local member.
      Specified by:
      getLocalMember in interface MembershipService
      Parameters:
      incAliveTime - true to set the alive time on the local member
      Returns:
      the member object that defines this member
    • setLocalMemberProperties Link icon

      public void setLocalMemberProperties(String listenHost, int listenPort, int securePort, int udpPort)
      Description copied from interface: MembershipService
      Sets the local member properties for broadcasting.
      Specified by:
      setLocalMemberProperties in interface MembershipService
      Parameters:
      listenHost - Listen to host
      listenPort - Listen to port
      securePort - Use a secure port
      udpPort - Use UDP
    • setPayload Link icon

      public void setPayload(byte[] payload)
      Description copied from interface: MembershipService
      Set a payload to be broadcasted with each membership broadcast.
      Specified by:
      setPayload in interface MembershipService
      Parameters:
      payload - byte[]
    • setDomain Link icon

      public void setDomain(byte[] domain)
      Description copied from interface: MembershipService
      Set the associated domain.
      Specified by:
      setDomain in interface MembershipService
      Parameters:
      domain - the domain
    • getMembershipProvider Link icon

      public MembershipProvider getMembershipProvider()
      Description copied from interface: MembershipService
      Get the MembershipProvider
      Specified by:
      getMembershipProvider in interface MembershipService
      Returns:
      MembershipProvider
    • setMembershipProvider Link icon

      public void setMembershipProvider(MembershipProvider memberProvider)
    • getConnectTimeout Link icon

      public int getConnectTimeout()
      Specified by:
      getConnectTimeout in interface CloudMembershipServiceMBean
    • setConnectTimeout Link icon

      public void setConnectTimeout(int connectTimeout)
    • getReadTimeout Link icon

      public int getReadTimeout()
      Specified by:
      getReadTimeout in interface CloudMembershipServiceMBean
    • setReadTimeout Link icon

      public void setReadTimeout(int readTimeout)
    • getExpirationTime Link icon

      public long getExpirationTime()
      Specified by:
      getExpirationTime in interface CloudMembershipServiceMBean
    • setExpirationTime Link icon

      public void setExpirationTime(long expirationTime)