Mastering OpenStack(Second Edition)
上QQ阅读APP看书,第一时间看更新

Summary

In this chapter, we covered several topics and terminologies on how to develop and maintain a code infrastructure using the DevOps style.

Viewing your OpenStack infrastructure deployment as code will not only simplify node configuration, but also improve the automation process.

You should keep in mind that DevOps is neither a project nor a goal, but a methodology that will make your deployment successfully empowered by using team synergy with different departments.

Despite the existence of numerous system management tools to bring our OpenStack up and running in an automated way, we have chosen Ansible for the automation of our infrastructure.

Puppet, Chef, Salt, and others can do the job, but in different ways. You should know that there isn't one way to perform automation. Both Puppet and Chef have their own OpenStack deployment projects under the OpenStack Big Tent.

At the end of the day, you can choose to use any automation tools that fit your production needs; the key point to keep in mind is that to manage a big production environment, you must simplify the operation by doing the following:

  • Automating deployment and operation as much as possible
  • Tracking your changes in a version control system
  • Continuously integratining code to keep your infrastructure updated and bug free
  • Monitoring and testing your infrastructure code to make it robust

Although we deployed a basic AIO setup of OpenStack in this chapter, the successive chapters will take you through the process of extending our design by using clustering, defining the various infrastructure nodes, the controller, and compute hosts.