May 29 2020 Friday
Sametime v11 on CentOS 8....head meet desk
UPDATE 07/24/2020 - if you are still having issues after these fixes, head over to Tom Hillebrand's blog http://www.surfdomino.com/web.nsf/pages/ST11FP1
I'll admit it. I wasn't exactly sure where the migration to HCL was going to end up. From a features perspective and moving the stagnant products forward it have been nothing short of astonishing. From a documentation and sales viewpoint it has been anything but. Point in case Sametime v11.
Sametime 11 was the promised land. Sametime without the need for DB2 and WAS. Sametime installable on a single server again. Sametime with persistent chat and multi device support. Enough to make even the customers still on 8.0.2 (the last non-WAS version) to stand up like a meerkat and take notice. So here's my tome.....
As a general rule when I have server hanging off the full internet I put it in a DMZ. Additionally whenever possible when I put a server in the DMZ it's going to be Linux. So Domino and Sametime on Linux it is. CentOS 8 to be exact. It is here the Homer-esque story begins....
I'll start off with this statement. IBM documentation was always woeful. IBM was a veritable Mark Twain when compared to HCL. Good Lord. It is nothing short of atrocious. Especially for Sametime. What we have here is a failure to communicate.
First the good news, I have just gotten it working after several different attempts and more than 8 hours of trying, Almost a WAS like effort. Now, I'm no Linux Deus, but I can get by well enough and boy did I struggle. All because HCL hasn't provided even the bare minimum of documentation for the install process and even more important, the OS pre-requisites need to make the product work.
You get this:
A PDF that is somewhat helpful if you don't know MongoDB (I don't) but from an installation and use knowledge dump it is useless.
So here's how I eventually got the promised land of Sametime v11 to work on CentOS 8. I already had Domino working and installed Sametime and Mongo per the guide. But nada. Nothing. Sametime seemed to start and I was able to log in and while chats can be sent the are blank at the both the recipient and senders clients. Great. In the forum there is mention that this field (not at all mentioned in either in the documentation or added by the installer) in the stconfig database:
Upon install the Chat Log Flag below is not set to "relax" which is (apparently) required to make it work, but set to "off" (why HCL?). I changed it per the forum post but no change in my tragic outcome of blank messages:
So if it's not a Sametime issue I figured it must be Mongo, as all the chats are stored there to allow for the new persistent chat. Hum. I don't know Mongo and Sametime has radically changed since I used to do it regularly (I stopped at WAS like most customers did). Another forum post that pointed me to a "trace" folder under the DomData. Off I go and find this file:
Upon opening it and looking around I find this nugget when ever I restart Sametime:
Hum, libstchatloggingmongodb won't start? Sametime uses Mongo for persistent chat, so...... OK, so where is it and what is it? The Linux locate (part of mlocate) and ldd (part of the core OS) are your friends. Be sure to run updatedb often for locate to be useful.
First, does libstchatloggingmongodb file exist?
Yes:
So the file does exist. Let's find out what the file needs:
Well, there's a clue "not found" eh?. A fair number of the libraries that libstchatloggingmongodb.so needs are either not installed or not linked to the correct path (in my case both, although mostly the latter).
I then go down each missing file and find out if it's installed (if not figure out which packages need and them installed). Here's an example of the libwinux.so file that was installed but not linked by the Sametime installer (why not HCL?). Note, I changed the Sametime related paths from
Rinse and repeat until you have all the missing ones linked or installed. However for the life of me I could not get libssl.so.10 and libcrypto.so.10 fixed until I figured out I needed compat-openssl110:
Once that was installed and all the links established the new ldd command looks like this:
With these in place. Sametime v11 on CentOS is finally working. Now to figure out why the embedded client shows me as "away" while I'm actually typing and why you have to kill an entire chat to get it to populate the "chats" view in Notes.. Fun times!
Oh, and to get file transfer to work was another Herculean effort of editing XML files (the trick is which one and what attribute). But still, Sametime without WAS and DB2 is glorious, It just took a long time to get to that point. Thanks HCL for the software and seemingly giving a crap. Now can we have stellar (or maybe just useful) documentation so everyone can install and use the excellent strides you have made?
I'm sure there is a better way,but the above actually worked for me. so while not exhaustive, here's most of the link commands I used for Sametime v11 FP1 on CentOS 8 after Domino, Sametime and Mongo were installed (and remember to change "off to "relax" in the stconfig):
ln -s /opt/hcl/domino/notes/latest/linux/libnotes.so /usr/lib64/libnotes.so
ln -s /opt/hcl/domino/notes/latest/linux/libndgts.so /usr/lib64/libndgts.so
ln -s /opt/hcl/domino/notes/latest/linux/libxmlproc.so /usr/lib64/libxmlproc.so
ln -s /opt/hcl/domino/notes/latest/sticc/libgsk8iccs_64.so /usr/lib64/libgsk8iccs_64.so
ln -s /opt/hcl/domino/notes/latest/linux/libstchatloggingmongodb.so /usr/lib64/libstchatloggingmongodb.so
ln -s /opt/hcl/domino/notes/latest/linux/libmongoclient.so /usr/lib64/libmongoclient.so
ln -s /opt/hcl/domino/notes/latest/linux/libwinux.so /usr/lib64/libwinux.so
ln -s /opt/hcl/domino/notes/latest/linux/libubq.so /usr/lib64/libubq.so
ln -s /opt/hcl/domino/notes/latest/linux/libwinux.so /usr/lib64/libwinux.so
ln -s /opt/hcl/domino/notes/latest/linux/libstts.so /usr/lib64/libstts.so
ln -s /opt/hcl/domino/notes/latest/linux/libboost_chrono.so.1.63.0 /usr/lib64/libboost_chrono.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/libboost_date_time.so.1.63.0 /usr/lib64/libboost_date_time.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/libboost_filesystem.so.1.63.0 /usr/lib64/libboost_filesystem.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/libboost_regex.so.1.63.0 /usr/lib64/libboost_regex.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/libboost_system.so.1.63.0 /usr/lib64/libboost_system.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/libboost_system.so.1.63.0 /usr/lib64/libboost_system.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/libboost_thread.so.1.63.0 /usr/lib64/libboost_thread.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/STOpenSSL/libssl.so.1.0.0 /usr/lib64/libssl.so.1.0.0
I'll admit it. I wasn't exactly sure where the migration to HCL was going to end up. From a features perspective and moving the stagnant products forward it have been nothing short of astonishing. From a documentation and sales viewpoint it has been anything but. Point in case Sametime v11.
Sametime 11 was the promised land. Sametime without the need for DB2 and WAS. Sametime installable on a single server again. Sametime with persistent chat and multi device support. Enough to make even the customers still on 8.0.2 (the last non-WAS version) to stand up like a meerkat and take notice. So here's my tome.....
As a general rule when I have server hanging off the full internet I put it in a DMZ. Additionally whenever possible when I put a server in the DMZ it's going to be Linux. So Domino and Sametime on Linux it is. CentOS 8 to be exact. It is here the Homer-esque story begins....
I'll start off with this statement. IBM documentation was always woeful. IBM was a veritable Mark Twain when compared to HCL. Good Lord. It is nothing short of atrocious. Especially for Sametime. What we have here is a failure to communicate.
First the good news, I have just gotten it working after several different attempts and more than 8 hours of trying, Almost a WAS like effort. Now, I'm no Linux Deus, but I can get by well enough and boy did I struggle. All because HCL hasn't provided even the bare minimum of documentation for the install process and even more important, the OS pre-requisites need to make the product work.
You get this:
A PDF that is somewhat helpful if you don't know MongoDB (I don't) but from an installation and use knowledge dump it is useless.
So here's how I eventually got the promised land of Sametime v11 to work on CentOS 8. I already had Domino working and installed Sametime and Mongo per the guide. But nada. Nothing. Sametime seemed to start and I was able to log in and while chats can be sent the are blank at the both the recipient and senders clients. Great. In the forum there is mention that this field (not at all mentioned in either in the documentation or added by the installer) in the stconfig database:
Upon install the Chat Log Flag below is not set to "relax" which is (apparently) required to make it work, but set to "off" (why HCL?). I changed it per the forum post but no change in my tragic outcome of blank messages:
So if it's not a Sametime issue I figured it must be Mongo, as all the chats are stored there to allow for the new persistent chat. Hum. I don't know Mongo and Sametime has radically changed since I used to do it regularly (I stopped at WAS like most customers did). Another forum post that pointed me to a "trace" folder under the DomData. Off I go and find this file:
Upon opening it and looking around I find this nugget when ever I restart Sametime:
Hum, libstchatloggingmongodb won't start? Sametime uses Mongo for persistent chat, so...... OK, so where is it and what is it? The Linux locate (part of mlocate) and ldd (part of the core OS) are your friends. Be sure to run updatedb often for locate to be useful.
First, does libstchatloggingmongodb file exist?
locate libstchatloggingmongodb
Yes:
So the file does exist. Let's find out what the file needs:
ldd /usr/lib64/libstchatloggingmongodb.so
Well, there's a clue "not found" eh?. A fair number of the libraries that libstchatloggingmongodb.so needs are either not installed or not linked to the correct path (in my case both, although mostly the latter).
I then go down each missing file and find out if it's installed (if not figure out which packages need and them installed). Here's an example of the libwinux.so file that was installed but not linked by the Sametime installer (why not HCL?). Note, I changed the Sametime related paths from
11000000
to latest
in the hope that a future Domino upgrade won't break all the symlinks again:locate libwinux.so
ln -s /opt/hcl/domino/notes/latest/linux/libwinux.so /usr/lib64/libwinux.so
ldd libstchatloggingmongodb.so
Rinse and repeat until you have all the missing ones linked or installed. However for the life of me I could not get libssl.so.10 and libcrypto.so.10 fixed until I figured out I needed compat-openssl110:
yum install compat-openssl110
Once that was installed and all the links established the new ldd command looks like this:
With these in place. Sametime v11 on CentOS is finally working. Now to figure out why the embedded client shows me as "away" while I'm actually typing and why you have to kill an entire chat to get it to populate the "chats" view in Notes.. Fun times!
Oh, and to get file transfer to work was another Herculean effort of editing XML files (the trick is which one and what attribute). But still, Sametime without WAS and DB2 is glorious, It just took a long time to get to that point. Thanks HCL for the software and seemingly giving a crap. Now can we have stellar (or maybe just useful) documentation so everyone can install and use the excellent strides you have made?
I'm sure there is a better way,but the above actually worked for me. so while not exhaustive, here's most of the link commands I used for Sametime v11 FP1 on CentOS 8 after Domino, Sametime and Mongo were installed (and remember to change "off to "relax" in the stconfig):
yum install compat-openssl10
ln -s /opt/hcl/domino/notes/latest/linux/libnotes.so /usr/lib64/libnotes.so
ln -s /opt/hcl/domino/notes/latest/linux/libndgts.so /usr/lib64/libndgts.so
ln -s /opt/hcl/domino/notes/latest/linux/libxmlproc.so /usr/lib64/libxmlproc.so
ln -s /opt/hcl/domino/notes/latest/sticc/libgsk8iccs_64.so /usr/lib64/libgsk8iccs_64.so
ln -s /opt/hcl/domino/notes/latest/linux/libstchatloggingmongodb.so /usr/lib64/libstchatloggingmongodb.so
ln -s /opt/hcl/domino/notes/latest/linux/libmongoclient.so /usr/lib64/libmongoclient.so
ln -s /opt/hcl/domino/notes/latest/linux/libwinux.so /usr/lib64/libwinux.so
ln -s /opt/hcl/domino/notes/latest/linux/libubq.so /usr/lib64/libubq.so
ln -s /opt/hcl/domino/notes/latest/linux/libwinux.so /usr/lib64/libwinux.so
ln -s /opt/hcl/domino/notes/latest/linux/libstts.so /usr/lib64/libstts.so
ln -s /opt/hcl/domino/notes/latest/linux/libboost_chrono.so.1.63.0 /usr/lib64/libboost_chrono.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/libboost_date_time.so.1.63.0 /usr/lib64/libboost_date_time.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/libboost_filesystem.so.1.63.0 /usr/lib64/libboost_filesystem.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/libboost_regex.so.1.63.0 /usr/lib64/libboost_regex.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/libboost_system.so.1.63.0 /usr/lib64/libboost_system.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/libboost_system.so.1.63.0 /usr/lib64/libboost_system.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/libboost_thread.so.1.63.0 /usr/lib64/libboost_thread.so.1.63.0
ln -s /opt/hcl/domino/notes/latest/linux/STOpenSSL/libssl.so.1.0.0 /usr/lib64/libssl.so.1.0.0