Terraform으로 클라우드 리소스를 관리할 때 처음부터 설정 파일을 작성하고 terraform apply로 적용하여 리소스를 create 하는 경우도 있지만, 기존의 리소스를 가져와 terrform으로 관리하는 경우도 존재합니다.
Terraform에서는 공식적으로 terraform import라는 명령어 통해 클라우드 리소스를 가져오도록 지원합니다. 하지만 terraform import는 terraform.state 상태 파일에만 적용될 뿐 .tf 설정 파일에는 적용되지 않습니다. 따라서 import를 사용해서 리소스를 가져올 경우엔 리소스에 대한 변경, 삭제를 못하거나 수동으로 .tf 설정 파일을 작성해 줘야 합니다.
수동으로 .tf 설정 파일을 작성하는 것은 매우 번거롭고 어려운 일입니다. 이를 도와는 terraforming 이라는 Ruby 프로젝트가 있습니다.
terraforming 설치 방법
- ruby 설치
- $ gem install terraforming
- aws configure (.aws 폴더에 credential 및 config 생성)
terraforming은 “terraforming <서비스명>” 명령어로 간단하게 설정 코드(.tf)를 얻을 수 있습니다.
terraforming이 지원하는 서비스명은 다음과 같습니다.
$ terraforming
Commands:
terraforming alb # ALB
terraforming asg # AutoScaling Group
terraforming cwa # CloudWatch Alarm
terraforming dbpg # Database Parameter Group
terraforming dbsg # Database Security Group
terraforming dbsn # Database Subnet Group
terraforming ddb # DynamoDB
terraforming ec2 # EC2
terraforming ecc # ElastiCache Cluster
terraforming ecsn # ElastiCache Subnet Group
terraforming efs # EFS File System
terraforming eip # EIP
terraforming elb # ELB
terraforming help [COMMAND] # Describe available commands or one specific command
terraforming iamg # IAM Group
terraforming iamgm # IAM Group Membership
terraforming iamgp # IAM Group Policy
terraforming iamip # IAM Instance Profile
terraforming iamp # IAM Policy
terraforming iampa # IAM Policy Attachment
terraforming iamr # IAM Role
terraforming iamrp # IAM Role Policy
terraforming iamu # IAM User
terraforming iamup # IAM User Policy
terraforming igw # Internet Gateway
terraforming kmsa # KMS Key Alias
terraforming kmsk # KMS Key
terraforming lc # Launch Configuration
terraforming nacl # Network ACL
terraforming nat # NAT Gateway
terraforming nif # Network Interface
terraforming r53r # Route53 Record
terraforming r53z # Route53 Hosted Zone
terraforming rds # RDS
terraforming rs # Redshift
terraforming rt # Route Table
terraforming rta # Route Table Association
terraforming s3 # S3
terraforming sg # Security Group
terraforming sn # Subnet
terraforming snst # SNS Topic
terraforming snss # SNS Subscription
terraforming sqs # SQS
terraforming vgw # VPN Gateway
terraforming vpc # VPC
'DevOps' 카테고리의 다른 글
[AWS/CloudWatch] 클라우드 와치 용어 및 개념 정리 (0) | 2022.11.07 |
---|---|
[Packer] 패커로 AMI(이미지) 만들기 (0) | 2022.11.01 |
[AWS/Terraform] 테라폼 백엔드(Backend) 구축하기(S3, DynamoDB) (0) | 2022.10.30 |
[AWS/Terraform] 테라폼으로 EC2 인스턴스 프로비저닝 (0) | 2022.10.29 |
[AWS] CloudWatch Logs 이용하여 로그 수집 (0) | 2022.10.28 |