Import AWS resources to terraform
Configure AWS credentials
aws configure
# ...
Using terraformer
Install terraformer
Download terraformer
of your platform, https://github.com/GoogleCloudPlatform/terraformer/releases
Import current state to Terraform configuration from a provider
Usage:
import [provider] [flags]
import [provider] [command]
Available Commands:
list List supported resources for a provider
Flags:
-b, --bucket string gs://terraform-state
-c, --connect (default true)
-С, --compact (default false)
-x, --excludes strings firewalls,networks
-f, --filter strings compute_firewall=id1:id2:id4
-h, --help help for google
-O, --output string output format hcl or json (default "hcl")
-o, --path-output string (default "generated")
-p, --path-pattern string {output}/{provider}/ (default "{output}/{provider}/{service}/")
--projects strings
-z, --regions strings europe-west1, (default [global])
-r, --resources strings firewall,networks or * for all services
-s, --state string local or bucket (default "local")
-v, --verbose verbose mode
-n, --retry-number number of retries to perform if refresh fails
-m, --retry-sleep-ms time in ms to sleep between retries
Use " import [provider] [command] --help" for more information about a command.
Import resource with terraformer
terraformer import aws --resources=ec2_instance,alb,vpc,subnet --regions=us-east-2
Valid resources include
acm
alb
auto_scaling
customer_gateway
datapipeline
devicefarm
docdb
ebs
ec2_instance
eip
elastic_beanstalk
elb
eni
iam
igw
media_store
medialive
nacl
nat
route53
route_table
sg
subnet
transit_gateway
vpc
vpc_peering
vpn_connection
vpn_gateway
workspaces
Using terracognita
Install terracognita
Download from release page: https://github.com/cycloidio/terracognita/releases
curl -L https://github.com/cycloidio/terracognita/releases/latest/download/terracognita-linux-amd64.tar.gz -o terracognita-linux-amd64.tar.gz
tar -xf terracognita-linux-amd64.tar.gz
chmod u+x terracognita-linux-amd64
sudo mv terracognita-linux-amd64 /usr/local/bin/terracognita
Import resources
terracognita [TERRAFORM_PROVIDER] [--flags]
Generate Images with terraform graph
terraform graph -type=plan | dot -Tpng > graph.png
Reference
https://github.com/GoogleCloudPlatform/terraformer
https://github.com/cycloidio/terracognita
https://developer.hashicorp.com/terraform/cli/commands/graph