I am trying to configure pound to help me first determine a what backend 
to send the request to, and then to maintain affinity for that backend.

Hello everybody,

I've got 4 domino mail server clusters as back ends (8 total servers) for 
inotes, and each one of those has an authentication page that works as 
follows:

1. When the user logs in, the mail server performs a lookup to find out 
what that user's home mail server is.  It then sets a header "X-Notes" 
accordingly, which contains a value later evaluated by pound.  Note that a 
cookie called "LtpaToken" is also set, which I'm attempting to use for 
session tracking.
2. At the next request, pound directs that user to the correct mail 
server, using a HeadRequire statement.

My problem lies in using the HeadRequire to do this.  I understand that 
the header does not persist, so the next HeadRequire will not match. 
Modifying the application to keep setting that header is a possibility, 
but one that I would like to avoid.

Is there a way to configure pound to perform the HeadRequire once, and 
then use session tracking to keep the user at a backend?

My config is pasted below.

Thanks in advance,
Justin

##################################################
User    "wwwrun"
Group   "www"
LogFacility local1
LogLevel 1
Control "/tmp/sinotes.ctl"
# Timeout for Clients - Default is 10, but if you start seeing client 
timeout errors, increase this
Client 30
# Timeout for BackEnds - Default is 15, but increase or decrease as needed
TimeOut 90

# Listener for HTTP requests
ListenHTTP
        Address 10.1.100.218
        Port    81

        # Cluster A
        Service
                HeadRequire "X-Notes: .*A.*" 
 
                Session
                        Type    Cookie
                        ID      "LtpaToken"
                        TTL     300
                End
 
                # pwapdom01
                BackEnd
                        Address 10.1.254.110
                        Port 80
                        Priority 9
                End

                # pwapdom02
                BackEnd 
                        Address 10.1.254.126
                        Port 80
                        Priority 1
                End

        End
 
        # Cluster B
        Service
                HeadRequire "X-Notes: .*B.*"

                Session
                        Type    Cookie
                        ID      "LtpaToken"
                        TTL     300
                End

                # pwapdom02
                BackEnd
                        Address 10.1.254.126
                        Port 80
                        Priority 1
                End

                # pwapdom08
                BackEnd 
                        Address 10.1.254.62
                        Port 80
                        Priority 9
                End

        End

        # Cluster C
        Service 
                HeadRequire "X-Notes: .*C.*"

                Session
                        Type    Cookie
                        ID      "LtpaToken"
                        TTL     300
                End

                # pwapdom10
                BackEnd
                        Address 10.1.254.116
                        Port 80
                        Priority 9
                End
                # pwapdom11
                BackEnd
                        Address 10.1.254.120
                        Port 80
                        Priority 1
                End
        End

        # Cluster D
        Service 
                HeadRequire "X-Notes: .*D.*"

                Session
                        Type    Cookie
                        ID      "LtpaToken"
                        TTL     300
                End

                # pwtcapdom01
                BackEnd 
                        Address 10.32.0.51
                        Port 80
                End
 
                # pwapdom01 (Only if pwtcapdom01 is dead)
                Emergency
                        Address 10.1.254.110
                        Port 80
                End
        End

        # Catch-All
        Service 
                # pwapdom01
                BackEnd 
                        Address 10.1.254.110
                        Port 80
                End

                # pwapdom02
                BackEnd 
                        Address 10.1.254.126
                        Port 80
                End

                # pwapdom08
                BackEnd 
                        Address 10.1.254.62
                        Port 80
                End

                # pwapdom10
                BackEnd 
                        Address 10.1.254.116
                        Port 80
                End
                # pwapdom11
                BackEnd 
                        Address 10.1.254.120
                        Port 80
                End
        End
End


--
To unsubscribe send an email with subject unsubscribe to [email protected].
Please contact [email protected] for questions.

Reply via email to