카테고리 없음
virsh
traveler_JH
2023. 2. 16. 02:10
리눅스환경에서 가상머신을 설치하고 관리하는 명령어
정의된 XML로 부터 가상 머신을 생성하고 종료 삭제 한다.
- 사내 개발용 서버에서 libvirt와 qemu를 이용하여 VM을 배포
- libvirt xml 형식을 이용하여 VM을 설정을 관리
명령어 도움말
- virsh-help : 도움말 보기
- virsh list : 현재 실행중인 가상머신 목록 확인
-
-
- all : 종료된 가상 머신을 포함 하여 확인
-
- virt-viewer {VM NAME} : 가상머신 접속명령어
- {VM NAME} 대신 가상머신의 이름을 지정하면 된다.
- virt-install : 가상 머신을 생성하는 명령어
- KVM설치
- install 시에는 KVM 이 설치되어있어야한다.
- KVM : Kenel - based Virtual Machine
- 리눅스에서 동작하는 가상화 솔루션
- 리눅스 커널의 mainline에 포함된 정식 커널 모듈 중 하나
- 설치 환경 확인 : CPU에서 하드웨어 가상화 기능이 제공 되어야 설치후 사용이 가능하다.
- 확인 명령어 egrep -c '(vmx|svm)' /proc/cpuinfo
- 0 : 하드웨어가 가상화 기능을 제공하지 않는다.
- 1 or 그 이상의 값 : 하드웨어 가상화 기능을 제공 (BIOS에서 가상화 기능이 활성화 되어있는 지 확인필요)
- 설치명령어 :
- sudo apt-get install qemu-kvm libvirt-daemon-system virtinst bridge-utils cpu-checker
- 권한 추가
- 사용자 권한으로 가상머신을 생성, 삭제 등 관리하기 위해서 권한을 추가
- sudo adduser $USER kvm
- 사용 가능 한지 테스트
- kvm-ok
- INFO: /dev/kvm exists KVM acceleration can be used
- 위와 같이 나오면 성공적으로 KVM 설치 완료
- KVM : Kenel - based Virtual Machine
- install 시에는 KVM 이 설치되어있어야한다.
- Bridge 설정
- Bridge란?
- 네트워크 세그먼트를 연결해주는데 사용되는 인터페이스
- 내부 가상 네트워크와 인터넷 공용망을 연결하여 내부 네트워크에서도 인터넷을 연결 할 수 있도록 하는데 주로 사용 KVM과 Xen 등의 Hyper visor 사용에 필요한 네트워크 설정
- Netplan을 용하여 네트워크를 설정
- Netplan 브릿지 설정
- 네트워크 인터페이스 확인
- ipconfig
eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.229.229 netmask 255.255.248.0 broadcast 192.168.231.255 inet6 fe80::43d0:3ef6:c756:b1bd prefixlen 64 scopeid 0x20<link> ether c8:5a:cf:08:c9:70 txqueuelen 1000 (Ethernet) RX packets 7210647 bytes 1017638338 (1.0 GB) RX errors 0 dropped 1 overruns 0 frame 0 TX packets 350202 bytes 101923200 (101.9 MB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 device interrupt 16 memory 0xf1100000-f1120000
- Netplan 브릿지 설정
- /etc/netplan/01-network-manager-all.yaml
- cat /etc/netplan/01-network-manager-all.yaml # Let NetworkManager manage all devices on this system network: version: 2 renderer: NetworkManager
- netplan 적용
- sudo netplan apply
- 네트워크 인터페이스 확인
- (base) ➜ vm_test git:(master) ✗ virsh net-start br0 Network br0 started
- Bridge란?
- virt-install에서 지원되는 주요 옵션
- 설정과 관련된 일반적인 옵션
- — connect URI : libvirt URI 에서 지원되는 URI로 Hypervisor에 접속
- — name NAME : 가상머신의 이름
- —vcpus VCPUS : 가상머신에서 사용될 vCPU 의 갯수
- —memory MEMORY : 가상머신에서 사용될 메모리 크기
- 가상 머신 설치 관련 옵션
- — cdrom CDROM : 설치 미디어 또는 설치 ISO 파일 경로
- — boot BOOT : 부팅할 장치옵션을 지정
- 장치 설정관련 주요 옵션
- — disk DISK : 디스크 정보로, 다양한 옵션과 함께 사용 가능
- — network NETWORK : 가상머신의 네트워크 인터페이스 옵션
- — graphics GRAPHICS : 가상머신의 디스플레이 출력 설정 옵션
- 설정과 관련된 일반적인 옵션
- test
sudo virt-install \\ --name=jeonghyeon_test \\ --ram=4096 \\ --disk path=/home/jeonghyeon/piolink/vm_test/test1.img,size=10 \\ --vcpus=2 \\ --graphics=none \\ --console=pty,target_type=serial \\ --location '<http://ftp.iij.ad.jp/pub/linux/centos/7/os/x86_64/>' \\ --extra-args 'console=ttyS0,115200n8 serial'
- 스토리지 : 10 GB vcpu : 2 guest OS : CeontOS 07 GUI 옵션 없이 text mode로 guest OS 설치
- KVM설치
- virsh suspend {VM NAME} : 가상 머신 정지
- virsh resume {VM NAME} : 정지된 가상머신 재실행
- virsh shutdown {VM NAME} : 가상머신 종료
- 현재 실행중인 가상머신을 종료하기위해서 실행
- virsh undefine {VM NAME} : 가상머신 삭제
- 가상머신 삭제
- virsh edit {VM NAME} : 가상 머신 수정
- 하드웨어등의 사양을 수정하기 위해서 실행