Even though most of our customers have a corporate software deployment solution, many of them use MarvelClient Upgrade to update and upgrade hundreds of thousands of IBM Notes clients every year across the globe. Some customers combine the strengths of corporate software deployment with MarvelClient Upgrade, others replace their existing solutions entirely.
This blogpost is about some of the most important lessons we’ve learnt along the way. These learnings are both described independently of MarvelClient Upgrade, as well as how they helped us improve it.
Before we start heading down the learnings route let’s first quickly cover the primary reasons for why customer choose MarvelClient Upgrade – for existing customers, we’ve included a summary of the most important enhancements from last year at the end of this post:
- Corporate software deployment is not available on every computer
- Corporate software deployment is not “Notes aware” from both the perspective of “what exactly is installed” and “how is it and how can it be configured”
- Customizing IBM Notes client deployments is too time consuming or difficult
- MarvelClient Upgrade has higher success rates for IBM Notes client upgrades
- Network drive based installations, to which system services do not have access
- Major deployment changes like moving from personal network drives to local disks or moving multiple data directories on the same machine, for example
- Flexible and agile rollout of additional features, fix and feature packs, security fixes and template updates
Now on to learnings from the field throughout the years:
Above all, whenever we refer to things like “the Administrator account”, “C:\Users” or similar, consider it a necessity to make it work in any language and configuration of Microsoft Windows. For example, the name of the “Administrator” account differs from language to language and needs to be addressed by SID (Windows Security Identifier) instead of by name, and the C:\Users folder may be somewhere totally different. Also, not all computers may have the same configuration and/or operating system release.
Software configuration and customization
In case of a Notes client upgrade, customers who do not have MarvelClient Upgrade may need to customize the IBM Notes installer with, for example, InstallShield Tuner to, amongst other things, adjust folder locations, default notes.ini, plugin_customization.ini, .properties files or names.nsf, or to include additional files.
With MarvelClient Upgrade, customers can simply use any IBM installer as is. Customization is simply a matter of easy configuration.
Software deployment: network load considerations
Before installing a Notes client update or upgrade, the necessary software must find its way on to each user’s computer. Deploying larger software packages to all computers without bloating the network “Monday morning at 8” was amongst the very first challenges we had to overcome: An IBM Notes client upgrade, with language packs, a Fix or Feature Pack, a JVM Patch (if needed) and a Sametime embedded update can easily grow to over 1 GB.
Corporate software deployment tools often do a good job at deploying software to all clients without bloating the network. In such a case they can be perfectly combined with MarvelClient Upgrade.
In case not all clients are covered by corporate software deployment or there is no such solution at all, MarvelClient prevents bloating the network with smart load-balancing of downloads across all clients.
Last, but not least, size may matter to you when it comes software deployment: saving 20 MB per user saves an impressive 20 GB of network load for 1,000 users. That’s why 7zip is built into MarvelClient Upgrade, to shrink your software packages in the best possible way.
Software deployment: target location
In the early days we deployed all software to each user’s …\AppData\Local\Temp\ directory (actually \Documents & Settings\Temp\ back then – remember XP?), only to discover that downloading to a local folder accessible by all users makes a lot more sense: C:\Users\Public was an obvious choice, so that download would continuously progress even if different users were using the same machine over the course of a download.
Deployment changes: truly challenging
A deployment change – such as moving from a single user to a multi-user installation, or changing a multi-user installation from \Lotus\Notes\ to \IBM\Notes\, or moving data directories from personal network drives to local disks – is quite a challenge without MarvelClient Upgrade and has led to various improvements of MarvelClient.
Not only must all directories be migrated from old to new, but notes.ini entries need to be adjusted (e.g., Directory, NotesProgram, FileDlgDirectory and any filepaths pointing to old directories).
Data directories on network drives: A twofold issue
In the case of data directories residing on network drives, corporate software deployment usually does not have access to these (since it is running as a local system service) and therefore cannot “see” any network resources during an update, upgrade or deployment change.
In addition, any updates that are made to the data directory in end user context after an upgrade (in other words, when users start their Notes client), can set an operating center on fire “Monday morning at 8” when all clients then attempt to run through a re-provisioning of the workspace directory and update the design of (not really) “local” databases.
MarvelClient Upgrade can first migrate or update a data directory in end user context to then carry out the update or upgrade in administrative context. Furthermore, in combination with MarvelClient Roaming, network drives are no longer needed, resulting in a reduction of network load and storage (including backup) by more than 90%.
The “Administrator” account, UAC and other obstacles
Where a system service does not require administrative credentials, but must be installed on all machines, MarvelClient Upgrade allows customers to perform upgrades “as Administrator” without any previous installation requirements, all by supplying one or multiple Administrator account usernames and passwords in a key file (multi-level encrypted, AES 256 bit). During an upgrade, MarvelClient Upgrade uses the supplied usernames and passwords to elevate into one of the “Administrator” accounts (Yes, we do offer a MarvelClient Upgrade system service component too).
Over the course of time (from Windows XP to Windows 10), we learnt a lot about UAC (User Account Control), elevation and Extended Validation (EV) code signing, the latter of which became more and more important towards Windows Creators Update, as well as in co-existence with various anti-virus solutions.
Preparing an upgrade: Things to do, before actually (uninstalling and) installing
At the beginning of an upgrade, numerous things may need to be taken care of:
Shortcuts need to be removed (to prevent users from starting Notes during an upgrade), services need to be stopped, tasks ended, registry keys may need to be adjusted or backed up, and more.
Oftentimes this is referred to as “scripting hell”, where companies spend a significant amount of time to “get an upgrade right for all possible variants of installations out there”.
MarvelClient Upgrade tackles this from two different angles:
- All configuration is usually generic, adapting to each client automatically
- All necessary options can be flexibly configured through simple configuration
Uninstalling: Also, when upgrading
Before NICE (Notes Install Cleanup Executable) even saw the light of day and later became reliable enough, we first needed an inventory of all previously installed IBM Notes client GUIDs (Global Unique Identifiers), to uninstall all possibly existing releases before installing.
Luckily, NICE has long become the best solution to effectively uninstall any version of Notes by launching
“nice.exe -wipe -rp -qn”
During uninstalling, the Shared Data directory also needs to be cleaned up or migrated – another task that MarvelClient Upgrade takes care of automatically.
Should you be wondering why we are talking about uninstalling in relation to upgrades: It is highly recommended to first uninstall and cleanup the old and afterwards install the new client, for two reasons:
- It comes with a much higher success rate. A fresh install over a preserved data directory is usually 100% successful, whereas in-place upgrades tend to have a much lower success rate, more around 95% and less.
- It is roughly a minute or two faster (Yes, faster!).
Installing is most probably the easiest task, with and without MarvelClient Upgrade. Usually the only thing to do is getting each command line right and invoking multiple installers in the right order, e.g., when installing a full client with language packs, Fix or Feature Packs, a JVM Patch (potentially needed when installing an Interim Fix version) and an update to Sametime Embedded.
Once an upgrade or update is done, services and tasks may need to be restarted, backed up settings and files restored, or similar. Without MarvelClient Upgrade, this is usually in the realm of “scripting hell”, as previously mentioned in “Preparing an upgrade”.
In many cases it is also helpful to have a central cumulated overview and status email reports on the state of all installations, with as many details as possible (i.e. including logs) for failed installations.
MarvelClient Upgrade scans all IBM installer logs for possible errors, sends status update emails, and together with MarvelClient Analyze (free for one year for new customers) gives you full insights into your IBM Notes client base and the status of any upgrade and update project.
Especially IBM Notes client upgrades can be a true challenge.
If your upgrade success rate isn’t close to 100%, or your data directories aren’t *all* appropriately located yet (namely local disks in an \IBM\Notes\ folder), or your software deployment tool isn’t everywhere, or you’d like to save time, money and frustration with your next upgrade: Contact us to experience the power of MarvelClient Upgrade!
And in case you’d rather look at a cross-grade to Microsoft Outlook or IBM Verse and ICAA, including the migration of personal settings, we can help you there too.
Last, but not least: How long do you think it takes to get MarvelClient Upgrade up and running in your very own environment, covering all the above? The answer is: Usually less than a day. Isn’t that awesome?
What’s new for existing customers
As of March 5, 2018, the most recent version of MarvelClient Upgrade was 7.5.2.
- Still thinking in AutoIt and/or 7zip SFX maker? Both are no longer necessary since MarvelClient Upgrade version 6.5.
- Still thinking in multiple executables? Since version 7.1, there’s now only one that you need to rollout: MCUpgrade.exe.
Missing something? As always: contact us! It’s either a part of our product already and we’d love to show you, or we may want to add it.
Happy upgrading and updating to all of you!