호스팅 된 domU에서 dom0 이름을 찾는 방법


6

실제로 재해 복구 솔루션을 갖기 위해 두 서버간에 Xen을 사용하여 RHEL 5.3을 테스트하고 있습니다. 그래서 나는 하나의 dom0 서버에서 다른 서버로 domU를 옮기는 것을 가지고 놀고 있습니다.

불행히도 다른 누군가가 domU를 움직일 때 도메인이 호스팅되는 곳에 대한 단서가 없습니다. domU 내부에서 dom0 이름을 찾을 수없는 곳이 궁금합니다. solaris 스파 스 영역에서 gzonename 명령과 같은 것을 찾고 있습니다. / proc / xen 내부를 확인했지만 dom0 커널 릴리스를 제외하고는 특별한 것이 없습니다.

아무도 이것을 찾기 위해 기다리는 것을 알고 있습니까?


domU가 dom0의 호스트 이름을 알면 어떤 이점이 있습니까?
SirStan

2
메모리 나 디스크를 추가하려면 어떤 dom0을 연결해야하는지 아는 것이 좋습니다.
svigan

이것이 요청 된 지 2 년이 지났으며, 실제 답변이 제공되지 않은 것에 놀랐습니다. 나는 지금 똑같은 것을 찾고 있습니다-내가 로그인 한 domU가 실제로 실행중인 dom0을 식별하는 방법.
dossy

답변:


9

우리는 사용 xenstore-write /tool/hostname $(uname -n); xenstore-chmod /tool/hostname rDom0다음 xenstore-read /tool/hostnameVM의 내. 쉽고 가벼운 ...


1
이것은 잘 작동합니다. XEN 서버 재부팅시에도 이것이 지속되는지 확인할 수 있습니까, 아니면 시작할 때마다 실행해야합니까?
AXE-Labs

3

domU 내에서 dom0 "name"(최상의 개념)을 찾을 수있는 방법이 없다고 확신합니다. pygrub을 실행하지 않는 경우 / proc / cmdline에서 쿼리 할 수있는 커널 부팅 명령 줄 (각 ​​dom0에 저장된 domU 구성 파일에 있음)에 무언가를 추가 할 수 있지만 약간의 해킹입니다.

실제로해야 할 일은 dom0을 쿼리하여 어느 VM이 어디에 있는지 표시 할 수있는 스크립트를 사용하는 것입니다. dom0을 통해 반복되어 실행되는 xm list것 조차도 아마도 간단한 목적으로 할 것입니다.


실제로 내가하고있는 일은 dom0의 이름 안에 / etc / hvname 파일을 만드는 집에서 만든 스크립트로 dom0을 시작하는 것입니다.
svigan

2

SLES11에는 두 개의 rpm으로 제공되는 "영리한"솔루션이 있습니다.

첫 번째는 Dom0에서 실행되며 작은 램 디스크 (/ dev / shm의 루프 장치)를 만듭니다. 해당 램 디스크는 Rom / Read Many 모드로 DomU에 연결됩니다. 그런 다음 Dom0의 데몬 프로세스는 구성 가능한 간격 (Dom0- 호스트 이름, Dom0의 cpu-load 등)으로 램 디스크의 일부 정보를 업데이트합니다.

두 번째는 DomU에서 실행되며 연결된 램 디스크의 값을 읽습니다.

자세한 내용은 SLES11 XEN 설명서를 참조하십시오 ...

2017-01-31 업데이트 : 섹션 10.7


제공된 링크는 전체 SLES XEN 설명서를 보여줍니다. 궁금한 독자가 찾아 볼 수있는 영리한 솔루션의 이름은 무엇입니까?
LR

@LR 나는 현재 답변 섹션으로 답변을 업데이트했습니다.
Nils

니스 : vhostmd그리고 vm-dump-metrics내가 찾던 키워드했다.
LR


1

나는 이것이 몇 년 동안 게시되었다는 것을 알고 있지만이 페이지는 여전히 소급 적으로 찾을 수있는 페이지가 많이 있습니다. 그래서 여기에 사용한 방법이 있습니다.

VM에서 tcpdump를 사용하여 스위치 이름과 포트 번호를 찾으십시오.

[myID@vm001 ~] sudo tcpdump –nn –v –i eth0 –s 1500 –c 1 ‘ether[20:2] == 0x2000’

몇 분주세요. 달리기; 완료되면 출력에서 ​​다음 두 줄을 찾으십시오 (다른 출력 줄로 구분됨).

Device-ID (0x01), length: 26 bytes: ‘Switch001.mydomain.com’
Port-ID (0x03), length: 19 bytes: ‘GigabitEthernet8/17’

그런 다음 연결된 물리적 서버를 확인하려면 스위치 포트를 확인해야합니다. 스위치에 물리적으로 액세스 할 수 있고 케이블 추적을 수행 할 수 있거나 가능한 사람을 참여시킬 수 있거나 스위치 포트 구성에 대한 설명이 있고 해당 정보를 보거나 가능한 사람을 참여시킬 수 있기를 바랍니다. 스위치에 대한 읽기 권한이 있으며 다음과 같은 방법으로 호스트 서버를 찾을 수있었습니다.

SWITCH001#sho interface description | inc 8/17
Gi8/17                         up             up       HOST0002

1

Xen Dom0 및 DomU에 lldpd를 설치하십시오. 그런 다음 lldpctl은 어떤 네트워크 브리지와 브리지의 호스트 이름 (즉, Dom0의 이름)을 알려줍니다. Dom0에는 업스트림 스위치에 LLDP가 활성화되어있는 경우에도 유용 할 수 있습니다.

이는 PV, PVHVM 등에서 작동합니다. 실제로 호스트가 LLDP 패킷을 직접 전달하지 않는 한 호스트에서 LLDP를 실행할 수있는 모든 가상화 플랫폼에서 작동해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.