On Apr 22, 2014 11:51 AM, "Jim Rollenhagen" <j...@jimrollenhagen.com> wrote:
> Hi folks! Deva and I talked a bit more about the agent driver last night, > and I wanted to give everyone a quick status update on where we stand with > merging the agent driver into Ironic itself. > > First off, we’ve taken all of the agent driver patches we had and squashed > them into the main agent patch here: > https://review.openstack.org/#/c/84795/ > > That patch still depends on two other patches: > * https://review.openstack.org/#/c/81391/ > * https://review.openstack.org/#/c/81919/ > > which should be close to landing. > > The plan going forward is to continue to iterate on 84795 until it lands. > Not everything is complete yet, but I would prefer it to land it and file > bugs, etc. for missing features or things that are broken. The patch is > already pretty large and getting a bit unwieldy. > > What we know is not ready today (I’d like to land these in later patches, > but feedback welcome on that): > * tear_down() is not fully implemented. > * Networking things are not fully implemented. > * More hardware info coming from the agent should be stored in the > database (IMO). > * The agent and PXE drivers should have similar driver_info and > instance_info - this is not true today. > * The agent currently relies on a static DHCP configuration rather than > the Neutron support the PXE driver uses - which means the agent cannot be > used side-by-side with other drivers today. This should be fixes but may > take a fair amount of work. > * There are quite a few TODOs littered around - some are functional > things, others are optimizations. If there are some that should be > implemented before landing this, we’re happy to do so. > > We would appreciate it if folks could start reviewing this patch, in case > there are things I missed in this list. > > One last thing: testing. We plan to add tempest tests for this driver > sooner than later. I think having similar or identical driver_info, and > using Neutron for DHCP, etc, will simplify these tests, and possibly > converge them to one test. That said, I’d like to start writing the tempest > tests now and converge as we go. > Thanks for the excellent summary of our discussion, Jim! I would appreciate it if a few more people could take some time to review the agent driver and associated patches, and really think about the architecture and implications here. We've discussed the need for a more capable agent even before the Hong Kong summit. Now we need reviewers to step up and help make it happen. Things that are on my mind as I review these patches: * What are the operational and external requirements to use this? Are they documented somewhere? Do they expand the project's scope or increase operational complexity? * How can I test the agent driver today? I hesitate to land this much code without the ability to test it locally. * What is the plan for automated testing? * Given the above, what needs to be done before landing the agent driver, and what can be iterated upon after landing it? A few specific points that you mention, which I'd like to expand on... the dependency on a static external DHCP server seems like a blocker to me. This prevents co-operation of the current PXE class of drivers, and would require many changes to devstack/lib/ironic to prepare the environment appropriately for the agent. Our reference implementation -- what we test in the gate -- should be integrated with other OpenStack components, so I don't feel that we should even add that support to devstack temporarily. The lack of tear_down() is another blocker, in my opinion. That is a required part of a core driver interface; the driver is incomplete without that. On the other hand, I think that moving all the instance-specific bits from driver_info to instance_info could be done after landing the driver. That'll require staging and coordinating changes to several projects (at a minimum, ironic and tempest). We should also do it in a way that is compatible with the Icehouse-stable branch (I don't think that will be hard). I'm fine with landing the driver while there are still optimization #TODO's, partial (or missing) implementations of optional features, etc. I would like to start discussing the status of the agent and agent driver during every weekly meeting, and have added it to the agenda. I realize we have only one more meeting before the summit, and I'd like to use a portion of that time to go over the plan for the summit session devoted to the agent. Cheers, Devananda
_______________________________________________ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev