I’ve become a fan of Lotus Notes over the past year. I did not create this deployment guide, it predates my time with working with IBM at F5 Networks, but we have a number of customers rolling out BIG-IP with Lotus Notes and using iNotes (the web based client) so I’ve had to learn the solution and that has meant becoming intimately familiar with Lotus.
I have to report that I like Lotus Notes on many levels, from an admin perspective up to a user level. I am primarily a UNIX/LINUX person, but I have spent some time with Exchange as an admin, and Exchange/Outlook is my “daily driver” from an end-user perspective, but if I had to build a mail system today, I would either be using only the current version of Exchange or something like Postfix (a million props to Wietse Venema and IBM Research for saving us from Sendmail in the 1990s) or Zimbra (which takes the open source components and adds great calendar functionality). Now having used Lotus for a while, Lotus gets to join the list of my top enterprise level mail systems.
So, let’s take a look at a couple of things, first, what this deployment guide is about and second, why I’m excited about Lotus from an administrative perspective.
What is this deployment guide about
The goals of this deployment are to provide high availability, acceleration, SSL and TCP offload for Loutus iNotes users while cooperating with the Lotus architecture to provide seamless failover and to direct users to the appropriate servers.
As Rahul Garg, our Software Engineer colleagues at IBM states in his write up about this solution: “Lotus Domino stores information about unique NSF files within a particular cluster in the cluster database directory (cldbdir.nsf). . . We created the assistance service, using Notes Formula Language, and placed the key code within a form called ServersLookup in the Lotus iNotes redirector template. When requested by the load balancer, the ServersLookup form returns one of two HTTP response headers in the format X-Domino-xxxxx, each containing a comma-separated list of servers.”
The follow goes like this, as requests come into a fully functional environment, the BIG-IP iRule, in conjunction with the Lotus Load Balancing Assistance Service, work together to determine where the particular user’s mailbox resides. The Assistance Service provides an X-Domino header that the iRule parses and uses to direct the user to the appropriate Lotus Notes server.
The main components of the BIG-IP installation are described in the deployment guide on page 3 and I will summarize them here:
A health monitor that checks the availability of each Lotus Domino Server
A pool containing the Lotus Domino Servers as members (Combination of IP and Port)
Profiles for Persistence, HTTP Protocol, TCP WAN optimization, TCP LAN optimization and SSL Offload using the clientssl profile
The Virtual Server which ties together all of the above components.
Installing and Administering Notes
The installation has all of the things that make a command line junkie happy. Specifically, a choice of either command line or graphical install (I chose command line):
And, a console driven installation process that is extremely clear:
And when you fire up the server, you actually get an interactive shell to interact with (I’m not that good with it yet):
And finally, a Windows based administration UI allows for all the granular configuration that you may want a GUI for. In fact, the Assistance Service for achieving load balancing Lotus is installed using this admin UI:
I’ve included links to all of the relevant documents below. I hope this post helps clarify what’s going on with Lotus Notes these days and if you’re considering a rollout or working on your current rollout, hopefully these documents will help you properly plan for and execute your high availability deployment.