일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- ubuntu
- kubenetes slack
- helm
- github
- botkube
- Diagrams
- nextjs 정적배포
- kubernetes
- aws
- k8s botkube
- Mermaid
- Harbor
- k8s
- 쉘 프로그래밍
- github-actions
- linux 셸 스크립트
- nextjs html확장자
- linux 셸 프로그래밍
- cloudfront s3
- kubenetes botkube
- terraform
- Docker
- markdown
- SSH
- markdown mermaid
- TLS
- 리눅스
- k8s slack
- k8s chatops
- github actions
- Today
- Total
목록인프라/Terraform (6)
민한의 블로그
terraform-docs https://terraform-docs.io/ terraform 자원들을 한눈에 볼수있도록 docs(문서)을 생성하는 툴 terraform 자체도 IaC로써 코드로 관리하기 편리하긴 하지만, 자원이 다양해지고, 환경이 나뉠수록 문서화를 따로 해야하는가 하는 고민이 있었음. 설치가 쉽고, Github Actions로 자동화가 가능하고, 필요한 부분만 옵션으로 문서화가 손쉽게 가능하다는 점이 정말 큰 장점이라고 생각함. brew에서 설치 $ brew sinstall traforram-docs zsh에서 코드 auto-completion 적용 $ terraform-docs completion zsh > /usr/local/share/zsh/site-functions/_terrafo..
!!주의 이 글은 인증, 인가 관련 보안을 생략하였습니다. (IAM, ServiceAccount, OIDC provider, sts, assume role ...등) Helm 와 Container Repository 도 생략되었습니다. 그 외에 자잘한 옵션들도 다 생략되고, 큰 틀로만 설명되었습니다. 단점은 빼고 장점만 살려서 소개해주는 글이랄까요. 사내에서 개발자 뿐만 아니라 이것이 꽤나 괜찮은 것이라고 설명을 해주려면 어떻게 해야할까? 해서 만든 것입니다. 아마 더 추가하고 싶을때마다 수정될것같습니다.
현재 최신 버전 terrafomer : v0.8.22 terraform : v1.3.1 본문 terraformer를 aws에서 사용할때, $terraformer import aws --resources=s3 --profile=minhan --regions=ap-northeast-2 를 사용하여 s3 폴더가 만들어졌다고 해보자. s3 폴더로 이동하여 terraform init을 터미널에 입력해본다. $terraform init Initializing the backend... ╷ │ Error: Invalid legacy provider address │ │ This configuration or its associated state refers to the unqualified provider "aws"..
terraform 코드 (ex- main.tf) terraform 상태 (ex- terraform.tfstate) terraform 실제 원격지의 인프라 (ex- aws의 실제resource(s3, ec2 ... etc)) #terraform.tfstate ... "resources": [ { "mode": "managed", "type": "aws_instance", //여기 확인! "name": "web", //여기 확인! "provider": "provider[\"registry.terraform.io/hashicorp/aws\"]", "instances": [ { "schema_version": 1, "attributes": { "ami": "ami-0b9954ae1a8f15194", "arn":..
terragrunt Quick start 요약 https://terragrunt.gruntwork.io/docs/getting-started/quick-start/ DRY는 Don't Repeat Yourself(자신을 반복하지 말 것)의 약자입니다. 간단히, Terragrunt는 Terraform에서 반복되는 폴더와 작업들을 줄이고자 사용하는 툴입니다. Terragrunt는 테라폼 코드를 DRY하고 유지보수가 편하게 만들어줍니다. PROD, QA, STAGE, DEV .. 몇개의 환경이 있던 상관없이 환경마다 중복되는 Provider, Backend, input variables 등을 Terragrunt로 한번만 정의해서 사용할수 있습니다. Terragrunt는 root 디렉터리에서 Terraf..
terraformer는 기존의 인프라를 terraform으로 관리하기 위해서 terraform import를 사용 하고자 하였으나, state만 가져오기에, 직접 tf파일을 작성하기에는 이건 좀 큰일이구나 싶을 때 찾아서 사용하였다. terraforming 이라는 AWS 전용 terraform import 도구가 있었는데 Project Status (2021-12-11): No longer actively maintained이라고 한다. 아무래도 멀티 클라우드 시대이니, 범용적으로 사용하기에도 좋고, 사용법도 편리한 terraformer를 선택하게 되었다. https://github.com/GoogleCloudPlatform/terraformer 이 주소로 들어가서 각자의 환경에 맞게 설치를 진행하면 되..