* This assumes you’re using the regular debian/ubuntu install
and that you have a system with a fresh install of chef-server laying around
Backup your files on the OLD/Original Chef Server
This backs up all the chef configs/certs and couchdb configs and data
$ tar czvf chef-backup-`date +%Y-%m-%d-%s`.tar.gz /etc/couchdb /var/lib/chef /var/lib/couchdb /var/cache/chef /var/log/chef /var/log/couchdb /etc/chef
Transfer your files to the NEW Chef Server
$ scp old-chefserver:~/chef-backup*.tar.gz /tmp
Stop all chef services on the NEW Chef Server
$ for i in chef-server-webui chef-server rabbitmq-server jetty couchdb chef-solr ; do /etc/init.d/${i} stop ; done
Extract the backup file on to the NEW Chef Server
$ cd /tmp $ tar xzvf chef-backup*.tar.gz
Delete the old rabbitmq data from your default installation on the NEW Chef Server
$ rm -fr /var/lib/rabbitmq/mneisa/*
Start rabbitmq in the foreground and recreate your user and tables on the NEW Chef Server
$ rabbitmq-server $ rabbitmqctl add_vhost /chef Creating vhost "/chef" ... ...done. $ rabbitmqctl add_user chef testing Creating user "chef" ... ...done. $ rabbitmqctl set_permissions -p /chef chef ".*" ".*" ".*" Setting permissions for user "chef" in vhost "/chef" ... ...done. $ rabbitmqctl stop Stopping and halting node rabbit@ubuntu02 ... ...done.
Start all the Chef Services on NEW Chef Server
$ for i in chef-solr couchdb jetty rabbitmq-server chef-server chef-server-webui ; do /etc/init.d/${i} start ; done
Verify your Chef Server is restored
http://NEW-CHEF-SERVER:4040
and verify the nodes and data or try the following knife commands
$ knife node list $ knife node show mynode -a node