虚拟化应用(一)开始 vSphere 4.1

  1. vSphere新特性

测试代码下载

测试环境:

Windows Server 2008 R2 DataCenter

VMWare Workstation 7.1

VMWare vSphere 4.1

JDK 1.6 u-21 x64、Eclipse For JavaEE 3.6 x64

VMWare vSphere Java API 2.1 Beta、VMWare vSphere PowerCLI 4.1(PowerShell 2.0)

PowerGUI Script Editor Free Edition

 

vSphere是业界第一款云计算操作系统,近日VMWare发布了其最新版本vSphere 4.1,本次新特性如下:

英文原文

1.1 安装和部署

VMWare ESX

以脚本方式安装ESXi

将vSphere Client从ESX/ESXi中剥离

 

1.2 存储

从SAN(存储区域网络)引导

为集成阵列扩展的硬件加速及存储API

存储性能统计

存储I/O控制

iSCSI(Internet Small Computer System Interface 因特网小型机系统接口)硬件卸载

NFS(Network File System 网络文件系统)性能增强

 

1.3 网络

网络I/O控制

IPv6增强

基于负载的分组

E1000型vNIC(Virtual Network interface controller 虚拟网卡)增强

 

1.4 可用性

构建于VMWare HA(High Availability高可用性)之上的Windows故障转移集群

VMWare HA的可伸缩性改进

监控VMware HA的HealthCheck和运行状况

VMWare容错增强

为VMWare HA及容错能力的DRS(Distributed Resource Scheduler 分布式资源规划)

增强的网络性能日志记录

并行的VMWare数据会话恢复

对数据保护的虚拟存储API的增强

 

1.5 管理

vCLI(vSphere Command-Line Interface vSphere命令行接口) 增强

锁定模式增强

通过网络访问虚拟机串行端口

vCenter Converter Hyper-V 导入

主机配置文件增强

无人值守vSphere认证管理助理技术

部署环境vSphere管理助理技术

vCenter Orchestrator的64位支持

vCenter Update Manager的改进支持

许可证报告管理

电源管理改进

 

1.6 平台增强

性能和可扩展性的改进

减少内存开销

DRS(Distributed Resource Scheduler 分布式资源规划)的虚拟机主机亲和规则

内存压缩

VMotion的增强

ESX/ESXi的活动目录集成

USB设备从ESX/ESXi主机直通虚拟机

改进vMotion的兼容性

 

1.7 合作伙伴生态系统

vCenter Update Manager的支持供应,修补,升级和EMC公司的ESX的PowerPath模块

为虚拟CPU的每个虚拟插座提供可配置的用户数量

支持更多的CPU

 

  1. 管理vSphere

我使用了VMWare Workstation 7.1安装ESX Server 4.1,仅仅为了测试,实际生产环境应该部署在专用服务器:

为了进行管理ESX Server,还需要安装vSphere Client。安装后,输入ESX Server IP、用户名、密码后即可以登录:

ESX-Win2003是在虚拟机中安装的虚拟机,在ESX Server 4.1中支持直接安装,在之前的版本需要修改下vmx配置文件才行。

管理控制台与Hyper-V的很相像,都很好用:

 

  1. 使用vSphere Java API管理ESX

VMWare提供了大量的API用来管理其旗下产品,支持Java、C#、Perl等多种语言,这里我选用了vSphere Java API进行测试,可以在这里下载。(C# API的文档、示例等不太完备,我试着编译了下,遇到很多错误,以后再尝试)

3.1 打开Eclipse,创建一个项目:

将下载下来的vSphere Java API的jar包添加进Build Path。

代码
package brooks.chapter5.simpledemo;

import java.net.URL;
import com.vmware.vim25.VirtualMachineCapability;
import com.vmware.vim25.VirtualMachineConfigInfo;
import com.vmware.vim25.mo.Folder;
import com.vmware.vim25.mo.InventoryNavigator;
import com.vmware.vim25.mo.ManagedEntity;
import com.vmware.vim25.mo.ServiceInstance;
import com.vmware.vim25.mo.VirtualMachine;
import com.vmware.vim25.mo.util.CommandLineParser;
import com.vmware.vim25.mo.util.OptionSpec;

public class HelloVI {

    
/**
     * 
@param args
     
*/
    
public static void main(String[] args) {
        
try {
            CommandLineParser clp 
= new CommandLineParser(new OptionSpec[] {},
                    args);
            String urlStr 
= clp.get_option("url");
            String username 
= clp.get_option("username");
            String password 
= clp.get_option("password");
            ServiceInstance si 
= new ServiceInstance(new URL(urlStr), username,
                    password, 
true);
            Folder rootFolder 
= si.getRootFolder();
            ManagedEntity[] mes 
= new InventoryNavigator(rootFolder)
                    .searchManagedEntities(
"VirtualMachine");
            
if (mes == null || mes.length == 0) {
                si.getServerConnection().logout();
                
return;
            }
            VirtualMachine vm 
= (VirtualMachine) mes[0];
            VirtualMachineConfigInfo vminfo 
= vm.getConfig();
            VirtualMachineCapability vmc 
= vm.getCapability();
            System.out.println(
"Hello: " + vm.getName());
            System.out.println(
"GuestOS: " + vminfo.getGuestFullName());
            System.out.println(
"Multiple snapshot supported: "
                    
+ vmc.isMultipleSnapshotsSupported());
            si.getServerConnection().logout();
        } 
catch (Exception ex) {
            ex.printStackTrace();
        }
    }
}

 

  

3.3 配置命令行参数:--url https://192.168.200.133/sdk --username root --password ******(请用你自己的ESX IP、用户名、密码进行替换

 

3.4 运行结果如下:

 

  1. 使用PowerShell管理ESX

VMWare 提供了PowerShell的扩展vSphere PowerCLI来更方便的对ESX/ESXi等进行管理,可以在这里下载,需要先注册。

4.1 下载后安装,命令行初始界面如下:

 

4.2 为了更方便的使用PowerShell,我们使用PowerGUI Script Editor Free Editon来编写PowerShell,可以在这里下载。其支持断点调试,强大的智能感知等。

为了能够在PowerGUI Script Editor中使用VMWare PowerCLI扩展,需要先导入:

Add-PSSnapin VMWare.VimAutomation.Core

 

使用Connect-VIServer连接ESX,使用Start-VM打开一个已安装的虚拟机:

连接ESX是如果使用http协议,则会出错,建议使用https协议。

 

  1. 小结

随着虚拟化技术在企业中的应用愈来愈广泛,对虚拟化技术的要求也愈来愈高,本次我们从最基本的代码和脚本入手,对VMWare vSphere 4.1平台有了一个基本的认识,进行了一些简单的管理操作。虚拟化技术的解决方案非常复杂,涉及到的技术层面非常广,我也是抱着一种研究的态度进行测试,后续篇章也会关注其他虚拟化解决方案,如微软的Hyper-V、Oracle的VirtualBox等,结合相应的SDK做一些测试。

posted @ 2010-08-01 16:35  江苏瑞步科技  阅读(4247)  评论(2编辑  收藏  举报