Programming 27

[IaC] Managing Secrets with Terraform

안녕하세요. CloudNet@ Terraform Study를 진행하며 해당 내용을 이해하고 공유하기 위해 작성한 글입니다. 도서 ‘Terraform: Up & Running(By Yevgeniy Brikman)’ 의 내용 및 스터디 시간 동안 언급된 주요 내용 위주로 간단히 정리했습니다. 배포 과정에서 민감 정보 (DB암호, API 키, TLS인증서, SSH키, GPG 키 등)를 안전하게 관리가 필요합니다. 민감 정보 관리 방식 2가지 암호 저장 방식이 있습니다. 파일 기반 암호 저장 : 민감 정보를 암호화 후 저장 → 암호화 관련 키 관리가 중요 ⇒ 해결책 : AWS KMS, GCP KMS 혹은 PGP Key 중앙 집중식 암호 저장 : 데이터베이스(MySQL, Psql, DynamoDB 등)에 비밀번호..

Programming/IaC 2023.10.28

[IaC] Terraform tips & tricks — Loops & Conditions

안녕하세요. CloudNet@ Terraform Study를 진행하며 해당 내용을 이해하고 공유하기 위해 작성한 글입니다. 도서 ‘Terraform: Up & Running(By Yevgeniy Brikman)’ 의 내용 및 스터디 시간 동안 언급된 주요 내용 위주로 간단히 정리했습니다. [Docs] Built-in Fuctions : 참고 & [Docs] Expression : 참고 반복문(Loops) count 매개변수 parameter : 리소스와 모듈의 반복 for_each 표현식 expressions : 리소스 내에서 리소스 및 인라인 블록, 모듈을 반복 for 표현식 expressions : 리스트 lists 와 맵 maps 을 반복 for 문자열 지시어 string directive : 문자..

Programming/IaC 2023.10.28

[IaC] Terraform modules

안녕하세요. CloudNet@ Terraform Study를 진행하며 해당 내용을 이해하고 공유하기 위해 작성한 글입니다. 도서 ‘Terraform: Up & Running(By Yevgeniy Brikman)’ 의 내용 및 스터디 시간 동안 언급된 주요 내용 위주로 간단히 정리했습니다. 모듈 테라폼을 사용하면 코드를 테라폼 모듈에 넣고 전체 코드의 여러 위치에서 해당 모듈을 재사용할 수 있습니다. Figure 4–5. Putting code into modules allows you to reuse that code from multiple environments 위 그림에서와 같이 Staging 와 Production 환경에서 동일한 코드를 복사하여 사용하는 대신 아래 처럼 두 환경에서 동일한 모듈의..

Programming/IaC 2023.10.28

[IaC] Terraform state -상태파일격리

안녕하세요. CloudNet@ Terraform Study를 진행하며 해당 내용을 이해하고 공유하기 위해 작성한 글입니다. 도서 ‘Terraform: Up & Running(By Yevgeniy Brikman)’ 의 내용 및 스터디 시간 동안 언급된 주요 내용 위주로 간단히 정리했습니다. 상태 파일 격리 필요성 원문 참고 — all my environments shared a state file, so when something bad happened to that state file they all got equally fucked. 동일한 상태파일 사용 시, 해당 파일이 모든 환경에 영향을 미칠 수 있기 때문에 환경별 상태 파일 격리가 필요합니다. 즉, 테라폼을 처음 사용하기 시작하면 모든 인프라를 ..

Programming/IaC 2023.10.28

[IaC] Terraform state -상태파일공유

안녕하세요. CloudNet@ Terraform Study를 진행하며 해당 내용을 이해하고 공유하기 위해 작성한 글입니다. 도서 ‘Terraform: Up & Running(By Yevgeniy Brikman)’ 의 내용 및 스터디 시간 동안 언급된 주요 내용 위주로 간단히 정리했습니다. 상태 파일은 배포할 때마다 변경되는 프라이빗 API private API로, 오직 테라폼 내부에서 사용하기 위한 것입니다. 상태 파일은 직접 편집하거나 직접 읽는 코드로 작성해서는 안됩니다. 상태 파일 확인 # 배포 $ terraform init && terraform plan && terraform apply -auto-approve # 상태 파일 확인 : JSON 형식 $ ls cat terraform.tfstate..

Programming/IaC 2023.10.28

[IaC] GKE configuration

안녕하세요, [gcp] GKE Implementation & CLI Configuration 를 참고해 terraform으로 GKE를 구성한 내용을 정리한 글입니다. 사전작업 API 활성화 : Compute Engine API, Kubernetes Engine API 활성화 Cloud APIs : Cloud APIs are exposed as network API services to customers, such as Cloud Pub/Sub API. Each Cloud API typically runs on one or more subdomains of googleapis.com, such as pubsub.googleapis.com, and provides both JSON HTTP and gRPC ..

Programming/IaC 2023.10.28

[IaC] Terraform Syntax-GCP

안녕하세요. [IaC] Terraform Syntax-AWS 내용을 참고하여 GCP Provider 버전으로 작성했습니다. 사전환경 GCP IAM User 생성 CSP IAM 비교 : 참고 IAM feature comparisons: Each of the three providers implements some variant of a Role-Based Access Control (RBAC) system. Users assume “roles,” which are typically pre-defined groupings of access and authorization policies that define what resources they do and do not have access to. Logica..

Programming/IaC 2023.10.28

[IaC] Terraform Syntax-AWS

안녕하세요. CloudNet@ Terraform Study를 진행하며 해당 내용을 이해하고 공유하기 위해 작성한 글입니다. 도서 ‘Terraform: Up & Running(By Yevgeniy Brikman)’ 의 내용 및 스터디 시간 동안 언급된 주요 내용 위주로 간단히 정리했습니다. 사전환경 AWS IAM User 생성 AWS CLI 설치 및 IAM User 자격 증명 설정 3. AWS default VPC 준비 : 참고 링크 AWS는 Region별로 여러 VPC를 생성할 수 있습니다. AWS 기본 VPC 예 # default VPC 삭제 시, 아래 명령어로 생성 가능 $ aws ec2 create-default-vpc# default VPC 확인 $ aws ec2 describe-vpcs --fi..

Programming/IaC 2023.10.28

Terraform

1. Terraform Fundamentals - 인프라를 안전하고 효율적으로 구축, 변경 및 버전 관리하기 위한 도구 - 컴퓨팅 인스턴스, 스토리지 및 네트워킹과 같은 하위 수준 구성 요소와 DNS 항목 및 SaaS 기능과 같은 상위 수준 구성 요소가 모두 포함하여 관리할 수 있음 2. Infrastructure as Code with Terraform -HashiCorp에서 제공하는 코드로서의 인프라(infrastructure as code) - HCL(HashiCorp Configuration Language)이라는 구성 언어로 환경을 관리 Build Infrastructure 1) main.tf 생성 : touch main.tf 초기화 : terraform init Resources 생성 : te..

Programming/IaC 2023.10.28

혼자 공부하는 파이썬

오랜만에 Python을 다시 봤다. 몇년 전에 혼자/스터디 등으로 공부했던거 같은데, 다른 일로 잘 안 접하게되니 잠시 멀어졌던거같다.(반성 중) "다시 봐야지.."하던 찰나에 우연찮게본 한빛미디어 '혼공챌린지'를 통해 Python 공부를 다시 시작했다. 비록 문법과 예제들을 한번 훑어보는정도였지만 예전 기억이 다시 새록새록나면서 앞으로 더 꾸준히 해야겠단 생각도 들었다. 마침 클라우드 플젝을 하다보니 스크립트, 자동화쪽에도 적용할일이 많을 것 같아서 앞으로는 보다 더 꾸준히~ 할 수 있길 (몇년전에 데이터분석이며 AI 공부한다고 열심히 하다가...꾸준히 안했던게 좀 후회되기도ㅜ) 추가적으로 같은 시리즈인 JavaScript도 살펴보고있다. NodeJS 쪽을 익혀야할 것 같아 이 부분도 꾸준히 같이 해나..

Programming/Python 2021.08.31