본문 바로가기
카테고리 없음

윈도우에서 Vagrant 설치 (Ubuntu 설치 예제)

by 아로리 저장소 2022. 3. 6.
728x90

 1. Vagrant란?

 

 

 

리눅스에서 개발환경이 필요할때?, 새로운 윈도우 환경이 필요할 때? 보통  VirtualBox나, VM웨어 또는 윈도우 운영체제에서 제공하고 있는 Hyper-v를 이용하여 가상 OS 환경을 만들어 작업을 합니다.  가상 OS를 만드는 작업은 설치 OS ISO파일을 이용하여 한땀 한땀  설치 단계에 맞춰서 보통 20분~1시간 정도 시간이 걸립니다.  가상 OS가 한 개만 필요할 때는 별 문제가 없는데 OpenStack 이나 블록체인 서버 구축 등 여러대의 가상 OS를 설치할 때는 환경 구축이 너무 오래 걸립니다. 이럴 때 쉽게 설치하고 관리할 수 있는게 Vagrant 입니다. 

 

 Vagrant는 포터블 가상화 소프트웨어 개발환경의 생성 및 유지보수를 위한 오픈 소스 소프트웨어 제품의 하나입니다. 2010년 1월 미첼 하시모토의 개인적인 프로젝트로 처음 시작 되었고, 최초 Vagrant는 2010년 3월에 출시 되었습니다.

2012년 11월에는 Vagrant 풀타임 개발을 지언하기 위해 HashiCorp이라는 단체를 개설하였고, 현재 해당 단체에서 사용 추가 기능 개발을 잡업하고 Vagrant의 전문가 지원 및 트레이닝을 제공하고 있습니다. 

 

Vagarant는 원래 버추얼박스에 종속되어 있었지만 버전 1.1은 VM웨어, KVM, 또는 아마존 EC2와 같은 서버 환경 등 기타 가상화 소프트웨어의 지원을 추가 하였습니다. Vagrant는 개발언어는 루비로 개발 되었으나 현재 PHP, 파이썬, 자바, C#, 자바스크립트와 같은 다른 프로그래밍 언어들로 작성된 프로젝트에서 사용할 수 있고 프로그램 라인선스는 MIT입니다. 

 

 

 2. Chocolatey를 이용한 Vagrant 설치 

이제 Vagrant 설치를 시작해 봅시다. 보통 설치를 하려고 할 때 해당 사이트나 구글에 접속하여 설치파일을 다운 받고 설치를 하지만 여기에서는 Chocolatey를 이용하여 명령어 한줄을 이용하여 설치하겠습니다. Chocolatey는 윈도우용 패키지 관리 프로그램으로 리눅스 운영체제인 ubuntu의 apt-get 또는 CentOS의 yum 프로그램과 같이 프로그램을 명령어 기반으로 설치, 삭제를 쉽게 관리할 수 있는 프로그램 입니다. Chocolatey 설치에 대한 자세한 사항은 제가 남긴  설치 글을 참고해 주세요.(https://arory.tistory.com/6)

 

0. 사전준비사항 VirtualBox 설치 하기 

우선 vagrant를 이용하기 위해선 가상OS를 설치할 수 있게 하는 VirtualBox가 이 미리 설치가 되어 있어야 합니다. 혹시 VirtualBox가 설치가 안되신 분은 다음 참고하시고 설치되신분은 1번으로 넘어가 주세요. 

 

이번 VirtualBox 설치도 Chocolatey로 진행하겠습니다. (Chocolatey가 설치 안되신 분들은 이전에 작성한 글을 참고해주세요 아래 1번에 링크있습니다.) 

먼저 Windows PowerShell 를 관리자로 실행시켜 주세요. 그리고 아래 명령어를 복사해서 PowerShell창에 붙여넣기 해서 실행시켜 주세요. 중간에 확인사항이 있는데 "y"를 눌러주고 Enter를 눌러 계속 진행해 주세요.

 

choco install virtualbox

 

Chocolatey로 VirtualBox 설치

설치 진행이 모두 끝났으면 왼쪽 하단 돋보기를 눌러 virtualbox 를 검색해서 다음 사진과 같이 VirtualBox가 잘 설치가 되어있는지 확인합니다. 

VirtualBox 설치확인

 

1. Windows PowerShell  관리자 권한으로 실행하기

왼쪽 하단 돋보기 - PowerShell 입력 -  Windows PowerShell

 

우선 왼쪽 하단 돋보기를 클릭하고 "PowerShell"을 검색하여 "Windows PowerShell" 앱을 검색하여 오른쪽 버튼을 눌러 "관리자 권한으로 실행" 을 눌러서  아래 화면 이미지와 같이 Windows PowerShell(이하 PowerShell)를 관리자 권한으로 실행해 주세요.
(일반 PowerShell 창으로 설치 시 Vagrant 설치가 안될 수 있습니다. )

 

관리자용 Windows PowerShell 실행 창

2. Chocolatey 설치 명령어로 vagrant 설치 

이제 아래 Chocolatey에서 Vagrant 설치 명령어를 복사하여 PowerShell 창에서 복사하여 설치를 해주세요.

 

choco install vagrant

 

Chocolatey 를 이용한 vagrant 설치

 

 

 

설치 과정 중 확인 사항이 있는데 모두 "y" 를 입력해주고 Enter키를 입력하고 설치를 계속 진행하면 됩니다. 

 

vagrant 설치 중 확인 사항

 

 

설치가 완료가 되었다면 다음과 같은 화면이 나옵니다. 명령어 한줄로 설치과 완료되었습니다. 정말 설치 쉽죠?ㅎ

 

vagrant 설치 완료

3. 명령어 되는지 확인하기

설치가 끝나면 기존 PowerShell 창에서 바로 vagrant 명령어가 실행되지 않습니다. vagrant 경로가 입력된 PATH가 적용 되지 않아서 그러는데 다시 창을 닫고 PowerShell 을 관리자권한으로 실행시켜주세요. 그리고 vagrant 명령어를 실행시켜 주세요.
아래와 같이 vagrant 관련 설명이 나오면 설치가 완료 되었습니다. 

 

vagrant 명령어 실행

 

 

 

 3. Vagrant를 이용하여 Ubuntu OS 설치하기 

이제 vagrant를 윈도우에 설치가 되었으니 실제 우리에게 필요한 가상OS를 설치해봅시다. 여기에서는 vagrant를 이용하여 Ubuntu 20.04를 설치합니다. 

 

1. 설치 폴더에서 ubuntu 폴더 생성

먼저 Windows PowerShell 를 관리자로 실행한 다음 Ubuntu를 설치 할 폴더 만들어 줍니다. 저는 c:\work\vagrant 폴더에 "ubuntu" 폴더에 설치하려고 합니다. 

# c:\work\vagrant 폴더는 제가 작업하는 공간입니다. 

# ubuntu 폴더생성
mkdir ubuntu 

# ubuntu 폴더로 이동
cd ubuntu

 

ubuntu 폴더 생성 및 폴더 이동

2. vagrant init 실행

이제 vagrant init 명령어를 실행하여 vagrant를 사용할 기본 세팅 작업을 해줍니다.

 

vagrant init

 

vagrant init 설치 초기화 및 Vagrantfile 파일

명령어를 실행하고 나서 생성된 파일을 보면 Vagrantfile 파일이 생성된 것을 볼 수 있습니다. 해당 파일은 가상OS에 시스템 사항, 네트워크 사항, 포트포워딩, 실행 스크립트, OS갯수 등 가상OS 설치 대한 환경설정 파일입니다. 해당 파일을 통해서 우리가 원하는 가상OS를 설정 및 관리 할 수 있습니다. 설치 이미지는 기존에 다른 사람들이 만들어 놓은 이미지를 사용하여 설치 하기 때문에 운영체제 설치 과정을 진행할 필요가 없습니다.

 

3. Vagrantfile 수정하기

초기 생성된 Vagrantfile에서 다음 내용을 수정하여 ubuntu 이미지로 설치 할 수 있게 수정해 줍니다. 여기에서는Vagrantfile 파일 편집은 메모장을 이용하였습니다. 각자 편한 편집기로 수정하시면 됩니다. 

 

config.vm.box = "bento/ubuntu-20.04"

 

우선 탐색기를 이용하여 해당 ubuntu 폴더로 들어가서 Vagrantfile을 열어줍니다.  그리고 복사한 내용을 config.vm.box 부분에 다음과 같이 수정하고 저장해 줍니다. Vagrantfile에 설정관련 내용은 다음 글에 자세히 남겨드릴게요. 

 

ubuntu 이미지 설치를 위한 Vagrantfile 파일 수정 

 

4. vagrant up 실행 

다시 Windows PowerShell 를 관리자로 실행하여 해당 ubuntu폴더로 이동해 줍니다. 그리도 다음 vagrant up 명령어를 실행하여 ubuntu OS를 실행시켜줍니다. 

 

vagrant up

 

vagrant up 명령어 실행

 

vagrant up 처음 실행은 이미지를 가져오는 시간이 있어 오래 걸리 수 있으니 천천히 기다려 주세요.

 

가상OS 이미지 생성 중

 

5. SSH 접속 

이제 uvuntu 설치가 완료 되었으면 접속을 해보겠습니다. 기본적인 vagrant 에서 리눅스 설치는 SSH을 기본적으로 제공합니다. 그래소 vagrant ssh 를 실행하면 자동으로 SSH 접속이 가능합니다. 

다음 명령어를 이용해서 설치한 ubuntu에 접속 해보세요.

 

vagrant ssh

vagrant ssh로 ubuntu 접속

 

4. Vagrant 기본 명령어  

Vagrant 기본 명령어를 여기에 정리하여 항상 필요할 때 참고하시면 됩니다. 저같은 경우 vagrant 명령어는 자주 사용을 안하여 매번 구글에 검색하여 찾아보고 했는데 이번 기회에 검색의 시간낭비를 줄이고자 이렇게 글을 남깁니다.ㅎ

 

명령어 설명
vagrant init  vagrant 설정파일 VagrantFile파일 생성
vagrant up  Vagrantfile을 기반으로 가상 운영체제 실행
vagrant halt  실행한 가상운영체제 종료
vagrant destroy 설치한 가상운영체제 box 삭제 

 

 

728x90