우선 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 간에 연결이 가능하다 인터넷이 불가능하다.
좀더 자세한 사항은 "김재벌의 IT 이야기 : 버추얼박스 네트워크 이해 및 구성 - 완벽가이드" 에서 살펴보았다.
개발환경을 위해 필요한 네트워크 구성은 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 를 분산 모드로 설치하는 것을 하도록 한다.
댓글 없음:
댓글 쓰기