Terraform Integration

TCPWave-Terraform

Multi-cloud is the dominating IT strategy most welcomed and implemented by tech-savvy organizations. Organizations are turning to a mix of cloud providers rather than simply cloud types, one cloud provider for security, mix of solutions for legacy and new applications and one for dev and testing etc. With Multi-cloud strategy, organizations use a mix of infrastructure as a service, or IaaS, offerings, such as those from Microsoft Azure and Amazon Web Services and share workloads between them. Multi-cloud strategy achieves goals such as Optimized ROI, Superior Security, Low Latency, Autonomy and Business continuity.

Multi-cloud, along with all benefits, also brings a huge challenge to the organizations. Who will be the single point of responsibility for operating, orchestrating, and optimizing the organization‘s infrastructure across multiple cloud providers? Multi cloud management is essential to any organization that is planning to move to Multi-cloud solution or already migrated to it.

TCPWave IPAM provides multi-cloud management solution to manage diversified cloud providers such as AWS, Google, Azure, Dyn DNS, Akamai and Verisign. TCPWave IPAM offers multi-cloud management solution in different ways. It offers Rest API solution to integrate with existing legacy solution, IPAM Rich User Interface and TCPWave IPAM Terraform Plugin.

Terraform is used to create, manage, and manipulate infrastructure resources. Examples of resources include physical machines, VMs, network switches, containers, etc. Almost any infrastructure noun can be represented as a resource in Terraform.

Terraform is agnostic to the underlying platforms by supporting providers. A Terraform provider is responsible for understanding API interactions and exposing resources. Providers generally are IaaS (e.g. AWS, GCP, Microsoft Azure, OpenStack), PaaS (e.g. Heroku), or SaaS services (e.g. Terraform Enterprise, DNSimple, CloudFlare).

Terraform uses text files to describe infrastructure and to set variables. These text files are called Terraform configurations and end in .tf.

TCPWave-Terraform

TCPWave IPAM Terraform plugin is a convenient approach for the users who wants to manage multi-cloud infrastructure as code using single template. Create next available VPC with given DHCP Option set in cloud, create next available Subnet in the given VPC in cloud, manage DNS across multiple cloud providers with single cloud provider template associated to different cloud providers and scale up/down virtual machines in cloud with predefined cloud instance provisioning templates and propagate the resource records of newly added virtual machine into multi-cloud immediately as atomic operation in are few of many features that uniquely distinguish TCPWave IPAM multi-cloud management solution from other solutions. It also offers the flexibility to manage infrastructure from IPAM UI once infrastructure is created using TCPWave IPAM Terraform plugin.

Scenario

If your web application is a multi-tier application with webserver and database server. You know the time interval in which the application receives peak load and the time interval when the load is minimum. If you cannot scale up, your application is likely to cripple under the load. If you cannot scale down under minimum load, costs will not be optimized.

Solution
  • Create different cloud providers in TCPWave IPAM. Cloud provider in TCPWave IPAM encapsulates the credentials to connect to the cloud.
  • Create cloud instance provisioning templates for different cloud providers. These templates consist of options to create virtual machines in cloud.
  • Create single TCPWave IPAM Terraform Template with n number of TCPWave IPAM object resources. Each resource creates a virtual machine in the cloud according to cloud instance provisioning template specified in the resource, creates resource record in DNS and creates object in IPAM.
  • Create other TCPWave IPAM Terraform Template from copy of the first template and delete resources that are not needed in minimum load time interval.
  • Associate first template to be executed just before the peak load time starts to scale up servers and execute second template to be executed just before the minimum load time starts to scale down servers, to the automated process which manages your infrastructure. Command to execute Terraform template is simply terraform apply.
Business Advantage

By using TCPWave IPAM terraform provider, user can leverage the capability to manage VPCs, Subnets, VMs and Resource records from IPAM after infrastructure is created using Terraform. Single terraform template can manage multiple cloud providers.

TCPWave-Terraform