<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      虛擬化應(yīng)用(二)管理 vCenter Server 實(shí)體

      正如企業(yè)中有多個(gè)管理部門(mén)一樣,在一個(gè)虛擬化系統(tǒng)中也分為若干個(gè)實(shí)體。

      測(cè)試代碼下載

      測(cè)試環(huán)境:

      Windows Server 2008 R2 DataCenter

      VMWare Workstation 7.1

      VMWare vSphere 4.1VMWare vCenter Server 4.1

      JDK 1.6 u-21 x64Eclipse For JavaEE 3.6 x64

      VMWare vSphere Java API 2.1 GAVMWare vSphere PowerCLI 4.1(PowerShell 2.0)

      PowerGUI Script Editor Free Edition x64

       

      在VMWare vCenter Server中,其實(shí)體結(jié)構(gòu)如下:

      處于最頂層的是一個(gè)服務(wù)實(shí)例對(duì)象,可以簡(jiǎn)單的認(rèn)為是一個(gè)虛擬服務(wù)器。下一級(jí)是根目錄,是一個(gè)容器對(duì)象;第三層中的Datacenter并不是物理服務(wù)器中的Datacenter,只是一個(gè)管理單元,可以是Folder、Datacenter或二者的混合體;

      再往下又細(xì)分為虛擬機(jī)和計(jì)算機(jī)資源等。實(shí)體的種類(lèi)很多,除了Folder、Datacenter,還有VirtualMachine、ComputerResource、ClusterComputerResource、ResourcePool和HostSystem。本次我們只關(guān)注Folder和Datacenter,后續(xù)篇章再學(xué)習(xí)其他實(shí)體。

      安裝好VMWare vCenter Server,使用vClient登錄后可以看到這些實(shí)體結(jié)構(gòu):

      在GUI中可以方便的對(duì)實(shí)體結(jié)構(gòu)進(jìn)行管理,如新建、修改、移動(dòng)、刪除文件夾、數(shù)據(jù)中心等。但是,有時(shí)管理員需要同時(shí)管理大量的虛擬機(jī),這就需要用程序來(lái)自動(dòng)化管理了。2010.8.25官方放出了vSphere Java API 2.1 GA,這次版本全面支持了前不久發(fā)布的vSphere 4.1,修復(fù)了一些bug:(英文原文

      Bug Fixes
      3049871 Missing SetPublicKey in ExtensionManager
      3040909 getProfile in HostProfilesManager throws a classcastexceptio
      3042149 match version in SessionManager.cloneSession() method
      3042167 xml characters not escaped (partial fix with password which is more likely to contain special chars)

      同時(shí)也放出了vSphere Java API 3.0的開(kāi)發(fā)計(jì)劃,代碼代號(hào)"Crescendo"(逐漸增強(qiáng)),具體細(xì)節(jié)在這篇博客查看。

       

      一、下面開(kāi)始用程序來(lái)管理vCenter Server中的部分實(shí)體。

      1. 新建一個(gè)Java項(xiàng)目,添加vSphere Java API 2.1 GA的Jar包:

      建議將源代碼添加進(jìn)Eclipse,可以隨時(shí)查看指定方法或類(lèi)的源代碼:

       

      1. 管理實(shí)體:

      代碼
      package brooks.chapter6.manageinventory;

      import java.net.MalformedURLException;
      import java.net.URL;
      import java.rmi.RemoteException;

      import com.vmware.vim25.mo.Folder;
      import com.vmware.vim25.mo.ManagedEntity;
      import com.vmware.vim25.mo.SearchIndex;
      import com.vmware.vim25.mo.ServiceInstance;
      import com.vmware.vim25.mo.Task;

      public class EntityManage {

          
      /**
           * 
      @param args
           * 
      @throws MalformedURLException
           * 
      @throws RemoteException
           
      */

          
      private static void fnAddEntity(URL v_Url, String v_strUserName,
                  String v_strUserPass) {
              
      try {
                  ServiceInstance si 
      = new ServiceInstance(v_Url, v_strUserName,
                          v_strUserPass, 
      true);
                  Folder rootFolder 
      = si.getRootFolder();

                  Folder secFolder 
      = rootFolder.createFolder("cnBlogs");
                  secFolder.createDatacenter(
      "HomePage");
                  secFolder.createDatacenter(
      "News");
                  secFolder.createDatacenter(
      "Blogs");
                  secFolder.createDatacenter(
      "BBS");
                  secFolder.createDatacenter(
      "Attention");
                  si.getServerConnection().logout();
                  System.out.println(
      "添加實(shí)體成功!");
              } 
      catch (Exception ex) {
                  ex.printStackTrace();
              }
          }

          
      private static void fnDeleteEntity(URL v_Url, String v_strUserName,
                  String v_strUserPass) {
              
      try {
                  ServiceInstance si 
      = new ServiceInstance(v_Url, v_strUserName,
                          v_strUserPass, 
      true);
                  Folder rootFolder 
      = si.getRootFolder();

                  ManagedEntity[] mes 
      = rootFolder.getChildEntity();

                  
      for (int i = 0; mes != null && i < mes.length; i++) {
                      
      if ("cnBlogs".equals(mes[i].getName())) {
                          mes[i].destroy_Task();
                      }

                      
      if ("HomePage".equals(mes[i].getName())) {
                          mes[i].destroy_Task();
                      }

                      
      if ("News".equals(mes[i].getName())) {
                          mes[i].destroy_Task();
                      }

                      
      if ("Blogs".equals(mes[i].getName())) {
                          mes[i].destroy_Task();
                      }

                      
      if ("BBS".equals(mes[i].getName())) {
                          mes[i].destroy_Task();
                      }

                      
      if ("Attention".equals(mes[i].getName())) {
                          mes[i].destroy_Task();
                      }
                  }

                  si.getServerConnection().logout();
                  System.out.println(
      "刪除實(shí)體成功!");
              } 
      catch (Exception ex) {
                  ex.printStackTrace();
              }
          }

          
      private static void fnMoveEntity(URL v_Url, String v_strUserName,
                  String v_strUserPass) {
              
      try {
                  ServiceInstance si 
      = new ServiceInstance(v_Url, v_strUserName,
                          v_strUserPass, 
      true);
                  Folder rootFolder 
      = si.getRootFolder();
                  SearchIndex index 
      = si.getSearchIndex();

                  rootFolder.createFolder(
      "Folder1");
                  Folder folder2 
      = rootFolder.createFolder("Folder2");

                  ManagedEntity me 
      = index.findByInventoryPath("Folder1");
                  folder2.moveIntoFolder_Task(
      new ManagedEntity[] { me });
                  System.out.println(
      "移動(dòng)實(shí)體成功!");
              } 
      catch (Exception ex) {
                  ex.printStackTrace();
              }
          }

          
      private static void fnRenameEntity(URL v_Url, String v_strUserName,
                  String v_strUserPass) {
              
      try {
                  ServiceInstance si 
      = new ServiceInstance(v_Url, v_strUserName,
                          v_strUserPass, 
      true);
                  Folder rootFolder 
      = si.getRootFolder();
                  Folder folder1 
      = rootFolder.createFolder("Folder1");
                  Task task 
      = folder1.rename_Task("Folder2");
                  
      if (task.waitForTask() == Task.SUCCESS) {
                      System.out.println(
      "重命名實(shí)體成功!");
                  } 
      else {
                      System.out.println(
      "重命名實(shí)體失敗!");
                  }

                  si.getServerConnection().logout();
              } 
      catch (Exception ex) {
                  ex.printStackTrace();
              }
          }

          
      public static void main(String[] args) throws MalformedURLException {
              
      // TODO Auto-generated method stub
              fnAddEntity(new URL(args[0]), args[1], args[2]);

              fnRenameEntity(
      new URL(args[0]), args[1], args[2]);

              fnMoveEntity(
      new URL(args[0]), args[1], args[2]);

              fnDeleteEntity(
      new URL(args[0]), args[1], args[2]);
          }
      }

       

       

      配置下命令行參數(shù):

       

       

      二、使用PowerShell來(lái)管理實(shí)體。

      vSphere PowerCLI提供了豐富的命令,今天偶然在網(wǎng)上找到一個(gè)PDF,還不錯(cuò):

      將PowerShell按不同類(lèi)別進(jìn)行了分類(lèi),非常便于查找、使用,注意這是2009年7月14日官方發(fā)布的,最新版中可能有部分改動(dòng),請(qǐng)參照最新官方文檔。

       

      2.1、管理Folder。

      2.1.1、如果你還沒(méi)有添加PSSnapin,則先進(jìn)行添加:

      Add-PSSnapin VMWare.VimAutomation.Core

       

      2.1.2、連接vCenter Server:

      Connect-VIServer -Server 192.168.220.1 -Protocol https -Port 444 -User BrooksPC\Administrator -Password ****** -Credential False請(qǐng)用你的vCenter ServerIP、端口號(hào)、用戶(hù)名、密碼進(jìn)行替換):

      運(yùn)行結(jié)果:

       

      2.1.3、獲取根目錄:

      Get-Folder –NoRecursion

      運(yùn)行結(jié)果:

       

      2.1.4、在根目錄中新建一個(gè)Folder:

      New-Folder -Name Folder0 -Location Brooks

      運(yùn)行結(jié)果:

       

      2.1.5、重命名Folder:

      Set-Folder -Folder Folder0 -Name Folder2

      運(yùn)行結(jié)果:

      這個(gè)命令有點(diǎn)不太完善,未能提供根據(jù)路徑定位到具體Folder的方法,若有Folder重名,但位于不同F(xiàn)older中,則該命令會(huì)失敗。

       

      2.1.6、移動(dòng)Folder:

      Move-Folder -Folder Folder2 -Destination cnBlogs

      運(yùn)行結(jié)果:

       

      2.1.6、刪除Folder:

      刪除時(shí)會(huì)提示確認(rèn),這里居然沒(méi)有提供不確認(rèn)的參數(shù),難以批量刪除。

       

      2.1.7、獲取所有Datacenter:

      Get-Datacenter

      運(yùn)行結(jié)果:

       

      2.1.8、創(chuàng)建一個(gè)Datacenter:

      New-Datacenter -Name dc1 -Location cnBlogs

      運(yùn)行結(jié)果:

       

      2.1.9、重命名Datacenter:

      Set-Datacenter -Name dc2 -Datacenter dc1

      注意-Name是修改后的名字。

      運(yùn)行結(jié)果:

       

      2.1.10、移動(dòng)Datacenter時(shí)有點(diǎn)問(wèn)題,遇到一個(gè)錯(cuò)誤,若有朋友知道解決方法,請(qǐng)指教:

      Move-Datacenter -Datacenter dc2 -Destination cnBlogs

       

      2.1.11、刪除Datacenter:

      Remove-Datacenter -Datacenter dc2

      運(yùn)行結(jié)果:

      依然會(huì)先提示確認(rèn)。

       

      小結(jié)

      本次我們熟悉了下vCenter Server中的實(shí)體架構(gòu),能夠使用其對(duì)象模型和PowerShell腳本進(jìn)行簡(jiǎn)單的管理,可以看到,腳本管理非常高效。其實(shí)除了VMWare vSphere,Hyper-V、思捷的Xen Server均提供了PowerShell的擴(kuò)展,后續(xù)篇章會(huì)繼續(xù)深入學(xué)習(xí)ESX和vCenter Server,以及PowerShell在虛擬化管理中的應(yīng)用。

      posted @ 2010-09-05 15:26  江蘇瑞步科技  閱讀(2173)  評(píng)論(1)    收藏  舉報(bào)
      主站蜘蛛池模板: 无码成人一区二区三区| 香河县| 久久精品青青大伊人av| 高清性欧美暴力猛交| 香蕉亚洲欧洲在线一区| 亚洲情色av一区二区| 日区中文字幕一区二区| 亚洲欧美日韩高清一区二区三区| 久操热在线视频免费观看| 久青草精品视频在线观看| 天堂影院一区二区三区四区| 亚洲精品无码乱码成人| 久久天天躁夜夜躁狠狠躁2022| 日本道精品一区二区三区| 精品久久久久久亚洲综合网| 2021国产精品视频网站| 开心一区二区三区激情| 人妻少妇88久久中文字幕| 女高中生强奷系列在线播放| 最新国产精品好看的精品| 日韩人妻无码精品专区综合网| 国产乱久久亚洲国产精品| 亚洲精品久荜中文字幕| 国产精品久久久一区二区三区| 中文字幕 日韩 人妻 无码| 元江| 国产精品自拍一二三四区| 国产午精品午夜福利757视频播放| 成人区精品一区二区不卡| 不卡一区二区国产在线| 伊人色综合久久天天小片| 国产妇女馒头高清泬20p多| av无码一区二区大桥久未| 国产精品中文字幕在线| 日韩人妻一区中文字幕| 四虎国产成人永久精品免费| 亚洲第一精品一二三区| 苏州市| 国语精品国内自产视频| 中文字幕国产精品一区二| 人人妻人人澡人人爽欧美一区双|