Skip to main content

Salt modules for discovering and exposing minion's IP addresses

Project description

spiro-ip

A quick and simple module to get information about the various IPs of your salt minions.

This is meant to be installed on minions.

Installation

On minions, run pip install spiro-ip

Or, as a state:

{% if grains['pythonversion'][0] == 2 %}
{% set pipbin = "/usr/bin/pip2" %}
{% else %}
{% set pipbin = "/usr/bin/pip3" %}
{% endif %}

spiro-ip:
  pip.installed:
    - bin_env: {{pipbin}}

Interface

A number of things are provided:

Grains

  • externalip4, externalip6: Queries external services for your IP, useful if the minion is behind a NAT or other complex network

Modules

  • ip.addrs4, ip.addrs6: Collates information about a minion's IP address from several sources.

    • network.ipaddrs / network.ipaddrs6
    • AWS metadata (if you've set metadata_server_grains: True, see the metadata grain)
    • externalip4 / externalip6 grains (above)

Configuration

No configuration is required. However, as mentioned above, it might be useful to set metadata_server_grains: True.

You may find it useful to set ip.addrs4 / ip.addrs6 as mine_functions so that minions can get each other's IP address. Example:

mine_functions:
  ip.addrs4: []
  ip.addrs6: []

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

spiro-ip-0.0.2.tar.gz (3.2 kB view hashes)

Uploaded source

Built Distribution

spiro_ip-0.0.2-py3-none-any.whl (2.4 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page