Working with proxies and jump hosts
Often, when it comes to configuring core network devices, these are isolated from the main network via a proxy or jump host. Ansible lends itself well to automating network device configuration as most of it is performed over SSH; however, this is only helpful in a scenario where Ansible can either be installed and operated from the jump host or, better yet, can operate via a host such as this.
Fortunately, Ansible can do exactly that. Let’s assume that you have two Cumulus Networks switches in your network (these are based on a special distribution of Linux for switching hardware, which is very similar to Debian). These two switches have the cmls01.example.com
and cmls02.example.com
hostnames, but both can only be accessed from a host called bastion.example.com
.
The configuration to support our bastion
host is performed in the inventory, rather than in the playbook. We begin by defining an inventory group with the switches in, in the...