This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
使用 OpenStack 预配 Citrix ADC VPX 实例
可以在 OpenStack 环境中使用 Nova boot 命令 (OpenStack CLI) 或 Horizon(OpenStack 控制板)预配 Citrix ADC VPX 实例。
预配 VPX 实例(可选)涉及使用配置驱动器中的数据。配置驱动器是一个在启动时作为 CD-ROM 设备附加到实例的特殊配置驱动器。可以使用此配置驱动器来传递网络连接配置(例如管理 IP 地址、网络掩码、默认网关),以及注入客户脚本。
在 Citrix ADC 设备中,默认的身份验证机制是基于密码的。现在,OpenStack 环境中的 Citrix ADC VPX 实例支持 SSH 密钥对身份验证机制。
请先生成密钥对(公钥和私钥),然后再使用公钥加密机制。可以使用不同的机制(例如 Horizon、适用于 Windows 的 Puttygen.exe 以及适用于 Linux 的 ssh-keygen
)生成密钥对。有关生成密钥对的详细信息,请参阅各个机制的联机文档。
有了密钥对后,将私钥复制到已获得授权的人员有权访问的安全位置。在 OpenStack 中,可以使用 Horizon 或 Nova boot 命令将公钥部署在 VPX 实例上。使用 OpenStack 预配 VPX 实例时,它会首先通过读取特定 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"?>
<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">
<PlatformSection>
<Kind></Kind>
<Version>2016.1</Version>
<Vendor>VPX</Vendor>
<Locale>en</Locale>
</PlatformSection>
<PropertySection>
<Property oe:key="com.citrix.netscaler.ovf.version" oe:value="1.0"/>
<Property oe:key="com.citrix.netscaler.platform" oe:value="NSVPX"/>
<Property oe:key="com.citrix.netscaler.orch_env" oe:value="openstack-orch-env"/>
<Property oe:key="com.citrix.netscaler.mgmt.ip" oe:value="10.1.2.22"/>
<Property oe:key="com.citrix.netscaler.mgmt.netmask" oe:value="255.255.255.0"/>
<Property oe:key="com.citrix.netscaler.mgmt.gateway" oe:value="10.1.2.1"/>
</PropertySection>
<cs:ScriptSection>
<cs:Version>1.0</cs:Version>
<ScriptSettingSection xmlns="http://schemas.citrix.com/openstack" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<Scripts>
<Script>
<Type>shell</Type>
<Parameter>X Y</Parameter>
<Parameter>Z</Parameter>
<BootScript>before</BootScript>
<Text>
#!/bin/bash
echo "Hi, how are you" $1 $2 >> /var/sample.txt
</Text>
</Script>
<Script>
<Type>python</Type>
<BootScript>after</BootScript>
<Text>
#!/bin/python
print("Hello");
</Text>
</Script>
<Script>
<Type>perl</Type>
<BootScript>before</BootScript>
<Text>
!/usr/bin/perl
my $name = "VPX";
print "Hello, World $name !\n" ;
</Text>
</Script>
<Script>
<Type>nscli</Type>
<BootScript>after</BootScript>
<Text>
add vlan 33
bind vlan 33 -ifnum 1/2
</Text>
</Script>
</Scripts>
</ScriptSettingSection>
</cs:ScriptSection>
</Environment>
<!--NeedCopy--> ```
在 “PropertySection” 之前的 OVF 文件中用于 NetScaler 网络配置,同时 <cs:ScriptSection> 用于封闭所有脚本。<Scripts></Scripts> 标签用于将所有脚本捆绑在一起。每个脚本都在 <Script> </Script> 标签之间定义。每个脚本标记都有以下字段/标记:
a) <Type>:指定脚本类型的值。可能的值:Shell/Perl/Python/NSLCI(对于 NetScaler CLI 脚本)
b) <Parameter>:为脚本提供参数。每个脚本都有多个 <Parameter> 标记。
c) <BootScript>:指定脚本执行点。此标记的可能值:before/after。“before”指定脚本将在 PE 启动之前运行。“after”指定脚本将在 PE 启动之后运行。
d) <Text>:粘贴脚本的内容。
注意
目前,VPX 实例不负责清理脚本。作为管理员,您必须检查脚本的有效性。
并非所有部分都需要存在。可使用空的“PropertySection”仅定义要在首次引导时运行的脚本,或使用空的
仅定义网络配置。 填充了 OVF 文件(用户数据文件)的所需部分后,使用该文件预配 VPX 实例。
网络配置
作为网络配置的一部分,VPX 实例读取:
- Management IP address(管理 IP 地址)
- Network mask(网络掩码)
- Default gateway(默认网关)
参数成功读取后,将填入 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 映像。请按照以下步骤进行操作:
-
键入以下命令从
.tqz
文件中提取.qcow2
文件tar xvzf <TAR file> tar xvzf <NSVPX-KVM-12.0-26.2_nc.tgz> NSVPX-KVM.xml NSVPX-KVM-12.0-26.2_nc.qcow2
-
键入以下命令使用在步骤 1 中提取的
.qcoz2
文件构建 OpenStack 映像。openstack image create --container-format bare --property hw_disk_bus=ide --disk-format qcow2 --file <path to qcow2 file> --public <name of the OpenStack image> 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 命令的示例输出。
预配 VPX 实例
可以采用两种方式预配 VPX 实例,方法是使用以下选项之一:
- Horizon(OpenStack 控制板)
- Nova boot 命令 (OpenStack CLI)
使用 OpenStack 控制板预配 VPX 实例
请按照以下步骤使用 Horizon 预配 VPX 实例:
- 登录 OpenStack 控制板。
- 在控制板左侧的“Project”(项目)面板中,选择 Instances(实例)。
-
在“Instances”(实例)面板中,单击 Launch Instance(启动实例)打开“Instance Launching”(实例启动)向导。
-
在“Launch Instance”(启动实例)向导中,填写详细信息,例如:
- Instance Name(实例名称)
- Instance Flavor(实例风格)
- Instance Count(实例计数)
- Instance Boot Source(实例启动源)
- Image Name(映像名称)
-
完成以下步骤来通过 Horizon 部署新密钥对或现有密钥对:
a) 如果您没有现有密钥对,请使用任何现有机制创建密钥。如果您有现有密钥,请跳过此步骤。
b) 复制公钥的内容。
c) 转到 Horizon > Instances(实例)> Create New Instances(创建新实例)。
d) 单击 Access & Security(访问和安全)。
e) 单击 Key Pair(密钥对)下拉菜单旁边的 + 号,为所示参数提供值。
f) 在 Public key(公钥)框中粘贴公钥内容,为密钥提供名称,并单击 Import Key Pair(导入密钥对)。
-
单击向导中的 Post-Creation(后期创建)选项卡。在“Customization Script”(自定义脚本)中,添加用户数据文件的内容。用户数据文件中包含 VPX 实例的 IP 地址、网络掩码和网关详细信息以及客户脚本。
-
选择或导入密钥对后,选中“Configuration Drive”(配置驱动器),并单击 Launch(启动)。
使用 OpenStack CLI 预配 VPX 实例
按照以下步骤使用 OpenStack CLI 预配 VPX 实例。
-
要从 qcow2 创建映像,请键入以下命令:
openstack image create --container-format bare --property hw_disk_bus=ide --diskformat qcow2 --file NSVPX-OpenStack.qcow2 --public VPX-ToT-Image
-
要选择映像以创建实例,请键入以下命令:
openstack image list | more
-
要创建特定风格的实例,请键入以下命令从列表中选择风格 ID/名称:
openstack flavor list
-
要将 NIC 附加到特定网络,请键入以下命令从网络列表中选择网络 ID:
openstack network list
-
要创建实例,请键入以下命令:
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:下图提供了示例输出。
共享
共享
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.