How to Backup Config on Dell EMC Networking Operating System DNOS 6 with Ansible?

Maintaining a backup copy of your network appliance configuration is a good practice for all IT professionals. You could automate this process for Dell EMC network appliances using Ansible.

I'm going to show you a live Playbook with some simple Ansible code.

I'm Luca Berton and welcome to today's episode of Ansible Pilot.

Ansible Backup Config on DNOS 6

  • dellemc.os6.os6_config
  • Manage Dell EMC OS6 configuration sections

Let's talk about the Ansible module os6_config.

The full name is dellemc.os6.os6_config, which means that is part of the collection dellemc.os6 specialized in the module to interact with Ansible Network Collection for Dell EMC OS6.

This collection requires ansible-core version 2.10+.

It manages Dell EMC OS6 configuration sections.

Parameters

  • backup boolean - no/yes
  • backup_options dictionary - configurable options related to a backup file path
  • dir_path path - If the directory does not exist it will be first created
  • filename string - \<hostname\>\_config.\<current-date\>@\<current-time\>

Let me summarize the parameter of os6_config module for the backup use-case.

The backup boolean enables the backup mode of the configuration.

Once enabled you could specify some backup_options.

I suggest you specify the dir_path, the directory where to save backups, and the filename if you have a specific one.

Otherwise, Ansible is going to create a file with the current timestamp.

Links

  • [Dell OS6 Platform Options](https://docs.ansible.com/ansible/latest/network/user_guide/platform_dellos6.html)
  • [dellemc.os6.os6_config module](https://docs.ansible.com/ansible/latest/collections/dellemc/os6/os6_config_module.html)

Demo

How to Backup Config on Dell Networking Operating System 6 with Ansible Playbook.

I'm going to show how to back up the current configuration of a Dell Networking Operating System 6 connecting via SSH protocol using username and password credentials with Enable Mode (Privilege Escalation) and save it to a file with the device name and timestamp.

code

  • inventory

``ini

[dellos6]

192.168.88.3

[dellos6:vars]

ansible_user=luca

ansible_password=mysecretpassword123

ansible_become=yes

ansible_become_method=enable

ansible_connection=ansible.netcommon.network_cli

ansible_network_os=dellemc.os6.os6

ansible_command_timeout=120

`

  • backup_dellos6.yml

`yaml

---

  • name: Backup DNOS6

hosts: dellos6

gather_facts: false

vars:

backup_dir: "/home/luca/network/backup"

tasks:

- name: Backup

dellemc.os6.os6_config:

backup: true

backup_options:

dir_path: "{{ backup_dir }}"

`

  • requirements.yml

`yaml

---

collections:

- name: dellemc.os6

`

requirements setup

``bash

$ ansible-galaxy install -r requirements.yml

Starting galaxy collection install process

Process install dependency map

Starting collection install process

Downloading https://galaxy.an