本地流浪者盒子的libcloud计算提供程序

libcloud-vagrant的Python项目详细描述


libcloud-vagrantApache Libcloud的计算提供程序,它使用 Vagrant创建VirtualBox节点。

安装了libcloud-vagrant后,可以在 例如,你的笔记本电脑,然后将其部署到Amazon的Rackspace, 或者libcloud支持的任何其他云。

你好,世界

以下代码片段将启动主机上运行的虚拟机:

from libcloud.compute.providers import get_driver

from libcloudvagrant import VAGRANT


driver = get_driver(VAGRANT)()

pub = driver.ex_create_network(name="pub", cidr="172.16.0.0/16", public=True)

node = driver.create_node(name="n1",
                          image=driver.get_image("hashicorp/precise64"),
                          size=driver.list_sizes()[0],
                          ex_networks=[pub])

print "Node '%s' running!" % (node.name,)
print ("Connect to it with 'ssh vagrant@%s' (password: 'vagrant')" %
       (node.public_ips[0],))

功能

libcloud-vagrant使用vagrant创建框、网络和卷。它 在~/.libcloudvagrant下创建一个流浪环境,使用 运行您定义的任意数量的流浪箱。

libcloud-vagrant创建的节点可以连接到公共网络专用网络。公共网络被实现为virtualbox host-only网络和专用网络实现为virtualbox internal网络。

libcloud-vagrant还允许您创建VDI disks,并将它们附加到 节点的SATA controllers

部署脚本通过vagrant的nat接口运行,使用 流浪汉的ssh证书。因此,它们也适用于非网络 节点。

libcloud-vagrant包含一个命令行工具 libcloud创建的流浪节点的操作:

$ libcloud-vagrant -h
usage: libcloud-vagrant [-h] <cmd>

Manage your Vagrant libcloud environment.

positional arguments:
  <cmd>       command to execute

optional arguments:
  -h, --help  show this help message and exit

Available commands:

    destroy
        Destroys all nodes, networks and volumes in your Vagrant
        environment.

    list
        Lists all nodes, networks and volumes in your Vagrant
        environment.

    screen
        Opens a screen(1) session to all nodes in your Vagrant
        environment.
$

libcloud-vagrant不是线程或多进程安全的。相互作用 使用vagrant和virtualbox命令行工具受到保护 有一个基于文件系统的锁,它(希望)序列化一些东西,所以 即使它们有效,并发操作也不会给您带来太多好处 好处。

要求

libcloud-vagrant需要:

  • VirtualBox(在64位linux下用4.3.14版测试)。

  • Vagrant(在64位linux下使用1.6.3版进行测试)。

  • Python2.7。

  • 如果要将存储卷附加到节点,则需要 vagrant-libcloud-helper流浪者插件。安装时使用:

    $ vagrant plugin install vagrant-libcloud-helper
    

以下是可选的:

  • 如果你在一个http/ftp代理后面,那么这个流氓插件vagrant-proxyconf 将修改由libcloud-vagrant创建的节点以使用它。

    您不需要配置vagrant-proxyconf。安装时使用:

    $ vagrant plugin install vagrant-proxyconf
    

安装

一旦安装了VirtualBox和Vagrant,请按常规操作:

$ pip install libcloud-vagrant

它将安装libcloud-vagrant及其python依赖项。你 可能想在虚拟机里完成。

更多示例

查看源发行版的samples子目录。你 我们将找到几个脚本来创建一个节点,向您展示如何 提供它,以及创建双节点集群的脚本。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用jdbc和jsp将数据插入mysql?   Oracle Java 7密钥工具无法将pkcs11密钥库导入JKS:非PKCS 8编码   java使用接口获取Todo id或JPA getOne方法速度更快   Java获得给定日期的下个月的第一天   java使用单个“更新”按钮将测试表的自动增量值插入分数表   BottomNavigationView下坐标布局上的java Fab按钮   java在安卓 OnPreferenceClickListener中调用非静态方法   java在MediaStore中在哪里可以找到图像的文件路径   java Spring boot 2.2 activemq jetty冲突   java集合值在所有列表变量中都得到更新   java如何在SpringMVC+maven项目中获取web上下文路径?   java不可变类:空白的最后字段可能未被初始化   在Android中实现ads的java程序?   java将数据库任务与spring petclinic应用程序分离   同一实体列上的java双向关联不能为null