Home » HashiCorp » Terraform Associate » What can you do to ensure that all existing is managed by Terraform moving forward without interruption to existing services?
Your organization has moved to AWS and has manually deployed infrastructure using the console.
Recently, a decision has been made to standardize on Terraform for all deployments moving forward.
What can you do to ensure that all existing is managed by Terraform moving forward without interruption to existing services?
A. Submit a ticket to AWS and ask them to export the state of all existing resources and use terraform import to import them into the state file.
B. Delete the existing resources and recreate them using new a Terraform configuration so Terraform can manage them moving forward.
C. Resources that are manually deployed in the AWS console cannot be imported by Terraform.
D. Using terraform import, import the existing infrastructure into your Terraform state.
Correct Answer: D
Explanation/Reference:
Explanation:
Terraform is able to import existing infrastructure. This allows us take resources we’ve created by some other means (i.e. via console) and bring it under Terraform management.
This is a great way to slowly transition infrastructure to Terraform.
The terraform import command is used to import existing infrastructure.
To import a resource, first write a resource block for it in our configuration, establishing the name by which it will be known to Terraform.
Example: resource “aws_instance” “import_example” {
# …instance configuration…
}
Now terraform import can be run to attach an existing instance to this resource configuration.
$ terraform import aws_instance.import_example i-03efafa258104165f aws_instance.import_example: Importing from ID “i-03efafa258104165f”… aws_instance.import_example: Import complete! Imported aws_instance (ID: i- 03efafa258104165f) aws_instance.import_example: Refreshing state… (ID: i-03efafa258104165f) Import successful! The resources that were imported are shown above. These resources are now in your Terraform state and will henceforth be managed by Terraform.
This command locates the AWS instance with ID i-03efafa258104165f (which has been created outside Terraform) and attaches its existing settings, as described by the EC2 API, to the name aws_instance.import_example in the Terraform state.
Download Printable PDF. VALID exam to help you PASS.
|
|