libvirt + ESX (código de resposta HTTP 400 para chamada para 'Login')

3

Estou tentando me conectar a um cluster do vSphere usando as informações da documentação da libvirt .

$ virsh -c "vpx://[email protected]/dc1/dc1-cluster-e01/dc1-vsphere-e04/?no_verify=1"
Enter root's password for 10.51.4.11: 
error: internal error HTTP response code 400 for call to 'Login'
error: failed to connect to the hypervisor

Parece que consigo estabelecer uma conexão, mas ela falha com um "código HTTP 400". Se eu fornecer a senha incorreta, ela falhará com um erro de 'credenciais de login', portanto, parece que estou obtendo uma conexão, mas está falhando por outro motivo.

O Wireshark não ajuda, já que tudo é feito em SSL / TLS.

Algum pensamento pessoal?

SOLUÇÃO: pule para minha resposta abaixo sobre caracteres especiais.

ATUALIZAÇÃO: 15:21 28/02/11

FYI - Estou executando o libvirt-0.8.3 (o pacote do Ubuntu recompilado com o sinalizador ESX ativado).

Quando coloco o virsh no modo de depuração, ele retorna:

[snip]
Enter root's password for 10.51.4.11: 
15:19:09.011: debug : do_open:1249 : driver 3 ESX returned ERROR
15:19:09.011: debug : virUnrefConnect:294 : unref connection 0x98aa8f8 1
15:19:09.011: debug : virReleaseConnect:249 : release connection 0x98aa8f8
error: internal error HTTP response code 400 for call to 'Login'
error: failed to connect to the hypervisor

Eu observei o arquivo hostd.log do vmware enquanto tentava efetuar login, e ele relata esse erro:

ATUALIZAÇÃO: 10:26 02/03/11

[2011-03-02 10:24:16.415 26AF8B90 verbose 'Proxysvc Req16870'] New proxy client SSL(TCP(local=10.4.100.26:34001, peer=10.51.4.103:443))
[2011-03-02 10:24:16.430 26933B90 error 'SoapAdapter'] Client sent us an invalid SOAP request: at line number 8, not well-formed (invalid token)
    
por Coops 28.02.2011 / 16:04

3 respostas

2

Eu publiquei meu problema na lista de discussão libvirt e recebi uma rápida resposta.

Acontece que a libvirt não escapa de caracteres especiais nas senhas atualmente e, como aconteceria, a senha tinha um & .

Agora posso fazer login usando & em vez de & . Há um patch nos trabalhos para corrigir isso.

    
por 04.03.2011 / 10:02
0

Executar comando (sem última barra):

$ virsh -c "vpx://[email protected]/dc1/dc1-cluster-e01/dc1-vsphere-e04?no_verify=1"

Tente:

$ virsh -c "vpx://[email protected]?no_verify=1"

ou:

$ virsh -c "vpx://10.51.4.11?no_verify=1"
$ virsh -c "esx://10.51.4.11?no_verify=1"
    
por 28.02.2011 / 16:16
0

Talvez este link Socorro? Ele está rodando 0.8.6 no Ubuntu ...

    
por 01.03.2011 / 19:49