Citrix ADC

通过OpenStack发放Citrix ADC VPX实例

在OpenStack环境中发放Citrix ADC VPX实例也可以使用Nova引导command (OpenStack CLI)或Horizon (OpenStack dashboard)。

分配VPX实例,可选地涉及使用来自配置驱动器的数据。配置驱动器是一种特殊的配置驱动器,它在启动时作为CD-ROM设备附加到实例。此配置驱动器可用于传递网络配置,如管理IP地址、网络掩码、默认网关,并注入客户脚本。

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

密钥对(公钥和私钥)在使用公钥加密机制之前生成。您可以使用不同的机制,例如Horizon、Windows上的Puttygen.exe和ssh - keygen对于Linux环境,生成密钥对。有关生成密钥对的更多信息,请参阅相关机制的在线文档。

一旦密钥对可用,将私钥复制到授权人员可以访问的安全位置。在OpenStack中,可以通过Horizon或Nova boot命令在VPX实例上部署公钥。当VPX实例通过OpenStack提供时,它首先通过读取特定的BIOS字符串来检测该实例在OpenStack环境中启动。这个字符串是" OpenStack Foundation ",对于Red Hat Linux发行版,它存储在/etc/nova/release中这是一种标准机制,可用于基于KVM管理程序平台的所有OpenStack实现。驱动器上必须有指定的OpenStack标签。

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

用户数据文件

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

' ' ' < ?xml version="1.0" encoding="UTF-8" standalone="no"?><环境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"> <脚本> <脚本> <类型>shell <参数>X Y <参数>Z before <文本> #!/bin/bash echo "Hi, how are you" $1 $2 >> /var/sample.txt          “”

在OVF文件中,前面的“PropertySection”用于NetScaler网络配置,而用于封装所有脚本。标签用于捆绑所有脚本。每个脚本定义在< script > 标记之间。每个脚本标签都有以下字段/标签:

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

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

c) :指定脚本执行点。这个标签可能的值:before/after。" before "指定在PE启动之前运行脚本。" after "指定脚本将在PE启动后运行。

d) :粘贴脚本内容。

请注意

目前,VPX实例不负责对脚本进行消毒。作为管理员,您必须检查脚本的有效性。

不是所有部分都需要出席。使用空的“PropertySection”只定义在第一次启动时运行的脚本,或使用空的只定义网络配置。

填充OVF文件(用户数据文件)所需的部分之后,使用该文件来供应VPX实例。

网络配置

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

  • 管理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实例前,需要先解压VPX实例.qcow2从.tgz文件中获取文件并构建

使用qcow2镜像制作的OpenStack镜像。遵循以下步骤:

  1. 提取.qcow2文件从.tqz通过输入以下命令来保存文件

    tar xvzf < tar文件> tar xvzf  NSVPX-KVM.xml nsvpx - kvm - 12.0 - 26.2 - _nc.qcow2
  2. 使用.qcoz2通过输入以下命令,在步骤1中提取的文件。

    openstack image 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实例:

  • 地平线(OpenStack仪表板)
  • Nova启动命令(OpenStack命令行)

通过OpenStack dashboard发放VPX实例

按照以下步骤使用Horizon来提供VPX实例:

  1. 登录OpenStack的dashboard。
  2. 在仪表板左侧的Project面板中,选择实例
  3. 在Instances面板中,单击启动实例打开实例启动向导。

    实例启动向导

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

    1. 实例名
    2. 实例的味道
    3. 实例计算
    4. 实例引导源
    5. 图片的名字

    启动向导细节

  5. 通过Horizon部署新的密钥对或现有的密钥对,需要完成以下步骤:

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

    b)复制公钥内容。

    c)去Horizon > Instances > Create New Instances

    d)点击访问和安全

    e)单击密钥对下拉菜单,并为所示参数提供值。

    f)将公钥内容粘贴到公钥框中,为该键指定名称并单击导入密钥对

    导入密钥对OpenStack

  6. 单击后创建选项卡。在“自定义脚本”中添加用户数据文件的内容。用户数据文件包含VPX实例的IP地址、Netmask和Gateway详细信息以及客户脚本。

  7. 选择或导入密钥对后,请选中“config-drive”选项,单击发射

    启动实例

通过OpenStack命令行发放VPX实例

按照以下步骤,通过OpenStack的CLI发放VPX实例。

  1. 要从qcow2创建一个映像,输入以下命令:

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

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

    Openstack镜像列表|更多

  3. 要创建一个特定口味的实例,键入以下命令从列表中选择口味ID/名称:

    openstack味道列表

  4. 要将网卡绑定到特定的网络,键入以下命令从网络列表中选择网络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 m1True——nic net-id=2734911b-ee2b-48d0-a1b6-3efd44b761b9 VPX-ToT

图2:下面的插图提供了一个示例输出。

OpenStack CLI提供

通过OpenStack发放Citrix ADC VPX实例