OpsCenter Auto-updating Definitions
OpsCenter uses information in definition files in order to support functionality such as provisioning and configuring nodes for multiple versions of DSE and Cassandra. These definition files are located in OpsCenter’s configuration directory, so that they can be modified independently of OpsCenter itself. Previously, in order to support a newer version of DSE a new version of OpsCenter had to be released, which contained updates to these definitions.
In OpsCenter 4.1, we’ve introduced automatic updating for definition files. This means new versions of DSE and DSC may be instantly supported, without requiring upgrading OpsCenter, or any other user action.
By default, OpsCenter will check for updates every hour, and automatically pull down any that are available. This interval can be configured, or turned off completely. Full details can be found in our documentation.
If automatic updates just aren’t your thing, you can make an API call directly to OpsCenter to have it check and download any updates:
curl -X POST http://my.opscenter.host:8888/rc/definition/update
This will return “true” if an update was applied, and “false” if no update was found. This can be called whether automatic updates are enabled or not.
If OpsCenter does not have access to the internet, you can apply definition updates manually by unpacking the remote tarball into the definitions directory. The tarball is located at
https://opscenter.datastax.com/definitions/4.1.0/definition_files.tgz (replace 4.1.0 with your current version of OpsCenter)
Definitions are hosted in a central repository located at
OpsCenter compares a remote checksum with the version it has to determine if an update is available. The remote checksum URL is based on the current version of OpsCenter, and will look something like:
If an update is found, a remote file named
definition_files.tgz is downloaded and applied to the definition directory mentioned above. There is a rollback mechanism in the event that the download fails, or any other errors occur while unpacking the definitions.
Basic steps in the process are logged in opscenterd.log at INFO, and full details are logged at DEBUG.
Going forward we plan to utilize these definition files for more functionality within OpsCenter, so that we can take advantage of pushing updates to users without requiring an upgrade.
If you haven’t downloaded OpsCenter 4.1 yet, go grab it from our Download page.