[마소 394호] 코드로 관리하는 인프라스트럭처, 테라폼

입력 2018.10.25 10:30

소프트웨어 전문지 마이크로소프트웨어 394호는 클라우드(Cloud)와 백엔드(Back-End)를 주제로 담았습니다. 테라폼, 데브옵스, PaaS, 마이크로서비스 아키텍처 등 마소 394호의 주요 기사들을 IT조선 독자에게도 소개합니다. [편집자주]

데브옵스는 쉽고 간단하게 다섯 가지 단어로 설명할 수 있다. 데브옵스는 문화(Culture), 자동화(Automation), 측정(Measurement), 공유(Sharing), 기록&축적(File up & Pile up)이다.

데브옵스는 문화다. 무엇이든 자동화를 지향하는 것, 측정하고 검증하는 것, 기술을 팀원에게 공유해 함께 배우고 성장하는 것, 그리고 모든 행위를 기록하고 축적하는 문화다. 그리고 문화란 이 모든 걸 지속하는 것이다.

즉, 데브옵스 자체를 특정 기술의 정의보다는 애자일(Agile)처럼 문화 및 방법론으로 보는 것이 조금 더 바람직한 이해라 할 수 있다.

데브옵스를 이야기할 때 빠지지 않고 등장하는 것이 IaC(Infrastructure as Code, 코드로 관리하는 인프라스트럭처)다. 심지어 데브옵스의 필수 구성요소로 IaC를 이야기하기도 한다. 항상 같이 논의되는 이유는 무엇일까?

과거 데이터센터밖에 선택지가 없던 때에는 엔지니어가 서버를 설치해 전원선과 랜선을 연결하고, 서버의 OS 및 필요한 소프트웨어까지 설치하는 등 많은 일을 직접 했다. 모든 과정이 수동으로 이뤄졌고, 매뉴얼이 있어도 수많은 서버를 똑같이 구성하고 서비스를 운영하기는 결코 쉽지 않은 일이었다. 복잡한 배시(Bash) 스크립트를 작성하거나 직접 컴파일하는 것이 실력의 기준일 때도 있었다.

하지만 클라우드가 등장해 클릭 몇 번으로 서버를 만들 수 있게 됐다. 서비스를 위해 서버를 구성하는 일을 물리적 과정이 아닌 소프트웨어로서의 논리적 과정으로 변했다. 반면 과정이 간단해진 만큼 현대의 서버 아키텍처는 더욱 복잡해졌다. 마이크로서비스가 등장하고, 각종 수많은 도구가 생겨났다.

이런 복잡한 과정을 마우스 클릭만으로 구성하는 것에서 더 나아가, 엔지니어는 프로그래밍 언어처럼 코드로 인프라를 정의하는 방법을 생각해낸다. 다양한 인프라 자원을 프로그래밍하는 것처럼 코드로 정의하는 것이 바로 IaC(Infrastructure as Code)다.

테라폼이 제공하는 프로바이더. / 마이크로소프트웨어 394호 발췌
테라폼(Terraform)은 해시코프(Hashicorp)사에서 제공하는 소프트웨어로써 IaC를 위한 도구다.

해시코프사는 테라폼 외에도 베이그런트(Vagrant), 컨설(Consul), 패커(Packer) 등 많은 도구를 오픈소스 및 상용버전으로 제공하는 데브옵스 전문 회사다.

해시코프사는 단순히 도구를 제공하는 것을 넘어 데브옵스 문화를 위한 워크플로까지 제시한다. 특히 최근에는 무엇보다 각 기업에서 ‘How we work’를 정확히 정의하는 것이 매우 중요해졌다. 작게는 팀원끼리 크게는 팀끼리 어떻게 일할지 정확히 정의하는 것에 따라 일의 효율과 커뮤니케이션 비용에서 큰 차이가 난다.

특히 회사 규모가 크면 클수록 더욱 중요해지는데, 해시코프사는 다양한 상황에 맞춰 특성 있는 도구를 제공하고, 이 도구는 워크플로우에서 고유의 위치가 있다. 그 중 테라폼은 프로비저닝(Provisioning) 영역을 맡고 있으며, 현재 IaC 관련해서는 가장 인기 있는 도구다.

송주영 필자의 ‘코드로 관리하는 인프라스트럭처, 테라폼’에 대한 자세한 내용은 ‘마이크로소프트웨어 394호(https://www.imaso.co.kr/archives/3939)’에서 확인할 수 있다.


키워드

관련기사를 더 보시려면,

[마소 394호] RxJava로 생각하기 오세용 기자
[마소 394호] 플라스크 효과적으로 사용하기 오세용 기자
[마소 394호] 스토리체인이 사이드체인을 선택하기까지 오세용 기자
[마소 394호] 모바일 앱 테스트 자동화용 디바이스팜 구축 오세용 기자
[마소 394호] 되돌아 보는 1만 개의 클라이언트 문제 오세용 기자
[마소 394호] 클릭만으로 도커 개발 환경을 완성시켜주는 애저 PaaS 오세용 기자
[마소 394호] DDD와 MSA로 쇼핑몰 구축하기 오세용 기자
[마소 394호] 이스티오 서비스 메시를 이용한 MSA 구축 오세용 기자
[마소 394호] 제대로 구성하는 마이크로서비스 아키텍처 오세용 기자
[마소 394호] 아마존 API 게이트웨이와 AWS 람다로 구성하는 다운로드 서버 오세용 기자
[마소 394호] AWS EC2와 트래비스CI를 활용한 무중단 배포 서비스 오세용 기자
[마소 394호] 스타트업의 좌충우돌 CI/CD 구성 오세용 기자
[마소 394호] AWS 이메일 서비스 써보니 오세용 기자
[마소 394호] 클라우드의 성능 품질 이야기 오세용 기자
[마소 394호] 클라우드 시대 토종 호스팅 업체의 변신 오세용 기자
[마소 394호] 데이터베이스의 게임 체인저, 오라클 클라우드 오세용 기자
[마소 394호] 알아두면 쓸데없는 신비한 TLS 1.3 오세용 기자
[마소 394호] 다시 보는 PaaS, 어디서 와서 어디로 가는가 오세용 기자
[마소 394호] 더 웨더 컴퍼니의 데브옵스 오세용 기자
[마소 394호] 사설 클라우드의 끝판왕 오픈스택 오세용 기자
[마소 394호] 개발운영 퀀텀 점프를 위한 도커 오세용 기자
[마소 394호] IT 서비스와 모니터링 역사 오세용 기자
[마소 394호] 오픈스택 커뮤니티 동고동락 오세용 기자
[마소 394호] 데브옵스를 꿈꾸는 개발자를 위한 안내서 오세용 기자