I attended a hands-on class today about using Hashicorp’s Terraform to build infrastructure using code. I have been building network infrastructure for decades using command lines, web interfaces, templates, and FortiManager and Cisco Meraki dashboard templates. At the same time, I have been working with Amazon Web Services to build out my own virtual private cloud in AWS to deploy websites “in the cloud”.
I heard about using Terraform as a tool to automate the building of these VPC’s so wanted to learn how to use techniques such as version control to better manage building infrastructure at scale.
It was an excellent class at OKC’s Starspace. We got hands-on experience using Terraform. With my decades of network engineering experience, understanding the network portion – CIDR blocks, route tables, DNS namespaces, load balancing, NAT gateways – was quite easy. Others in the class had more of a programming background. They picked up how to use Terraform quicker than me, but I felt I understood what we were trying to accomplish a bit better. I talked to my son Adam afterward and he said that the benefits of working in small teams is that some people like me may have more experience in network infrastructure. In comparison, others may have a better experience at version control, front and back end development, databases, etc. I could see where a good well-rounded team with expertise in different disciplines makes for a better development experience.
How do use Terraform to deploy large-scale physical infrastructure using Cisco Meraki or Fortinet FortiManager
As I was learning Terraform, I was trying to figure out how to use this powerful tool to deploy thousands of physical locations such as convenience stores or retail operations. Those sites don’t live in the cloud. They still need physical infrastructure such as firewalls, switches, and wireless access points. Could I use Terraform to build out and maintain this physical infrastructure? I asked that question in class, but nobody really had a good answer on how this could be done. It seems Terraform is designed more for cloud-based infrastructure and not so much for widely-dispersed physical infrastructure. I did several Google searches on the subject and never came up with a good answer on how to use Terraform to manage a Meraki deployment, for example.
All in all the training was great but I am still trying to figure out how to utilize this tool with my clients and their environments, especially when they have hundreds or even thousands of retail stores.