Skip to content

virtual_machine

Collection Note

This module is part of the networktocode.nautobot collection. To install the collection, use:

ansible-galaxy collection install networktocode.nautobot
You need further requirements to be able to use this module, see the Requirements section for details.

Synopsis

  • Creates, updates or removes virtual_machines from Nautobot

Requirements

The following Python packages are needed on the host that executes this module:

Parameters

Parameter Data Type Environment Variable Comments
api_version str API Version Nautobot REST API
Version Added: 4.1.0
cluster raw The name of the cluster attach to the virtual machine
Version Added: 3.0.0
comments str Comments of the virtual machine
Version Added: 3.0.0
custom_fields dict Must exist in Nautobot and in key/value format
Version Added: 3.0.0
disk int Disk of the virtual machine (GB)
Version Added: 3.0.0
local_config_context_data dict configuration context of the virtual machine
Version Added: 3.0.0
memory int Memory of the virtual machine (MB)
Version Added: 3.0.0
name
required
str The name of the virtual machine
Version Added: 3.0.0
platform raw The platform of the virtual machine
Version Added: 3.0.0
primary_ip4 raw Primary IPv4 address assigned to the virtual machine
Version Added: 3.0.0
primary_ip6 raw Primary IPv6 address assigned to the virtual machine
Version Added: 3.0.0
query_params list This can be used to override the specified values in ALLOWED_QUERY_PARAMS that is defined in plugins/module_utils/utils.py and provides control to users on what may make an object unique in their environment.
Version Added: 3.0.0
role raw The role of the virtual machine
Version Added: 3.0.0
state str Use C(present) or C(absent) for adding or removing.
status raw The status of the virtual machine Required if I(state=present) and does not exist yet
Version Added: 3.0.0
tags list Any tags that this item may need to be associated with
Version Added: 3.0.0
tenant raw The tenant that the virtual machine will be assigned to
Version Added: 3.0.0
token
required
str The token created within Nautobot to authorize API access Can be omitted if the E(NAUTOBOT_TOKEN) environment variable is configured.
url
required
str The URL of the Nautobot instance resolvable by the Ansible host (for example: http://nautobot.example.com:8000) Can be omitted if the E(NAUTOBOT_URL) environment variable is configured.
validate_certs raw If C(no), SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates. Can be omitted if the E(NAUTOBOT_VALIDATE_CERTS) environment variable is configured.
vcpus int Number of vcpus of the virtual machine
Version Added: 3.0.0

Notes

Note

  • Tags should be defined as a YAML list
  • This should be ran with connection C(local) and hosts C(localhost)

Examples

- name: "Test Nautobot modules"
  connection: local
  hosts: localhost
  gather_facts: false
  tasks:
    - name: Create virtual machine within Nautobot with only required information
      networktocode.nautobot.virtual_machine:
        url: http://nautobot.local
        token: thisIsMyToken
        name: Test Virtual Machine
        cluster: test cluster
        status: active
        state: present

    - name: Delete virtual machine within nautobot
      networktocode.nautobot.virtual_machine:
        url: http://nautobot.local
        token: thisIsMyToken
        name: Test Virtual Machine
        state: absent

    - name: Create virtual machine with tags
      networktocode.nautobot.virtual_machine:
        url: http://nautobot.local
        token: thisIsMyToken
        name: Another Test Virtual Machine
        cluster: test cluster
        status: active
        tags:
          - Schnozzberry
        state: present

    - name: Update vcpus, memory and disk of an existing virtual machine
      networktocode.nautobot.virtual_machine:
        url: http://nautobot.local
        token: thisIsMyToken
        name: Test Virtual Machine
        cluster: test cluster
        vcpus: 8
        memory: 8
        disk: 8
        state: present

Return Values

Key Data Type Description Returned
msg str Message indicating failure or info about what has been achieved always
virtual machine dict Serialized object as created or already existent within Nautobot success (when I(state=present))

Authors

  • Gaelle Mangin (@gmangin)