ambot问题

一、一些参数应该只是在开发场景使用?

1.1 --check

'--check', action='store_true', help='检查指定的 action 脚本是否正确'

1.2 --save-svg

'-G', '--save-svg', action='store_true', help='生成 action scripts 的依赖关系的 svg 文件并尝试在浏览器打开'

1.3 --save-param

'-i', '--save-param', action='store_true', help='交互问询并保存参数退出'

二、几种安装模式的区别?

2.1 --collect

'--collect', action='store_true', help='运行离线收集模式'

2.2 --online

'--online', action='store_true', help='联网运行模式, 将联网安装 yum / pip package [TODO]'

2.3 --dry-run

'--dry-run', action='store_true', help='演习模式, 模拟执行每一个步骤, 不实际连接服务器执行'

三、并发安装过程

3.1 步骤为recovery, 行为是downloading

3.2 步骤为target,行为是prepare

3.2.1 对于每台服务器,安装应用列表

_install_rsync() # 文件同步工具

_install_ssh_key() # 集群间通信

_install_repl_release()  # centos yum本地源构建

_install_pip_and_wheel() # python本地模块库

_install_fabric()  # 安装paramiko,fabric,主要是基于ssh的集群间通信、终端运行

_install_global_files() # 安装ambot服务依赖的脚本

3.3 步骤为具体组件名称,行为是具体的action

例如:

env.current_step_name, env.current_action_name
(u'ntp', u'install')

四、状态如何同步?

五、fabric使用

5.1 upload_to_remote

作用

是同步本地文件到远端服务器,可以选择两种同步方式

六、后续问题

查看 git submodule
查看 python代码加密 PEP 302 -- New Import Hooks

你可能感兴趣的:(草稿)