기본 콘텐츠로 건너뛰기

virsh 설치 및 VM 상태 조회

VM을 모니터링하기 위해서는 다양한 방법을 사용할 수 있지만 간편한 방법중 하나는 virsh를 통해 VM을 모니터링하는 것이다.
vrish를 사용하기 위해서 관련 패키지를 설치해야하며 설치 방법은 다음과 같다.

Redhat 계열

yum install qemu libvirt-client virt-manager \
virt-viewer guestfish libguestfs-tools virt-top
Ubuntu
sudo apt-get install ubuntu-virt virt-top virt-what

virsh가 정상적으로 설치되었다면 virsh를 통해 가상 머신의 상태를 확인해 볼 수 있다. virsh를 사용하기 위해서는 root 권한을 가지거나 관련 권한을 설정해주어야 한다. 권한 설정에 대해서는 다음 posting에서 다룰 것이다.

virsh의 기본적인 사용방법은 다음과 같다.

virsh [option] ... <command> <domain> [arg] ...

지정 가능한 옵션은 다음과 같다.
h, --help 도움말 출력
-v, --version[=short] 버전 정보 출력
-V, --version=long 컴파일된 드라이버와 옵션들을 포함한 버전 정보 출력
-c, --connect URI 지정된 URI에 연결
-d, --debug LEVEL 디버그 (레벨은 0~4까지 지정 가능)
-l, --log FILE FILE로 로그 저장 .
-q, --quiet 종료(?)
-r, --readonly 읽기 전용으로 실행
-t, --timing 각 명령어에 대한 실행 시간 출력
-e, --escape string 콘솔 명령어에 대한 탈출 문자 지정. 기본으로 텔넷과 동일한 ^]로 지정됨

virsh 명령어들에서 대해서는 다음 posting에서 살펴보기로 하고 간단한 사용 예들은 다음과 같다.

로컬에서 등록된 가상 머신을 나열하는 방법은 다음과 같다.
sudo virsh -c qemu:///system list --all

특정 가상 머신에 대한 상태를 활인하고자 한다면 다음과 같이  domstate후 해당 가상 머신의 도메인 이름을 입력하면된다.
sudo virsh -c qemu:///system domstate instance-0000001a

결과]
running

가상 머신의 메모리 상태를 확인하고자 한다면 위와 마찬가지로 dommemstat를 입력한 후 도메인 이름을 입력하면 된다.

sudo virsh -c qemu:///system dommemstat instance-0000001a
결과]
Id:             16
Name:           instance-0000001a
UUID:           174bcf14-0926-47e7-a84e-1ad45083235f
OS Type:        hvm
State:          running
CPU(s):         2
CPU time:       3605.6s
Max memory:     4194304 KiB
Used memory:    4194304 KiB
Persistent:     yes
Autostart:      disable
Managed save:   no
Security model: selinux
Security DOI:   0
Security label: system_u:system_r:svirt_t:s0:c126,c616 (enforcing)




댓글

이 블로그의 인기 게시물

Mac에서 Wireshark 설치

맥 (OS X El Capitan)에서 Wireshark를 사용하고 싶다면 CLI를 통한 간단한 방법은 brew를 통해 설치하는 것이다. 단순히 다음과 같은 명령을 실행해 주면 된다. brew install wireshark  --with-qt --with-qt는  GUI 모드를 포함하여 설치하는 것으로 GUI 모드를 원치않는다면 해당 옵션을 삭제하면 된다. 정상적으로 설치가 완료되면 CLI를 통해 tshark 명령을 실행할 수 있다. --with-qt 옵션을 주지 않았다면 thsark만을 실행할 수 있을 것이다. tshark -i eth0 [thsark 실행화면] GUI로 실행하고 싶다면 프롬프트에서 다음과 같이 실행하면 된다. wireshark-qt [wireshark-qt 실행화면] GUI를 통해 패킷을 수집하고자 한다면 Capture 버튼 옆에 인터페이스를 선택한 후 Capture 버튼을 선택하고 상단의 왼쪽에 있는 Start capturing packets라고 툴팁이 나오는 버튼을 클릭하면 패킷 수집이 시작된다. 수집 옵션을 설정하고자 한다면 Capture Filter에 옵션을 설정하면 된다. [wireshark-qt 패킷 수집화면]

서버설정시 물리적인 포트 찾기 (ethtool 활용 팁)

네트워크 인터페이스가 10여개 이상인 서버에서 작업을 하다보면 많은 삽질이 인터페이스 찾는데서 발생한다. 모니터를 통해 서버 네트워크 인터페이스를 설정한 후 랙 뒤로 가게되면 10여개나 되는 인터페이스 중 어떤 인터페이스에 설정 했는지 알 수 없어 초보자들이 하는 삽질은 1번 인터페이스 부터 네트워크케이블을 연결한 후 다시 랙 앞으로가 명령어를 통해 해당 인터페이스가 연결 되었는지 확인 하는 것이다. for ( i=0; i<N; i++ )    if(i = 0) 네트워크 설정;    i port에 네트워크 케이블 연결    네트워크 연결 상태 검사    if (설정된 NIC가 살았는가? == alive)       작업 종료 최대 N번까지 실행되는 이 삽질은 서버가 하나라면 운동삼아 하겠지만 많은 서버를 설정해야 하는 경우 여간 귀찮은 작업이 아닐 수 없다. 이러한 삽질은 ethtool을 사용하면 줄일 수 있다. 방법은 간단하다.   네트워크 인터페이스 설정   ethtool -p eth0 time   time 미 설정시 무한 반복됨   랙뒤로 가서 반짝거리는 포트에 네트워크 케이블 연결 ethtool을 지원하지 않는 하드웨어가 있을 수 있지만 대부분 사용하는데 문제는 없을 것으로 본다.