This example will deploy the following resources:
- An Object Storage instance
- An Object Storage bucket for VPC level flowlogs
- An Object Storage bucket for Subnet level flowlogs
- An IAM Authorizaion policy for Flowlogs to Write objects to the buckets
- a VPC with a single subnet and compute instance
- An instance of VPC Flowlogs collector for the VPC
- An instance of VPC Flowlogs collector for the Subnet
This code is written to work with Terraform 0.13 and above. If you would like to work with multiple versions of Terraform on the same machine take a look at tfswitch.
Step 1: Clone repo
$ git clone https://github.com/greyhoundforty/IBMCloud-Terraform-Examples.git
$ cd VPC-Flowlogs
Step 2: Update example .tfvars
file
You will need to update the terraform.tfvars.example
and then rename it so that Terraform picks up the variables. The file has comments for each item that you need to provide. When done updating the file rename it:
$ cp terraform.tfvars.example terraform.tfvars
Step 3: Initialize Terraform
The version.tf
file will automatically download the most up to date version of the IBM Cloud Terraform Provider when you initialize the directory.
$ terraform init
Step 4: Create Terraform plan
If the terraform init
command completed without error you are now ready to create a plan for your deployment.
$ terraform plan -out default.tfplan
Step 5: Apply generated plan
If our plan generated successfully we can now deploy our resources using the apply
command.
$ terraform apply default.tfplan