And Brain said,
Vagrant, 가상 환경의 유목민 본문
Vagrant는 HashiCorp에서 개발한 오픈소스 소프트웨어로, 개발 환경의 일관성과 재현성을 향상시키기 위한 도구로, 개발자와 운영팀 간의 "내 로컬에서는 잘 돌아갔는데..."라는 문제를 해결하기 위해 고안되었습니다.
Vagrant를 사용하면, 각 개발자의 로컬 PC, 테스트 서버, 스테이징 서버 등 다양한 환경에서 동일한 환경을 갖출 수 있습니다.
Vagrant는 여러 가상화 플랫폼과 통합될 수 있으며, 대표적으로 VirtualBox, VMware, Hyper-V 등이 있습니다. 그 중 VirtualBox는 오픈소스로 제공되며 Vagrant와 자주 사용됩니다.
Vagrant에서는 기본 이미지를 '상자(Box)'라고 부릅니다. 이 상자는 기본 OS 및 추가 소프트웨어를 포함할 수 있습니다.
여러 개의 상자를 다운로드하여 사용할 수 있으며, 자신만의 상자를 생성하여 공유하는 것도 가능합니다. 시작합시다.
먼저, 아래 링크를 통해 각자의 환경에 맞게 설치해줍니다.
https://developer.hashicorp.com/vagrant/downloads?product_intent=vagrant
설치되었다면, vagrant init 명령어를 통해 Vagrantfile을 생성합니다.
--- (기존 설정들) ---
config.vm.box = "centos/7"
--- (기존 설정들) ---
config.vm.synced_folder ".", "/vagrant", disabled: true
생성된 Vagrantfile 내에 config 정보들을 변경해줍니다.
설치 후, vagrant up 명령어를 통해
시작되는지 테스트해봅니다. VirtualBox에 가상머신이 생성된 것까지 확인하실 수 있으실 겁니다. 이 가상머신은 지워줍시다.
이제 Vagrant를 사용하여, VirtualBox에 Ansible 노드들을 구성해보도록 합시다.
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.define :ansible_server do |cfg|
cfg.vm.box = "centos/7"
cfg.vm.provider "virtualbox" do |vb|
vb.name = "Ansible-Server"
# VirtualBox Guest Additions 확인을 비활성화
vb.check_guest_additions = false
vb.functional_vboxsf = false
end
cfg.vm.hostname = "ansible-server"
cfg.vm.synced_folder ".", "/vagrant", disabled: true
cfg.vm.network "public_network", ip: "192.168.33.111"
cfg.vm.network "forwarded_port", guest: 22, host: 19210, auto_correct: false, id: "ssh"
cfg.vm.provision "shell", path: "bootstrap.sh"
end
end
그리고, vagrant up 명령어를 다시 실행해주면, VirtualBox에 default 가상 머신과 Ansible-Server 라는 가상 머신이 생성된 것을 확인하실 수 있습니다.
완료되었다면, vagrant ssh ansible_server 명령어를 통해 ssh 접속을 한 후 ansible 명령어를 입력하여 잘 설치되었는지 확인.
오늘 배운 Vagrant는 다음 Ansible 포스팅에서 사용이 될 것입니다.
Thanks for watching, Have a nice day.
'IT > DevOps \ Architecture' 카테고리의 다른 글
[DevOps] 컨테이너에 관한 고찰 (0) | 2023.10.04 |
---|---|
Istio, 광활한 Service Mesh에 띄워진 돛단배 (0) | 2023.09.14 |
Helm, 컨테이너 오케스트레이션을 위한 타륜 (0) | 2023.09.08 |
Prometheus, 어두웠던 인프라에 내려온 불 (2) | 2023.09.05 |
CatLight, 어둠 속을 응시하는 고양이의 눈 (2) | 2023.09.05 |