有了解 ansible-playbook 的么 - V2EX
tin

有了解 ansible-playbook 的么

  •  
  •   tin Jul 26, 2014 7638 views
    This topic created in 4311 days ago, the information mentioned may be changed or developed.
    在网上找了很久,没有中文教程。请问这个有中文教程不?英文看着太费劲了。。。谢谢
    15 replies    2016-05-18 17:32:39 +08:00
    snachx
        1
    snachx  
       Jul 26, 2014 via Android
    貌似木有中文,不过那点英文也很简单啊,实在看不下去就看实际例子好了,比如
    https://github.com/edx/configuration
    tin
        2
    tin  
    OP
       Jul 28, 2014
    @snachx 谢谢,我也是在看 edx 才知道 ansible 的。学这个有啥好的建议么?我看 edx 的代码都不知道各文件夹是干什么的,有什么联系。您有好的建议么?谢谢
    tin
        3
    tin  
    OP
       Jul 28, 2014
    我看 ansible 也是为了弄明白 edx 安装时的原理,但不知从那开始。。。。
    snachx
        4
    snachx  
       Jul 28, 2014   1
    @tin edx configuration的代码比较丰富了,看这个就行

    如果你是为了知道安装时的原理的话,从https://github.com/edx/configuration/blob/master/playbooks/edx_sandbox.yml 开始吧

    执行的步骤就是roles下面的列出来的各个role的内容,具体的某个role放在playbooks/roles下面,比如nginx,具体某个role的文件夹下,defaults是各种参数配置,handlers是task中用到的handlers定义,meta是依赖的其他role之类的信息,tasks是具体执行的内容,templates是tasks中用到的文件模板。

    以此类推,推荐的方法是,参照 https://github.com/edx/configuration/wiki/edX-Ubuntu-12.04-64-bit-Installation 的One step installation,看他输出提示,然后用输出提示的名字去代码里面搜索,就会发现是那一步,放在什么地方,然后多看几个就知道怎么组织的了。
    tin
        5
    tin  
    OP
       Jul 28, 2014
    @snachx 非常感谢。我去研究研究。有不明白再请教。谢谢
    tin
        6
    tin  
    OP
       Jul 28, 2014
    @snachx 再请教一个问题: https://github.com/edx/configuration/wiki/edX-Ubuntu-12.04-64-bit-Installation这个教程中,最后一个命令是:
    sudo ansible-playbook -c local --limit "localhost:127.0.0.1" ../edx_sandbox.yml \
    -i "localhst," -e 'EDXAPP_PREVIEW_LMS_BASE=preview.example.com EDXAPP_LMS_BASE=example.com EDXAPP_LMS_PREVIEW_NGINX_PORT=80 EDXAPP_CMS_NGINX_PORT=80 EDXAPP_LMS_NGINX_PORT=80 edx_platform_version=master '
    这个命令分两部分:
    -e 之后的命令我看明白了:是设置对应的 /var/tmp/configuration/playbooks/edx_sandbox.yml 文件中的变量。如果再安装中是用自己的域名,edx_sandbox.yml 里设置,还是在上边的命令行中设置,还是两个都要设置?

    但-e 之前的没有明白-i "localhost" 是指向到本地主机么?谢谢
    snachx
        7
    snachx  
       Jul 29, 2014 via Android   1
    ansible-playbook --help
    tin
        8
    tin  
    OP
       Jul 29, 2014
    @snachx 谢谢,原来是两个"-"
    tin
        9
    tin  
    OP
       Aug 7, 2014
    @snachx 再请教一个问题 (暂定域名是 abc.com)
    sudo ansible-playbook -c local --limit "localhost:127.0.0.1" ../edx_sandbox.yml \
    -i "localhost," -e 'EDXAPP_PREVIEW_LMS_BASE=preview.abc.com EDXAPP_LMS_BASE=abc.com EDXAPP_LMS_PREVIEW_NGINX_PORT=80 EDXAPP_CMS_NGINX_PORT=80 EDXAPP_LMS_NGINX_PORT=80 edx_platform_version=master '

    sudo ansible-playbook -c local --limit "localhost:127.0.0.1" ../edx_sandbox.yml \
    -i "localhost, **abc.com**," -e 'EDXAPP_PREVIEW_LMS_BASE=preview.abc.com EDXAPP_LMS_BASE=abc.com EDXAPP_LMS_PREVIEW_NGINX_PORT=80 EDXAPP_CMS_NGINX_PORT=80 EDXAPP_LMS_NGINX_PORT=80 edx_platform_version=master '
    有什么区别?
    tin
        10
    tin  
    OP
       Aug 7, 2014
    抱歉打错了。重新问,下边两个其它都一样。就是在-i “localhost”,后面一个没加域名,一个加了域名。请问加与不加,有什么区别?谢谢
    sudo ansible-playbook -c local --limit "localhost:127.0.0.1" ../edx_sandbox.yml \
    -i "localhost," -e 'EDXAPP_PREVIEW_LMS_BASE=preview.abc.com EDXAPP_LMS_BASE=abc.com EDXAPP_LMS_PREVIEW_NGINX_PORT=80 EDXAPP_CMS_NGINX_PORT=80 EDXAPP_LMS_NGINX_PORT=80 edx_platform_version=master '

    sudo ansible-playbook -c local --limit "localhost:127.0.0.1" ../edx_sandbox.yml \
    -i "localhost, abc.com," -e 'EDXAPP_PREVIEW_LMS_BASE=preview.abc.com EDXAPP_LMS_BASE=abc.com EDXAPP_LMS_PREVIEW_NGINX_PORT=80 EDXAPP_CMS_NGINX_PORT=80 EDXAPP_LMS_NGINX_PORT=80 edx_platform_version=master '
    snachx
        11
    snachx  
       Aug 7, 2014
    @tin 建议再去看一下 -i 参数的含义和INVENTORY的含义,-i 指定的内容是指在哪些机器上跑脚本,可以是本地的也可以是远程的等等

    而看你的意思应该说是你的edx平台搭起来之后要用abc.com来访问,-i 参数不会对这个目的有什么作用。只有你后面写的 -e 中的内容才会影响edx的设置
    tin
        12
    tin  
    OP
       Aug 7, 2014
    @snachx 谢谢。ansible 全英文看的比较慢。在用 EDX 试的时候很多参数不知道从何着手。我再研究研究。谢谢
    tin
        13
    tin  
    OP
       Aug 7, 2014
    我看了-i 的参数介绍(通过--help)是:
    -i INVENTORY, --inventory-file=INVENTORY
    specify inventory host file

    哪里能找到更详细的说明?ansible 的官方文档 么?
    snachx
        14
    snachx  
       Aug 7, 2014 via Android   1
    @tin 帮助不懂的就去官方文档搜索,肯定会有啦~
    hzwlf2002
        15
    hzwlf2002  
       May 18, 2016
    推荐一本书: Ansible: UP and Running

    我的 github 上也给了一些安装配置常用服务的示例,欢迎围观与给星。

    https://github.com/wanglf/ansible-playbook
    About     Help     Advertise     Blog     API     FAQ     Solana     3037 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 32ms UTC 08:49 PVG 16:49 LAX 01:49 JFK 04:49
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86