cancel
Showing results for 
Search instead for 
Did you mean: 
Philippe_Veys
F5 Employee
F5 Employee

Problem this snippet solves:

Creation of an IP prefix set for VoltMesh in any of the relevant namespaces (system, shared or dedicated application namespace).

This prefix IP set will then be used in either FastACLs or Service policies.

How to use this snippet:

Pre-requirements:

    openssl pkcs12 -info -in certificate.p12 -out private_key.key -nodes -nocerts
    openssl pkcs12 -info -in certificate.p12 -out certificate.cert -nokeys
  • Create a variables.tf Terraform variables file:
    variable "api_cert" {
        type = string
        default = "/<full path to>/certificate.cert"
    }
    
    variable "api_key" {
      type = string
      default = "/<full path to>/private_key.key"
    }
    
    variable "api_url" {
        type = string
        default = "https://<tenant_name>.console.ves.volterra.io/api"
    }
  • Create a main.tf Terraform file:
    terraform {
      required_version = ">= 0.12.9, != 0.13.0"
    
      required_providers {
        volterra = {
          source = "volterraedge/volterra"
          version = ">=0.0.6"
        }
      }
    }
    provider "volterra" {
      api_cert = var.api_cert
      api_key = var.api_key
      url   = var.api_url
    }

In the directory where your terraform files are, run:

terraform init

Then:

terraform apply


Code :

resource "volterra_ip_prefix_set" "ip-prefixes-example" {
  name      = "ip-prefixes-example"
  //namespace can be: system, or shared or your application namespace depending on where you want to create the ip prefix set
  namespace = "system"
  prefix = ["1.1.1.1/32", "2.2.2.2/32", "8.0.0.0/8"]
}

Tested this on version:

No Version Found
Version history
Last update:
‎14-Oct-2021 03:09
Updated by:
Contributors