rax_mon_check - Create or delete a Rackspace Cloud Monitoring check for an existing entity.

New in version 2.0.

Synopsis

  • Create or delete a Rackspace Cloud Monitoring check associated with an existing rax_mon_entity. A check is a specific test or measurement that is performed, possibly from different monitoring zones, on the systems you monitor. Rackspace monitoring module flow | rax_mon_entity -> rax_mon_check -> rax_mon_notification -> rax_mon_notification_plan -> rax_mon_alarm

Requirements (on host that executes module)

  • python >= 2.6
  • pyrax

Options

parameter required default choices comments
api_key
no
Rackspace API key, overrides credentials.
aliases: password
auth_endpoint
(added in 1.5)
no https://identity.api.rackspacecloud.com/v2.0/
The URI of the authentication service.
check_type
yes
  • remote.dns
  • remote.ftp-banner
  • remote.http
  • remote.imap-banner
  • remote.mssql-banner
  • remote.mysql-banner
  • remote.ping
  • remote.pop3-banner
  • remote.postgresql-banner
  • remote.smtp-banner
  • remote.smtp
  • remote.ssh
  • remote.tcp
  • remote.telnet-banner
  • agent.filesystem
  • agent.memory
  • agent.load_average
  • agent.cpu
  • agent.disk
  • agent.network
  • agent.plugin
The type of check to create. remote. checks may be created on any rax_mon_entity. agent. checks may only be created on rax_mon_entities that have a non-null agent_id.
credentials
no
File to find the Rackspace credentials in. Ignored if api_key and username are provided.
aliases: creds_file
details
no
Additional details specific to the check type. Must be a hash of strings between 1 and 255 characters long, or an array or object containing 0 to 256 items.
disabled
no
  • yes
  • no
If "yes", ensure the check is created, but don't actually use it yet.
entity_id
yes
ID of the rax_mon_entity to target with this check.
env
(added in 1.5)
no
identity_type
(added in 1.5)
no rackspace
Authentication mechanism to use, such as rackspace or keystone.
label
yes
Defines a label for this check, between 1 and 64 characters long.
metadata
no
Hash of arbitrary key-value pairs to accompany this check if it fires. Keys and values must be strings between 1 and 255 characters long.
monitoring_zones_poll
no
Comma-separated list of the names of the monitoring zones the check should run from. Available monitoring zones include mzdfw, mzhkg, mziad, mzlon, mzord and mzsyd. Required for remote.* checks; prohibited for agent.* checks.
period
no
The number of seconds between each time the check is performed. Must be greater than the minimum period set on your account.
region
no DFW
Region to create an instance in.
state
no
  • present
  • absent
Ensure that a check with this label exists or does not exist.
target_alias
no
One of `target_alias` and `target_hostname` is required for remote.* checks, but prohibited for agent.* checks. Use the corresponding key in the entity's `ip_addresses` hash to resolve an IP address to target.
target_hostname
no
One of `target_hostname` and `target_alias` is required for remote.* checks, but prohibited for agent.* checks. The hostname this check should target. Must be a valid IPv4, IPv6, or FQDN.
tenant_id
(added in 1.5)
no
The tenant ID used for authentication.
tenant_name
(added in 1.5)
no
The tenant name used for authentication.
timeout
no
The number of seconds this check will wait when attempting to collect results. Must be less than the period.
username
no
Rackspace username, overrides credentials.
verify_ssl
(added in 1.5)
no
Whether or not to require SSL validation of API endpoints.

Examples

- name: Create a monitoring check
  gather_facts: False
  hosts: local
  connection: local
  tasks:
  - name: Associate a check with an existing entity.
    rax_mon_check:
      credentials: ~/.rax_pub
      state: present
      entity_id: "{{ the_entity['entity']['id'] }}"
      label: the_check
      check_type: remote.ping
      monitoring_zones_poll: mziad,mzord,mzdfw
      details:
        count: 10
      meta:
        hurf: durf
    register: the_check

Notes

Note

  • The following environment variables can be used, RAX_USERNAME, RAX_API_KEY, RAX_CREDS_FILE, RAX_CREDENTIALS, RAX_REGION.
  • RAX_CREDENTIALS and RAX_CREDS_FILE points to a credentials file appropriate for pyrax. See https://github.com/rackspace/pyrax/blob/master/docs/getting_started.md#authenticating
  • RAX_USERNAME and RAX_API_KEY obviate the use of a credentials file
  • RAX_REGION defines a Rackspace Public Cloud region (DFW, ORD, LON, ...)

Status

This module is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.

For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/rax_mon_check_module.html