您现在的位置: 破洛洛 >> 服务器 >> DNS服务器 >> 正文

使用Active Directory标识和跟踪虚拟机

作者:佚名 来源:不详 更新时间:2009-4-16
分享到

    随着很多企业部署越来越多的虚拟化平台,如何区分物理服务器和虚拟服务器也变得越来越难。有些管理员在每台虚拟机的主机名后加上“_vm”以示区别。然而,很多企业不喜欢这种方法,因为任何名字的变化都会影响到用户和应用程序访问虚拟机数据信息的方式。在服务器转变为虚拟机之后,改变服务器的名字可能也会影响到服务器本地安装的应用程序和服务。如果管理员对一台遵循从物理平台到虚拟平台(P2V)迁移的服务器重新命名,他们通常使用DNS中的CNAME记录,以此来保证名字解析的透明性。但是,这种方法增加了对服务器资源管理的额外复杂度。另外一种标识服务器对象(无论是虚拟环境还是物理环境)的方法是使用每一台计算机对象Active Directory中的Description属性。已经有一些企业使用Description属性来标识一台计算机的位置、部门或者角色。考虑到这一点,使用Description属性可能要求用户能够简洁地标识出是物理平台还是虚拟平台。例如,可以使用如下的命名规范:

    Ps – Physical server

    Vesx – VMware ESX VM

    Vms – Microsoft Virtual Server VM

    Vxen – Xen VM

    Vvi – Virtual Iron VM

    Vvz – SWsoft Virtuozzo virtual private server

    Vscon – Solaris Container

      在所有Description属性中,我比较喜欢使用“P”作为物理平台的前缀,“V”作为虚拟平台的前缀。这样做的话可以使用户使用脚本语句对所有的虚拟机做查询操作,例如,仅通过脚本查询每一台计算对象的Description属性的第一个字母。
    图1和图2给出了通过计算机对象的Description属性标识虚拟机的两种方法:

   
  图1:使用Description属性标识一台Xen虚拟机

 
  图2:使用Description属性标识一台物理服务器,以及其位置、部门和角色

 

    有了这些合适的命名规范,通过使用Active Directory Users and Computers和给这些对象排序(使用Description属性),就可以很快地在任何一个Active Directory容器中定位到虚拟机对象。点击Active Directory Users and Computers中的Description列就可以做到这些,双击的话就可以按照降序排序。如图3是一个通过Description排序计算机对象的例子:

   

Active Directory

图3:在Active Directory Users and Computers中排序虚拟机计算机对象

    图3:在Active Directory Users and Computers中排序虚拟机计算机对象

    在大型企业中,很多管理员发现Active Directory查询属性非常有用。例如,为了定位所用域中的成员计算机(这些计算机都是ESX虚拟机),以下几个步骤就非常必要:

    1.在Active Directory Users and Computers窗口,右键点击“Domain Object”,选择“Find”
    2.在“Find”对话框,点击“Find Drop-down”菜单,选择“Computers”
    3.接下来,点击“Advanced”属性页。在“Advanced”属性页下,点击“Field”按钮,在复合的drop-down菜单中选择“Description”
    4.在“Condition Drop-down”菜单中,选择“Starts With”
    5.在“Value”属性中输入“Vesx”,注意如果需要搜索所有虚拟机,只需输入“V”
    6.接下来,点击“Add”按钮
    7.现在可以点击“Start”开始查询(如图4),就可以显示出那些Description属性以“Vesx开头”的计算机对象

     
  图4:ESX虚拟机Active Directory查询

    当然,使用Active Directory Users and Computers GUI只能完成这些工作。在大型环境中,用户可能希望使用脚本语言来填充每一台计算机对象的Description属性。下面的SetDescription.vbs脚本就可以从一个文本文件中读取一个计算机列表,也可以修改这些已有的Description属性,确保其有一个物理或者虚拟的标识符作为前缀。

    'SetDescription.vbs
    'Adds virtual or physical descriptor to
    'computer description attribute.

    'set variables

    'strPrefix -- physical or virtual identifier prefix
    ' Prefix values:
    '  Ps – Physical server
    '  Vesx – VMware ESX VM
    '  Vms – Microsoft Virtual Server VM
    '  Vxen – Xen VM
    '  Vvi – Virtual Iron VM
    '  Vvz – SWsoft Virtuozzo virtual private server
    '  Vscon – Solaris Container
    strPrefix = "Vesx"

    'strDomainTarget -- this is the AD container
    ' where the target computer accounts are located
    strDomainTarget = "cn=computers,dc=virtual,dc=net"

    'strSourceFile -- file that contains computer
    ' account list
    strSourceFile = "c:\computers.txt"

    ' Constants
    Const ForReading = 1

    'Open Source File
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    set objSourceFile = objFSO.OpenTextFile(strSourceFile,_
        ForReading, True)

    'Connect to Directory Service
    'Modify computer description for each computer in
    ' source file list
    Do Until objSourceFile.AtEndOfStream
        strcomputer = objSourceFile.Readline
   

转载请注明:破洛洛(谢谢合作)
网友评论: