虛擬化系列之三--Libvirt+java管理虛擬機

libvirt提供了一套API供我們對虛擬機進行管理。官方給出了各種連接的示例http://libvirt.org/uri.html#URI_xen ,我最終選擇用TLS方式進行遠程連接,因爲配置完服務器和和管理機的證書後,就不需要輸入密碼了,官方對於證書的配置也有說明,這有一篇關於如何配置證書的文章,很簡潔,照的做就可以了證書配置


然後就是寫代碼了,官方最新是libvirt-0.5.1.jar,但是開發過程中發現一些api沒有實現,只能替換成之前的jar包,

官網有源碼,用ant編譯一下就可以了,現在項目中用的是libvirt-0.4.6.jar。


package com.test;

import org.libvirt.Connect;
import org.libvirt.Domain;
import org.libvirt.LibvirtException;

public class VMmain {

	public static void main(String[] args) {
		try {
			Connect conn = new Connect("xen+tls://[email protected]");
			for(int id : conn.listDomains()){
				Domain dom = conn.domainLookupByID(id);
				System.out.println(dom.getID() + ":" + dom.getName());
			}
			
			
		} catch (LibvirtException e) {
			e.printStackTrace();
		}

	}

}


注:以上代碼是運行在linux環境下的,安裝了libvirt和virt-manager,程序會自動調用libvirt的c組件的,windows下要自己配置下。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章