community.general.rax_mon_entity (6.6.8) — module

Create or delete a Rackspace Cloud Monitoring entity

Authors: Ash Wilson (@smashwilson)

Install collection

Install with ansible-galaxy collection install community.general:==6.6.8


Add to requirements.yml

  collections:
    - name: community.general
      version: 6.6.8

Description

Create or delete a Rackspace Cloud Monitoring entity, which represents a device to monitor. Entities associate checks and alarms with a target system and provide a convenient, centralized place to store IP addresses. Rackspace monitoring module flow | *rax_mon_entity* -> rax_mon_check -> rax_mon_notification -> rax_mon_notification_plan -> rax_mon_alarm.

This module relies on the C(pyrax) package which is deprecated in favour of using Openstack API.

Unless maintainers step up to work on the module, it will be marked as deprecated in community.general 7.0.0 and removed in version 9.0.0.


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Entity example
  gather_facts: false
  hosts: local
  connection: local
  tasks:
  - name: Ensure an entity exists
    community.general.rax_mon_entity:
      credentials: ~/.rax_pub
      state: present
      label: my_entity
      named_ip_addresses:
        web_box: 192.0.2.4
        db_box: 192.0.2.5
      meta:
        hurf: durf
    register: the_entity

Inputs

    
env:
    description:
    - Environment as configured in I(~/.pyrax.cfg), see U(https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#pyrax-configuration).
    type: str

label:
    description:
    - Defines a name for this entity. Must be a non-empty string between 1 and 255 characters
      long.
    required: true
    type: str

state:
    choices:
    - present
    - absent
    default: present
    description:
    - Ensure that an entity with this C(name) exists or does not exist.
    type: str

region:
    description:
    - Region to create an instance in.
    type: str

api_key:
    aliases:
    - password
    description:
    - Rackspace API key, overrides I(credentials).
    type: str

agent_id:
    description:
    - Rackspace monitoring agent on the target device to which this entity is bound. Necessary
      to collect C(agent.) rax_mon_checks against this entity.
    type: str

metadata:
    default: {}
    description:
    - Hash of arbitrary C(name), C(value) pairs that are passed to associated rax_mon_alarms.
      Names and values must all be between 1 and 255 characters long.
    type: dict

username:
    description:
    - Rackspace username, overrides I(credentials).
    type: str

tenant_id:
    description:
    - The tenant ID used for authentication.
    type: str

credentials:
    aliases:
    - creds_file
    description:
    - File to find the Rackspace credentials in. Ignored if I(api_key) and I(username)
      are provided.
    type: path

tenant_name:
    description:
    - The tenant name used for authentication.
    type: str

auth_endpoint:
    description:
    - The URI of the authentication service.
    - If not specified will be set to U(https://identity.api.rackspacecloud.com/v2.0/)
    type: str

identity_type:
    default: rackspace
    description:
    - Authentication mechanism to use, such as rackspace or keystone.
    type: str

validate_certs:
    aliases:
    - verify_ssl
    description:
    - Whether or not to require SSL validation of API endpoints.
    type: bool

named_ip_addresses:
    default: {}
    description:
    - Hash of IP addresses that may be referenced by name by rax_mon_checks added to this
      entity. Must be a dictionary of with keys that are names between 1 and 64 characters
      long, and values that are valid IPv4 or IPv6 addresses.
    type: dict