Citrix应用交付管理服务

使用API从样本创建配置

构建样本后,您必须将其导入到Citrix ADM,以便使用Citrix ADM或Citrix ADM API来使用样本。Citrix ADM会在导入样本时验证样本,如果验证成功,样本将显示在Citrix ADM样本目录中,可用于创建配置。

现在可以使用样本API基于此样本创建配置。您可以使用cURL命令行工具或邮差chrome浏览器扩展程序等任何工具向Citrix ADM发送HTTP请求。

示例 1

假设您在用于创建负载平衡虚拟服务器的样本中创建了lb-vserver样书。使用rest API从此样书创建配置包,如下所示:

HTTP方法:帖子

网址:https:// < ADM-DNS-or-IP > /样本/硝基/ v1 / config /样本/ com.example.stylebooks / 0.1 / lb-vserver / configpacks

请求标题:

内容类型:application / json

接受:application / json

请求正文有效载荷:

{" configpack ":{“参数”:{“名称”:“两”,“知识产权”:“10.102.117.31”},“目标”:[{" id ": " deecee30 a85041903410——f478 - 4446 - 9741 " } ] } } 

在此HTTP请求中,ID(例如deecee30 - f478 - 4446 - 9741 - a85041903410)是在其中创建IP地址为10.102.117.31的负载平衡虚拟服务器两派的Citrix ADC实例的实例ID。从Citrix ADM检索Citrix ADC实例的实例ID。

要获取由Citrix ADM管理的实例的ID,可以使用Citrix ADM API。例如,要检索实例ID或IP地址为192.168.153.160的Citrix ADC实例,可以使用以下API:

HTTP方法:得到

网址:https:// < ADM-IP > /硝基/ v1 / config / ns ? = ip_address过滤:192.168.153.160

请求标题:

接受:application / json

响应包含json负载中的ID:

预期响应标题(成功):

200好了

内容类型:application / json

预期反应正文(关于成功):

{“错误代码”:0,“消息”:“完成”,“操作”:“得到”,“resourceType”:“ns”、“用户名”:“nsroot”、“tenant_name”:“老板”,“resourceName”:“”,“ns”:[{“is_grace”:“false”,“主机名”:“”,“std_bw_config”:“0”,“gateway_deployment”:“false”,“id”:“deecee30 a85041903410——f478 - 4446 - 9741 ", } ] } 

如果成功创建了配置(配置包),您将收到以下HTTP响应:

预期响应标题(成功):

200好了

内容类型:application / json

预期反应正文(关于成功):

{" configpack ":{“config_id”:“1460806080”}}< !——NeedCopy >

您已经创建了第一个配置(配置包),该配置包通过使用id 1460806080进行唯一标识。可以使用此id查询,更新或删除该配置。

示例 2

您可以使用相同的样书创建另一个配置或配置包,然后在相同或不同的Citrix ADC实例上运行它。在此示例中,创建另一个配置并为虚拟服务器提供不同的名称和IP地址,另外还指定LEASTCONNECTION作为负载平衡方法。在两个Citrix ADC实例上部署此配置。

HTTP请求如下:

HTTP方法:帖子

网址:https:// < ADM-DNS-or-IP > /样本/硝基/ v1 / config /样本/ com.example.stylebooks / 0.1 / lb-vserver / configpacks

请求标题:

内容类型:application / json

接受:application / json

请求正文有效载荷:

{" configpack": {" parameters": {" name": "lb2", "ip": "10.102.117.32", "lb-alg": "LEASTCONNECTION"}, "targets" [{"id": "deecee30-f478-4446-9741-a85041903410"}, {"id": "debecc60-d589-4557-8632-a74032802412"}}} 

在此HTTP请求中,在由ID deecee30-f478-4446-9741-a85041903410和debecc60-d589-4557-8632-a74032802412表示的两个Citrix ADC实例上创建IP地址为10.102.117.32的负载平衡虚拟服务器lb2。

成功创建配置包后,将收到以下HTTP响应:

预期响应标题(成功):

200好了

内容类型:application / json

预期反应正文(关于成功):

{" configpack ":{“config_id”:“1657696292”}}< !——NeedCopy >

这个新的配置包具有不同的id 165769629。您可以通过使用此id更新或删除此配置。

示例 3

考虑您在中创建的"基本Lb-config "样本用于创建基本负载平衡配置的样本。使用rest API从此样书创建配置包,如下所示:

HTTP方法:帖子

网址:http:// < ADM-DNS-or-IP > /样本/硝基/ v1 / config /样本/ com.example.stylebooks / 0.1 / basic-lb-config / configpacks

请求标题:

内容类型:application / json

接受:application / json

预期响应标题(成功):

200好了

内容类型:application / json

预期反应正文(关于成功):

{" configpack ":{“参数”:{“名称”:“myapp”、“知识产权”:“10.70.122.25”、“svc-servers”:“192.168.100.11”、“192.168.100.12”,“svc-port”:8080},“目标”:[{" id ": " deecee30 - f478 - 4446 - 9741 - a85041903410”},{" id ": " debecc60 a74032802412——d589 - 4557 - 8632 " } ] } } 

在此HTTP请求中,负载平衡配置在两个Citrix ADC实例上运行。您可以登录到这些Citrix ADC实例,以验证是否创建了绑定了两个服务的虚拟服务器和服务组。

示例 4

考虑您在中创建的复合样本合成示例创建复合样本/en-us/citrix-application-delivery-management-service/stylebooks/how-to-create-custom-stylebooks/create-composite-stylebook.html[()]。使用rest API从此样书创建配置包,如下所示:

HTTP方法:帖子

网址:http:// < ADM-DNS-or-IP > /样本/硝基/ v1 / config /样本/ com.example.stylebooks / 0.1 / composite-example / configpacks

请求标题:

内容类型:application / json

接受:application / json

请求正文有效载荷:

{" configpack ":{“参数”:{“名称”:“myapp”、“知识产权”:“2.2.2.2”、“svc-servers”:[“10.102.29.52”、“10.102.29.53”]},“目标”:[{" id ": " deecee30 - f478 - 4446 - 9741 - a85041903410”},{" id ": " debecc60 a74032802412——d589 - 4557 - 8632 " } ] } } 

在此HTTP请求中,将在两个由其ID表示的Citrix ADC实例上创建配置。如果您登录到Citrix ADC实例,则可以查看导入到“复合示例”样本中的“基本lb-config”样本创建的配置对象。您还可以看到一个名为myapp-mon的新HTTP监视器作为" composite-example "样书的一部分。

成功创建配置包后,将收到以下HTTP响应:

预期响应标题(成功):

200好了

内容类型:application / json

预期反应机构(关于成功):

{" configpack ":{“config_id”:“4917276817”}}< !——NeedCopy >

更新配置

要更新此配置,例如,通过向负载平衡虚拟服务器添加具有IP地址10.102.29.54的新后端服务器myapp,请使用API更新配置包,如下所示:

HTTP方法:

网址:http:// < ADM-DNS-or-IP > /样本/硝基/ v1 / config /样本/ com.example.stylebooks / 0.1 / composite-example / configpacks / 4917276817

请求标题:

内容类型:application / json

接受:application / json

请求正文有效载荷:

{" configpack ":{“参数”:{“名称”:“myapp”、“知识产权”:“2.2.2.2”、“svc-servers”:[“10.102.29.52”、“10.102.29.53”,“10.102.29.54”]},“目标”:[{" id ": " deecee30 - f478 - 4446 - 9741 - a85041903410”},{" id ": " debecc60 a74032802412——d589 - 4557 - 8632 " } ] } } 

成功更新配置包后,将收到以下HTTP响应:

预期响应标题(成功):

200好了

内容类型:application / json

预期反应机构(关于成功):

{" configpack ":{“config-id”:“4917276817”}}< !——NeedCopy >

删除配置

要删除此配置(从所有Citrix ADC实例中),您可以使用API删除配置包,如下所示:

成功删除配置包后,将收到以下HTTP响应:

HTTP方法:删除

网址:http:// < ADM-DNS-or-IP > /样本/硝基/ v1 / config /样本/ com.example.stylebooks / 0.1 / composite-example / configpacks / 4917276817

请求标题:

接受:application / json

预期响应标题(成功):

200好了

内容类型:application / json

预期响应有效载荷(成功):

{" configpack ":{“config_id”:“4917276817”}}< !——NeedCopy >

您可以登录Citrix ADC实例并验证是否已删除属于此配置包的所有配置对象。

如果要从特定Citrix ADC实例而不是从所有实例中删除配置,请使用上述更新配置包操作并更改JSON负载中的“目标”属性以删除特定的Citrix ADC实例ID。

使用API从样本创建配置