2014년 3월 7일 금요일

vagrant 를 이용하여 개발환경 만들기

vagrant 를 이용하여 맥프로에 개발 환경을 만들었다. 그 과정을 간단하게 정리해 본다.

우선 vagrant 를 다운로드 받자.

http://www.vagrantup.com/downloads.html

그리고 virtualbox 를 다운로드 받아 설치한다.

https://www.virtualbox.org/wiki/Downloads

개발 환경을 만들기 위해서 생성할 Host 의 필요한 네트워크 조건은

  • 인터넷이 되어야 한다.
  • Host와 Guest간에 연결되어야한다.
  • 독립 네트워크만 구성하면 된다.
그런데 VirtualBox 의 네트워크에는 다음의 3가지 사항이 있었다.
  • Bridged Networking : 위의 2가지 조건을 만족하나 네트워크 환경을 만들고 IP 구성을 하여야 한다. 네트워크 환경을 만들수 없기 때문에 개발환경에는 부적합했다.
  • NAT(Network Address Translation) : Host 와 Guest 간에 연결이 불가하나 인터넷이 가능하다.
  • Host Only Networking : Host 와 Guest 간에 연결이 가능하다 인터넷이 불가능하다.


개발환경을 위해 필요한 네트워크 구성은 NAT 와 Host Only 를 동시에 사용하면 독립 네트워크도 구성하고 인터넷도 사용할 수 있게 만들수 있다.
vagrant 를 이용하여 구성해 보았다. 만들려는 서버는 우선 AppServer 로 가장 기본적인 Tomcat 와 mysql 이 설치된 개발서버였다.
편의를 위해 boxes 폴더를 만들고 appserver 폴더를 만들었다.

mkdir boxes
cd boxes
mkdir appserver
cd appserver

그리고 적당한 vagrant box 를 vagrantbox.es 에서 선정하였다. ubuntu 를 주로 사용하기에 "Ubuntu precise 64 Virtualbox" 를 선택했다.

vagrant box add appserver http://files.vagrantup.com/precise64.box

다운로드 완료후 초기화 실행

vagrant init appserver

이렇게 하면 appserver 폴더에 Vagrantfile 이 생성된다. 이를 아래와 같이 추가하였다.

Vagrant::Config.run do |config|
  config.vm.box = "appserver"
  config.vm.box_url = "http://files.vagrantup.com/precise64.box"
  config.vm.network :hostonly, "33.33.33.10"
end


IP 는 취행이니 편하게 설정한다. 위와 같이 설정하면 네트워크가 NAT 와 Host Only 를 모두 사용할 수 있다. Virtualbox 를 살펴보면 어댑터1은 "NAT"로 어댑터2는 "호스트 전용 어댑터"로 설정되어 있는 것을 확인할 수 있다.

Vagrantfile 를 수정한 후 해당 VM을 실행하였다.

vagrant up

그리고 접속하기 

vagrant ssh

vagrant 라는 계정으로 접속되는 것을 확인할 수 있다. 참고로 비밀번호는 vagrant 이다.

이런 방식으로 dbserver 를 포함하여 몇개의 서버를 더 만들었다.

시간이 될 때 hadoop와 zookeeper 를 분산 모드로 설치하는 것을 하도록 한다.

댓글 없음:

댓글 쓰기