zoukankan      html  css  js  c++  java
  • Django 1.6 最佳实践: django项目的服务器自动化部署(转)

    原文:http://www.weiguda.com/blog/41/

    当我们设置服务器时, 不应该每次都使用ssh登录服务器, 再按照记忆一步一步的配置. 因为这样实在是太容易忘记某些步骤了.

    服务器设置应当自动化, 并写成文档. 在django用户中, Ansible, SaltStack, Puppet和Chef是最流行的四款自动化部署工具. 这些工具似乎都需要长时间学习才能使用, 因为这些工具不是为一台服务器设置的, 而是针对多台服务器的. 以下是这些工具的基本功能:

    • 远程通过apt-get或其他包管理系统安装软件包
    • 远程运行命令
    • 远程启动, 重启各项服务
    • 记录远程运行的命令和其结果
    • 创建或更新服务配置文件
    • 为不同服务器载入不同的配置文件
    • 部署和更新项目代码

    比较表:

    工具优势劣势
    SaltStack 主要用push模式; 使用0mq传输快; 许多例子; 庞大的社区支持; 开源; 由Python写成 较复杂
    Ansible 主要用push模式; 可使用Fireball模式加速传输; 不需要远程进程运行; 使用YAML语言设置; 开源; 由Python写成 新项目, 例子较少, 没有官方WSGI和Django配置例子
    Chef 有许多例子; 庞大的社区支持; 开源 难学; 由ruby写成, 配置也是ruby语言;
    Puppet 庞大的社区支持; 开源 较难学; 由ruby写成; 配置文件由自定义DSL设置
         

    Fabric和Invoke则是专注于远程运行命令, 常可以和以上四个工具配合使用.

    现在的趋势是更多的使用SaltStack或Ansible, 因为使用Python写成的, 所以更利于Python用户深入了解. 但需要注意的是, 这些趋势会变化, 如果想了解最新的趋势, 需要我们多关注相关的博客.

  • 相关阅读:
    HDU 4325 Contest 3
    HDU 4324 Contest 3
    HDU 4323 Contest 3
    HDU 4321 Contest 3
    HDU 4320 Contest 3
    HDU 4314 Contest 2
    HDU 4313 Contest 2
    HDU 4318 Contest 2
    12-----简单认识下margin
    11-----broder(边框)
  • 原文地址:https://www.cnblogs.com/ajianbeyourself/p/4181397.html
Copyright © 2011-2022 走看看