테라폼 (소프트웨어)
1. 개요
테라폼은 외부 리소스를 관리하기 위해 "프로바이더"를 사용하는 소프트웨어이다. 퍼블릭 및 프라이빗 클라우드 인프라, 네트워크 어플라이언스, SaaS, PaaS 등을 지원하며, 선언적 구성을 통해 원하는 최종 상태를 정의한다. 테라폼은 아마존 웹 서비스, 마이크로소프트 애저, 구글 클라우드 플랫폼 등 다양한 클라우드 인프라 프로바이더를 지원한다. 2023년 8월, 테라폼은 Business Source License(BUSL)로 라이선스가 변경되었고, 이에 반발하여 커뮤니티는 OpenTofu 프로젝트를 시작했다.
이미지 준비중입니다.
| 개발자 | HashiCorp |
|---|---|
| 최초 릴리스 | 2014년 7월 28일 |
| 최신 안정화 버전 | v1.10.3 |
| 최신 안정화 버전 날짜 | 2024년 12월 18일 |
| 프로그래밍 언어 | Go |
| 운영 체제 | Linux, FreeBSD, macOS, OpenBSD, Solaris, Microsoft Windows |
| 언어 | 영어 |
| 장르 | Infrastructure as Code |
| 라이선스 | Business Source License v1.1 (소스 이용 가능) |
| 설명 | 데이터 센터 인프라 정의 및 프로비저닝을 위한 소스 이용 가능 소프트웨어 |
|---|
-
Go로 작성된 자유 소프트웨어 -
쿠버네티스
쿠버네티스는 컨테이너화된 애플리케이션을 자동으로 배포, 스케일링, 관리하는 오픈 소스 시스템으로, 구글의 Borg 시스템에서 영감을 받아 설계되었으며 파드, 서비스 등의 기능을 제공하여 클라우드 네이티브 환경에서 중요한 역할을 한다. -
Go로 작성된 자유 소프트웨어 -
오픈시프트
레드햇이 개발한 오픈시프트는 도커 컨테이너와 쿠버네티스를 기반으로 컨테이너 기반 애플리케이션 개발, 배포, 관리를 간소화하는 컨테이너 플랫폼 서비스다. -
클라우드 컴퓨팅용 자유 소프트웨어 -
쿠버네티스
쿠버네티스는 컨테이너화된 애플리케이션을 자동으로 배포, 스케일링, 관리하는 오픈 소스 시스템으로, 구글의 Borg 시스템에서 영감을 받아 설계되었으며 파드, 서비스 등의 기능을 제공하여 클라우드 네이티브 환경에서 중요한 역할을 한다. -
클라우드 컴퓨팅용 자유 소프트웨어 -
아파치 하둡
아파치 하둡은 대용량 데이터를 분산 처리하기 위한 자바 기반의 오픈 소스 프레임워크로, HDFS, 맵리듀스, YARN 등의 모듈로 구성되어 클라우드 환경에서도 사용된다. -
클라우드 인프라스트럭처 -
클라우드 컴퓨팅
-
클라우드 인프라스트럭처 -
마이크로소프트 애저
마이크로소프트 애저는 전 세계 데이터 센터를 통해 600개 이상의 서비스를 제공하는 마이크로소프트의 클라우드 컴퓨팅 플랫폼으로, 다양한 컴퓨팅, 데이터베이스, 스토리지, AI, IoT 기능과 개발자 지원 서비스를 제공하지만 복잡한 가격 모델과 서비스 장애 및 보안 문제가 우려된다.
2. 설계
테라폼은 "프로바이더"를 사용하여 외부 리소스(예: 퍼블릭 클라우드 인프라, 프라이빗 클라우드 인프라, 네트워크 어플라이언스, 서비스형 소프트웨어, 서비스형 플랫폼)를 관리한다. 해시코프는 광범위한 공식 프로바이더 목록을 유지 관리하며, 커뮤니티에서 개발한 프로바이더와도 통합할 수 있다. 사용자는 리소스를 선언하거나 데이터 소스를 호출하여 테라폼 프로바이더와 상호 작용할 수 있다. 테라폼은 명령형 프로그래밍 대신, 원하는 최종 상태를 설명하는 선언적 구성을 사용하여 리소스를 프로비저닝한다. 사용자가 주어진 리소스에 대해 테라폼을 호출하면, 테라폼은 사용자를 대신하여 원하는 상태를 달성하기 위해 CRUD 작업을 수행한다. 코드로서의 인프라는 모듈로 작성될 수 있으며, 재사용성과 유지 관리성을 향상시킨다.
해시코프는 2017년에 테라폼 모듈 레지스트리를 출시했으며, 2019년에는 더 큰 조직을 위한 유료 버전인 테라폼 엔터프라이즈를 도입했다.
2.1. 지원하는 클라우드 인프라 프로바이더
테라폼은 아마존 웹 서비스, 클라우드플레어, 마이크로소프트 애저, IBM 클라우드, Serverspace, 셀렉텔, 구글 클라우드 플랫폼, 디지털오션, 오라클 클라우드 인프라, 얀덱스 클라우드, VMware vSphere, 오픈스택 등과 같은 다수의 클라우드 인프라 프로바이더를 지원한다.
3. 라이선스 변경
테라폼은 이전에는 모질라 공용 허가서(MPL) 버전 2.0 하에 제공되는 자유 소프트웨어였다. 2023년 8월 10일, 해시코프는 회사가 생산하는 모든 제품을 Business Source License(BUSL) 하에 재허가할 것이라고 발표했으며, "경쟁 서비스"를 제공하는 사람들의 커뮤니티 에디션 상업적 사용을 금지했다.
MPL로 허가된 테라폼의 마지막 버전은 리눅스 재단의 지원을 받아 "OpenTofu"로 포크되었다. 2024년 4월, 해시코프는 OpenTofu 프로젝트에 중단 및 철회 통지를 보냈는데, 이는 허가 없이 BUSL로 허가된 테라폼 버전을 사용했고 "해시코프의 코드를 잘못 재표기하여 원래 해시코프가 다른 라이선스 하에 제공한 것처럼 보이게 만들었다"고 주장했다. OpenTofu는 인용된 코드가 MPL로 허가된 테라폼 버전에서 비롯되었다고 밝히며 이러한 주장을 부인했다.