티스토리 뷰

728x90

1. kvm은 리눅스 커널에 포함된 type1 hypervisor이다. 그래서 qemu를 통하지 않고 바로 설치해서 쓰는 게 성능에 좋다.

1.0 bridged network를 구성하기가 쉽지 않아서 웬만하면 virtualbox를 사용하는 것을 권장한다. 물론 성능 차이는 느껴진다.

  1.0.1 브리지 인터페이스를 만들어주고 가상 네트워크 인터페이스를 매핑해야 한다.

  1.0.2 문제는 브리지 인터페이스가 호스트와 동일한 네트워크에 물려 있어야 하는데 별도의 설정이 필요하다.

 

vagrant-libvirt and Bridged Networking – Kevin C. Coram

Once I had a way to install virtual machines on my Ubuntu home lab server, my next goal was to be able to directly SSH into them from my laptop. By default, the Vagrant-installed libvirt virtual machines all connect to a virtual subnet. In order to be able

kevin.thecorams.net

  1.0.3 최신 버전의 리눅스에서는 NetworkManager가 설정을 관리하고 있어서 조금 다르다.

 

Network Manager | Ubuntu

Ubuntu is an open source software operating system that runs from the desktop, to the cloud, to all your internet connected things.

ubuntu.com

https://www.cyberciti.biz/faq/how-to-add-network-bridge-with-nmcli-networkmanager-on-linux/

 

 

 

 

 

 

1.1 libvirt를 사용하려면 플러그인을 설치해야 한다.

vagrant plugin install vagrant-libvirt
vagrant plugin install vagrant-mutate

 

2. 우분투22.04 jammy jellyfish부터 nfs에서는 udp를 지원하지 않는다. 그래서 vagrant으로 vm을 설치할 때 문제가 생길 수 있다.

https://discourse.ubuntu.com/t/jammy-jellyfish-release-notes/24668

 

Jammy Jellyfish Release Notes

Jammy Jellyfish Release Notes Introduction These release notes for Ubuntu 22.04 LTS (Jammy Jellyfish) provide an overview of the release and document the known issues with Ubuntu and its flavours. For details of the changes applied since 20.04, please see

discourse.ubuntu.com

 

3. 모든 이미지가 그런지 모르겠지만 kali linux 2022.4.0를 설치해 보니 nfs mount 문제가 발생하였다.

 

 

4. 위의 문제는 기본적으로 nfs에 파일 시스템을 mount할 때 udp를 사용한다고 되어 있는데 위에 말했든 우분투 22.04부터 udp가 지원되지 않는다.

  4-1 사실 우분투 22.04 이전 버전의 경우는 아래처럼 nfs 설정에 가서 udp를 y 바꾸고 systemctl restart nfs-server.service를 재기동하면 문제가 해결된다. 

  4-2 하지만 우분투 22.04부터는 이렇게는 동작이 되지 않는다. 결국 udp 대신 tcp를 사용하도록 수정하여야 한다.

 

 

5. mount 옵션을 tcp로 바꾸는 방식으로 변경하면 아래의 Vagrantfile을 수정해야 한다. 이 파일은 기본적으로 대부분이 comment되어 있어 필요한 경우에만 수정하도록 되어 있다. 아래를 보면 #config.vm.synced_folder 부분이 있는데 그것을 참고하여 nfs 옵션을 아래처럼 부여하면 된다.

 

 

6. 아래처럼 정상적으로 실행되는 걸 볼 수 있다.

 

 

728x90
댓글