On Fri, Jul 31, 2015 at 10:39:33 +0200, Thomas Bruckmann wrote: > Hi there, > I am looking for a good solution to build a test environment. > And I am wondering if someone already built something. I use 3 different test environment with different characteristics
- VMs running on my production cloud I run change tests there, I rebuild the VMs and configure them using saltstack to match very closely my prod environment, when I want to change something on my production cloud, I test here before. I have 3 of this groups of VM actually, one running icehouse, other running kilo, other running ceph. - libvirt-lxc containers on my laptop When I develop salt states or try new OpenStack releases or something more extreme I do it here. Also i talk about it in public so I like to carry it with me. Older OpenStack releases are not very easy to put inside of a container but kilo has no problems :) The salt states I use for this are here https://github.com/gfa/salt-for-openstack - dedicated hypervisors on my production cloud I have a variable number of hypervisors which are disabled and/or in a non-public AZ which I use for performance testing. Also I use those hypervisors as a buffer, some of them come from production after hardware failures and others go there to replace the failed ones. > > I have 6 physical server for this environment and the following should > be possible: > - Return to a working state after something went wrong I don't like to use physical servers for testing, since reinstall is not as easy as vm/container, in my $WORK install is not even handled by my team making it too slow, plus if I want to test network stuff I have to talk to another team to isolate switches or vlans and is just too much work. > - Build a complete clean new environment by one click I don't have any webconsole or anything like that, a bash script kicks the rebuild of vm/containers, install salt on it then salt finish the job > > My first idea is to encapsulate the services in docker containers (a > container for each service) but maybe someone has much better idea? I don't use docker for testing as I don't use it for production. I do use system containers in test (not yet in production) I would suggest you to use something similar to what you do on production, as much as you can/have sense Ideally you should be using the same tools, the same states,manifests,recipes,etc. > > Cheers, > Thomas > (shameless plug), I gave a talk about this topic, the slides are here http://goo.gl/a37n2E the code I've used is on the url I pasted above -- 1AE0 322E B8F7 4717 BDEA BF1D 44BB 1BA7 9F6C 6333 keybase: http://keybase.io/gfa _______________________________________________ Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack Post to : [email protected] Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
