Vagrant vs. Terraform/Docker(베이그란트와 테라폼, 도커 비교)
예전에 Terraform 글을 쓰면서 vagrant와 terraform을 가볍게 비교하고 넘어간 적이 있다. Vagrant 와 같은 도구는 데모용 가상화 환경을 구축하기 위해 존재 하지만 프로덕션 환경과 더 밀접하게 일치하는 실제 인프라에서 소프트웨어를 데모하는 것은 여전히 매우 어렵다는게 요지였는데, 이는 Vagrant가 소수의 버추얼머신을 사용하는 개발 환경을 위해 개발된 것이고, Terraform은 실제 인프라를 관리하기 위해 설계/개발된 것이기 때문이다.
[DevOps/02]Terraform Use cases 테라폼을 사용하는 이유
테라폼을 사용하는 이유 1. Heroku App Setup - codify the setup required for a Heroku application, ensuring that all the required add-ons - configuring DNSimple to set a CNAME, or..
hello-i-t.tistory.com
1. Vegrant, Docker, Terraform 이란?
(1) Vagrant는
- 여러 운영 체제에서 일관된 개발 환경 워크 플로를 제공하는 데 초점을 맞춘 도구
- 가볍고 재현 가능하며 이식 가능한 개발 환경을 만들고 구성
- 개발 환경 관리에 중점을 둔 도구
- 가상 머신을 CLI로 관리
(2) Docker는
- 컨테이너화 시스템이 존재하는 한 지속적으로 소프트웨어를 실행할 수있는 컨테이너 관리 도구
- 분산 애플리케이션을 구축, 배포 및 실행하기 위한 개방형 플랫폼
(3) Terraform은
- 인프라 구축을위한 도구
2. Vagrant vs. Docker
- 컨테이너(Docker)는 일반적으로 가상 머신(Vagrant)보다 가볍기 때문에 컨테이너 시작 및 중지가 매우 빠름
- Docker는 macOS, Linux 및 Windows에서 기본 컨테이너화 기능을 사용함
- 현재 Docker는 특정 운영 체제 (예 : BSD)를 지원하지않지만, Vagrant는지원함
- 마이크로 서비스가 많은 환경의 경우 Docker는 단일 Docker VM을 쉽게 시작하고 그 위에서 많은 컨테이너를 매우 빠르게 시작할 수 있기 때문에 매력적임
- Vagrant는 Docker 공급자를 사용하여이 작업을 수행 할 수도 있음
- Vagrant의 주요 이점은 일관된 워크 플로이지만 순수한 Docker 워크 플로가 의미가있는 경우가 많음
3. Vagrant vs. Terraform
- Vagrant와 Terraform은 모두 HashiCorp의 프로젝트
- Vagrant는 개발 환경 관리에 중점을 둔 도구(개발 환경을 위한 것)
- Terraform은 인프라 구축을위한 도구(일반적으로 인프라 관리를 위한 것)
- Vagrant는 Terraform이 제공하지 않는 여러 높은 수준의 기능을 제공
- 동기화 된 폴더, 자동 네트워킹, HTTP 터널링 등은 개발 환경 사용을 용이하게하기 위해 Vagrant에서 제공하는 기능
- Terraform은 개발 환경이 아닌 인프라 관리에 중점을두기 때문에 이러한 기능은 해당 프로젝트의 범위를 벗어남
- Terraform의 주요 용도는 AWS와 같은 클라우드 공급자의 원격 리소스를 관리하는 것
- Terraform은 여러 클라우드 제공 업체에 걸쳐있는 매우 큰 인프라를 관리 할 수 있도록 설계됨
- Vagrant는 주로 소수의 가상 머신만 사용하는 로컬 개발 환경을 위해 설계됨
[출처]
1. Vagrant vs. Docker, Hashi Corp Vagrant, https://www.vagrantup.com/intro/vs/docker
Vagrant vs. Docker | Vagrant by HashiCorp
Vagrant and Docker both provide isolation primitives. This page details the differences between them.
www.vagrantup.com
2. Vagrant vs Terraform, Hashi Corp Vagrant, https://www.vagrantup.com/intro/vs/terraform
Vagrant vs. Terraform | Vagrant by HashiCorp
Vagrant is a tool for managing virtual machines. Terraform is another open source tool from HashiCorp which enables infrastructure as code.
www.vagrantup.com
3. Docker vs Vagrant: What You Need to Know, LUMEN, https://www.ctl.io/developers/blog/post/docker-vs-vagrant
Docker vs Vagrant: What You Need to Know - CenturyLink Cloud Developer Center
The number of tools available for developing, deploying, and managing applications continues to expand. One comparison we keep seeing is between Docker vs Vagrant. While not exactly competing tools, they are frequently used in the same sorts of conversatio
www.ctl.io