As we previously noted, "as code" is a significant movement across the networking industry that builds on core principles within the DevOps movement that favor treating everything possible "as code."
We also made an important distinction between "infrastructure as code" and "configuration as code", which is necessary in the world of networking because of the differences in how network and application services are traditionally delivered. Most network and application services are associated with hardware, but the truth is that there is a platform between the hardware and the services they deliver. That's the reason BIG-IP can be delivered as virtual machines in the cloud and on-premises as well as on our purpose-built hardware. Because BIG-IP is not the hardware, it's the software platform from which we deliver a variety of application services.
Now, just as it's true that the application platform - the web or app server or app engine - must be provisioned first, so too must the network and application service platforms be provisioned before they can be configured.
Increasingly - especially in cloud environments - that provisioning and configuration process is driven by systems like HashiCorp's Terraform.
If you aren't familiar with Terraform, let me quote from its own website:
Terraform is a tool for building, changing, and versioning infrastructure safely and efficiently. Terraform can manage existing and popular service providers as well as custom in-house solutions.
Configuration files describe to Terraform the components needed to run a single application or your entire datacenter. Terraform generates an execution plan describing what it will do to reach the desired state, and then executes it to build the described infrastructure.
From <https://www.terraform.io/intro/index.html>
Basically, Terraform is a tool that drives the automated provisioning of infrastructure. It accomplishes the seemingly Sisyphean feat of provisioning an entire data center - or application architecture - through the use of plug-ins. Because it's nearly impossible to expect that Terraform itself can develop the integrations and extensions necessary to support the very robust ecosystem of infrastructure and application service providers. There's a lot of us, spanning security and scale, identity and access management, performance management and monitoring, and the list goes on. No single provider could hope to support each and every permutation of infrastructure that's possible given the market today. So in the spirit of extensibility, Terraform is enabled with a system that allows providers to "plug-in" support for their infrastructure and application services.
That's means that we, as a provider of application services, can plug-in to Terraform and enable the BIG-IP platform to be treated "as code."
You can find more information about our Terraform provider on the Terraform site here, including examples of how to provision (and subsequently configure) your BIG-IP. There's also some great resources on our community - DevCentral - to help you get started Terraforming your BIG-IP.
About the Author

Related Blog Posts
At the Intersection of Operational Data and Generative AI
Help your organization understand the impact of generative AI (GenAI) on its operational data practices, and learn how to better align GenAI technology adoption timelines with existing budgets, practices, and cultures.
Using AI for IT Automation Security
Learn how artificial intelligence and machine learning aid in mitigating cybersecurity threats to your IT automation processes.
The Commodification of Cloud
Public cloud is no longer the bright new shiny toy, but it paved the way for XaaS, Edge, and a new cycle of innovation.
Most Exciting Tech Trend in 2022: IT/OT Convergence
The line between operation and digital systems continues to blur as homes and businesses increase their reliance on connected devices, accelerating the convergence of IT and OT. While this trend of integration brings excitement, it also presents its own challenges and concerns to be considered.
Adaptive Applications are Data-Driven
There's a big difference between knowing something's wrong and knowing what to do about it. Only after monitoring the right elements can we discern the health of a user experience, deriving from the analysis of those measurements the relationships and patterns that can be inferred. Ultimately, the automation that will give rise to truly adaptive applications is based on measurements and our understanding of them.
Inserting App Services into Shifting App Architectures
Application architectures have evolved several times since the early days of computing, and it is no longer optimal to rely solely on a single, known data path to insert application services. Furthermore, because many of the emerging data paths are not as suitable for a proxy-based platform, we must look to the other potential points of insertion possible to scale and secure modern applications.
