카테고리 없음

Vagrant

운덩하는 개발자 2023. 4. 7.
반응형

베이그런트 설치 후

테스트 환경을 구성하기 전에 설치된 도구가 정삭적으로 작동하는지 확인해 볼것이다.

먼저 프로비저닝을 위한 코드를 작성하고 이를베이그런트에서 불러온 후 버추얼 박스에 운영체제를 설치한다.

베이그런트의 프로비저닝 코드를 개인이 원하는 위치에 구현해 사용할 수 있으나 실습할 때 혼동하지 않도록 베이그런트 설치 디렉토리 c:/HashCorp에 프로비저닝에 필요한 모든 코드를 작성하겠다.

1. CMD를 실행하고 베이그런트 설치 디렉토리로 이동 후 vargrant init명령을 실행해 프로비저닝에 필요한 기본 코드를 생성한다.

2. 베이그런트 초기화 명령으로 생성된 c:/HashCorp 폴더의 Vagrantfile(베이그런트 스크립트 파일)을 에디터 프로그램으로 열고 파일에서 config.vm.box = "base"라는 내용이 있는지 확인

3. vagrant up을 바로 실행

다음과 같은 에러가 발생한다. 설치하려는 이미지가 'base'로 명시돼 있으나 베이그런트가 해당 이미지를 찾지 못해 발생하는 에러이다.

4. 에러가 발생하지 않게 설치할 운영체제 이미지를 선택, 사용할 가상 머신의 이미지를 선택하고 필요에 맞게 이미지를 수정하는 과정이 필요한데 이 과정이 복잡하고 험난하다. 그래서 나는 여기서는 베이그런트 클라우드에서 centos 이미지를 다운 받도록 하겠다.

5. Vagrantfile을 다시 열어 cong.vm.box = "base"를 다운로드 받은 경로와 이미지로 바꾸어주고 vagrant up 명령어를 통해 해당 가상 머신 이미지를 내려받는지 확인하겠다.

오류

위와 같은 오류가 발생했다.

    • 이 오류는 Vagrant가 VirtualBox 공유 폴더를 마운트할 수 없다는 것을 나타낸다. vboxsf 파일 시스템이 VirtualBox 게스트 추가 및 커널 모듈을 통해 사용 가능하게 되는데 이 오류는 일반적으로 게스트에 올바르게 설치되지 않은 게스트 추가 및 커널 모듈로 인해 발생한다. 이를 해결하기 위해, 다음 단계를 따라 VirtualBox 게스트 추가를 설치하고 커널 모듈을 로드하겠다.
    • 1) Vagrantfile이 있는 디렉토리로 이동
    • 2) 'vagrant plugin install vagrant-vbuest' 명령어를 사용하여 vagrant-vbguest 플러그인 설치
      • 2번의 단계를 하던 중 다시 오류가 발생했다. vagrant-abuest 플러그인의 의존성 문제로 발생하거나 네트워크 이슈로 발생한다고 한다 나는 vagrant-vbuest 플러그인을 수동으로 설치하겠다.

  • 3) Vagrant를 실행하고 게스트에 VirtualBox 게스트 추가를 자동으로 설치하도록 설정, 이를 위해 Vagrantfile에 다음 라인을 추가한다.
  • config.vm.synced_folder ".", "/vagrant", type: "virtualbox" config.vbguest.auto_update = true
  • 4) Vagrant를 다시 시작한다. 이제 VirtualBox 게스트 추가가 자동으로 설치되고, 공유 폴더가 마운트 된다.

6. 다시 한 번 vagrant up을 실행하고 해당 가상 머신 이미지를 내려받는지 확인

7.가상머신이 제대로 생성됐는지 확인

8.cmd에서 vagrant ssh 명령을 싱행해 설치된 centos 접속

오류

vagrant ssh 명령어는 ssh 키를 기반으로 가상 머신에 연결하므로 ssh 구성 파일의 포트 번호를 확인하는 과정에서 에러가 발생한것이다. 

반응형

댓글