httpbin是一个用于测试的开源应用,常用于Web调试。部署该应用后,您可以方便地查看HTTP请求的Method、Header和授权等信息。本文介绍如何部署httpbin应用。
前提条件
操作步骤
在数据面集群中部署httpbin应用。
使用以下内容,创建httpbin-application.yaml。
使用kubectl连接到ACK集群,执行以下命令,部署httpbin应用。
kubectl apply -f httpbin-application.yaml
配置httpbin应用的流量规则。
使用以下内容,创建网关规则。具体操作,请参见管理网关规则。
apiVersion: networking.istio.io/v1beta1 kind: Gateway metadata: name: httpbin namespace: default spec: selector: istio: ingressgateway servers: - hosts: - '*' port: name: test number: 80 protocol: HTTP
使用以下内容,创建虚拟服务。具体操作,请参见管理虚拟服务。
apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata: name: httpbin-vs namespace: default spec: gateways: - httpbin hosts: - '*' http: - name: test route: - destination: host: httpbin.default.svc.cluster.local port: number: 8000
进行访问测试。
请将下文命令中的
${ASM网关IP}
替换为实际的网关地址。关于如何获取网关地址,请参见获取入口网关地址。执行以下命令,访问httpbin的
/status/200
。curl http://${ASM网关IP}/status/200 -v
返回
200 OK
。执行以下命令,访问httpbin的
/status/418
。curl http://${ASM网关IP}/status/418 -v
返回
418 Unknown
。执行以下命令,访问httpbin的
/status/403
。curl http://${ASM网关IP}/status/403 -v
返回
403 Forbidden
。执行以下命令,访问httpbin的
/headers
。curl http://${ASM网关IP}/headers -H test-header:test-value -v
Response会返回请求中携带的Header。