stancel.create-digitalocean-droplet

创建数字海洋虚拟机

一个用于创建数字海洋虚拟机(Droplet)的角色,并为其添加一个DNS记录,以便通过给定URL(create_digitalocean_droplet_server_fqdn变量)访问。该角色会将新创建的服务器添加到一个名为“new_server”的Ansible组中,你应该在后续角色中使用这个主机值来应用任何额外配置。

要求

需要以下项目才能使用该角色:

  • 数字海洋账户
  • 存储在名为“DO_API_TOKEN”的环境变量中的数字海洋账户API密钥
  • 你要添加的根域名(server_fqdn)必须指向数字海洋的名称服务器
  • 你的SSH密钥已上传到数字海洋账户,并将指纹(MD5哈希值)存储在(ssh_keys)变量列表中

角色变量

你的数字海洋虚拟机的主机名。这将被设置为Linux VPS上的主机名,并显示为你虚拟机列表中的名称。

create_digitalocean_droplet_host_name: "my-hostname-here"

你想要为其创建DNS记录的域名,以便指向这个新创建的数字海洋虚拟机。

create_digitalocean_droplet_server_fqdn: "mysubdomain.mydomain.com"

一个名为DO_API_TOKEN的环境变量,包含你的数字海洋API密钥值。

create_digitalocean_droplet_do_token: "{{ lookup('env', 'DO_API_TOKEN') }}"

与已上传到你的数字海洋账户的SSH密钥相对应的任何SSH密钥指纹列表,这些指纹将用于在创建虚拟机时添加以便访问。你可以通过进入数字海洋账户设置,然后选择安全选项卡,添加SSH密钥并复制指纹,或复制已经上传的SSH密钥的指纹来找到这些指纹。

create_digitalocean_droplet_ssh_key_ids:
  - "72:aa:ae:3a:62:4d:b4:3d:6a:c5:0f:17:f8:1f:ad:d2"
  - "e4:1d:b2:d1:e1:42:c7:5c:b6:71:75:2b:f4:8d:bf:c7"

你想要创建的虚拟机的大小。默认大小为1GB。

create_digitalocean_droplet_droplet_size: "1gb"

你想要作为新创建的数字海洋虚拟机基础镜像的虚拟机镜像。默认镜像为Ubuntu 16.04 LTS (ubuntu-16-04-x64)。

create_digitalocean_droplet_droplet_image: "ubuntu-16-04-x64"

你想要创建虚拟机的数字海洋区域(数据中心)。默认区域为“nyc1”。

create_digitalocean_droplet_region: "nyc1"

依赖关系

示例剧本

包含如何使用你的角色的示例(例如,作为参数传入变量)对用户来说也很有帮助:

- hosts: localhost ansible_connection=local ansible_python_interpreter=python
  vars_files:
    - vars/main.yml
  roles:
    - { role: stancel.create-digitalocean-droplet }

- hosts: localhost ansible_connection=local ansible_python_interpreter=python 
  vars:
    create_digitalocean_droplet_host_name: "my-hostname-here"
    create_digitalocean_droplet_server_fqdn: "mysubdomain.mydomain.com"
    create_digitalocean_droplet_do_token: "{{ lookup('env', 'DO_API_TOKEN') }}"
    create_digitalocean_droplet_ssh_key_ids:
      - "72:aa:ae:3a:62:4d:b4:3d:6a:c5:0f:17:f8:1f:ad:d2" 
    create_digitalocean_droplet_droplet_size: "1gb"
    create_digitalocean_droplet_droplet_image: "ubuntu-16-04-x64"
    region: "nyc1"
  roles:
    - { role: stancel.create-digitalocean-droplet }

许可证

BSD

作者信息

Brad Stancel

关于项目

Role for creating a DigitalOcean droplet that can then be provisioned accordingly.

安装
ansible-galaxy install stancel.create-digitalocean-droplet
许可证
Unknown
下载
222
拥有者