I am going to upgrade chef server till latest 12 version. Is any recommendations for prior backup of server data ( databases , so on ) so that I could easy back to the old state in case something goes wrong after update. Also if chef-server latest version compatible with data from prior chef server versions (12.* )?
Yeah I read the docs. But still have no idea if chef databases will be compatible with the latest version of chef-server ? ( see my chef server versions at the top this thread )
I really don’t get your question in fact, chef-server-ctl reconfigure (part of the upgrade process) will do changes to the database if needed…
The idea of the backup is being able to restore this backup with the version it has been made for.
I don’t think databases alterations are documented anywhere, they usually go smooth, specially between minor versions but I can’t swear, hence the backup need (and just in case something highly wrong happens, kernel panic of the sytem, power cut, etc.).
If you don’t want to take any risk, knife backup your actual server content and knife restore it on a fresh new up-to-date server. And then move your nodes to the new server (maybe using a cname in DNS).
We recently completed a migration from chef server 11 to chef server 12 using this method. Something to be aware of is you will still need to create an organization and create new users (knife restore does not restore users in chef server 12), and distribute the new knife and validation keys. Additionally, we had to update the ACLs for the clients to allow them to update.
One really useful point with this method is it allows you to point a couple clients to the new server and use them as a test bed to find if there are any issues.