我在Kubernete/Kubesphere集群上安装了Kong(Kong proxy+Kong ingress controller(,里面有Istio mesh,我添加了所需的注释和入口类型,所以只能访问节点暴露的IP和端口上的Kong proxy,但既不能添加规则,也不能访问Admin GUI或进行任何类型的配置,我对Kong端点的每个请求都像一样
curl -i -X GET http://10.233.124.79:8000/rules
或者向代理发出任何类型的请求,我都会得到相同的响应:
Content-Type: application/json; charset=utf-8 Connection: keep-alive Content-Length: 48 X-Kong-Response-Latency: 0 Server: kong/2.2.0 {"message":"no Route matched with those values"}
我无法调用Admin API,它的pod-container只监听127.0.0.1,我的环境变量用于kong-proxy pod-
KONG_PROXY_LISTEN
0.0.0.0:8000, 0.0.0.0:8443 ssl http2
KONG_PORT_MAPS
80:8000, 443:8443
KONG_ADMIN_LISTEN
127.0.0.1:8444 ssl
KONG_STATUS_LISTEN
0.0.0.0:8100
KONG_DATABASE
off
KONG_NGINX_WORKER_PROCESSES
2
KONG_ADMIN_ACCESS_LOG
/dev/stdout
KONG_ADMIN_ERROR_LOG
/dev/stderr
KONG_PROXY_ERROR_LOG
/dev/stderr
以及env。入口控制器的var:CONTROLLER_KONG_ADMIN_URLhttps://127.0.0.1:8444CONTROLLER_KONG_ADMIN_TLS_SKIP_VERIFY真的CONTROLLER_PUBLISH_SERVICE香港/香港代理
那么,如何能够通过节点端口在网格上公开Admin GUI,以及如何能够调用Admin API来添加规则等?
是的,首先应该添加规则。
您可以直接在KubeSphere中添加路由器。有关详细信息,请参阅文档。