<< Back

Auto Upgrade Tableau Server

Spend 5 minutes talking to the Tableau developers and you’ll quickly hear one common question of any new feature…”Can it be done in fewer clicks?” This has given us the best BI interface ever! But what about an interface/procedure that’s rarely seen, that can easily be ignored. I’m talking about Tableau Server upgrades.

For those who don’t know here’s a standard upgrade procedure:

  1. Download the latest Server installer
  2. Stop your Tableau Server with tabadmin stop
  3. Backup with tabadmin backup
  4. Uninstall Tableau Server
  5. Run the downloaded installer
  6. Click your mouse about 5 times
  7. Celebrate that your server is up to date!

OK so it’s not the most difficult or laborious procedure…but still why so many manual steps? Can’t we automate the whole thing? Sure we can! Even better than that we can schedule the process to run during out-of-office hours or even every night so the server is ALWAYS up to date with maintenance, minor and major releases.

Prerequisites

Before I get yelled at by hardened ‘enterprise’ BI admins this isn’t intended for production environments. It’s also not intended for distributed multi-node installations. They’re probably complicated and as such human intervention is a good thing.

But should you have a dev/test environment, or like us you like to live ‘dangerously’, and alway want your server to be up to date, then this is for you!

Download

Everything you need to make it happen can be downloaded here

You’ll also find the code on our Github repository

Configuration

First off unpack the zip archive to an accessible location, personally I put it in our Tableau Server root installation folder.

  1. Open the UpgradeTableau.ps1 file with your favourite text editor.
  2. Set the location of your Tableau Installation as $tabDir (this is the folder containing 9.0, 9.1, etc.)
  3. Just in case something goes wrong the script will backup your Tableau Server before anything is uninstalled. Set the folder location where this backup should be stored as $backupDir
  4. You’re probably wanting to install 64 bit Tableau Server, if you want 32-bit simply change $bit to 32 ($bit = 32).
  5. Save and exit

One off Auto Upgrade

If you’d just like to upgrade your Server to the latest version as a one-off event simply run UpgradeTableau.bat or right click on UpgradeTableau.ps1 and click ‘Run with Powershell’.

All outputs from your upgrade will be saved to $tabDirUpgradeLog.txt

Auto Upgrade Tableau Server Output
Auto Upgrade Tableau Server Output

Scheduled Auto Upgrade

Want to make your upgrade more automated?

  1. Open ‘Task Scheduler’ and in the Task Scheduler Library click ‘Create Task’.
  2. Under security options set to ‘Run whether user is logged on or not’ and tick ‘Run with highest privileges’
  3. If needed change the run as user account with the ‘Change User or Group’ button.Schedule
  4. On the triggers tab create a ‘New’ trigger. This can be a one off event out of business hours or if you’d like your environment to always be up to date schedule the script to run every day (not recommended for production environments but great for dev/test)
  5. On the actions tab create a ‘New’ action.
  6. In the Program/script box enter: Powershell.exe
  7. In the Add arguments (optional) box enter: -ExecutionPolicy Bypass D:UpgradeTableau.ps1 (changing this last parameter to point to the location where you’ve extracted the UpgradeTableau.ps1 file
  8. Click OK, set any other task options as necessary and click OK to save the task. You should be asked to enter the run as user’s password.

All outputs from your upgrade will be saved to $tabDirUpgradeLog.txt

That’s it!

Craig Bloodworth

York, UK

4 thoughts on “Auto Upgrade Tableau Server

    1. Yeah similar idea. This one doesn’t need a third party service however, it’s totally self contained, and a little more robust I’d imagine as it’s not auto clicking config screens.

      Thanks for the links though!

Leave a Reply

Your email address will not be published. Required fields are marked *