API 方法

您可以使用 API 方法来确定性能最佳的 GSLB 服务。GSLB 的 API 方法使用 REST API 来确定性能最佳的 GSLB 服务。

在 API 方法中,当 GSLB 收到来自客户端的 DNS 请求时,它会根据指定的规则评估请求。如果 GSLB 遇到 HTTP 标注表达式 SYS.HTTP_CALLOUT (<name>),它会向 HTTP 标注代理调用 REST API 请求。GSLB 使用 HTTP 标注代理的响应来决定性能最佳的服务。在 DNS 响应中,GSLB 将性能最佳服务的 IP 地址返回给客户端。

使用 CLI 配置 GSLB API 方法的步骤

执行以下操作以配置 GSLB API 方法:

  1. 配置 HTTP 标注。

    有关详细信息,请参阅配置 HTTP 标注

    在命令提示窗口中,键入:

    add policy httpCallout <name> [-IPAddress <ip_addr|ipv6_addr>] [-port <port>] [-vServer <string>] [-returnType <returnType>] [-httpMethod (GET | POST)] [-hostExpr <string>] [-urlStemExpr <string>] [-headers <name(value)> ...] [-parameters <name(value)> ...] [-bodyExpr <string>] [-fullReqExpr <string>] [-scheme (http | https)] [-resultExpr <string>] [-cacheForSecs <secs>] [-comment <string>]
    

    示例:

    add policy httpCallout GSLB_Method_API -IPAddress 208.111.39.237 -port 443 -returnType TEXT -hostExpr “\”hopx.gslb.com\“” -urlStemExpr “\”/zones/1/customers/92395/apps/6/decision\“” -headers Authorization(“Basic 19fbe6db-4332-4e3f-a8bc-ee47bdc726f8") -parameters ip(DNS.REQ.OPT.ECS.IP.TYPECAST_TEXT_T ALT CLIENT.IP.SRC.TYPECAST_TEXT_T) -scheme https -resultExpr “HTTP.RES.BODY(HTTP.RES.CONTENT_LENGTH).XPATH_JSON(xp%/providers/Val[1]/provider%)” -cacheForSecs 30
    
  2. 指定用于负载平衡的 API 方法。GSLB 根据指定的规则评估 DNS 请求。

    在命令提示窗口中,键入:

    add gslb vserver <name> <serviceType>  [-lbMethod <lbMethod>] [-backupLBMethod <backupLBMethod>] -rule <expression>
    

    示例:

    add gslb vserver vs1 HTTP -lbMethod API -backupLBMethod ROUNDROBIN -rule “sys.http_callout(GSLB_Method_API)”