5.5. 원격 가상화 호스트에 쉽게 액세스 가능
libvirt 유틸리티를 사용하여 원격 호스트 시스템에서 VM을 관리하는 경우 -c qemu+ssh://root@hostname/system
구문을 사용하는 것이 좋습니다. 예를 들어 192.0.2.1
호스트에서 root로 virsh list
명령을 사용하려면 다음을 수행합니다.
# virsh -c qemu+ssh://root@192.0.2.1/system list
root@192.0.2.1's password:
Id Name State
---------------------------------
1 remote-guest running
그러나 SSH 및 libvirt 구성을 수정하여 연결 세부 정보를 완전히 지정해야 할 필요성을 제거할 수 있습니다. 예를 들면 다음과 같습니다.
# virsh -c remote-host list
root@192.0.2.1's password:
Id Name State
---------------------------------
1 remote-guest running
이러한 개선을 활성화하려면 아래 지침을 따르십시오.
프로세스
다음 세부 정보를 사용하여
~/.ssh/config
파일을 편집합니다. 여기서 host-alias 는 특정 원격 호스트와 관련된 단축된 이름 및 root@192.0.2.1의 별칭이며 hosturl 은 호스트의 URL 주소입니다.# vi ~/.ssh/config Host example-host-alias User root Hostname 192.0.2.1
다음 세부 정보를 사용하여
/etc/libvirt/libvirt.conf
파일을 편집합니다. example-qemu-host-alias 는 QEMU 및 libvirt 유틸리티가qemu+ssh://192.0.2.1/system
에 대해 원하는 호스트 example-host-alias 와 연결하는 호스트 별칭입니다.# vi /etc/libvirt/libvirt.conf uri_aliases = [ "example-qemu-host-alias=qemu+ssh://example-host-alias/system", ]
검증
로컬 시스템에서
-c qemu-host-alias
매개변수가 추가된 libvirt 기반 유틸리티를 사용하여 원격 VM을 관리할 수 있는지 확인합니다. 원격 호스트의 SSH를 통해 명령이 자동으로 수행됩니다.예를 들어 다음 항목이 192.0.2.1 원격 호스트의 VM을 나열하고, 에 대한 연결이 이전 단계에서 example-qemu-host-alias 로 설정되어 있는지 확인합니다.
# virsh -c example-qemu-host-alias list root@192.0.2.1's password: Id Name State ---------------------------------------- 1 example-remote-guest running
참고virsh
외에도-c
(또는--connect
) 옵션과 위에 설명된 원격 호스트 액세스 구성은 다음 유틸리티에서 사용할 수 있습니다.
다음 단계
단일 원격 호스트에서만 libvirt 유틸리티를 사용하려는 경우 libvirt 기반 유틸리티의 기본 대상으로 특정 연결을 설정할 수도 있습니다. 그러나 로컬 호스트 또는 다른 원격 호스트에서 VM을 관리하려는 경우에도 권장되지 않습니다.
/etc/libvirt/libvirt.conf
파일을 편집하고uri_default
매개변수 값을 기본 libvirt 대상으로 example-qemu-host-alias 로 설정할 수 있습니다.# These can be used in cases when no URI is supplied by the application # (@uri_default also prevents probing of the hypervisor driver). # uri_default = "example-qemu-host-alias"
결과적으로 모든 libvirt 기반 명령이 지정된 원격 호스트에서 자동으로 수행됩니다.
$ virsh list root@192.0.2.1's password: Id Name State --------------------------------- 1 example-remote-guest running
원격 호스트에 연결할 때 원격 시스템에 root 암호를 제공하지 않도록 할 수 있습니다. 이렇게 하려면 다음 방법 중 하나 이상을 사용합니다.
- 원격 호스트에 대한 키 기반 SSH 액세스 설정
- SSH 연결 멀티플렉싱을 사용하여 원격 시스템에 연결
- Identity Management의 Kerberos 인증
-
-c
(또는--connect
) 옵션을 사용하여 원격 호스트에서virt-install
,virt-viewer
및virsh
명령을 실행할 수 있습니다.