• Installing vSphere SDK for Perl


    Installing vSphere SDK for Perl
    
    你可以安装vSphere SDK 在Linux 或者Microsoft Windows 系统,或者 部署 VSphere Management 助手在ESXi主机,
    
    这个章节包含下面的主题:
    
    Installation Overview 安装概要:
    
    你可以安装一个vSphere SDK 支持的平台或者部署vMA 虚拟机在一个ESXi主机上。
    
    安装Package,安装一个vSphere SDK 在一个物理或者虚拟机上。
    
    查看安装vSphere SDK 的perl package 在linux上
    
    vSphere SDK 对于Perl 安装 安装vSphere SDK 用于Perl 和vCLI ,
    
    因为很多的vCLI 命令运行。
    
    平台安装过程:
    
    Linux 平台:
    
    1.你必须安装的软件,See Installing Required Prerequisite Software for Red Hat Enterprise Linux.
    
    Installing the vSphere SDK for Perl Package on Red Hat Enterprise Linux
    
    vCLI 在linux 版本上是支持的, 在RHEL, vSphere SDK 对于perl 的安装提示你是否要安装需要的Perl模块:
    
    1.install required prerequisite software. See Installing Required Prerequisite Software for Red Hat Enterprise Linux.
    
    出现提示时,指导installer 来安装额外的前提条件。
    需要的软件和推荐的模板
    
    如果需要的软件没有安装,vCLI 安装停止。 你可以安装需要的使用yum。
    
    RHEL 6.3 32 bit 
    yum install e2fsprogs-devel libuuid-devel 
    yum install perl-XML-LibXML 
    RHEL 6.3 64 bit 
    yum install e2fsprogs-devel libuuid-devel 
    yum install glibc.i686 
    yum install perl-XML-LibXML
    
    推荐的Perl 模块:
    
    当安装完成后, 可能会报一个warning 安装的模块的版本不匹配vCLI的版本。
    
    使用yum或者CPAN来解决这个问题。
    
    安装vSphere SDK 在有internet访问的Linux上。
    
    在你安装vSphere SDK 之前, 系统必须满足下面的条件:
    
    互联网接入, 你必须有internet 访问,当你运行installer 因为installer 使用CPAN 来安装需要的Perl 模块。
    
    开发工具和库,你必须安装开发工具和库在你安装vSphere SDK Perl 和需要的Perl 模块前:
    
    代理设置,如果你的系统使用一个代理来internet 访问,你需要设置:
    
    export http_proxy=:port 
    export ftp_proxy=:port
    
    如果需要的软件没有安装, 安装程序会停止并要求安装它。
    
    安装的必备软件取决于你使用的平台。查看每个版本的支持版本的发行说明。
    
    RHEL 6.3 64 bit 
    Find the required modules on the installation DVD, or use yum to install them. 
    yum install e2fsprogs-devel libuuid-devel 
    yum install glibc.i686 
    yum install perl-XML-LibXML
    
    安装vSphere SDK 运行命令来验证安装成功:
    
    To install vSphere SDK for Perl
    
    1.root 登录
    
    2.解压[root@master ~]# tar -zxvf VMware-vSphere-CLI-5.5.0-2043780.x86_64.tar.gz
    
    3. 
    运行安装程序 
    Run the installer: 
    sudo vmware-vsphere-cli-distrib/vmware-install.pl
    
    4.接受许可证条款, 输入yes和按回车键
    
    安装程序连接到CPAN , 安装必须的软件,建立一个连接可能需要很长的时间。
    
    5.指定安装目录,或按Enter 键接收默认的,默认是/usr/bin
    
    一个完整的安装过程有下面的结果:
    
    1.一个成功的消息出现
    
    安装程序列表中列出了不同的版本号(如果有的话)。 
    ■ 
    迅速返回shell提示。
    
    开始使用perl的 vSphere SDK
    
    perl的 vSphere SDK 允许你自动的完成各种各样的管理,配置,并监控vSphere环境的任务。
    
    本章介绍了SDK的结构,说明了模型的基本使用,让你开始运行一个简单的脚本:
    
    本章包括以下主题;
    
    Perl vSphere SDK的结构
    
    使用Perl的vSphere SDK
    
    Perl vSphere SDK的常用选项
    
    vSphere SDK for Perl Architecture Perl vSphere SDK 结构
    
    交互模型在SDK和vSphere API 之间 在主机直接影响每个结果如何构建的,
    
    是故障排除的基础。
    
    Perl的vSphere SDK 和主机交互,执行这些基本任务的变化:
    
    连接到一个远程的主机使用用户定义的连接参数,和断开。
    2.在远程书籍上找到对象(服务端的对象),例如,找到一个主机上的所有虚拟机。
    
    3.检索和修改服务器端的对象,比如,管理虚拟机的生命周期(启动、停止、暂停等)。
    
    4.从服务端收集对象信息
    
    大多数程序检索一个vSphere API 对象,使你作为一个可用的Perl对象,然后你可以用你的脚本操作。
    
    Perl vSphere SDK 有一些组件:
    
    Perl vSphere SDK的rumtime— 客户端runtime 组件包括:
    
    1.一个完整的Perl 绑定vSphere API,使的让所有的server-side 操作和数据结构可用,
    
    SDK 处理数据类型在server端和客户端之间映射对象
    
    Perl的vSphere SDK实用程序–管理应用程序,可以让你不需要修改在你的虚拟数据中心来运行,
    
    你运行的每个应用程序设置连接参数和其他, 应用指定的参数。
    
    示例脚本– 你可以自定义你需求的脚本,说明vSphere SDK 的功能。
    
    你必须知道Perl来自定义脚本,不像应用程序,简单的脚本不被Vmware支持。
    
    一个Perl的 vSphere SDK 安装也包括下面的库:
    
    Using vSphere SDK for Perl 使用Perl的vSphere SDK
    
    本节说明如何使用Perl的vSphere SDK 通过两个典型的使用场景, 它也列出Ulead常见的Perl的vSphere SDK 和讨论应用协议。
    
    开始:
    
    如果你使用SDK 来获取主机的性能信息,你可以执行以下任务:
    
    检查Perl 的vSphere SDK 应用参考或者应用目录来检索信息。
    
    检查 /usr/lib/vmware-vcli/apps 在Linux 和 Program FilesVMware vSphere CLIPerlapps 在Windows上。
    
    所有的实用程序都被支持。
    
    注意,如果你找不到实用程序,检查示例脚本。你可以使用示例脚本作为你应用程序的起点。
    
    在linux下, /usr/share/doc/vmware-vcli/samples, on Windows, Program FilesVMwareVMware vSphere CLIPerlsamples
    
    2.运行脚本带帮助选项,或者不带任何选项来查看它的练级文档,更详细的信息,在实用程序参考包括在从VMware网站Perl文档集和有效的vSphere SDK。
    
    运行 viperformance.pl 脚本对一台ESXi主机。
    
    viperformance.pl –url https://:/sdk/vimService –username nemo –password fi$h –host Aquarium –countertype net –interval 30 –samples 3
    
    转义字符必须在特定的字符之前在密码里,看到所有可用的SDK的一个完整的连接参数列表的Perl命令选项。
    
    如果你想使用SDK来完成一个任务,不执行应用程序,你可以执行下面的任务:
    
    检查/samples 目录执行一个简单的任务,脚本在samples目录可以用于定制:
    
    如果一个脚本执行一个简单的可用任务,修改脚本,如果没有合适的脚本,使用Perl的vSphere
    
    vSphere SDK 写一个新的脚本。
    
    下面的材料用于修改或者编写脚本:
    
    Source Description 
    Writing vSphere SDK for Perl Scripts. In-depth discussion of scripts that includes an example. 
    编写Perl SDK的脚本 深度讨论脚本,包括一个例子
    
    vSphere SDK for Perl Subroutine Reference. Reference to vSphere SDK for Perl subroutines.
    
    perl 的vSphere SDK 的程序参考 
    Web Services for Management Perl Library. Allows you to write scripts that retrieve CIM data from the ESX/ESXi host using CIMOM, a service that provides standard CIM management 
    
    functions over a WBEM (Web-Based Enterprise Management).
    
    Perl 管理Web Service 的库 允许你写脚本, 检索CIM 数据从ESX/ESXi 使用CIMON, 一个服务提供标准的CIM。
    
    Credential Store Perl Library. Allows vSphere SDK for Perl applications to manage the vSphere credential store.
    
                                                      允许Perl的vSphere SDK 应用来管理vSphere credential store
    vSphere API Reference documentation. Reference to the server-side object your script interacts with.
    
    遵循这些编程约定当你修改或者而创建Perl 的vSphere SDK 的脚本:
    
    ■ 
    Use parameter names followed by parameter values, as follows: 
    Vim::(=>, => ); 
    Util::(=>, => ); 
    Opts::(=>, => );
    
    Common vSphere SDK for Perl Tasks Perl 的通用的vSphere SDK
    
    对于Perl的vSphere SDK 包括实用程序和示例脚本对于常见的管理任务:
    
    连接esxi 
    [root@master general]# perl connect.pl –url https://192.168.32.8/sdk/vimService –username root –password 1234567
    Connection Successful
    
    2.远程suspend 关闭虚拟机 
    perl vmcontrol.pl –url https://192.168.32.8 –username root –password 1234567 –operation suspend –vmname v-test-web02-192.168.32.214
    
    开启虚拟机 
    [root@master vm]# perl vmcontrol.pl –url https://192.168.32.8 –username root –password 1234567 –operation poweron –vmname v-test-web02-192.168.32.214
    
    virtual machine ‘v-test-web02-192.168.32.214’ under host localhost.localdomain powered on 
    You have new mail in /var/spool/mail/root
    
    Perl 程序的vSphere SDK 约定:
    
    几个编程协议是不同的 想你想的 因为SDK和一个SERVER 交互实用 SOAP/WSDL.
    
    Boolean 数据类型–SDK 应用发送和接收Boolean 值如下:
    
    Perl vSphere SDK 选项:
    
    有很多的选项可以用Perl的vSphere SDK脚本,很多选项允许你指定host或者hosts 来连接,
    
    大多数选项都需要一个选项值:
    
    perl .pl –
    
    例如, power on 虚拟机实用cmcontrol.pl ,你必须指定虚拟机的名字来power on,
    
    perl vmcontrol.pl –server –username –password –operation poweron –vmname
    
    运行任何应用或者sample 在没有任何的选项 或者带上–help 来查询它的参数和执行例子
    
    重要的是如果你的目标是锁定模式,你不能对主机运行Perl脚本。
    
    Specifying Options 指定的选项:
    
    你可以指定常用的选项,在本节讨论中。
    
    当你运行vSphere CLI 命令, 认证发生在下写过程的顺序:
    
    vSphere CLI Authentication Precedence
    
    Authentication Description 
    认证 描述
    
    针对vCenter Server 和使用vCenter 单点登录 如果你工作在一个有vCenter 单点登录管理的环境,你可以指定Vcenter Singe 单点登录 服务器的用户名,密码,和目标主机。
    
    命令行 密码(password),session file,或者配置文件 在命令行上指定
    
    配置文件 在.visdkrc 配置文件中指定密码
    
    这个顺序的优先级是适用的, 例如,这意味着 ,你不能覆盖一个环境变量设置在配置文件里。
    
    认证通过vCrnte Server 和 vCenter 单点登录.
    
    对于所有的ESXI 主机,有vCenter Server 系统管理的主机,你可以直接认证的vCenter服务器系统,或者你可以授权vCenter服务器通过vCenter的单点登录。
    
    Hello Host: Running Your First Script 运行你的第一个脚本
    
    在你运行你的第一个脚本前,你需要做下面的事情:
    
    成功安装Perl的 vSphere SDK
    
    1 
    At a command prompt, change to the /apps/general directory. 
    C:Program FilesVMwareVMware vSphere CLIPerlappsgeneral 
    /usr/lib/vmware-vcli/apps 
    2 
    Run connect.pl as follows: 
    connect.pl –url https://:/sdk/vimService –username myuser –password mypassword
    
    perl connect.pl –url https://192.168.32.38/sdk/vimService –username root –password 1234567
    
    [root@master general]# perl connect.pl –url https://192.168.32.38/sdk/vimService –username root –password 1234567
    
    Connection Successful 
    Server Time : 2015-09-07T07:35:29.770906Z
    
    这个脚本返回消息信息和主机时间
    
    Writing vSphere SDK for Perl Scripts 编写Perl 的vSphere SDK
    
    本章使用一个简单的脚本例子 来阐述如何写一个vSphere SDK,本章还探讨了vSphere API对象模型的基础知识。
    
    本章不讨论Perl的基本知识, 你被期望知道Perl和了解它的编程约定。
    
    The chapter includes these topics: 
    ■ 
    Basic vSphere SDK for Perl Script 
    ■ 
    Understanding Server-Side Objects 
    ■ 
    Understanding Perl View Objects 
    ■ 
    Working with View Object Property Values 
    ■ 
    Understanding Operations and Methods 
    ■ 
    Updating View Objects
    
    Basic vSphere SDK for Perl Script Perl vSphere SDK的基本的脚本
    
    vSphere SDK 检索对象,如虚拟机 从server 使用这些对象,vSphere SDK的Perl脚本遵循基本的vSphere SDK所示的Perl脚本的基本模式(simpleclient。PL)。
    
    重要的示例脚本不使用过滤或者属性筛选器以提高效率。看到精炼vSphere SDK的Perl脚本有关这些主题的信息。
    
    perl datacenterlisting.pl –server 192.168.32.8 –datacenter MyDC –username root –password 1234567
    
    https://192.168.32.8/mob
    
    Step 1: Import the vSphere SDK for Perl Modules 步骤1 导入Perl的vSphere SDK的模块
    
    所有的per的vSphere SDK 脚本必须使用use VMware::VIRuntime模块:
    
    这个模块处理所有的客户端基础结构细节。 例如,它透明的映射数据类型,
    
    提供local Perl 接口到server端的对象。该模块也加载子程序,你用于连接vCenter server 或者ESX/ESXi系统
    
    Views 是客户端Perl对象封装了属性和操作server端管理的对象:
    
    选择包的子程序处理内置选项和创建自定义选项:
    
    Util 包子程序方便日常的工作,如建立和关闭连接到服务器。
    
    Step 2: (Optional) Define Script-Specific Command-Line Options (可选的)定义特定脚本
    
    当你在命令行运行一个脚本时,通常需要指定一个连接信息,可能还需要指定其他信息比如一个 virtual machine
    
    需要power off或者你需要获取一个主机的状态信息。
    
    一些常用的命令行选项,其中大部分的连接选项,已经被定义用于所有的实用程序。
    
    例如, 基于Perl vSphere SDK 的脚本(simpleclient.pl) 定义了一个可用的选项,
    
    例子选择了一个选项作为hash, hash key 是一个可选名字, 值是一个hashref 包含
    
    Getopt::Long-style 选项属性.
    
    例如:: 基本的Perl vSphere SDK 脚本(simpleclient.pl) 创建一个需要的命令行选项
    
    接受一个字符串值:
    
    my %opts = ( 
    entity => { 
    type => “=s”, 
    variable => “VI_ENTITY”, 
    help => “ManagedEntity type: HostSystem, etc”, 
    required => 1, 
    }, 
    );
    
    定义新的选项 列出了所有的属性你可以用来定义命令行选项, 在步骤1中的代码片段:
    
    1.导入Perl vSphere SDK 的模块
    
    2.例子增加了选项 使用 Opts::add_options()子程序

  • 相关阅读:
    JQ常用代码
    websocket练习
    动软生成器 model生成模板
    动软生成器 Liger model生成模板
    SVN各种错误提示产生原因及处理方法大全
    winfom实现关闭后一直运行
    在yii中使用分页
    html文字垂直居中
    给浏览器网页标签页添加图标
    html 遇到margin居中的问题
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13350082.html
Copyright © 2020-2023  润新知