theforeman.foreman.compute_resource 模块 – 管理计算资源

注意

此模块是 theforeman.foreman 集合 (版本 4.2.0) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install theforeman.foreman。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求

要在 playbook 中使用它,请指定: theforeman.foreman.compute_resource

theforeman.foreman 1.0.0 中的新增功能

概要

  • 创建、更新和删除计算资源

别名:foreman_compute_resource

要求

在执行此模块的主机上需要以下要求。

  • requests

参数

参数

注释

description

字符串

计算资源描述

locations

列表 / 元素=字符串

应将实体分配到的位置列表

name

字符串 / 必需

计算资源名称

organizations

列表 / 元素=字符串

应将实体分配到的组织列表

password

字符串 / 必需

访问 Foreman 服务器的用户密码。

如果任务中未指定此值,则将使用环境变量 FOREMAN_PASSWORD 的值。

provider

字符串

计算资源提供程序。如果 state=present_with_defaults,则为必需。

选项

  • "vmware"

  • "libvirt"

  • "ovirt"

  • "proxmox"

  • "EC2"

  • "AzureRm"

  • "GCE"

  • "Openstack"

provider_params

字典

特定于计算资源提供程序的参数。如果 state=present_with_defaults,则为必需。

app_ident

字符串

AzureRM 客户端 ID

caching_enabled

布尔值

provider=vmware 启用缓存

选项

  • false

  • true

cloud

字符串

在 theforeman.foreman 2.1.0 中添加

provider=AzureRm 的云

选项

  • "azure"

  • "azureusgovernment"

  • "azurechina"

  • "azuregermancloud"

datacenter

字符串

计算资源所在的 Datacenter,对于 provider=libvirt 无效

display_type

字符串

用于远程控制台的显示类型,仅对 provider=libvirt 有效

domain

字符串

用户的身份验证域,仅对 provider=Openstack 有效

email

字符串

provider=GCE 的电子邮件

key_path

字符串

provider=GCE 的证书路径

keyboard_layout

字符串

在 theforeman.foreman 2.0.0 中添加

provider=ovirt 的默认 VNC 键盘

选项

  • "ar"

  • "da"

  • "de"

  • "de-ch"

  • "en-gb"

  • "en-us"

  • "es"

  • "et"

  • "fi"

  • "fo"

  • "fr"

  • "fr-be"

  • "fr-ca"

  • "fr-ch"

  • "hr"

  • "hu"

  • "is"

  • "it"

  • "ja"

  • "lt"

  • "lv"

  • "mk"

  • "nl"

  • "nl-be"

  • "no"

  • "pl"

  • "pt"

  • "pt-br"

  • "ru"

  • "sl"

  • "sv"

  • "th"

  • "tr"

ovirt_quota

字符串

oVirt 配额 ID,仅对 provider=ovirt 有效

password

字符串

计算资源连接的密码,对 provider=libvirt 无效

project

字符串

provider=GCE 的项目 ID

project_domain_id

字符串

项目域 ID,仅对 provider=Openstack 有效

project_domain_name

字符串

项目域名称,仅对 provider=Openstack 有效

public_key

字符串

在 theforeman.foreman 2.0.0 中添加

X509 证书颁发机构,仅对 provider=ovirt 有效

region

字符串

AWS 区域,AZURE 区域

set_console_password

布尔值

在 theforeman.foreman 2.0.0 中添加

provider=vmwareprovider=libvirt 的显示连接设置随机生成的密码

选项

  • false

  • true

ssl_verify_peer

布尔值

验证来自提供程序 provider=proxmox 的 ssl

选项

  • false

  • true

sub_id

字符串

在 theforeman.foreman 2.1.0 中添加

provider=AzureRm 的订阅 ID

tenant

字符串

AzureRM 租户,Openstack 项目名称

url

字符串

计算资源的 URL

use_v4

布尔值

使用 oVirt API v4,仅对 provider=ovirt 有效

选项

  • false

  • true

user

字符串

计算资源连接的用户名,对 provider=libvirt 无效

zone

字符串

provider=GCE 的区域

server_url

字符串 / 必需

Foreman 服务器的 URL。

如果任务中未指定此值,则将使用环境变量 FOREMAN_SERVER_URL 的值。

state

字符串

实体的状态

present_with_defaults 将确保实体存在,但不会更新现有实体

选项

  • "present" ← (默认)

  • "present_with_defaults"

  • "absent"

updated_name

字符串

新的计算资源名称

username

字符串 / 必需

访问 Foreman 服务器的用户名。

如果任务中未指定此值,则将使用环境变量 FOREMAN_USERNAME 的值。

validate_certs

布尔值

是否验证 Foreman 服务器的 TLS 证书。

如果任务中未指定此值,则将使用环境变量 FOREMAN_VALIDATE_CERTS 的值。

选项

  • false

  • true ← (默认)

属性

属性

支持

描述

check_mode

支持:完全支持

可以在 check_mode 下运行,并在不修改实体的情况下返回更改状态预测

diff_mode

支持:完全支持

在差异模式下,将返回关于已更改内容(或在 check_mode 下可能需要更改的内容)的详细信息

示例

- name: Create libvirt compute resource
  theforeman.foreman.compute_resource:
    name: example_compute_resource
    locations:
      - Munich
    organizations:
      - ACME
    provider: libvirt
    provider_params:
      url: qemu+ssh://[email protected]/system
      display_type: spice
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present

- name: Update libvirt compute resource
  theforeman.foreman.compute_resource:
    name: example_compute_resource
    description: updated compute resource
    locations:
      - Munich
    organizations:
      - ACME
    provider: libvirt
    provider_params:
      url: qemu+ssh://[email protected]/system
      display_type: spice
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present

- name: Delete libvirt compute resource
  theforeman.foreman.compute_resource:
    name: example_compute_resource
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: absent

- name: Create vmware compute resource
  theforeman.foreman.compute_resource:
    name: example_compute_resource
    locations:
      - Munich
    organizations:
      - ACME
    provider: vmware
    provider_params:
      caching_enabled: false
      url: vsphere.example.com
      user: admin
      password: secret
      datacenter: ax01
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present

- name: Create ovirt compute resource
  theforeman.foreman.compute_resource:
    name: ovirt_compute_resource
    locations:
      - France/Toulouse
    organizations:
      - Example Org
    provider: ovirt
    provider_params:
      url: ovirt.example.com
      user: [email protected]
      password: ovirtsecret
      datacenter: aa92fb54-0736-4066-8fa8-b8b9e3bd75ac
      ovirt_quota: 24868ab9-c2a1-47c3-87e7-706f17d215ac
      use_v4: true
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present

- name: Create proxmox compute resource
  theforeman.foreman.compute_resource:
    name: proxmox_compute_resource
    locations:
      - Munich
    organizations:
      - ACME
    provider: proxmox
    provider_params:
      url: https://proxmox.example.com:8006/api2/json
      user: root@pam
      password: secretpassword
      ssl_verify_peer: true
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present

- name: create EC2 compute resource
  theforeman.foreman.compute_resource:
    name: EC2_compute_resource
    description: EC2
    locations:
      - AWS
    organizations:
      - ACME
    provider: EC2
    provider_params:
      user: AWS_ACCESS_KEY
      password: AWS_SECRET_KEY
      region: eu-west-1
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present

- name: create Azure compute resource
  theforeman.foreman.compute_resource:
    name: AzureRm_compute_resource
    description: AzureRm
    locations:
      - Azure
    organizations:
      - ACME
    provider: AzureRm
    provider_params:
      sub_id: SUBSCRIPTION_ID
      tenant: TENANT_ID
      app_ident: CLIENT_ID
      password: CLIENT_SECRET
      region: westeurope
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present

- name: create GCE compute resource
  theforeman.foreman.compute_resource:
    name: GCE compute resource
    description: Google Cloud Engine
    locations:
      - GCE
    organizations:
      - ACME
    provider: GCE
    provider_params:
      project: orcharhino
      email: [email protected]
      key_path: "/usr/share/foreman/gce_orcharhino_key.json"
      zone: europe-west3-b
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present

- name: create Openstack compute resource
  theforeman.foreman.compute_resource:
    name: Openstack compute resource
    description: Openstack
    locations:
      - DC1
    organizations:
      - ACME
    provider: Openstack
    provider_params:
      url: "https://Openstack.example.com:5000/v3"
      user: admin
      password: secret
      tenant: "MyProject"
      domain: "example.com"
      project_domain_name: "example.com"
      project_domain_id: "0123456789a0123456789b0123456789"
    server_url: "https://foreman.example.com"
    username: "admin"
    password: "changeme"
    state: present

返回值

常见的返回值已在此处记录,以下是此模块特有的字段

描述

实体

字典

按类型分组的受影响实体的最终状态。

返回值: 成功

计算资源

列表 / 元素=字典

计算资源列表。

返回值: 成功

作者

  • Philipp Joos (@philippj)

  • Baptiste Agasse (@bagasse)

  • Manisha Singhal (@Manisha15) ATIX AG

  • Mark Hlawatschek (@hlawatschek) ATIX AG