opentelekomcloud.bastion

OpenTelekomCloud Bastion角色

一个快速创建请求VPC中堡垒服务器的角色

要求

执行主机上需要安装openstacksdk,并且需要连接到OTC。

角色变量

可用的变量如下所示,以及默认值(见 defaults/main.yml):

prefix: test- # 应该被重写
domain_name: example.com # 用于创建server_fqdn和元数据,应该被重写
server_name: bastion
server_subnet: "default-subnet" # 应与network_infra中的默认值相匹配
server_net: "{{ (prefix + 'otc-net') }}" # 应与network_infra中的默认值相匹配
security_group: "{{ (prefix + 'bastion_sg') }}" # 如果名称相同则使用现有安全组,否则将创建新的安全组
server_fqdn: "{{ (server_name + '.' + domain_name) }}"
server_image: "Standard_Fedora_29_latest"
server_flavor: "s2.large.1"
server_ssh_user: "linux"
server_volume_size: 10
assign_floating_ip: True
fixed_floating_ip: ""
# ssh_key_name: "{{ (infra_prefix + 'KeyPair')}}"
server_keypair_name: "{{ (prefix + 'common-KeyPair') }}" # 使用现有密钥对或从文件创建新密钥对,考虑ansible_ssh_private_key_file变量

# 私钥文件的路径将添加到运行时清单中
ansible_ssh_private_key_file: "{{ ('~/.ssh/' + server_keypair_name + '.pem') }}"

# 安装时在堡垒上使用的可选python版本(在运行时清单中生效)
bastion_python: "/usr/bin/env python3"

# 状态(`present`表示创建,`absent`表示删除)
state: present

你还可以通过提供变量来指定可用区域:

availability_zone: "eu-de-03" # 如果未定义则省略

依赖关系

无。

示例播放书

包括一个如何使用你的角色的示例(例如,通过参数传入变量)对用户来说总是很好的:

- hosts: localhost
  roles:
     - opentelekomcloud.bastion

清理资源的方式与创建一样简单。为此应该传递变量 'state': 'false':

- hosts: localhost
  roles:
    - { role: opentelekomcloud.bastion, state: 'absent'}

更高级的示例:

- hosts: localhost
  vars:
    security_group: my_bastion_sg
    server_net: my_network_name # openstack network list
    server_keypair_name: my_existing_public_key
    server_name: 'my_bastion_host'
    domain_name: 'my-domain.com'
  roles:
    - { role: opentelekomcloud.bastion, state: 'present'}

许可证

Apache

作者信息

OpenTelekomCloud

关于项目

Manage bastion server in the VPC to provide access to servers without public IPs

安装
ansible-galaxy install opentelekomcloud.bastion
许可证
apache-2.0
下载
2.7k
拥有者
Some projects related to OpenTelekomCloud. Blueprints and whitepapers can be found at github.com/opentelekomcloud-blueprints