netbox.netbox.netbox_service – Creates or removes service from Netbox

Note

This plugin is part of the netbox.netbox collection (version 3.0.0).

To install it use: ansible-galaxy collection install netbox.netbox.

To use it in a playbook, specify: netbox.netbox.netbox_service.

New in version 0.1.5: of netbox.netbox

Synopsis

  • Creates or removes service from Netbox

Requirements

The below requirements are needed on the host that executes this module.

  • pynetbox

Parameters

Parameter Choices/Defaults Comments
data
dictionary / required
Defines the service configuration
custom_fields
dictionary
Must exist in Netbox and in key/value format
description
string
Service description
device
raw
Specifies on which device the service is running
ipaddresses
raw
Specifies which IPaddresses to associate with service.
name
string / required
Name of the region to be created
port
integer
Specifies which port used by service
ports
list / elements=integer
Specifies which ports used by service (NetBox 2.10 and newer)
protocol
raw / required
Specifies which protocol used by service
tags
list / elements=string
What tags to add/update
virtual_machine
raw
Specifies on which virtual machine the service is running
netbox_token
string / required
The token created within Netbox to authorize API access
netbox_url
string / required
URL of the Netbox instance resolvable by Ansible control host
query_params
list / elements=string
This can be used to override the specified values in ALLOWED_QUERY_PARAMS that is defined
in plugins/module_utils/netbox_utils.py and provides control to users on what may make
an object unique in their environment.
state
string
    Choices:
  • absent
  • present ←
Use present or absent for adding or removing.
validate_certs
raw
Default:
"yes"
If no, SSL certificates will not be validated. This should only be used on personally controlled sites using self-signed certificates.

Notes

Note

  • This should be ran with connection local and hosts localhost

Examples

- name: "Create netbox service"
  connection: local
  hosts: all
  gather_facts: False

  tasks:
    - name: Create service
      netbox_service:
        netbox_url: netbox_url
        netbox_token: netbox_token
        data:
          device: Test666
          name: node-exporter
          port: 9100
          protocol: TCP
          ipaddresses:
            - address: 127.0.0.1
          tags:
            - prometheus
        state: present

- name: "Delete netbox service"
  connection: local
  hosts: all
  gather_facts: False

  tasks:
    - name: Delete service
      netbox_service:
        netbox_url: netbox_url
        netbox_token: netbox_token
        data:
          device: Test666
          name: node-exporter
          port: 9100
          protocol: TCP
        state: absent

Authors

  • Kulakov Ilya (@TawR1024)