Installs and configures Nautobot on RHEL/CentOS or Ubuntu servers.
This role manages the installation and configuration of Nautobot. This role does not provide PostgreSQL or Redis services that are required dependencies of the application. Those tasks are intentionally left to allow the user to manage those services within their own roles and playbooks.
Tested on Nautobot supported platforms:
- CentOS 8.2+ or Red Hat Enterprise Linux (RHEL) 8.2+
- Ubuntu 20.04
This role will require root access (via sudo) to manage system dependencies and actions on behalf of Nautobot.
Minimum required variables assuming localhost
PostgreSQL and Redis services
are available:
nautobot_db_username: nautobot
nautobot_db_password: nautobot
nautobot_secret_key: "lnvRn_5Bypl8hBV4mMwgsMuHxr6uZvGwJyDqB7fcKqo"
See defaults/main.yml for a complete list of defaults and configurable options.
The following variables can be defined to create users during initial installation only:
nautobot_superusers:
- username: admin
password: admin
email: changeme@example.com
Each user requires a username, password and email address defined. The role will
attempt to create the defined users only once during initial installation. If
nautobot_superusers
is not defined, no users are created and the manual user
creation process documented
by Nautobot can be used instead.
See the wiki for information about available external authentication methods.
Nautobot plugins that are pip modules can be installed and configured by setting
the nautobot_plugins
variable. Below is an example for the Nautobot
Nornir plugin:
nautobot_plugins:
- name: nautobot_plugin_nornir # Plugin name
pip: nautobot-plugin-nornir # Pip module name
config: # plugin configuration
nornir_settings:
credentials: "nautobot_plugin_nornir.plugins.credentials.env_vars.CredentialsEnvVars"
runner:
plugin: "threaded"
options:
num_workers: 20
Optionally, a specific version of nautobot can be configured using the variable:
nautobot_version: 1.0.1
This will ensure that a specific target is maintained. If not set, on initial install pip will install the latest version. On subsequent runs it will only check that the module is installed but will not upgrade it automatically.
In either case, an upgrade can be triggered by setting this variable to the desired Nautobot release version. Downgrading is not supported.
No Ansible dependencies. The application requires Redis and Postgres.
See EXAMPLE for a complete playbook example.
Contributions are encouraged. Please see CONTRIBUTING for details.