Back up and restore HipChat Server

You're pretty savvy, so we probably don't need to explain why you should make backups, but we do need to explain how you make backups and restore HipChat Server.

The first thing to know is that there are two types of backups:

  • an entire system backup
  • a backup of user data

Entire system backup

If you want to back up all your configurations, settings, files, and–well, everything–then you should make a full virtualization backup. Use your virtual machine’s snapshot capability to back up the entire HipChat Server. A snapshot captures the state of your entire VM, so all your HipChat Server data, configuration, and settings will be backed up, and you can easily restore your snapshot.

If you deployed HipChat Server in AWS you can create a snapshot by shutting down HipChat Server and creating EBS snapshots of all three volumes. HipChat Server can then be booted again for continued operation.

It's a good idea to always take a snapshot before upgrading HipChat Server.

Back up user data only

Backing up HipChat Server

To back up HipChat Server, set up a scheduler and export your HipChat data automatically at regular intervals. You can create your own script (using the export CLI) or use the script we've created to export your data.

See Exporting and Importing your HipChat Data for details on the CLI and which HipChat data is and isn't exported.

Note: The exporter also does not export the clients' configuration data, for example, which HipChat Server host the clients are using.

Script for backing up HipChat Server

You can use the script we've created to back up HipChat Server. The script does the following:

  • Creates and downloads a HipChat Server data export file using an SSH key trust
  • Saves the HipChat data file to the current directory
  • Appends the passphrase to the hipchat_exports.log (also located in the same directory) in plain text using the format <url>:<passphrase>

It requires access to a client, a Mac, Linux, or Windows PC. The Windows PC needs Cygwin installed, so you can use shell or bash.

  1. Download the script to your client.
  2. Generate an SSH public key on your client, if you don't already have one:
    ssh-keygen
  3. Copy your SSH public key to your HipChat Server at ~admin/.ssh/authorized_keys
  4. Ensure the permissions on your HipChat Server are set to user-read only:
    chmod 600 ~admin/.ssh/authorized_keys
  5. Test the SSH key trust:
    ssh admin@hipchat.example.com true
  6. Run the exporter script: 
    SERVER=hipchat.example.com bash hipchat_server_remote_exporter.sh

Scheduling back ups

You can schedule your script to run at regular intervals, so your HipChat data is backed up automatically. To schedule a job to run your script, you can use cron jobs. See more information on cron jobs for Mac or a Windows PC running Cygwin.

Restoring HipChat Server

To restore HipChat Server, deploy, then configure a new HipChat Server instance.

Import your HipChat data using the HipChat import CLI.

Was this helpful?

Thanks for your feedback!

Why was this unhelpful?

Have a question about this article?

See questions about this article

Powered by Confluence and Scroll Viewport