1. Vagrant & Virtual Box 설치
먼저 Varagnt와 Virtual box를 설치합시다.
Download Vagrant
위 링크를 타고 들어가면 vagrant를 설치할 수 있습니다. 이때 옵션으로 686, Amd64가 있는데 각각 32bit, 64bit 운영체제 기반 프로그램이라는 말이므로 본인 PC에 맞게 설치하시면 됩니다.
설치 과정에서 나타나는 옵션들은 딱히 변경할 필요 없으며 가장 최신 버전으로 설치해주세요.
Download VirtualBox
위 링크를 타고 들어가면 Virtual Box를 설치할 수 있습니다. 가장 최근 버전(게시글 작성일 기준 6.1.36)으로 설치해주시고, 본인 운영체제에 맞는 프로그램을 설치하시면 됩니다.
VB 또한 설치 과정에서 나타나는 옵션들은 딱히 변경할 필요 없습니다.
2. Vagrant를 이용해 가상머신 만들기
둘 다 설치하셨다면, command 또는 Powershell을 띄워주세요. 보통 cmd를 실행하면 user 폴더가 default로 나타나는데, 이 경로에서 작업을 해주시는 게 편합니다.
vagrant init
여기서 위 명령어를 입력해주세요. 그럼 VM의 정보를 작성할 수 있는 Vagrantfile이라는 파일이 생성됩니다. 이때 확장자가 없는 게 맞습니다. 확장자가 없더라도 편집 프로그램으로 편집할 수 있습니다.
Vagrantfile은 가상 머신이 몇 개의 core를 사용할지, RAM은 얼마만큼할지, 디스크 용량을 어느 정도로 할지 설정해주는 파일입니다.
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
# 첫번째 서버 : ubuntu_1804
config.vm.define "ubuntu" do |cfg|
cfg.vm.box = "ubuntu/bionic64"
#cfg.vm.provision "shell", path: "provision.sh"
#cfg.vm.provision :shell, inline: "DEBIAN_FRONTEND=noninteractive apt-get install -yq apache2"
#cfg.vm.network "forwarded_port", guest: 80, host: 8080, id: "nginx"
#cfg.vm.network "private_network", ip: "192.168.20.105"
#cfg.vm.network "forwarded_port", guest: 15672, host: 15672
#cfg.vm.host_name = "tjp6"
end
config.disksize.size = "180GB"
config.vm.synced_folder "C:\\Users\\wldhk\\Downloads", "/srv/Downloads"
config.vm.synced_folder ".", "/vagrant", disabled: true
# 글로벌 설정
# 따로 cpu 갯수와 memory를 적지 않았다면, 기본으로 설정될 값
config.vm.provider "virtualbox" do |vb|
vb.cpus = 2
vb.memory = 8192
end
end
저는 위와 같이 작성했습니다. 이때 disksize.size = 180GB, vb.cpus = 2, vb.memory = 8192(8GB)이므로 디스크 용량은 180GB, dual core CPU, 8GB RAM을 가지는 VM이 만들어지게 됩니다.
180GB보다 SSD의 용량이 더 적더라도 180GB를 바로 잡아먹는 게 아닌, VM에 할당만 해주는 방식이라서 그게 걱정하실 필요는 없습니다.
2.1. VM 생성 경로 설정
제 노트북의 C:에는 용량이 많이 없어서 이번에 추가한 D:에 VM을 생성하려고 합니다. 하지만 Vagrant와 VM은 C:에 설치되어 있으므로 VB manager에서 VM 설치 경로를 수정해줘야 합니다.
VB 관리자 프로그램을 실행하고 다음 그림과 같은 설정을 해줍시다.
VM 관리자에서 도구 > 환경 설정 > 일반에 들어가시면 기본 머신 폴더(D:)라는 설정 항목이 있습니다. 저는 이 항목을 D:로 바꿔서 D:의 root 경로에 VM이 생성되게 설정했습니다.
2.2. 공유폴더 설정
현재 사용 중인 PC와 VM이 함께 사용할 공유폴더를 설정해줍시다. 공유폴더 경로는 Vagrantfile을 통해서 설정할 수 있습니다.
위에 작성했던 Vagrantfile을 보시면 config.vm.synced_folder이라는 항목이 있습니다. 여기서 공유폴더를 설정할 수 있는데 저는 Downloads라는 폴더를 공유폴더로 설정했습니다. 이때 폴더명만 쓰는 게 아닌 폴더 경로 전체를 다 써줘야 합니다.
2.3. VM 생성
다시 terminal로 들어가서 vagrant up을 입력해주면 VM이 생성됩니다.(Vagrantfile이 있는 경로에서 입력해야 합니다.)
이 과정에서 다음과 같은 에러를 만났습니다.
disksize라는 항목을 인식을 못한 것 같네요. 이 에러를 해결하려면 다음 명령어를 입력해주면 됩니다.
vagrant plugin install vagrant-disksize
vagrant plugin install vagrant-vbguest
이제 다시 vagrant up을 입력해주면 약 5분 정도 걸려서 VM이 생성될 겁니다.
VM 생성 경로인 D:에 username_ubuntu_.... 아래 사진과 같은 폴더가 생성됐다면 VM 생성에 성공한 겁니다!!
그리고 VM이 켜져 있는 상태에서 cmd에서 vagrant ssh를 입력하면 VM에 접근할 수 있고 Linux 명령어를 사용해서 제어할 수 있습니다.
추후에 VScode와 Vagrant를 연동해서 사용하는 방법에 대한 게시글을 작성해보겠습니다. 연동해서 사용하면 Linux CLI(Command-Line-Interface)의 장점과 Window GUI(Graphic-User-Interface)의 장점을 동시에 활용할 수 있습니다😮😮
'CS > Linux' 카테고리의 다른 글
[Linux] VirtualBox에서 VDI(Virtual Disk Image) 파일 크기 줄이기 (0) | 2022.07.22 |
---|