配置管理

配置管理包括修改服务器,使之从一个既有状态到另一个状态,并把应用部署自动化。

配置管理工具

工具包括PuppetChefSaltStack,和 Ansible。Puppet 和 Chef 由Ruby编写,SaltStack 和Ansible由Python编写。

特别任务

诸如Chef,Puppet,Ansible 和 SaltStack之类的配置管理工具,并不适合执行需要交互响应的特别任务。Fabric 和 Invoke 被用于交互操作,比如从Django的manage.py shell界面查询数据库。

配置工具比较

Ansible

Ansible is an open source configuration management and application deployment tool built in Python.

Ansible资源

配置管理学习清单

  1. Learn about configuration management in the context of deployment automation and infrastructure-as-code.
  2. Pick a configuration management tool and stick with it. My recommendation is Ansible because it is by far the easiest tool to learn and use.
  3. Read your configuration management tool’s documentation and, when necessary, the source code.
  4. Automate the configuration management and deployment for your project. Note that this is by far the most time consuming step in this checklist but will pay dividends every time you deploy your project.
  5. Hook the automated deployment tool into your existing deployment process.