Installing Sametime 10 Limited Use

A slight delay on this blog, which I promised to write last week, but I have a good excuse. My original plan was to do an in-place upgrade as Sametime 10 is still 32bit-only enabling it to be upgraded on top of your existing Community Server so long as the underlying Domino install is at least 9.0.1 FP10 32bit. However the system requirements support Windows 2012 and Windows 2016 servers, but not Windows 2008 which was what the server I planned to upgrade was installed on. Yeah, it’s been a while since we had a major Sametime upgrade ūüôā

Change of plan. I decided to start over first by building a standalone Community server and then adding the Proxy Server all without a System Console.

The documentation for this install is a PDF file that is linked to on this page https://www-01.ibm.com/support/docview.wss?uid=ibm10887399. My write-up below is based on my own install using that documentation.

Installing Domino

I built a new Windows 2016 Standard server and installed a new Domino 32 bit 9.0.1 FP10 server on it. IBM Fix Central still has FP10 accessible on it so you can still get it from there.

  • Windows 2016 is a supported server operating system for Domino 9.0.1, so I went with that as it will also support future upgrades.
  • We know that the next major Sametime version is meant to be 64bit-only, so we’re not going to be able to upgrade over 32 bit Domino without uninstalling and re-installing but at least I won’t have to rebuild the entire machine. However, for a customer I’d probably do a side-by-side upgrade so I could have a fallback to the existing Community Server.
  • I like to install Sametime in its own domain as Sametime uses LDAP for authentication and even if that LDAP is a Domino Directory you can’t point to the Directory running the Sametime server.
  • Having the Sametime Community server in its own domain means I can upgrade Domino and upgrade Sametime without touching anything else such as my mail or application domain.

My Domino server then is built as an Enterprise server (which doesn’t need to be licensed separately if you’re only using it for Sametime) in its own domain and with minimal services (remove things like Calendar, Scheduler, RNRMgr from starting up) but leave HTTP.

Installing MongoDB

MongoDB is new to the Sametime requirements and also temporary. It is needed for storing of chat history, but HCL have said they will be changing the DB platform from Mongo in v11 to something else and providing tools to move the data to the new database store at that point. You don’t need to be a MongoDB expert for this step.

First we need to download the right version of MongoDB and separately the Compass add-on.

MongoDB Installer

Compass Addon

The supported MongoDB version is 3.6.5 and fixpacks specifically. Once downloaded we run the installer, make sure you uncheck the box to install “Compass” during the MongoDB install or the install will fail.

Choose “Complete” on this screen

Un-Check this box which is checked by default or the install will fail.

Once completed we then run the Compass installer separately

Now we’re almost ready to start and configure MongoDB. When the server starts it will expect to find the data and log directories so these need to be created in advance or the start will fail. The default locations for those are c:\data\db and c:\program files\mongodb\logs\log.txt (I don’t use these in general but created them purely for the first server start).

Run the mongod.exe first from the install directory which by default is

C:\Program Files\MongoDB\Server\3.6\bin

from a command window run “mongod.exe” which will start the server instance and end up listening on port 27017. Do not shut the server window if running in the foreground at this point!

Now we want to issue commands to the server via the Mongo command line tool which we run using “mongo.exe” from the same directory.

Out of interest at this point if you type the following in a command window you should see both the server listening and command window established connections:

netstat -an |find /i “27017”

Checking The Schema

We now need to make sure the schema version for MongoDB is set correctly to support Sametime’s requirements. From the mongo command window type

use admin
db.system.users.remove({})
db.system.version.find()

my request returned “{‚Äú_id‚ÄĚ: “featureCompatibilityVersion”, “version‚ÄĚ: “3.6”}” so I used the command below to set it correctly then restarted the Mongodb server.

db.system.version.insert({ “_id” : “authSchema”, “currentVersion” : 3 })

The documentation now wants us to add MongoDB as a service using the following instructions however I had problems with it as although it installed as a service it then refused to start returning a 1053 error. After a couple of hours trying to fix that which seems to be Windows related I went another way to get a working service.

This is what the documentation said to use (sc is found in c:\windows\system32 if your path can’t find it)
sc.exe create MongoDB binPath=”\”C:\Program Files\MongoDB\Server\3.6\bin\mongod.exe\” –service — config=\”C:\Program Files\MongoDb\Server\3.6\mongod.cfg”” DisplayName= “MongoDB” start= ‚Äúauto‚ÄĚ

I ended up removing that service since it wouldn’t start (sc delete MongoDB) and adding it using a different syntax from the Mongo bin directory itself

mongod –directoryperdb -dbpath C:\data\mongodb\ –logpath C:\data\mongodb\log\mongo.log –logappend –service –install

That installed the service which started with no problems, including writing to the log file in the new directory I configured on the command line (again the directories have to exist first).

So now Mongodb is installed and running, let us move onto configuration.

Configuring MongoDB

Launch the Mongo Compass Community from your Windows start menu and connect to your locally-running server.

I don’t need to change any of these settings – just press “Connect”
Once connected I am shown a list of existing databases. These are all system databases so don’t delete any of them!

Now we need to create a new database for chatlogging and collections within that new database. Click the “Create Database” button and complete the dialog as shown below. Keep the naming and capitalisation identical to what is shown here, Database Name “chatlogging”, Collection Name “SESSIONS” . If you don’t you will need to modify the sametime.ini later.

Once the database is created we can click on it for further configuration

The documentation wants us to create an additional Collection called “EVENTS”, so we click on “Create Collection” and do that.

Having created the new chatlogging db we need to set up a Mongo user account and give that admin access. We do all this from the Mongodb console again which is accessed by running mongo.exe.

The documentation specifies using the user name “sametimeUser” and the password “sametime”. If you use a values you will need to edit the MongoDB settings in Sametime.ini once you complete the Sametime configuration steps.

The command below not only creates the user but also gives that new user admin rights to the chatlogging database.

use admin

db.createUser({user:”sametimeUser”,pwd: “sametime”,roles:[{role:”readWrite”, db:”chatlogging”},{role: “userAdminAnyDatabase”, db: “admin”}]})

Installing Sametime Standalone

With Domino shut down we can now install the Sametime Community Server. We don’t need a System Console in place before doing this.

Configuring Chat Logging

There are three components to configuring chat logging on the Sametime server:

  1. Enable Chat Logging through stconfig.nsf so the server knows to support it.
  2. Configure the policy files to enable chat logging.
  3. Point the Sametime chat logging to the MongoDB.

Open STConfig.nsf on the server and find the communityservices document then edit that and change the Chat Logging parameter to “relax”

Now we need to modify the XML files that control the policies. We can find those in the Domino program directory and can open them with a text editor.

  • In policies.server.xml set the “current-value” of offlinemsgs.community.enabled to “1” instead of “0”
  • In ‚ÄėOfflineMessages.xml‚Äô set the ‚Äėcurrent-value‚Äô of offlinemsgs.community.enabled to ‚Äú1‚ÄĚ instead of “0”
  • In ‚Äėpolicies.users.xml‚Äô file set the ‚Äėcurrent-value‚Äô of im.enableOfflineMessages to ‚Äú1‚ÄĚ. There will be multiple instances of that value, one for the default and one for the anonymous policies that are available on a standard install.

I will be talking more about manually setting and creating policies in a later blog. The documentation provides a reference URL to detailed policy settings but that URL now returns a 404 so I’m checking with HCL for an updated link.

broken link: https://www.ibm.com/support/knowledgecenter/en/SSKTXQ_9.0.1/admin/admin/admin_policy _im_ids.html

In addition, whilst you have policies.users.xml open you can enable the persistent chat feature by setting im.persistentChatEnabled to “1”.

Our last step in this configuration is making sure Sametime knows how to reach MongoDB and your new chatlogging database. If you used the default settings in the documentation and as I’ve documented here and MongoDB is installed locally to the Sametime server then you should not need to change any values, but for reference, and in case you do, the default settings in Sametime.ini are as follows:

[stconvomap]
MONGO_URI=mongodb://127.0.0.1:27017
MONGO_DB=chatlogging
MONGO_COLLECTION=EVENTS 

Chatlogging.ini
CL_MONGO_HOST=127.0.0.1
CL_MONGO_PORT=27017
CL_MONGO_USER=sametimeUser
CL_MONGO_PASSWORD=sametime 
CL_MONGO_AUTH_DBNAME=admin CL_MONGO_DBNAME=chatlogging 

Now give everything a restart and confirm that it all works!

In my next blog I’ll be looking at installing the Sametime Proxy Server again without using the System Console so that I can get access to the new web client and the mobile cilents which are part of the Limited Use entitlement.


Sametime v10 – Technology Changes Galore

Sametime v10 Limited Use shipped last week and later on this week I’ll be posting a step by step guide to my install but for now I wanted to talk about the technology changes that it brings. This release focuses only on the Community server elements, the other components such as Meetings will be part of the v11 version which is due to be released along with Domino v11 towards the end of 2019.

My thanks to Mat Newman who posted this updated roadmap on his blog where he also shares more detail about the licensing

20190601 Sametime Roadmap - Current

“Entitlement” is part of your Notes licensing and enables you to use the chat features of Sametime inside the Notes client, the browser mail cilent , a web client and the standalone mobile client.

The largest changes for the clients in v10 are the support for persistent chat (and chat history) across multiple devices, an improved conversation UI, a new lightweight web client, and the removal of the System Console as a requirement for the Community server install.  Those are all great changes that justify an upgrade to your existing Community servers by themselves.

Starting with the biggest technology change, the System Console (which itself required WebSphere and DB2) is now optional and it is possible to install and manage a Community server entirely on Domino. However if you want to use either the browser client or mobile client you will need to still install the Sametime Proxy server which does still require WebSphere and DB2.

To maintain the persistent chat across devices, a server-side storage solution is required and in this release it is MongoDB.  HCL have committed to replacing that in v11 and having a data migration solution out of Mongo so it’s a temporary solution.

You may have heard that Sametime 10 will be 64 bit only on Domino but in fact this first version still requires Domino 32bit and at least 9.0.1 FP10 version.  Domino 10 is 64bit only so right now Sametime 10 cannot be installed on Domino 10.  That does however make it suitable for an in-place upgrade to your existing servers which will already be on 32bit Domino.  This is still very early in the release and the technical requirements are not yet published but will eventually be here .

Last week HCL hosted a webcast where they introduced Sametime v10 and answered questions, I’d recommend looking at the Q&A and watching the webcast here

I have been documenting my own install this weekend – I opted for an in-place upgrade as I assume that’s what the majority of people will be doing on this release, and will be publishing that in the next couple of days.

Java Problems Installing Sametime Community Server

Recently I was asked to install Sametime Community server in a new site. ¬†I’ll be honest, I haven’t done a greenfield site install of Sametime in nearly a year, my work has primarily been upgrading (adding new elements) and maintenance.

As you probably know you can’t just install the Community Server onto Domino, ¬†much of the admin and management features are now controlled solely inside the Sametime System Console running on WebSphere. ¬†When installing WebSphere I installed version 8.5.5 as a base then applied the latest fixpack 12. (now version 13). ¬†The Sametime elements only work with Java SE6 which used to be fine, during the WebSphere install I’d explicitly override its wish to install Java SE8 with a radio button to choose Java SE6, however that option disappeared on fixpack 11 and as of April 2018 Java SE6 is no longer supported even though Sametime still requires it and will continue to do so I suspect well into next year since the next release of a Community server is scheduled for H1 2019 and other elements for H2 2019.

Everything installed fine but then the servers with the applications couldn’t be stopped properly. ¬†I had to uninstall WebSphere and the SSC entirely, then install base 8.5.5 with fixpack 8 (which I had to hand although other early fixpacks may also have worked) that allowed me to choose Java SE6 then install the SSC. ¬†Once it was installed and I tested starting and stopping server elements I went ahead and upgraded the fixpack to 12. ¬†WebSphere will warn you but continue to honour the Java version you originally chose , in this case Java SE 6, and not force an upgrade.

So. Websphere 8.5.5 with FP8 , then FP11.. 12.. 13 whatever you want.  The system requirements still say these are all supported so the loss of the option to choose Java SE 6 during fixpack install is what we are trying to fix.

Ideas, Demos & Your Last Day To Sign Up for Beta 2

So much interesting activity going on around the IBM/HCL products so in case you missed them I thought I could summarise for you.  All are worthy of your time if you care about the future of Domino, Traveler, Verse or Sametime

BETA

Firstly – no time to lose – the registration for Beta 2 of Domino , Notes and Traveler closes¬†TODAY at 12pm EST/5pm GMT. ¬†If you want access to that Beta due this month hopefully then go and sign up here now¬†https://www.ibm.com/blogs/collaboration-solutions/2018/06/11/announcing-ibm-domino-v10-portfolio-beta-program-sign-today/. ¬†Don’t leave it then be disappointed when you don’t get access.

IDEAS

If you have ideas for what you want in Domino, Notes, Traveler, Sametime or anything else – there is a new site (requiring no login) where you can add your ideas and vote on other people’s. ¬†It’s been running for a few weeks and there are some great ideas there already to vote for so it’s a good place to browse during your next coffee break. ¬†Remember the rule – if you don’t ask you don’t get¬†https://domino.ideas.aha.io/ideas

DEMOS

HCL are publishing a series of videos showing how features that are in v10 will behave.  Here are three interesting features announced so far.

Definitely different – a few days looking into the future with HCL (and IBM)

If this blog is tl:dr then here’s your takeaway

I can’t thank everyone at HCL enough for throwing open the doors and leaving them open. Together we will continue to innovate great things for customers

Last week Tim and I were invited to the 1st CWP Factory tour held by HCL at their offices in Chelmsford. ¬†“CWP” stands for “Collaboration Workflow Platform” and includes not only the products HCL took over from IBM late last year such as Domino, Traveler, Verse on Premises and Sametime but also new products that HCL are developing as extensions of those. ¬†These (that I can talk a little bit about) such as HCL Nomad (Notes for iPad) and HCL Places (a new client runnvetaing against Domino 10 and providing integrated collaborative services such as chat, AV , web and Notes applications) will be leapfrogging Domino far over its competitors.

I want to start by thanking HCL for inviting us inside to see their process. We met and made our voices heard with more than 30 developers and executives, all of who wanted to know “do you like this?” ¬†“what are we missing?”. ¬†I came away from the two days with a to-do list of my own at the request of various people to send in more details of problems or requirements I had mentioned when there. ¬†John Paganetti, who is also a customer advocate at HCL, hosted the “ask the developers” impromptu session (we had so many questions so they threw one into the agenda on day 2). ¬†We were told to get to know and reach out directly to the teams with our feedback and questions. ¬†If you don’t have a route to provide feedback and want one then please reach out.

Back in February I attended a Domino Jam hosted by Andrew Manby (@andrewmanby) from IBM in London. ¬†These were held all over the world and attendees were pushed to brainstorm around features that were missing or needed. ¬†That feedback was used to create priorities for v10 and many of the features requested at my session and others have appeared in the current beta and are committed to a v10 release. ¬†At the end of the 2nd day of the factory tour we again had a Domino Jam hosted by Andrew Manby but this time for Domino 11 features – wheeeeeeee! ¬† With the Jams and the Destination Domino blog as well as the #domino2025 hashtag activity, IBM are really stepping up to the products in a way they haven’t in several years. ¬†I want to recognise the hard work being done by Andrew, by Uffe Sorensen, and by Mat Newman amongst others, to make this IBM/HCL relationship work.

So what was the factory tour? It was a 2 day conference held at HCL’s (still being built) offices. I am pleased to say it was put together very informally, we were split into groups of about 10 (hi Daniel, Francie, Julian, Richard, Paul, Nathan, Devin, Fabrice!) and one by one the development teams came and took our feedback on the work they are doing. ¬†We worked with the Verse (on premises) team, the TCO team (looking at the Domino and Sametime servers), the Notes client team, the Nomad team and the Application Development team. ¬†It was an intense day in a good way with so much information being shared with us and questions being asked of us. ¬†It was also good to be told that the majority of what we saw and discussed could be shared publicly.

A few highlights (out of many) from the two days that were new to me:

  • The new database repair and folder sync features in Domino 10 (shame on me for not remembering what they are called). The database repair feature will detect when a database is corrupted and replace it whilst the server is running with a new instance from a working cluster mate (another good reason to cluster). ¬†The folder sync feature will keep any ¬†Domino database files or NLOs in any listed folders in sync. ¬†This stuff is so cool and exactly what Domino clustering needed so we asked for them to extend the sync feature to include any files in the HTML directory such as HTML CSS and CGI scripts and they are considering that (v10 is a tight delivery timeline right now so no guarantees of anything).
  • Some very candid discussions (I think repeated multiple times by everyone there) about getting rid of WebSphere for Sametime in the future and how to better provide Sametime services purely under Domino.
  • HCL Places looking much evolved even in the few weeks since it was first shown at Engage – this is going to be a game changer client when it comes out.
  • The Domino General Query Facility (DGQF) available in Domino 10 is the biggest investment in Notes/Domino code in 10 years. A query language accessible outside Domino that doesn’t require any ¬†knowledge of Domino design by a developer. ¬†Using DGQF you can rapidly query collections of documents represented by any criteria not necessarily views or forms. ¬†Using DGQF a regular web developer would be able to build a Node application, for instance, using back-end Domino data without ever having to learn the structure of the Domino database or touch Domino Designer. ¬†Here’s a sneaky picture I took of the positioning for DGQF.John Curtis who is the lead designer behind DGQF has been very responsive on twitter to questions about how it will work (@john_d_curtis)IMG_0313
  • A lot of stuff Nomad and Node related which is still NDA but you’ll hear more about them at Collabsphere in Ann Arbor – HCL will be out in force as will IBM speaking, showing and listening so if you can you need to get yourself there. ¬† Turn out and turn up – there’s still time to get your voice heard.