‘테라폼으로 시작하는 IaC’ 책을 기준하여 정리하였습니다.3.9 반복문for each: 반복문, 선언된 key 값 개수만큼 리소스를 생성for-each는 반복(for)을 할 때 타입 값에 대해 하나하나 each object로 접근한다는 의미이다.each object는 key, value 2개의 속성을 가지고 있다.each.key — The map key (or set member) corresponding to this instance.each.value — The map value corresponding to this instance. (If a set was provided, this is the same as each.key.)하지만 for_each는 모든 타입에 대해 each object로 접..
‘테라폼으로 시작하는 IaC’ 책을 기준하여 정리하였습니다.3.5 데이터 소스데이터 소스 구성데이터 소스는 테라폼으로 정의되지 않은 외부 리소스 또는 저장된 정보를 테라폼 내에서 참조할 때 사용한다데이터 소스 블록은 data로 시작하고 이후' 데이터 소스 유형'을 정의한다. 데이터 소스를 정의할 때 사용 가능한 메타인수는 다음과 같다.depends_on : 종속성을 선언하며, 선언된 구성요소와의 생성 시점에 대해 정의count : 선언된 개수에 따라 여러 리소스를 생성for_each : map 또는 set 타입의 데이터 배열의 값을 기준으로 여러 리소스를 생성lifecycle : 리소스의 수명주기 관리데이터 소스 참조데이터 소스로 읽은 대상을 참조하는 방식은 리소스와 구별되게 data가 앞에 붙는다. 속..
테라폼으로 시작하는 IaC 책을 기준으로 정리하였습니다.실습1. AWS CLI 설치 및 자격증명1. AWS Free-Tier 계정을 생성한다.2. AWS IAM User를 생성한다. 이때, 관리자 수준 권한(AdministratorAccess)과 프로그래밍 방식 액세스 권한(Access/Secret Key)을 부여한다.3. AWS CLI v2 설치 및 IAM User 자격 증명 설정# macOS 설치 방법$ brew install awscli# Linux(WSL2) 설치 방법$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"$ unzip awscliv2.zip$ sudo ./aws/install# aws c..
테라폼으로 시작하는 IaC 책을 기준으로 정리하였습니다.3장 기본 사용법3.1 주요 커맨드help 옵션# 서브커맨드 help 지원terraform console -helpterraform init -helpinit 초기화# 테라폼 실행을 위해 코드 파일이 있는 디렉터리로 이동# (참고) 테라폼이 실행되는 디렉터리 = 모듈(테라폼 코드 파일과 변수 파일), 기본 작업디렉터리는 '루트 모듈', 호출 모듈은 '자식 모듈'$ cd my_dir/# init 미실행한 상태에서 plan, apply 실행하면 안됨# 초기화 : 코드 사용 구문 기반으로 필요한 프로바이더 플러그인을 찾고 설치, 추가로 '프로바이더/모듈/백엔드' 구성 설정/변경 시 수행 필요$ terraform init $ ls -al$ tree .ter..
테라폼으로 시작하는 IaC 책을 기준으로 정리하였습니다. 1장 IaC와 테라폼IaC (Infrastructure as Code): Infrasturcture를 Code로서 정의, 관리 및 프로비저닝하는 것프로비저닝: IaC 코드를 실행하여 인프라 자원을 자동으로 생성합니다. 예를 들어, 가상 머신, 컨테이너, 네트워크 설정 등을 자동으로 프로비저닝할 수 있습니다.구성 관리: IaC 코드를 사용하여 인프라의 구성을 자동으로 설정합니다. 예를 들어, 서버 설정, 네트워크 정책, 보안 설정 등을 자동으로 구성할 수 있습니다.확장 및 축소: IaC를 사용하면 인프라를 필요에 따라 자동으로 확장하거나 축소할 수 있습니다. 이는 코드를 수정하여 추가 리소스를 프로비저닝하거나 제거함으로써 이루어집니다.자동화된 배포:..
Cloud CDNCloud CDN은 GCP에서 제공하는 CDN 서비스이다. 이번 글에서는 Cloud CDN을 이용하여 CDN 환경을 구축하고 성능을 테스트해볼 것이다. 공식 문서(https://cloud.google.com/cdn/docs/setting-up-cdn-with-bucket)를 활용해서 구성을 해볼 것이다. 먼저 Google Cloud에서 계정 등록 및 CDN 사용 등록을 한다. Cloud CDN 페이지에서 설정을 시작한다. CDN 설정을 하려면 다음과 같이 원본 구성 (버킷 구성), 호스트 및 경로 규칙 구성, 캐시 성능 구성을 해야함을 알 수 있다. 1. Cloud Storage 백엔드 버킷 만들기스토리지 버킷을 만들어볼 것이다. 이때, 여러 리전에 자동으로 객체를 복제하는 멀티 리전 버..
이론 Deployment 배포를 위한 오브젝트 Namespace 격리된 환경을 제공하는 오브젝트 Service 오브젝트들을 외부에 "서비스"하기 위한 오브젝트 = public nodePort: 실제 서버외부에 노출되는 노드들의 포트이다. 30000~32765 까지의 포트가 사용 가능하다. port: (서비스) 포트를 말한다. 서비스는 작은 로드밸런서라고 생각하면 좋다. IP와 port가 존재한다. targetPort: pod의 포트이다. 실습 # $ apt-get install bash-completion $ echo 'source