Citrix ADC

使用OpenStack预配Citrix ADC VPX实例

可以在OpenStack环境中使用Nova引导命令(OpenStack CLI)或Horizon(OpenStack控制板)预配Citrix ADC VPX实例。

预配VPX实例(可选)涉及使用配置驱动器中的数据。配置驱动器是一个在启动时作为cd-rom设备附加到实例的特殊配置驱动器。可以使用此配置驱动器来传递网络连接配置(例如管理IP地址,网络掩码,默认网关),以及注入客户脚本。

在Citrix ADC设备中,默认的身份验证机制是基于密码的。现在,OpenStack环境中的Citrix ADC VPX实例支持SSH密钥对身份验证机制。

请先生成密钥对(公钥和私钥),然后再使用公钥加密机制。可以使用不同的机制(例如地平线,适用于Windows的Puttygen.exe以及适用于Linux的ssh - keygen)生成密钥对。有关生成密钥对的详细信息,请参阅各个机制的联机文档。

有了密钥对后,将私钥复制到已获得授权的人员有权访问的安全位置。在OpenStack中,可以使用地平线或新星引导命令将公钥部署在VPX实例上。使用OpenStack预配VPX实例时,它会首先通过读取特定BIOS字符串来检测实例是否在OpenStack环境中引导。此字符串为“OpenStack基金会”,对于Red Hat Linux发行版,此字符串存储在/etc/nova/release中。这是在基于KVM虚拟机管理程序平台的所有OpenStack实现中提供的标准机制。该驱动器必须具有特定的OpenStack标签。

如果检测到配置驱动器,该实例会尝试读取网络配置,自定义脚本和SSH密钥对(如果已提供)。

用户数据文件

Citrix ADC VPX实例使用自定义OVF文件(也称为用户数据文件)来注入网络配置,自定义脚本。此文件作为配置驱动器的一部分提供。下面是自定义ovf文件示例。

' ' ' < ?xml版本="1.0" encoding="UTF-8" standalone="no"?>< Environment xmlns:oe="http://schemas.dmtf.org/ovf/environment/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" oe:id="" xmlns="http://schemas.dmtf.org/ovf/environment/1" xmlns:cs="http://schemas.citrix.com/openstack">   2016.1 VPX en     <房地产oe:关键=“com.citrix.netscaler.orch_env”oe: value = " openstack-orch-env " / > <房地产oe:关键=“com.citrix.netscaler.mgmt.ip”oe: value = " 10.1.2.22 " / > <房地产oe:关键=“com.citrix.netscaler.mgmt.netmask”oe: value = " 255.255.255.0 " / > <房地产oe:关键=“com.citrix.netscaler.mgmt.gateway”oe: value = " 10.1.2.1 " / > < / PropertySection > < c: ScriptSection > < c:版本> < / cs:版本> < 1.0 ScriptSettingSection xmlns = " http://schemas.citrix.com/openstack "xmlns:i="http://www.w3.org/2001/XMLSchema-instance">          “”

在“PropertySection”之前的OVF文件中用于NetScaler网络配置,同时< c: ScriptSection >用于封闭所有脚本。标签用于将所有脚本捆绑在一起。每个脚本都在<脚本> 标签之间定义.使用实例每个脚本标记都有以下字段/标记:

a) <类型>:指定脚本类型的值。可能的值:Shell/Perl/Python/NSLCI(对于NetScaler CLI脚本)

b) <参数>:为脚本提供参数。每个脚本都有多个<参数>标记。

c) :指定脚本执行点。此标记的可能值:之前/之后。“前”指定脚本将在PE启动之前运行。“后”指定脚本将在PE启动之后运行。

d) <文本>:粘贴脚本的内容。

注意

目前,vpx实例不负责清理脚本。作为管理员,您必须检查脚本的有效性。

并非所有部分都需要存在。可使用空的“PropertySection”仅定义要在首次引导时运行的脚本,或使用空的 仅定义网络配置。

填充了ovf文件(用户数据文件)的所需部分后,使用该文件预配VPX实例。

网络配置

作为网络配置的一部分,vpx实例读取:

  • 管理IP地址(管理IP地址)
  • 网络掩码(网络掩码)
  • 默认网关(默认网关)

参数成功读取后,将填入NetScaler配置中,从而允许远程管理实例。如果参数未成功读取,或者配置驱动器不可用,实例将转换为默认行为,即:

  • 实例尝试从DHCP中检索IP地址信息。
  • 如果DHCP失败或超时,实例将提供默认网络配置(192.168.100.1/16)。

客户脚本

VPX实例允许在初始预配期间运行自定义脚本。设备支持Shell、Perl、Python和Citrix ADC CLI命令类型的脚本。

SSH密钥对身份验证

VPX实例将配置驱动器中作为实例元数据的一部分提供的公钥复制到其“authorized_keys”文件中。这样,用户可以使用私钥访问实例。

注意

提供SSH密钥后,默认凭据(nsroot / nsroot)将不再起作用,如果需要基于密码的访问,请使用各自的SSH私钥登录并手动设置密码。

开始之前的准备工作

在OpenStack环境中预配VPX实例之前,请从.tgz文件中提取.qcow2文件,并构建

从qcow2映像构建OpenStack映像。请按照以下步骤进行操作:

  1. 键入以下命令从.tqz文件中提取.qcow2文件

    tar xvzf < tar文件> tar xvzf  NSVPX-KVM.xml nsvpx - kvm - 12.0 - 26.2 - _nc.qcow2
  2. 键入以下命令使用在步骤 1 中提取的.qcoz2文件构建OpenStack映像。

    openstack镜像create——container-format bare——property hw_disk_bus=ide——disk-format qcow2——file < qcow2文件的路径>——public < openstack镜像的名称> glance image-create——name="NS-VPX-12-0-26-2"——property hw_disk_bus=ide——ispublic= true——container-format=bare——disk-format=qcow2< NSVPX-KVM-12.0-26.2_nc.qcow2

    图 1:下图提供了glance image-create命令的示例输出。

    映像创建命令OpenStack

预配VPX实例

可以采用两种方式预配VPX实例,方法是使用以下选项之一:

  • Horizon(OpenStack控制板)
  • Nova boot命令(OpenStack CLI)

使用OpenStack控制板预配VPX实例

请按照以下步骤使用Horizon预配VPX实例:

  1. 登录OpenStack控制板。
  2. 在控制板左侧的“项目”(项目)面板中,选择实例(实例)。
  3. 在" Instances "(实例)面板中,单击启动实例(启动实例)打开“实例启动”(实例启动)向导。

    实例启动向导

  4. 在“启动实例”(启动实例)向导中,填写详细信息,例如:

    1. 实例名称(实例名称)
    2. 实例风味(实例风格)
    3. 实例计数(实例计数)
    4. 实例引导源(实例启动源)
    5. 图片名称(映像名称)

    启动向导详细信息

  5. 完成以下步骤来通过地平线部署新密钥对或现有密钥对:

    A)如果您没有现有密钥对,请使用任何现有机制创建密钥。如果您有现有密钥,请跳过此步骤。

    B)复制公钥的内容。

    c)转到Horizon > Instances(实例)> Create New Instances(创建新实例)

    d)单击访问和安全(访问和安全)。

    e)单击密钥对(密钥对)下拉菜单旁边的 + 号,为所示参数提供值。

    f)在公钥(公钥)框中粘贴公钥内容,为密钥提供名称,并单击导入密钥对(导入密钥对)。

    导入密钥对OpenStack

  6. 单击向导中的Post-Creation(后期创建)选项卡。在“定制脚本”(自定义脚本)中,添加用户数据文件的内容。用户数据文件中包含VPX实例的IP地址,网络掩码和网关详细信息以及客户脚本。

  7. 选择或导入密钥对后,选中“配置驱动器”(配置驱动器),并单击发射(启动)。

    启动实例

使用OpenStack CLI预配VPX实例

按照以下步骤使用OpenStack CLI预配VPX实例。

  1. 要从qcow2创建映像,请键入以下命令:

    openstack镜像create——container-format bare——property hw_disk_bus=ide——diskformat qcow2——file NSVPX-OpenStack。qcow2——公共VPX-ToT-Image

  2. 要选择映像以创建实例,请键入以下命令:

    Openstack镜像列表|更多

  3. 要创建特定风格的实例,请键入以下命令从列表中选择风格id /名称:

    openstack味道列表

  4. 要将nic附加到特定网络,请键入以下命令从网络列表中选择网络id:

    openstack网络表

  5. 要创建实例,请键入以下命令:

    openstack server create——flavor FLAVOR_ID——image IMAGE_ID——key-name KEY_NAME——user-data USER_DATA_FILE_PATH——config-drive True——nic net-id=net-uuid INSTANCE_NAME openstack server create——image VPX-ToT-Image——flavor m1。medium——user-data ovf.xml——config-drive True——nic net-id=2734911b-ee2b-48d0-a1b6-3efd44b761b9 VPX-ToT

图 2:下图提供了示例输出。

OpenStack提供CLI

使用OpenStack预配Citrix ADC VPX实例