<div dir="ltr">Hello, folks.<div><br></div><div>We need any kind of CM for Fuel 7.0. Otherwise new project with 800+ nodes</div><div>will be near impossible to support. Customer always wants to change something.</div><div><br></div><div>In our opinion, there are two major approaches for CM:</div><div><br></div><div>#1 Independent CM (Puppet master, Chef, Ansible, whatever)</div><div>#2 Fuel-based CM</div><div><br></div><div>Solution for #2</div><div>----------</div><div><br></div><div>Fuel has all info about configuration. So we've tried to</div><div>unlock "Settings" [0] and push "deploy" button.</div><div><br></div><div>Major findings:</div><div><br></div><div>* Task idem-potency. Looks like most of the tasks are idempotent.</div><div>We've skipped 3 tasks on controller and were able to get NO downtime</div><div>for Horizon and "nova list". BTW deeper QA required.</div><div><br></div><div>* Standard changes. Operator can change parameters via WebUI, CLI or API.<br></div><div>For example, i was able to deploy Sahara. Unfortunately there is not foolproof.</div><div>I mean some changes can lead to broken cloud...</div><div><br></div><div>* Non-standard changes. Any other changes can be done with plugins.</div><div>We can modify plugin tasks and scripts (all except UI flags). And then just</div><div>do "--update" + "--sync". BTW, we can change UI for particular env via API</div><div>by modifying "clusters/X/attributes".<br><br>Conclusion</div><div>----------</div><div><br></div><div>- This works (We have service under cron that runs tasks) [1]</div><div>- NOT ready for production (in current state)<br></div><div>- This requires much deeper testing</div><div><br></div><div><br></div><div>I want to hear thoughts about approach above?</div><div>What is the current status/plans for CM? I saw this discussion [2]</div><div><br></div><div>References</div><div>----------</div><div><br></div><div>[0] <a href="https://github.com/rsokolkov/fuel-web/commit/366daaa2eb874c8e54c2d39be475223937cd317d">https://github.com/rsokolkov/fuel-web/commit/366daaa2eb874c8e54c2d39be475223937cd317d</a></div><div>[1] <a href="https://docs.google.com/presentation/d/12kkh1hu4ZrY9S6XXsY_HWaesFwESfxbl5czUwde8isM/edit#slide=id.p">https://docs.google.com/presentation/d/12kkh1hu4ZrY9S6XXsY_HWaesFwESfxbl5czUwde8isM/edit#slide=id.p</a><br></div><div>[2] <a href="https://etherpad.openstack.org/p/lcm-use-cases">https://etherpad.openstack.org/p/lcm-use-cases</a><br></div><div><br></div><div>-- <br><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr">Roman Sokolkov,<div>Deployment Engineer,</div><div>Mirantis, Inc.<br>Skype rsokolkov,<br><a href="mailto:rsokolkov@mirantis.com" target="_blank">rsokolkov@mirantis.com</a></div></div></div></div></div></div></div>
</div></div>