Infrastructure as Code(IaC)에 대해 설명해 주세요

관련 개념: IaC · Terraform

코드형 인프라(Infrastructure as Code, IaC) 는 수동 프로세스 대신 코드를 통해 인프라를 프로비저닝하고 관리하는 방법입니다. 기존의 수동 설정 방식은 반복 작업이 많고 휴먼 에러가 발생하기 쉬우며, 인프라 설정을 별도로 문서화해 관리해야 하는 번거로움이 있습니다. IaC는 이러한 문제를 해결하기 위해 등장했으며, 인프라를 코드로 관리함으로써 일관성을 보장하고 운영 효율성을 높일 수 있습니다.

IaC는 크게 선언적(Declarative)방식과 명령형(Imperative)방식으로 나뉩니다. 선언적 방식은 최종 상태를 정의하면 IaC 도구가 이를 자동으로 구성하는 방식입니다. 사용자는 원하는 결과를 기술하기만 하면 되고, 수행 과정은 도구가 처리합니다. 대표적인 도구로는 Terraform과 AWS CloudFormation 등이 있습니다. 명령형 방식은 구성 방법을 직접 정의하는 방식입니다. 사용자가 인프라를 설정하는 단계를 코드로 정의하며 명령어 기반으로 실행됩니다. 대표적인 도구로는 Ansible과 AWS CDK 등이 있습니다.

Infrastructure as Code의 장점과 단점은 무엇인가요?

장점

단점

추가 학습 자료를 공유합니다.

CSLOG에서 보기