Vagrant - 기본
윈도(Windows)를 주로 사용하지만 리눅스 환경이 필요한 경우가 많아서 Vagrant를 그간 꾸준히 사용해 왔다. 정리를 위해 Vagrant에 대한 개요와 기본 사용법을 정리해 본다.
설치
우선 Vagrant와 VirtualBox의 설치가 필요하다. 아래 주소에서 내려받아서 설치한다.
Vagrantfile 생성
vagrant init
명령을 실행하면 현재 폴더에 Vagrantfile을 생성한다. 아래와 같이 Box의 이름을 추가하면 해당 박스를 사용하는 Vagrantfile을 생성한다.
vagrant init bento/centos-7.3
이렇게 생성한 Vagrantfile에는 다량의 주석이 포함되어 있어서 이 주석만 잘 읽어봐도 기본적인 설정 방법을 아는데 무리가 없다.
Box 검색
원하는 리눅스 배포본과 버전의 Box를 아래 주소에서 검색할 수 있다.
각 리눅스 배포본 제공자의 오피셜 박스를 사용하는게 안전하다. 다만 CentOS의 경우는 Bento 프로젝트에서 제공하는 박스도 많이 사용하는 것 같다.
Vagrant machine 생성
vagrant up
위 명령을 Vagrantfile이 있는 폴더에서 실행하면 가상 머신이 생성된다.
$ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'bento/centos-7.3'...
==> default: Matching MAC address for NAT networking...
==> default: Checking if box 'bento/centos-7.3' is up to date...
==> default: Setting the name of the VM: Documents_default_1496384515554_86818
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
default: Adapter 1: nat
==> default: Forwarding ports...
default: 22 (guest) => 2222 (host) (adapter 1)
==> default: Booting VM...
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Warning: Remote connection disconnect. Retrying...
default:
default: Vagrant insecure key detected. Vagrant will automatically replace
default: this with a newly generated keypair for better security.
default:
default: Inserting generated public key within guest...
default: Removing insecure key from the guest if it's present...
default: Key inserted! Disconnecting and reconnecting using new SSH key...
==> default: Machine booted and ready!
==> default: Checking for guest additions in VM...
==> default: Mounting shared folders...
default: /vagrant => C:/Users/daniel/vagrant-test
Vagrant machine에 SSH로 접속
vagrant ssh
위 명령을 Vagrantfile이 있는 폴더에서 실행하면 vagrant
사용자로 가상 머신에 SSH로 접속이 된다.
PuTTY 등의 SSH 클라이언트로 접속하려면 127.0.0.1:2222
에 vagrant
로 접속하면 된다. 암호 또한 vagrant
다. 2222 포트로 접속하는 이유는 기본으로 가상 머신의 22
포트와 호스트 머신의 2222
포트가 port forwarding 방식으로 연결되어 있기 때문이다. 이미 다른 가상 머신이 2222 포트를 사용 중이면 다른 포트가 자동으로 할당되며, 이는 실행 로그를 통해 알아내면 된다.
Vagrant machine을 다루는 기본 명령
삭제(terminate)
vagrant destroy
정지(shutdown, poweroff)
vagrant halt
가상 머신을 끈다.
재시작(reboot, halt and up)
vagrant reload
가상 머신을 재시작한다. 정지 후 시작하는 것과 동일하다.
일시 중지(suspending)
vagrant suspend
현재의 동작 상태를 저장한 상태로 정지한다. 다시 시작하면 부팅 과정 없이 저장한 지점에서 바로 시작한다.
다시 시작(resume)
vagrant resume
일시 중지 상태의 가상 머신을 이전 지점에서 다시 시작한다.
상태 확인(status)
vagrant status
가상 머신의 상태를 확인한다. 정지 상태면 poweroff
로 표시되고 정상 동작 중이면 running
으로 표시된다.
EOF
'DevOps' 카테고리의 다른 글
Vagrant - CoreOS에 vagrant ssh 접속 시 인증 실패 (0) | 2017.08.13 |
---|---|
Vagrant - 기본+ (0) | 2017.06.08 |
Vagrant 공유 폴더 문제(mount.vboxsf 관련) - vagrant-vbguest 플러그인 (0) | 2017.05.29 |
외부 Jenkins와 내부 네트워크 상의 GUITAR 테스트 환경 연동 2 (0) | 2017.05.26 |
외부 Jenkins와 내부 네트워크 상의 GUITAR 테스트 환경 연동 1 (0) | 2017.05.25 |