- 1. IaC2023년 03월 28일 09시 48분 39초에 업로드 된 글입니다.작성자: 각수짱728x90반응형SMALL
IaC
IaC(Infrastructure as Code)란 코드 형태로 인프라를 작성, 정의, 배포, 업데이트하는 것을 의미
인프라를 관리하는 모든 것을 코드 형태로 관리하는 것IaC의 종류
애드 훅 스크립트
Python, Ruby, Bash 등의 스크립트 언어
구성 관리 도구
Ansible, Puppet, Chef 등
서버에 소프트웨어를 설치/관리하는 목적으로 사용서버 템플릿 도구
Docker, Packer, Vargrant 등
서버 프로비전 도구
Terraform, CloudFormation 등의 기술
*프로비전이란?
프로비저닝(Provisioning)이란 의미는 영어 직역한 그대로 "제공하는 것"
어떤 종류의 서비스든 사용자의 요구에 맞게 시스템 자체를 제공 하는 것을 프로비저닝이라고 하며
제공해 줄 수 있는 것은 인프라 자원이나 서비스, 또는 장비가 될 수도 있다.
Server Resource Provisioning : CPU, Memory, IO 등과 같은 실제 서버의 자원을 할당해 주고 운영할 수 있게 제공해 주는 것을 말한다.
OS Provisioning : OS를 서버에 설치하고 구성작업을 해서 사용할 수 있도록 제공하는 것을 말한다.
Software Provisioning : WAS, DBMS 등의 소프트웨어를 설치하고 세팅하여 실행할 수 있도록 제공하는 것을 말한다.
Account Provisioning : 접근 권한을 가진 계정을 제공해주는 것을 말한다. 클라우드 인프라 쪽에서는 해당 업무를 담당하던 관리자가 변경된 경우 권한의 인계를 Account Provisioning을 통해 하는 경우가 많다.
Storage Provisioning : 데이터를 저장하고 관리할 수 있는 Storage 를 제공할 수 있다. 특히 클라우드에서는 제공하는 Storage의 종류와 용도에 따라 다양한 방식의 제공이 이루어진다.
클라우드를 도입하거나 클라우드 환경에서 사용하는 것은 클라우드 Vendor 로부터 서비스를 Provisioning 받아 사용한다고 보면 된다.
IaC의 장점속도와 안정성
문서화
버전 관리
확인 및 검사
재사용성IaC로 배포 작업을 자동화하게 되면 개발자가 원하는 시점에 배포할 수 있으며
수작업보다 빠르고 안전하게 배포가 가능하다.
또한 코드이기 떄문에 그 자체로 문서화가 된다고 볼 수 있으며, 변경 사항과 커밋 이력이 남기 때문에 버전 관리도 할 수 있다.
코드 리뷰를 통해서 변경되는 인프라스트럭처를 확인할 수 있고 모듈 형태로 재사용할 수가 있다.
정리
IaC(Infrastructure as Code)
├─ 종류
│ ├─ 애드 훅 스크립트 (Python, Ruby, Bash 등)
│ ├─ 구성 관리 도구 (Ansible, Puppet, Chef 등)
│ ├─ 서버 템플릿 도구 (Docker, Packer, Vagrant 등)
│ └─ 서버 프로비전 도구 (Terraform, CloudFormation 등)
└─ 장점
├─ 속도와 안정성
├─ 문서화
├─ 버전 관리
├─ 확인 및 검사
└─ 재사용성728x90반응형LIST'IaC' 카테고리의 다른 글
4. Terraform(테라폼) (0) 2023.03.30 Ansible(앤서블) - 활용(3계층구현) (0) 2023.03.29 3. Ansible(앤서블) (0) 2023.03.29 쉘 프로그래밍 - 활용 (0) 2023.03.29 2. 쉘 프로그래밍 (0) 2023.03.29 이전글이 없습니다.댓글