Hi stoopid it,
- You can certainly do this, do you have a timeframe or time period you'll be able to have the help desk down for?
- Will you still have access to your current server, or will this be gone by the time you'll be migrating to the new server?
- Have you considered having your help desk on a different server than your database?
If you provide the details above, we can determine an appropriate strategy of upgrading to the latest version.
I'd prefer to do the upgrade on a weekend, when it wont' impact anyone. The trouble is, I don't believe Solarwinds has phone support then, so I'm inclined to do the upgrade over a lunch hour.
Yes the current and new servers will both be available.
Hadn't thought of separating the Help Desk server application from the database. Can you tell me more about that option?
You are correct to presume SolarWinds phone support won't be available on the weekend unless you're lucky. You could log a call and hope to arrange something with one of the team if this is necessary.
You shouldn't rely on support to assist with upgrades, to revert back to the version you were on you'll need a backup BEFORE you proceed with upgrading. This way if something goes wrong you can uninstall the new version, install the old one and then restore the backup (if you are using a VM, you can take a snapshot beforehand and revert back).
As you have both servers available, here are some instructions tailored to your scenario:
- Install the version you're upgrading to on the new server.
- Once the new help desk is running and all seems okay, stop both help desks.
- Take a backup of your current help desk and database (this can be a snapshot if this is a vm).
- Deactivate the license on the old server.
- Stop both help desks, this way new tickets won't be generated in the old help desk and the new one won't prevent the database from being modified.
- Migrate the database to the new server.
- Start the new help desk and run the upgrade when prompted.
- Activate the license on the new server once complete.
Note that each part should be done on the server using the localhost url instead of the designated DNS that you may have given it.
Since you have both servers available, if things don't go well you can always revert back to your current one and contact support or provide further details as to the issue you've ran into here.
As for separating the help desk from the database, there're many ways to do this with plenty of different reasons... I'd only do this if you're running many queries on the database, have a huge database, or are noticing performance issues that aren't caused by too little RAM.
To separate the database from the help desk, all you have to do is put a backup onto another server, install PostgreSQL (or your preferred database) and import the data into it whilst noting that if you use a different database type than the current one you're using, you'll need to migrate the data appropriately so there's no data corruption or data loss. Once done, simply connect the database using appropriate connection details.
There's likely a guide within the SolarWinds knowledgebase on how to do this, though it probably doesn't explain it for MAC's... it's as simple as the other Operating Systems though so don't worry about that.
If anything, I'd recommend getting the migration and upgrade sorted, then you can consider and determine whether separating the database and help desk would benefit you going forward.
I run a lot of macOS servers, including WHD, and I face the same situation with many vendors, where support isn't open on nights and weekends, but that's when we want to do the upgrade for minimal impact on the users. I don't suggest the "clean install" scenario that you mention, unless it just won't work any other way, and I haven't seen that much on macOS. On Windows servers, there is that kind of cruft that makes a clean install often preferable, but it's very rare on the macOS side.
Instead, I used this method to upgrade macOS servers quickly and safely, with minimum downtime, with a fail-safe that lets me get back up and running immediately if anything goes sideways.
If you're upgrading in place (versus migrating to a newer server), invest in an inexpensive external drive dock with interfaces that suit your machine(s) (USB3/FireWire/Thunderbolt); something like this one from OWC is about $30. Also have a bare hard drive or SSD that exceeds the size of your current storage on the server, which these days is also extremely inexpensive. This combination can be used for all kinds of things, even an emergency backup in certain situations, but it's extremely useful for upgrades.
If you have a new server, you can use that second server as the equivalent of an external drive, by using Target Disk Mode and then proceeding as above, with the new computer's internal disk mounted on the old computer. That will work as long as the version of macOS you're currently on will run on the new server. If not, then you'll have to get the old server upgraded to the newer macOS first, most safely by using an external dock and disk as mentioned above.
To do the upgrade:
- Shut down the server software, in this case WHD (it's important that the server software be shut down so that you get a clean clone of the server).
- Using a (free) utility like SuperDuper or (inexpensive) Carbon Copy Cloner, clone the existing server over to the bare drive (you can also do it with the built-in macOS Disk Utility, but in my experience the third-party solutions are better and more reliable). Note that SuperDuper does not clone the recovery partition, but Carbon Copy Cloner does; that may make CCC worth the price of admission if you don't want to recreate it manually. You now have a perfect, bootable copy of the server, and you can even boot it directly from the dock if necessary. Test the clone by booting from it to make sure it works as it should, then shut it down and take it offline. If desired, you can clone twice, to have another copy just in case (it gives me peace of mind in high-pressure upgrades).
- Upgrade the normal internal boot drives as needed, with macOS or WHD upgrades, or both.
- If all is well after the upgrade(s), then you're done. Put a PostIt note on the external drive with the versions of macOS and WHD and the date of the clone and put it aside for future use in a similar upgrade, or even as a "just in case" situation if things go awry over the next day or so.
- If the upgrade(s) don't go well, then just revert to the exact place you left off when you did the clone. Depending on how much time you have, you can either boot from the clone and run the server from there to get up and running until you can schedule another maintenance window to clone it back to the internal drive, or you can boot from the clone, shut down WHD again, then clone it back to the internal drive immediately to get back to where you started, figure out what happened with Support, and try again during another maintenance window.
There are variations on this process, like booting from the clone and upgrading it instead (especially useful if you're also doing something like migrating to a newer/bigger disk/SSD), then installing the upgraded external drive internally in the server after all is well.
Hope this helps!