1

VM をリモートで管理するプログラムの作成を手伝っています。ハイパーバイザーを検出するために XenServer マシンに接続しようとすると、「接続できません: CA 証明書 '/etc/pki/CA/cacert.pem' を読み取れません: そのようなファイルまたはディレクトリはありません」というエラーが表示されます。探している cacert.pem ファイルを作成しようとしましたが、何も修正されません。この特定のエラーは、何が問題なのかを正確に示していないことを読みました。

これは、Java バインディングを使用している場合にのみ発生します。virsh を使用してマシンに正常に接続できます。libvirt のデバッグ モードをオンにして、バインディングと virsh の両方に接続しようとしました。私が見た唯一の大きな違いは、libvirt が行わないいくつかの virEvent タイプのメソッドを virsh が呼び出すことです。(考えてみると、これは、パスワードの入力を求めないカスタム ConnectAuth クラスを使用した libvirt にすぎない可能性があります)

使用:

  • libvirt 0.9.12 --with-xenapi
  • libvirt-Java 0.4.7

この問題を抱えている人を他に見つけることができないようです。どんな助けでも大歓迎です!

4

1 に答える 1

1

結局、libvirt-java の Connect オブジェクトを変更する必要がありました。オブジェクトはまだ有効でしたが、どういうわけかエラーがスローされていました。これは厄介なハックですが、スローされた特定のエラーを無視して Connect オブジェクトを渡し、接続できるようにします。

于 2012-07-11T20:18:28.130 に答える