Looker releases a new product version every month — with rare exceptions — that is full of new features, updates, and changes. Most Looker customers are able to take advantage of these updates as soon as they are available, because Looker hosts, manages, and updates their Looker deployments. However, if you self-host your Looker deployment or are holding off on updating because of feature deprecations, you can fall behind and miss the latest and greatest Looker has to offer.
Why should you update your Looker deployment?
In addition to the fact that Looker is constantly releasing new functionality to improve user experience, there are important reasons to stay current:
- Looker provides product support coverage for Looker instances on the latest stable version and the two previous versions, as well as the extended support release (ESR). Because a new Looker version is released every month — with rare exceptions — going three months without updating puts you outside the stable window. The latest version provides all new features and updates, along with the latest bug fixes.
- Looker takes security very seriously and updates the product to address any new web vulnerabilities. While Looker keeps supported releases as safe as possible, you can do your part by staying current with Looker to ensure that your Looker instance has access to the latest security patches.
Steps and considerations when updating
The following steps can help you prepare your Looker deployment for updates:
- Address any concerns about updating.
- Review the release notes.
- Prepare for LookML parameter and feature deprecations.
- Create a backup of your instance — and restore to any staging environments.
- Update your staging instances and test.
- Update your production environment.
These steps may or may not apply to your deployment, depending on whether or not you have staging environments.
Address any concerns about updating
Sometimes you may want to prevent updates for a specific functional reason. This could be a significant change in functionality for which you need more time to train your users, or it could be a feature, tool, or LookML parameter that was deprecated in a new release that is operationally critical for your business, such as an API endpoint that is used by a script or separate application.
If the reason is a feature or LookML parameter deprecation, be sure to review the release notes and prepare for the deprecation.
Review the release notes
Looker's release notes describe what is new in each release so that you can stay abreast of new features that your users should take advantage of and any breaking changes that may affect rollout of a new version. See the Looker releases page for links to the release notes and changelog for the latest release:
See the release highlights to read about the most exciting new features, and make sure to review the Potentially breaking changes section to identify breaking changes that you may need to prepare for.
See the changelog for more granular details about feature updates and bug fixes.
Prepare for LookML parameter and feature deprecations
Enhancements to LookML can include parameter deprecations. Update your LookML to keep everything working in the new version. Check the legacy feature schedule for deprecated LookML parameters that have been completely removed, in or prior to the version to which you are updating.
To prepare for feature deprecations, follow the steps suggested in the Migrating away from legacy features section of the Legacy features documentation page.
It's best practice to update your LookML to remove ALL deprecated LookML, as those parameters will be removed in a future release.
Create a backup of your instance — and restore to any staging environments
Creating regular backups is strongly recommended and should be completed before each update. Additionally, while this is not required, if you are updating several versions it's a good idea to set up a staging server where you can test the updated version before rolling it out to your entire company.
There are different steps for creating backups depending on whether your Looker deployment is self-hosted or is hosted by Looker.
Creating backups for customer-hosted Looker deployments
If you host your own Looker instance, you can follow the guide for creating backups and use the guide for restoring backups to a new staging environment.
Creating backups for Looker-hosted Looker deployments
If your instance is hosted by Looker, reach out to your Looker contact or Looker Support to have our team create a backup and set up a staging server for you.
Update your staging instances and test
If you have a staging instance, you can deploy and test the update prior to updating your production instance. There are different steps for updating your Looker instance depending on whether your Looker deployment is self-hosted or hosted by Looker.
Updating a staging instance for customer-hosted Looker deployments
If you host your own Looker instance, download the latest release JAR and follow the instructions on the Updating a Looker instance documentation page to update your staging instance to the latest Looker version. Be sure to check the Deployment specifications section on the Installing the Looker application documentation page for the latest server requirements — particularly for the Java version.
Updating a staging instance for Looker-hosted Looker deployments
If your instance is hosted by Looker, reach out to your Looker contact or Looker Support to have our team update your staging instance for you.
Once your staging instance is up to date, log in and test the new features and updates. Make sure your important dashboards and Looks run without errors and that there are no (new) LookML errors when you validate your LookML models.
Update your production environment
If all tests are successful on your staging instance, you can go ahead and update your production instance to the latest version of Looker, following the same process you used for staging. Before updating your production instance, be sure you have performed a recent backup in case you need to restore for any reason.