CiscoDevNet / ansible-dcnm

Apache License 2.0
45 stars 36 forks source link

Day 0 Easy fabric provisioning using ansible #85

Closed micruzz82 closed 5 months ago

micruzz82 commented 3 years ago

Community Note

Description

Automated provisioning of Easy Fabric deployment.

We have a requirement as part of a new push for Network Automation where all configuration must where possible be deployed only via automation reducing the need to manually configure DCNM from the GUI.

In our use case, we would like to automate day 0 provisioning of the network infrastructure for VXLAN EVPN using DCNM to provision all the configuration via ansible right from the onboarding of network switches to configuration of building a new fabric build and selecting the easy fabric option for provisioning the fabric. All the variables that are specified in the easy fabric template would be good to have a module specifically to be used to setup all the required fields.

New or Affected modules(s):

dcnm_easy_fabric_provision

DCNM version

Potential ansible task config

image

image

image

image

Within the fabric template, it would be helpful if there was also an option where freeform text needs to be entered like the iBGP peer template configuration and leaf peer template: image

image

image

Similarly for this section for the AAA config image

image

image

One of the other options that would be helpful is if we can select the border leafs and enable vpc fabric peering.

This would give a full day 0 provisioning of DCNM fabric in minutes.

micruzz82 commented 3 years ago

I've found a DCNM postman Collection for this but doing the same in ansible means I have a consistent way of setting up and managing the fabric.

https://www.postman.com/ciscodevnet/workspace/cisco-devnet-s-public-workspace/request/792683-972adb1e-fc37-428b-aa75-ce6fadbd9695

I don't suppose we can have this feature in the next release of the dcnm ansible collection please as it would help with a new design I'm working on.

Thanks in advance.

mikewiebe commented 3 years ago

@micruzz82 Thanks for opening the feature request. This is not currently on our roadmap but we will discuss and get back to you. In the meantime you could consider using the dcnm_rest module as a workaround to keep the workflow purely Ansible.

micruzz82 commented 3 years ago

thanks @mikewiebe. Yes some of the new security requirements requires a zero hands on approach to DCNM so I hope it's ok to feedback any new features I think would be useful to the wider community as well as it would make the ansible collection more versatile to use.

mikewiebe commented 3 years ago

thanks @mikewiebe. Yes some of the new security requirements requires a zero hands on approach to DCNM so I hope it's ok to feedback any new features I think would be useful to the wider community as well as it would make the ansible collection more versatile to use.

Absolutely! This kind of feedback is very valuable as we work to expand the capabilities of the collection.

dsx1123 commented 3 years ago

@micruzz82 we will evaluate the suggestion, we first thought the fabric creation is just a one-time configuration, it is a low-frequency operation.

micruzz82 commented 3 years ago

indeed :) and this is how I was deploying this... however security is constantly evolving and there's a push to ensure automation provides a consistent deployment model without having to manually log into the DCNM manager and automation pipeline processes start managing the fabric configuration which is another step to remove human error or misconfiguration.

allenrobel commented 2 years ago

Agreed that fabric creation is one-time, but for those who are developing "from-the-ground-up" tools, fabric creation is essential. It's also VERY useful for proof-of-concept deployments. Thank you for considering adding an EasyFabric module!