Sahara/PluggableProvisioning/IRAndVMManagerAPI
镜像注册API
以下是IR提供的所有函数列表。
set_description(image_id, os_description, hadoop_version, extra)
- 为镜像设置人类可读的信息,例如“Ubuntu 13.04 x86_64, Apache Hadoop 1.1.1, Java 1.7u21”
- 返回值: None
tag_image(image_id, tags)
- 为镜像添加标签
- 返回: 无
untag_image(image_id, tags)
- 从镜像移除标签
- 返回: 无
get_image_tags(image_id)
- 查询给定镜像的所有标签
- 返回: 字符串列表 - 镜像标签
get_image_by_tags(tags)
- 查询具有所有指定标签的镜像
- 返回: 字符串列表 - 镜像的ID
VM Manager的API
VM manager提供以下API。
execute(command)
- 通过ssh在VM上执行shell命令(非交互式)
- 返回: 命令执行返回的状态码
copy_to_vm(filename)
- 通过ssh将文件复制到VM
- 返回: 如果操作成功则返回True,否则返回False
copy_from_vm(filename)
- 通过ssh将文件从VM复制出来
- 返回: 如果操作成功则返回True,否则返回False
此外,我们正在考虑添加一些用于高级操作的辅助函数,例如:安装软件包(使用apt-get/yum ?)