Re: [openstack-dev] [TripleO] test environment requirements

2014-03-24 Thread Dan Prince


- Original Message -
 From: Clint Byrum cl...@fewbar.com
 To: openstack-dev openstack-dev@lists.openstack.org
 Sent: Sunday, March 23, 2014 9:02:23 PM
 Subject: Re: [openstack-dev] [TripleO] test environment requirements
 
 Excerpts from Dan Prince's message of 2014-03-21 09:25:42 -0700:
  
  - Original Message -
   From: Robert Collins robe...@robertcollins.net
   To: OpenStack Development Mailing List
   openstack-dev@lists.openstack.org
   Sent: Thursday, March 13, 2014 5:51:30 AM
   Subject: [openstack-dev] [TripleO] test environment requirements
   
   So we already have pretty high requirements - its basically a 16G
   workstation as minimum.
   
   Specifically to test the full story:
- a seed VM
- an undercloud VM (bm deploy infra)
- 1 overcloud control VM
- 2 overcloud hypervisor VMs
   
  5 VMs with 2+G RAM each.
   
   To test the overcloud alone against the seed we save 1 VM, to skip the
   overcloud we save 3.
   
   However, as HA matures we're about to add 4 more VMs: we need a HA
   control plane for both the under and overclouds:
- a seed VM
- 3 undercloud VMs (HA bm deploy infra)
- 3 overcloud control VMs (HA)
- 2 overcloud hypervisor VMs
   
  9 VMs with 2+G RAM each == 18GB
   
   What should we do about this?
   
   A few thoughts to kick start discussion:
- use Ironic to test across multiple machines (involves tunnelling
   brbm across machines, fairly easy)
- shrink the VM sizes (causes thrashing)
- tell folk to toughen up and get bigger machines (ahahahahaha, no)
- make the default configuration inline the hypervisors on the
   overcloud with the control plane:
  - a seed VM
  - 3 undercloud VMs (HA bm deploy infra)
  - 3 overcloud all-in-one VMs (HA)
 
7 VMs with 2+G RAM each == 14GB
   
   
   I think its important that we exercise features like HA and live
   migration regularly by developers, so I'm quite keen to have a fairly
   solid systematic answer that will let us catch things like bad
   firewall rules on the control node preventing network tunnelling
   etc...
  
  I'm all for supporting HA development and testing within devtest. I'm
  *against* forcing it on all users as a default.
  
  I can imaging wanting to cut corners and have configurations flexible on
  both ends (undercloud and overcloud). I may for example deploy a single
  all-in-one undercloud when I'm testing overcloud HA. Or vice versa.
  
  I think I'm one of the few (if not the only) developer who uses almost
  exclusive baremetal (besides seed VM) when test/developing TripleO.
  Forcing users who want to do this to have 6-7 real machines is a bit much
  I think. Arguably wasteful even. By requiring more machines to run through
  devtest you actually make it harder for people to test it on real hardware
  which is usually harder to come by. Given deployment on real bare metal is
  sort of the point or TripleO I'd very much like to see more developers
  using it rather than less.
  
  So by all means lets support HA... but lets do it in a way that is
  configurable (i.e. not forcing people to be wasters)
  
  Dan
  
 
 I don't think anybody wants to force it on _users_. But a predominance
 of end users will require HA, and thus we need our developers to be able
 to develop with HA.
 
 This is for the _benefit_ of developers. I imagine we've all been in
 situations where our dev environment is almost nothing like CI, and then
 when CI runs you find that you have missed huge problems.. and now to
 test for those problems you either have to re-do your dev environment,
 or wait.. a lot.. for CI.

All good points. Running an exactly copy of the upstream CI environment seems 
to be getting more and more costly though. My goal is that I'd like developers 
to be able to choose what they want to test as much as they can. Streamline 
things where appropriate. Take the overcloud today: I actually like to idea of 
going the other way here and running an all-in-one version of it from time to 
time to save resources.

If I know I need to dev test on an HA cloud then by all means I'll try to do 
that. But in many cases I may not need to go to such lengths. Furthermore, some 
testing is better than no testing at all because we've set the resources bar 
too high.

Again, all for supporting the HA test and dev path in the devtest scripts. 
Ideally making it as configurable as we can...

Dan


 
 I don't have any really clever answers to this problem. We're testing an
 end-to-end cloud deployment. If we can't run a small, accurate simulation
 of such an environment as developers, then we will end up going very slow.
 The problem is that this small simulation is still massive compared
 to the usual development paradigm which involves at most two distinct
 virtual machines.
 
 ___
 OpenStack-dev mailing list
 OpenStack-dev@lists.openstack.org
 http://lists.openstack.org/cgi

Re: [openstack-dev] [TripleO] test environment requirements

2014-03-24 Thread Dan Prince


- Original Message -
 From: Robert Collins robe...@robertcollins.net
 To: OpenStack Development Mailing List (not for usage questions) 
 openstack-dev@lists.openstack.org
 Sent: Sunday, March 23, 2014 11:18:19 PM
 Subject: Re: [openstack-dev] [TripleO] test environment requirements
 
 On 24 March 2014 14:06, Clint Byrum cl...@fewbar.com wrote:
  Excerpts from Robert Collins's message of 2014-03-13 02:51:30 -0700:
  So we already have pretty high requirements - its basically a 16G
  workstation as minimum.
 
  Specifically to test the full story:
   - a seed VM
   - an undercloud VM (bm deploy infra)
   - 1 overcloud control VM
   - 2 overcloud hypervisor VMs
  
 5 VMs with 2+G RAM each.
 
  To test the overcloud alone against the seed we save 1 VM, to skip the
  overcloud we save 3.
 
  However, as HA matures we're about to add 4 more VMs: we need a HA
  control plane for both the under and overclouds:
   - a seed VM
   - 3 undercloud VMs (HA bm deploy infra)
   - 3 overcloud control VMs (HA)
   - 2 overcloud hypervisor VMs
  
 9 VMs with 2+G RAM each == 18GB
 
 
  If we switch end-user-vm tests to cirros, and use a flavor that is really
  really tiny, like 128M RAM, then I think we can downsize the development
  environment hypervisors from 2G to 1G. That at least drops us to 16G. If
  we can also turn off the seed as soon as the undercloud boots, that's
  another 2G saved. Finally if we can turn off 1 of the undercloud VMs
  and run degraded, that is another 2G saved.
 
 We can't turn off the seed unless we change the network topology; we
 need to make sure if we do that that we don't invalidate the test
 structure.

This should make changing the network topology in the test env's easier:

  https://review.openstack.org/#/c/82327/

If we use something else (besides the seed VM) as the gateway for the baremetal 
network I think it should work fine right?

 
  Small potatoes I know, but it wouldn't be complicated to do any of these
  and it would also help test real scenarios we want to test (seed going
  away, undercloud node going away).
 
  ___
  OpenStack-dev mailing list
  OpenStack-dev@lists.openstack.org
  http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
 
 I like this.
 
 I also like much of the spread of ideas that came up - lets capture
 them to an etherpad and link that from a blueprint for future selves
 finding it.
 
 In particular I'd like to make being able to use OpenStack a J series
 goal, though it doesn't help with local dev overheads.
 
 -Rob
 
 --
 Robert Collins rbtcoll...@hp.com
 Distinguished Technologist
 HP Converged Cloud
 
 ___
 OpenStack-dev mailing list
 OpenStack-dev@lists.openstack.org
 http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
 

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [TripleO] test environment requirements

2014-03-24 Thread Ben Nemec
On 2014-03-23 22:18, Robert Collins wrote:
 On 24 March 2014 14:06, Clint Byrum cl...@fewbar.com wrote:
 Excerpts from Robert Collins's message of 2014-03-13 02:51:30 -0700:
 So we already have pretty high requirements - its basically a 16G
 workstation as minimum.

 Specifically to test the full story:
  - a seed VM
  - an undercloud VM (bm deploy infra)
  - 1 overcloud control VM
  - 2 overcloud hypervisor VMs
 
5 VMs with 2+G RAM each.

 To test the overcloud alone against the seed we save 1 VM, to skip the
 overcloud we save 3.

 However, as HA matures we're about to add 4 more VMs: we need a HA
 control plane for both the under and overclouds:
  - a seed VM
  - 3 undercloud VMs (HA bm deploy infra)
  - 3 overcloud control VMs (HA)
  - 2 overcloud hypervisor VMs
 
9 VMs with 2+G RAM each == 18GB


 If we switch end-user-vm tests to cirros, and use a flavor that is really
 really tiny, like 128M RAM, then I think we can downsize the development
 environment hypervisors from 2G to 1G. That at least drops us to 16G. If
 we can also turn off the seed as soon as the undercloud boots, that's
 another 2G saved. Finally if we can turn off 1 of the undercloud VMs
 and run degraded, that is another 2G saved.
 
 We can't turn off the seed unless we change the network topology; we
 need to make sure if we do that that we don't invalidate the test
 structure.
 
 Small potatoes I know, but it wouldn't be complicated to do any of these
 and it would also help test real scenarios we want to test (seed going
 away, undercloud node going away).

 ___
 OpenStack-dev mailing list
 OpenStack-dev@lists.openstack.org
 http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
 
 I like this.
 
 I also like much of the spread of ideas that came up - lets capture
 them to an etherpad and link that from a blueprint for future selves
 finding it.

I created an etherpad here:
https://etherpad.openstack.org/p/devtest-env-reqs

And linked it from the blueprint here:
https://blueprints.launchpad.net/tripleo/+spec/test-environment-requirements

I only added some details about devtest on openstack for now since I
figured everyone else could add their thoughts in their own words.

 
 In particular I'd like to make being able to use OpenStack a J series
 goal, though it doesn't help with local dev overheads.
 
 -Rob

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [TripleO] test environment requirements

2014-03-24 Thread Robert Collins
On 25 March 2014 06:28, Ben Nemec openst...@nemebean.com wrote:


 I created an etherpad here:
 https://etherpad.openstack.org/p/devtest-env-reqs

 And linked it from the blueprint here:
 https://blueprints.launchpad.net/tripleo/+spec/test-environment-requirements

 I only added some details about devtest on openstack for now since I
 figured everyone else could add their thoughts in their own words.

I think it would be super useful if you could capture all the things
in one place - it will mean we don't need to chase folk up to ensure
their idea is present in the etherpad.

-Rob
-- 
Robert Collins rbtcoll...@hp.com
Distinguished Technologist
HP Converged Cloud

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [TripleO] test environment requirements

2014-03-24 Thread Ben Nemec
On 2014-03-24 14:43, Robert Collins wrote:
 On 25 March 2014 06:28, Ben Nemec openst...@nemebean.com wrote:

 
 I created an etherpad here:
 https://etherpad.openstack.org/p/devtest-env-reqs

 And linked it from the blueprint here:
 https://blueprints.launchpad.net/tripleo/+spec/test-environment-requirements

 I only added some details about devtest on openstack for now since I
 figured everyone else could add their thoughts in their own words.
 
 I think it would be super useful if you could capture all the things
 in one place - it will mean we don't need to chase folk up to ensure
 their idea is present in the etherpad.
 
 -Rob

Okay, updated the etherpad with the main points I got from the thread.

-Ben

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [TripleO] test environment requirements

2014-03-23 Thread Clint Byrum
Excerpts from Ben Nemec's message of 2014-03-21 09:38:00 -0700:
 On 2014-03-21 10:57, Derek Higgins wrote:
  On 14/03/14 20:16, Ben Nemec wrote:
  On 2014-03-13 11:12, James Slagle wrote:
  On Thu, Mar 13, 2014 at 2:51 AM, Robert Collins
  robe...@robertcollins.net wrote:
  So we already have pretty high requirements - its basically a 16G
  workstation as minimum.
 
  Specifically to test the full story:
   - a seed VM
   - an undercloud VM (bm deploy infra)
   - 1 overcloud control VM
   - 2 overcloud hypervisor VMs
  
 5 VMs with 2+G RAM each.
 
  To test the overcloud alone against the seed we save 1 VM, to skip the
  overcloud we save 3.
 
  However, as HA matures we're about to add 4 more VMs: we need a HA
  control plane for both the under and overclouds:
   - a seed VM
   - 3 undercloud VMs (HA bm deploy infra)
   - 3 overcloud control VMs (HA)
   - 2 overcloud hypervisor VMs
  
 9 VMs with 2+G RAM each == 18GB
 
  What should we do about this?
 
  A few thoughts to kick start discussion:
   - use Ironic to test across multiple machines (involves tunnelling
  brbm across machines, fairly easy)
   - shrink the VM sizes (causes thrashing)
   - tell folk to toughen up and get bigger machines (ahahahahaha, no)
   - make the default configuration inline the hypervisors on the
  overcloud with the control plane:
 - a seed VM
 - 3 undercloud VMs (HA bm deploy infra)
 - 3 overcloud all-in-one VMs (HA)

   7 VMs with 2+G RAM each == 14GB
 
 
  I think its important that we exercise features like HA and live
  migration regularly by developers, so I'm quite keen to have a fairly
  solid systematic answer that will let us catch things like bad
  firewall rules on the control node preventing network tunnelling
  etc... e.g. we benefit the more things are split out like scale
  deployments are. OTOH testing the micro-cloud that folk may start with
  is also a really good idea
 
 
  The idea I was thinking was to make a testenv host available to
  tripleo atc's. Or, perhaps make it a bit more locked down and only
  available to a new group of tripleo folk, existing somewhere between
  the privileges of tripleo atc's and tripleo-cd-admins.  We could
  document how you use the cloud (Red Hat's or HP's) rack to start up a
  instance to run devtest on one of the compute hosts, request and lock
  yourself a testenv environment on one of the testenv hosts, etc.
  Basically, how our CI works. Although I think we'd want different
  testenv hosts for development vs what runs the CI, and would need to
  make sure everything was locked down appropriately security-wise.
 
  Some other ideas:
 
  - Allow an option to get rid of the seed VM, or make it so that you
  can shut it down after the Undercloud is up. This only really gets rid
  of 1 VM though, so it doesn't buy you much nor solve any long term
  problem.
 
  - Make it easier to see how you'd use virsh against any libvirt host
  you might have lying around.  We already have the setting exposed, but
  make it a bit more public and call it out more in the docs. I've
  actually never tried it myself, but have been meaning to.
 
  - I'm really reaching now, and this may be entirely unrealistic :),
  butsomehow use the fake baremetal driver and expose a mechanism to
  let the developer specify the already setup undercloud/overcloud
  environment ahead of time.
  For example:
  * Build your undercloud images with the vm element since you won't be
  PXE booting it
  * Upload your images to a public cloud, and boot instances for them.
  * Use this new mechanism when you run devtest (presumably running from
  another instance in the same cloud)  to say I'm using the fake
  baremetal driver, and here are the  IP's of the undercloud instances.
  * Repeat steps for the overcloud (e.g., configure undercloud to use
  fake baremetal driver, etc).
  * Maybe it's not the fake baremetal driver, and instead a new driver
  that is a noop for the pxe stuff, and the power_on implementation
  powers on the cloud instances.
  * Obviously if your aim is to test the pxe and disk deploy process
  itself, this wouldn't work for you.
  * Presumably said public cloud is OpenStack, so we've also achieved
  another layer of On OpenStack.
 
  I actually spent quite a while looking into something like this last
  option when I first started on TripleO, because I had only one big
  server locally and it was running my OpenStack installation.  I was
  hoping to use it for my TripleO instances, and even went so far as to
  add support for OpenStack to the virtual power driver in baremetal.  I
  was never completely successful, but I did work through a number of
  problems:
 
  1. Neutron didn't like allowing the DHCP/PXE traffic to let my seed
  serve to the undercloud.  I was able to get around this by using flat
  networking with a local bridge on the OpenStack system, but I'm not sure
  if that's going to be possible on most public cloud providers.  

Re: [openstack-dev] [TripleO] test environment requirements

2014-03-23 Thread Clint Byrum
Excerpts from Dan Prince's message of 2014-03-21 09:25:42 -0700:
 
 - Original Message -
  From: Robert Collins robe...@robertcollins.net
  To: OpenStack Development Mailing List openstack-dev@lists.openstack.org
  Sent: Thursday, March 13, 2014 5:51:30 AM
  Subject: [openstack-dev] [TripleO] test environment requirements
  
  So we already have pretty high requirements - its basically a 16G
  workstation as minimum.
  
  Specifically to test the full story:
   - a seed VM
   - an undercloud VM (bm deploy infra)
   - 1 overcloud control VM
   - 2 overcloud hypervisor VMs
  
 5 VMs with 2+G RAM each.
  
  To test the overcloud alone against the seed we save 1 VM, to skip the
  overcloud we save 3.
  
  However, as HA matures we're about to add 4 more VMs: we need a HA
  control plane for both the under and overclouds:
   - a seed VM
   - 3 undercloud VMs (HA bm deploy infra)
   - 3 overcloud control VMs (HA)
   - 2 overcloud hypervisor VMs
  
 9 VMs with 2+G RAM each == 18GB
  
  What should we do about this?
  
  A few thoughts to kick start discussion:
   - use Ironic to test across multiple machines (involves tunnelling
  brbm across machines, fairly easy)
   - shrink the VM sizes (causes thrashing)
   - tell folk to toughen up and get bigger machines (ahahahahaha, no)
   - make the default configuration inline the hypervisors on the
  overcloud with the control plane:
 - a seed VM
 - 3 undercloud VMs (HA bm deploy infra)
 - 3 overcloud all-in-one VMs (HA)

   7 VMs with 2+G RAM each == 14GB
  
  
  I think its important that we exercise features like HA and live
  migration regularly by developers, so I'm quite keen to have a fairly
  solid systematic answer that will let us catch things like bad
  firewall rules on the control node preventing network tunnelling
  etc...
 
 I'm all for supporting HA development and testing within devtest. I'm 
 *against* forcing it on all users as a default.
 
 I can imaging wanting to cut corners and have configurations flexible on both 
 ends (undercloud and overcloud). I may for example deploy a single all-in-one 
 undercloud when I'm testing overcloud HA. Or vice versa.
 
 I think I'm one of the few (if not the only) developer who uses almost 
 exclusive baremetal (besides seed VM) when test/developing TripleO. Forcing 
 users who want to do this to have 6-7 real machines is a bit much I think. 
 Arguably wasteful even. By requiring more machines to run through devtest you 
 actually make it harder for people to test it on real hardware which is 
 usually harder to come by. Given deployment on real bare metal is sort of the 
 point or TripleO I'd very much like to see more developers using it rather 
 than less.
 
 So by all means lets support HA... but lets do it in a way that is 
 configurable (i.e. not forcing people to be wasters)
 
 Dan
 

I don't think anybody wants to force it on _users_. But a predominance
of end users will require HA, and thus we need our developers to be able
to develop with HA.

This is for the _benefit_ of developers. I imagine we've all been in
situations where our dev environment is almost nothing like CI, and then
when CI runs you find that you have missed huge problems.. and now to
test for those problems you either have to re-do your dev environment,
or wait.. a lot.. for CI.

I don't have any really clever answers to this problem. We're testing an
end-to-end cloud deployment. If we can't run a small, accurate simulation
of such an environment as developers, then we will end up going very slow.
The problem is that this small simulation is still massive compared
to the usual development paradigm which involves at most two distinct
virtual machines.

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [TripleO] test environment requirements

2014-03-23 Thread Clint Byrum
Excerpts from Robert Collins's message of 2014-03-13 02:51:30 -0700:
 So we already have pretty high requirements - its basically a 16G
 workstation as minimum.
 
 Specifically to test the full story:
  - a seed VM
  - an undercloud VM (bm deploy infra)
  - 1 overcloud control VM
  - 2 overcloud hypervisor VMs
 
5 VMs with 2+G RAM each.
 
 To test the overcloud alone against the seed we save 1 VM, to skip the
 overcloud we save 3.
 
 However, as HA matures we're about to add 4 more VMs: we need a HA
 control plane for both the under and overclouds:
  - a seed VM
  - 3 undercloud VMs (HA bm deploy infra)
  - 3 overcloud control VMs (HA)
  - 2 overcloud hypervisor VMs
 
9 VMs with 2+G RAM each == 18GB
 

If we switch end-user-vm tests to cirros, and use a flavor that is really
really tiny, like 128M RAM, then I think we can downsize the development
environment hypervisors from 2G to 1G. That at least drops us to 16G. If
we can also turn off the seed as soon as the undercloud boots, that's
another 2G saved. Finally if we can turn off 1 of the undercloud VMs
and run degraded, that is another 2G saved.

Small potatoes I know, but it wouldn't be complicated to do any of these
and it would also help test real scenarios we want to test (seed going
away, undercloud node going away).

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [TripleO] test environment requirements

2014-03-23 Thread Robert Collins
On 24 March 2014 14:06, Clint Byrum cl...@fewbar.com wrote:
 Excerpts from Robert Collins's message of 2014-03-13 02:51:30 -0700:
 So we already have pretty high requirements - its basically a 16G
 workstation as minimum.

 Specifically to test the full story:
  - a seed VM
  - an undercloud VM (bm deploy infra)
  - 1 overcloud control VM
  - 2 overcloud hypervisor VMs
 
5 VMs with 2+G RAM each.

 To test the overcloud alone against the seed we save 1 VM, to skip the
 overcloud we save 3.

 However, as HA matures we're about to add 4 more VMs: we need a HA
 control plane for both the under and overclouds:
  - a seed VM
  - 3 undercloud VMs (HA bm deploy infra)
  - 3 overcloud control VMs (HA)
  - 2 overcloud hypervisor VMs
 
9 VMs with 2+G RAM each == 18GB


 If we switch end-user-vm tests to cirros, and use a flavor that is really
 really tiny, like 128M RAM, then I think we can downsize the development
 environment hypervisors from 2G to 1G. That at least drops us to 16G. If
 we can also turn off the seed as soon as the undercloud boots, that's
 another 2G saved. Finally if we can turn off 1 of the undercloud VMs
 and run degraded, that is another 2G saved.

We can't turn off the seed unless we change the network topology; we
need to make sure if we do that that we don't invalidate the test
structure.

 Small potatoes I know, but it wouldn't be complicated to do any of these
 and it would also help test real scenarios we want to test (seed going
 away, undercloud node going away).

 ___
 OpenStack-dev mailing list
 OpenStack-dev@lists.openstack.org
 http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

I like this.

I also like much of the spread of ideas that came up - lets capture
them to an etherpad and link that from a blueprint for future selves
finding it.

In particular I'd like to make being able to use OpenStack a J series
goal, though it doesn't help with local dev overheads.

-Rob

-- 
Robert Collins rbtcoll...@hp.com
Distinguished Technologist
HP Converged Cloud

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [TripleO] test environment requirements

2014-03-21 Thread Derek Higgins
On 13/03/14 16:12, James Slagle wrote:
 On Thu, Mar 13, 2014 at 2:51 AM, Robert Collins
 robe...@robertcollins.net wrote:
 So we already have pretty high requirements - its basically a 16G
 workstation as minimum.

 Specifically to test the full story:
  - a seed VM
  - an undercloud VM (bm deploy infra)
  - 1 overcloud control VM
  - 2 overcloud hypervisor VMs
 
5 VMs with 2+G RAM each.

 To test the overcloud alone against the seed we save 1 VM, to skip the
 overcloud we save 3.

 However, as HA matures we're about to add 4 more VMs: we need a HA
 control plane for both the under and overclouds:
  - a seed VM
  - 3 undercloud VMs (HA bm deploy infra)
  - 3 overcloud control VMs (HA)
  - 2 overcloud hypervisor VMs
 
9 VMs with 2+G RAM each == 18GB

 What should we do about this?

 A few thoughts to kick start discussion:
  - use Ironic to test across multiple machines (involves tunnelling
 brbm across machines, fairly easy)
  - shrink the VM sizes (causes thrashing)
  - tell folk to toughen up and get bigger machines (ahahahahaha, no)
  - make the default configuration inline the hypervisors on the
 overcloud with the control plane:
- a seed VM
- 3 undercloud VMs (HA bm deploy infra)
- 3 overcloud all-in-one VMs (HA)
   
  7 VMs with 2+G RAM each == 14GB


 I think its important that we exercise features like HA and live
 migration regularly by developers, so I'm quite keen to have a fairly
 solid systematic answer that will let us catch things like bad
 firewall rules on the control node preventing network tunnelling
 etc... e.g. we benefit the more things are split out like scale
 deployments are. OTOH testing the micro-cloud that folk may start with
 is also a really good idea
 
 
 The idea I was thinking was to make a testenv host available to
 tripleo atc's. Or, perhaps make it a bit more locked down and only
 available to a new group of tripleo folk, existing somewhere between
 the privileges of tripleo atc's and tripleo-cd-admins.  We could
 document how you use the cloud (Red Hat's or HP's) rack to start up a
 instance to run devtest on one of the compute hosts, request and lock
 yourself a testenv environment on one of the testenv hosts, etc.
 Basically, how our CI works. Although I think we'd want different
 testenv hosts for development vs what runs the CI, and would need to
 make sure everything was locked down appropriately security-wise.

I like this idea, I think it could work, my only concern is the extra
capacity we would need to pull it off. At the moment we are probably
falling short on capacity to do what we want for CI so adding to this
would make the situation worse (how much worse I don't know). So unless
we get to the point where we have spare hardware doing nothing I think
its a non runner.

 
 Some other ideas:
 
 - Allow an option to get rid of the seed VM, or make it so that you
 can shut it down after the Undercloud is up. This only really gets rid
 of 1 VM though, so it doesn't buy you much nor solve any long term
 problem.
 
 - Make it easier to see how you'd use virsh against any libvirt host
 you might have lying around.  We already have the setting exposed, but
 make it a bit more public and call it out more in the docs. I've
 actually never tried it myself, but have been meaning to.

this could work as an option

 
 - I'm really reaching now, and this may be entirely unrealistic :),
 butsomehow use the fake baremetal driver and expose a mechanism to
 let the developer specify the already setup undercloud/overcloud
 environment ahead of time.
 For example:
 * Build your undercloud images with the vm element since you won't be
 PXE booting it
 * Upload your images to a public cloud, and boot instances for them.
 * Use this new mechanism when you run devtest (presumably running from
 another instance in the same cloud)  to say I'm using the fake
 baremetal driver, and here are the  IP's of the undercloud instances.
 * Repeat steps for the overcloud (e.g., configure undercloud to use
 fake baremetal driver, etc).
 * Maybe it's not the fake baremetal driver, and instead a new driver
 that is a noop for the pxe stuff, and the power_on implementation
 powers on the cloud instances.
 * Obviously if your aim is to test the pxe and disk deploy process
 itself, this wouldn't work for you.
 * Presumably said public cloud is OpenStack, so we've also achieved
 another layer of On OpenStack.
 
 


___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [TripleO] test environment requirements

2014-03-21 Thread Derek Higgins
On 13/03/14 09:51, Robert Collins wrote:
 So we already have pretty high requirements - its basically a 16G
 workstation as minimum.
 
 Specifically to test the full story:
  - a seed VM
  - an undercloud VM (bm deploy infra)
  - 1 overcloud control VM
  - 2 overcloud hypervisor VMs
 
5 VMs with 2+G RAM each.
 
 To test the overcloud alone against the seed we save 1 VM, to skip the
 overcloud we save 3.
 
 However, as HA matures we're about to add 4 more VMs: we need a HA
 control plane for both the under and overclouds:
  - a seed VM
  - 3 undercloud VMs (HA bm deploy infra)
  - 3 overcloud control VMs (HA)
  - 2 overcloud hypervisor VMs
 
9 VMs with 2+G RAM each == 18GB
 
 What should we do about this?
 
 A few thoughts to kick start discussion:
  - use Ironic to test across multiple machines (involves tunnelling
 brbm across machines, fairly easy)
  - shrink the VM sizes (causes thrashing)
  - tell folk to toughen up and get bigger machines (ahahahahaha, no)
  - make the default configuration inline the hypervisors on the
 overcloud with the control plane:
- a seed VM
- 3 undercloud VMs (HA bm deploy infra)
- 3 overcloud all-in-one VMs (HA)
   
  7 VMs with 2+G RAM each == 14GB
 
 
 I think its important that we exercise features like HA and live
 migration regularly by developers, so I'm quite keen to have a fairly
 solid systematic answer that will let us catch things like bad
 firewall rules on the control node preventing network tunnelling
 etc... e.g. we benefit the more things are split out like scale
 deployments are. OTOH testing the micro-cloud that folk may start with
 is also a really good idea

I'd vote for an optional (non default) inline cloud setup like what you
mention above, and maybe a non HA setup aswell. This would allow a lower
entry bar to people who only want to worry about a specific component.
We then would need to cover all supported setups in CI (adding to
capacity needs). and of course we then wouldn't have everybody
exercising HA but it may be necessary to encourage uptake.

 
 -Rob
 


___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [TripleO] test environment requirements

2014-03-21 Thread Derek Higgins
On 14/03/14 20:16, Ben Nemec wrote:
 On 2014-03-13 11:12, James Slagle wrote:
 On Thu, Mar 13, 2014 at 2:51 AM, Robert Collins
 robe...@robertcollins.net wrote:
 So we already have pretty high requirements - its basically a 16G
 workstation as minimum.

 Specifically to test the full story:
  - a seed VM
  - an undercloud VM (bm deploy infra)
  - 1 overcloud control VM
  - 2 overcloud hypervisor VMs
 
5 VMs with 2+G RAM each.

 To test the overcloud alone against the seed we save 1 VM, to skip the
 overcloud we save 3.

 However, as HA matures we're about to add 4 more VMs: we need a HA
 control plane for both the under and overclouds:
  - a seed VM
  - 3 undercloud VMs (HA bm deploy infra)
  - 3 overcloud control VMs (HA)
  - 2 overcloud hypervisor VMs
 
9 VMs with 2+G RAM each == 18GB

 What should we do about this?

 A few thoughts to kick start discussion:
  - use Ironic to test across multiple machines (involves tunnelling
 brbm across machines, fairly easy)
  - shrink the VM sizes (causes thrashing)
  - tell folk to toughen up and get bigger machines (ahahahahaha, no)
  - make the default configuration inline the hypervisors on the
 overcloud with the control plane:
- a seed VM
- 3 undercloud VMs (HA bm deploy infra)
- 3 overcloud all-in-one VMs (HA)
   
  7 VMs with 2+G RAM each == 14GB


 I think its important that we exercise features like HA and live
 migration regularly by developers, so I'm quite keen to have a fairly
 solid systematic answer that will let us catch things like bad
 firewall rules on the control node preventing network tunnelling
 etc... e.g. we benefit the more things are split out like scale
 deployments are. OTOH testing the micro-cloud that folk may start with
 is also a really good idea


 The idea I was thinking was to make a testenv host available to
 tripleo atc's. Or, perhaps make it a bit more locked down and only
 available to a new group of tripleo folk, existing somewhere between
 the privileges of tripleo atc's and tripleo-cd-admins.  We could
 document how you use the cloud (Red Hat's or HP's) rack to start up a
 instance to run devtest on one of the compute hosts, request and lock
 yourself a testenv environment on one of the testenv hosts, etc.
 Basically, how our CI works. Although I think we'd want different
 testenv hosts for development vs what runs the CI, and would need to
 make sure everything was locked down appropriately security-wise.

 Some other ideas:

 - Allow an option to get rid of the seed VM, or make it so that you
 can shut it down after the Undercloud is up. This only really gets rid
 of 1 VM though, so it doesn't buy you much nor solve any long term
 problem.

 - Make it easier to see how you'd use virsh against any libvirt host
 you might have lying around.  We already have the setting exposed, but
 make it a bit more public and call it out more in the docs. I've
 actually never tried it myself, but have been meaning to.

 - I'm really reaching now, and this may be entirely unrealistic :),
 butsomehow use the fake baremetal driver and expose a mechanism to
 let the developer specify the already setup undercloud/overcloud
 environment ahead of time.
 For example:
 * Build your undercloud images with the vm element since you won't be
 PXE booting it
 * Upload your images to a public cloud, and boot instances for them.
 * Use this new mechanism when you run devtest (presumably running from
 another instance in the same cloud)  to say I'm using the fake
 baremetal driver, and here are the  IP's of the undercloud instances.
 * Repeat steps for the overcloud (e.g., configure undercloud to use
 fake baremetal driver, etc).
 * Maybe it's not the fake baremetal driver, and instead a new driver
 that is a noop for the pxe stuff, and the power_on implementation
 powers on the cloud instances.
 * Obviously if your aim is to test the pxe and disk deploy process
 itself, this wouldn't work for you.
 * Presumably said public cloud is OpenStack, so we've also achieved
 another layer of On OpenStack.
 
 I actually spent quite a while looking into something like this last
 option when I first started on TripleO, because I had only one big
 server locally and it was running my OpenStack installation.  I was
 hoping to use it for my TripleO instances, and even went so far as to
 add support for OpenStack to the virtual power driver in baremetal.  I
 was never completely successful, but I did work through a number of
 problems:
 
 1. Neutron didn't like allowing the DHCP/PXE traffic to let my seed
 serve to the undercloud.  I was able to get around this by using flat
 networking with a local bridge on the OpenStack system, but I'm not sure
 if that's going to be possible on most public cloud providers.  There
 may very well be a less invasive way to configure Neutron to allow that,
 but I don't know how to do it.
 
 2. Last time I checked, Nova doesn't support PXE booting instances so I
 had to use iPXE images to do 

Re: [openstack-dev] [TripleO] test environment requirements

2014-03-21 Thread Dan Prince


- Original Message -
 From: Robert Collins robe...@robertcollins.net
 To: OpenStack Development Mailing List openstack-dev@lists.openstack.org
 Sent: Thursday, March 13, 2014 5:51:30 AM
 Subject: [openstack-dev] [TripleO] test environment requirements
 
 So we already have pretty high requirements - its basically a 16G
 workstation as minimum.
 
 Specifically to test the full story:
  - a seed VM
  - an undercloud VM (bm deploy infra)
  - 1 overcloud control VM
  - 2 overcloud hypervisor VMs
 
5 VMs with 2+G RAM each.
 
 To test the overcloud alone against the seed we save 1 VM, to skip the
 overcloud we save 3.
 
 However, as HA matures we're about to add 4 more VMs: we need a HA
 control plane for both the under and overclouds:
  - a seed VM
  - 3 undercloud VMs (HA bm deploy infra)
  - 3 overcloud control VMs (HA)
  - 2 overcloud hypervisor VMs
 
9 VMs with 2+G RAM each == 18GB
 
 What should we do about this?
 
 A few thoughts to kick start discussion:
  - use Ironic to test across multiple machines (involves tunnelling
 brbm across machines, fairly easy)
  - shrink the VM sizes (causes thrashing)
  - tell folk to toughen up and get bigger machines (ahahahahaha, no)
  - make the default configuration inline the hypervisors on the
 overcloud with the control plane:
- a seed VM
- 3 undercloud VMs (HA bm deploy infra)
- 3 overcloud all-in-one VMs (HA)
   
  7 VMs with 2+G RAM each == 14GB
 
 
 I think its important that we exercise features like HA and live
 migration regularly by developers, so I'm quite keen to have a fairly
 solid systematic answer that will let us catch things like bad
 firewall rules on the control node preventing network tunnelling
 etc...

I'm all for supporting HA development and testing within devtest. I'm *against* 
forcing it on all users as a default.

I can imaging wanting to cut corners and have configurations flexible on both 
ends (undercloud and overcloud). I may for example deploy a single all-in-one 
undercloud when I'm testing overcloud HA. Or vice versa.

I think I'm one of the few (if not the only) developer who uses almost 
exclusive baremetal (besides seed VM) when test/developing TripleO. Forcing 
users who want to do this to have 6-7 real machines is a bit much I think. 
Arguably wasteful even. By requiring more machines to run through devtest you 
actually make it harder for people to test it on real hardware which is usually 
harder to come by. Given deployment on real bare metal is sort of the point or 
TripleO I'd very much like to see more developers using it rather than less.

So by all means lets support HA... but lets do it in a way that is configurable 
(i.e. not forcing people to be wasters)

Dan

 e.g. we benefit the more things are split out like scale
 deployments are. OTOH testing the micro-cloud that folk may start with
 is also a really good idea
 
 -Rob
 
 --
 Robert Collins rbtcoll...@hp.com
 Distinguished Technologist
 HP Converged Cloud
 
 ___
 OpenStack-dev mailing list
 OpenStack-dev@lists.openstack.org
 http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
 

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


Re: [openstack-dev] [TripleO] test environment requirements

2014-03-21 Thread Ben Nemec
On 2014-03-21 10:57, Derek Higgins wrote:
 On 14/03/14 20:16, Ben Nemec wrote:
 On 2014-03-13 11:12, James Slagle wrote:
 On Thu, Mar 13, 2014 at 2:51 AM, Robert Collins
 robe...@robertcollins.net wrote:
 So we already have pretty high requirements - its basically a 16G
 workstation as minimum.

 Specifically to test the full story:
  - a seed VM
  - an undercloud VM (bm deploy infra)
  - 1 overcloud control VM
  - 2 overcloud hypervisor VMs
 
5 VMs with 2+G RAM each.

 To test the overcloud alone against the seed we save 1 VM, to skip the
 overcloud we save 3.

 However, as HA matures we're about to add 4 more VMs: we need a HA
 control plane for both the under and overclouds:
  - a seed VM
  - 3 undercloud VMs (HA bm deploy infra)
  - 3 overcloud control VMs (HA)
  - 2 overcloud hypervisor VMs
 
9 VMs with 2+G RAM each == 18GB

 What should we do about this?

 A few thoughts to kick start discussion:
  - use Ironic to test across multiple machines (involves tunnelling
 brbm across machines, fairly easy)
  - shrink the VM sizes (causes thrashing)
  - tell folk to toughen up and get bigger machines (ahahahahaha, no)
  - make the default configuration inline the hypervisors on the
 overcloud with the control plane:
- a seed VM
- 3 undercloud VMs (HA bm deploy infra)
- 3 overcloud all-in-one VMs (HA)
   
  7 VMs with 2+G RAM each == 14GB


 I think its important that we exercise features like HA and live
 migration regularly by developers, so I'm quite keen to have a fairly
 solid systematic answer that will let us catch things like bad
 firewall rules on the control node preventing network tunnelling
 etc... e.g. we benefit the more things are split out like scale
 deployments are. OTOH testing the micro-cloud that folk may start with
 is also a really good idea


 The idea I was thinking was to make a testenv host available to
 tripleo atc's. Or, perhaps make it a bit more locked down and only
 available to a new group of tripleo folk, existing somewhere between
 the privileges of tripleo atc's and tripleo-cd-admins.  We could
 document how you use the cloud (Red Hat's or HP's) rack to start up a
 instance to run devtest on one of the compute hosts, request and lock
 yourself a testenv environment on one of the testenv hosts, etc.
 Basically, how our CI works. Although I think we'd want different
 testenv hosts for development vs what runs the CI, and would need to
 make sure everything was locked down appropriately security-wise.

 Some other ideas:

 - Allow an option to get rid of the seed VM, or make it so that you
 can shut it down after the Undercloud is up. This only really gets rid
 of 1 VM though, so it doesn't buy you much nor solve any long term
 problem.

 - Make it easier to see how you'd use virsh against any libvirt host
 you might have lying around.  We already have the setting exposed, but
 make it a bit more public and call it out more in the docs. I've
 actually never tried it myself, but have been meaning to.

 - I'm really reaching now, and this may be entirely unrealistic :),
 butsomehow use the fake baremetal driver and expose a mechanism to
 let the developer specify the already setup undercloud/overcloud
 environment ahead of time.
 For example:
 * Build your undercloud images with the vm element since you won't be
 PXE booting it
 * Upload your images to a public cloud, and boot instances for them.
 * Use this new mechanism when you run devtest (presumably running from
 another instance in the same cloud)  to say I'm using the fake
 baremetal driver, and here are the  IP's of the undercloud instances.
 * Repeat steps for the overcloud (e.g., configure undercloud to use
 fake baremetal driver, etc).
 * Maybe it's not the fake baremetal driver, and instead a new driver
 that is a noop for the pxe stuff, and the power_on implementation
 powers on the cloud instances.
 * Obviously if your aim is to test the pxe and disk deploy process
 itself, this wouldn't work for you.
 * Presumably said public cloud is OpenStack, so we've also achieved
 another layer of On OpenStack.

 I actually spent quite a while looking into something like this last
 option when I first started on TripleO, because I had only one big
 server locally and it was running my OpenStack installation.  I was
 hoping to use it for my TripleO instances, and even went so far as to
 add support for OpenStack to the virtual power driver in baremetal.  I
 was never completely successful, but I did work through a number of
 problems:

 1. Neutron didn't like allowing the DHCP/PXE traffic to let my seed
 serve to the undercloud.  I was able to get around this by using flat
 networking with a local bridge on the OpenStack system, but I'm not sure
 if that's going to be possible on most public cloud providers.  There
 may very well be a less invasive way to configure Neutron to allow that,
 but I don't know how to do it.

 2. Last time I checked, Nova doesn't support PXE booting 

Re: [openstack-dev] [TripleO] test environment requirements

2014-03-14 Thread Ben Nemec

On 2014-03-13 11:12, James Slagle wrote:

On Thu, Mar 13, 2014 at 2:51 AM, Robert Collins
robe...@robertcollins.net wrote:

So we already have pretty high requirements - its basically a 16G
workstation as minimum.

Specifically to test the full story:
 - a seed VM
 - an undercloud VM (bm deploy infra)
 - 1 overcloud control VM
 - 2 overcloud hypervisor VMs

   5 VMs with 2+G RAM each.

To test the overcloud alone against the seed we save 1 VM, to skip the
overcloud we save 3.

However, as HA matures we're about to add 4 more VMs: we need a HA
control plane for both the under and overclouds:
 - a seed VM
 - 3 undercloud VMs (HA bm deploy infra)
 - 3 overcloud control VMs (HA)
 - 2 overcloud hypervisor VMs

   9 VMs with 2+G RAM each == 18GB

What should we do about this?

A few thoughts to kick start discussion:
 - use Ironic to test across multiple machines (involves tunnelling
brbm across machines, fairly easy)
 - shrink the VM sizes (causes thrashing)
 - tell folk to toughen up and get bigger machines (ahahahahaha, no)
 - make the default configuration inline the hypervisors on the
overcloud with the control plane:
   - a seed VM
   - 3 undercloud VMs (HA bm deploy infra)
   - 3 overcloud all-in-one VMs (HA)
  
 7 VMs with 2+G RAM each == 14GB


I think its important that we exercise features like HA and live
migration regularly by developers, so I'm quite keen to have a fairly
solid systematic answer that will let us catch things like bad
firewall rules on the control node preventing network tunnelling
etc... e.g. we benefit the more things are split out like scale
deployments are. OTOH testing the micro-cloud that folk may start with
is also a really good idea



The idea I was thinking was to make a testenv host available to
tripleo atc's. Or, perhaps make it a bit more locked down and only
available to a new group of tripleo folk, existing somewhere between
the privileges of tripleo atc's and tripleo-cd-admins.  We could
document how you use the cloud (Red Hat's or HP's) rack to start up a
instance to run devtest on one of the compute hosts, request and lock
yourself a testenv environment on one of the testenv hosts, etc.
Basically, how our CI works. Although I think we'd want different
testenv hosts for development vs what runs the CI, and would need to
make sure everything was locked down appropriately security-wise.

Some other ideas:

- Allow an option to get rid of the seed VM, or make it so that you
can shut it down after the Undercloud is up. This only really gets rid
of 1 VM though, so it doesn't buy you much nor solve any long term
problem.

- Make it easier to see how you'd use virsh against any libvirt host
you might have lying around.  We already have the setting exposed, but
make it a bit more public and call it out more in the docs. I've
actually never tried it myself, but have been meaning to.

- I'm really reaching now, and this may be entirely unrealistic :),
butsomehow use the fake baremetal driver and expose a mechanism to
let the developer specify the already setup undercloud/overcloud
environment ahead of time.
For example:
* Build your undercloud images with the vm element since you won't be
PXE booting it
* Upload your images to a public cloud, and boot instances for them.
* Use this new mechanism when you run devtest (presumably running from
another instance in the same cloud)  to say I'm using the fake
baremetal driver, and here are the  IP's of the undercloud instances.
* Repeat steps for the overcloud (e.g., configure undercloud to use
fake baremetal driver, etc).
* Maybe it's not the fake baremetal driver, and instead a new driver
that is a noop for the pxe stuff, and the power_on implementation
powers on the cloud instances.
* Obviously if your aim is to test the pxe and disk deploy process
itself, this wouldn't work for you.
* Presumably said public cloud is OpenStack, so we've also achieved
another layer of On OpenStack.


I actually spent quite a while looking into something like this last 
option when I first started on TripleO, because I had only one big 
server locally and it was running my OpenStack installation.  I was 
hoping to use it for my TripleO instances, and even went so far as to 
add support for OpenStack to the virtual power driver in baremetal.  I 
was never completely successful, but I did work through a number of 
problems:


1. Neutron didn't like allowing the DHCP/PXE traffic to let my seed 
serve to the undercloud.  I was able to get around this by using flat 
networking with a local bridge on the OpenStack system, but I'm not sure 
if that's going to be possible on most public cloud providers.  There 
may very well be a less invasive way to configure Neutron to allow that, 
but I don't know how to do it.


2. Last time I checked, Nova doesn't support PXE booting instances so I 
had to use iPXE images to do the booting.  This doesn't work since we 
PXE boot every time an instance reboots and the iPXE image gets 

Re: [openstack-dev] [TripleO] test environment requirements

2014-03-13 Thread James Slagle
On Thu, Mar 13, 2014 at 2:51 AM, Robert Collins
robe...@robertcollins.net wrote:
 So we already have pretty high requirements - its basically a 16G
 workstation as minimum.

 Specifically to test the full story:
  - a seed VM
  - an undercloud VM (bm deploy infra)
  - 1 overcloud control VM
  - 2 overcloud hypervisor VMs
 
5 VMs with 2+G RAM each.

 To test the overcloud alone against the seed we save 1 VM, to skip the
 overcloud we save 3.

 However, as HA matures we're about to add 4 more VMs: we need a HA
 control plane for both the under and overclouds:
  - a seed VM
  - 3 undercloud VMs (HA bm deploy infra)
  - 3 overcloud control VMs (HA)
  - 2 overcloud hypervisor VMs
 
9 VMs with 2+G RAM each == 18GB

 What should we do about this?

 A few thoughts to kick start discussion:
  - use Ironic to test across multiple machines (involves tunnelling
 brbm across machines, fairly easy)
  - shrink the VM sizes (causes thrashing)
  - tell folk to toughen up and get bigger machines (ahahahahaha, no)
  - make the default configuration inline the hypervisors on the
 overcloud with the control plane:
- a seed VM
- 3 undercloud VMs (HA bm deploy infra)
- 3 overcloud all-in-one VMs (HA)
   
  7 VMs with 2+G RAM each == 14GB


 I think its important that we exercise features like HA and live
 migration regularly by developers, so I'm quite keen to have a fairly
 solid systematic answer that will let us catch things like bad
 firewall rules on the control node preventing network tunnelling
 etc... e.g. we benefit the more things are split out like scale
 deployments are. OTOH testing the micro-cloud that folk may start with
 is also a really good idea


The idea I was thinking was to make a testenv host available to
tripleo atc's. Or, perhaps make it a bit more locked down and only
available to a new group of tripleo folk, existing somewhere between
the privileges of tripleo atc's and tripleo-cd-admins.  We could
document how you use the cloud (Red Hat's or HP's) rack to start up a
instance to run devtest on one of the compute hosts, request and lock
yourself a testenv environment on one of the testenv hosts, etc.
Basically, how our CI works. Although I think we'd want different
testenv hosts for development vs what runs the CI, and would need to
make sure everything was locked down appropriately security-wise.

Some other ideas:

- Allow an option to get rid of the seed VM, or make it so that you
can shut it down after the Undercloud is up. This only really gets rid
of 1 VM though, so it doesn't buy you much nor solve any long term
problem.

- Make it easier to see how you'd use virsh against any libvirt host
you might have lying around.  We already have the setting exposed, but
make it a bit more public and call it out more in the docs. I've
actually never tried it myself, but have been meaning to.

- I'm really reaching now, and this may be entirely unrealistic :),
butsomehow use the fake baremetal driver and expose a mechanism to
let the developer specify the already setup undercloud/overcloud
environment ahead of time.
For example:
* Build your undercloud images with the vm element since you won't be
PXE booting it
* Upload your images to a public cloud, and boot instances for them.
* Use this new mechanism when you run devtest (presumably running from
another instance in the same cloud)  to say I'm using the fake
baremetal driver, and here are the  IP's of the undercloud instances.
* Repeat steps for the overcloud (e.g., configure undercloud to use
fake baremetal driver, etc).
* Maybe it's not the fake baremetal driver, and instead a new driver
that is a noop for the pxe stuff, and the power_on implementation
powers on the cloud instances.
* Obviously if your aim is to test the pxe and disk deploy process
itself, this wouldn't work for you.
* Presumably said public cloud is OpenStack, so we've also achieved
another layer of On OpenStack.


-- 
-- James Slagle
--

___
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev