Chef Server v11 backups


#1

I recently moved a chef installation to a new instance. The hostname of the new instance was different than the original host. The steps I have followed so far are:

  1.   Backed up  postgres database with pg_dump opscode_chef
    
  2.   Backed up /var/opt/chef-server/bookshelf/data/bookshelf directory
    
  3.   Fresh install of OS on new instance
    
  4.   Install chef-server-11.0.8-1.el6.x86_64 rpm
    
  5.   Ran chef-server-ctl reconfigure
    
  6.   Restored pg_dump database
    
  7.   Ran chef-server-ctl reindex
    
  8.   Copied old /var/opt/chef-server/bookshelf/data/bookshelf
    

Everything seems to be working right now but I am worried I missed something. For example before I did step #2 and #7 I would get a http 404 error when running chef-client on new instances. Did I need to backup the checksum files or is there a way to recreate them?

So are there other steps that I have missed? And is there an existing document that describes what has to be done to backup/restore a chef v11 server? All I have found is https://wiki.opscode.com/display/chef/Backing+Up+Chef+Server but it is for pre V11.

I know there are plugins to help with the backups but I am trying to confirm what needs to be backed up before I figure out how to back it up.

Thanks,
-Joe


#2

On Friday, November 22, 2013 at 9:19 AM, Kemp, Joseph A. (JKEMP) wrote:

I recently moved a chef installation to a new instance. The hostname of the new instance was different than the original host. The steps I have followed so far are:

  1.   Backed up  postgres database with pg_dump opscode_chef
    
  2.   Backed up /var/opt/chef-server/bookshelf/data/bookshelf directory
    
  3.   Fresh install of OS on new instance
    
  4.   Install chef-server-11.0.8-1.el6.x86_64 rpm
    
  5.   Ran chef-server-ctl reconfigure
    
  6.   Restored pg_dump database
    
  7.   Ran chef-server-ctl reindex
    
  8.   Copied old /var/opt/chef-server/bookshelf/data/bookshelf
    

Everything seems to be working right now but I am worried I missed something. For example before I did step #2 and #7 I would get a http 404 error when running chef-client on new instances. Did I need to backup the checksum files or is there a way to recreate them?

So are there other steps that I have missed? And is there an existing document that describes what has to be done to backup/restore a chef v11 server? All I have found is https://wiki.opscode.com/display/chef/Backing+Up+Chef+Server but it is for pre V11.

I know there are plugins to help with the backups but I am trying to confirm what needs to be backed up before I figure out how to back it up.

Thanks,
-Joe

The short and sweet version is:

  • The postgres database is the canonical store for structured data
  • Bookshelf is the canonical store for files.

So those are the two things you need. Depending on the amount of data you have and your MTTR requirements, you can also back up the solr data and skip the reindexing step. However, Solr commits data once every 60s so you’d need to take the chef server down for that amount of time to get a consistent snapshot, or risk some amount of inconsistency in node search data (which should “heal” itself as nodes check in and update their data).


Daniel DeLeo