Please take a look at this project
https://github.com/apache/apisix-ingress-controller, you can deploy Apache
APISIX outside the kubernetes cluster, just deploy
apisix-ingress-controller inside the kubernetes cluster.

 apisix-ingress-controller will watch the endpoints in k8s, and sync to
APISIX.

zhixiongdu027 <r...@libssl.com> 于2022年6月2日周四 16:33写道:

> 你好:
>
>     如果 Kubernetes 服务发现模块运行在集群外,
>     你需要:
>     1.   获取到  APIServer 的 Host, Port  地址
>
>     2.   新建 一个  有 ListWatch  K8S Endpoints 的 ServiceAccount , 获取 其
> Token 值 .   获取 Token 值的方法在你发送的文档链接有提及
>     3.   按如下格式填充配置
>
> |discovery:kubernetes:service:schema:httpshost:# enter apiserver host
> value hereport:# enter apiServer port value hereclient:token:# enter
> serviceaccount token value here#token_file: # enter file path here|
>
> Copy
>
>
>      需要提醒你的是, 如果 apisix 运行在集群外部, 通过  discovery 获取到的
> pod ip  有可能无法访问 ( 视具体情况 )
>
>
> > 尊敬的apisix开发团队您好:
> >    我通过apisix官网文档:
> https://apisix.apache.org/docs/apisix/discovery/kubernetes
> > 配置了外部独立的apisix 并希望通过此配置让外部独立的apisix能过直接list watch到kubernetes内部的entpoints
> 列表
> > 但是我根据文档配置完后发现一直在报错 报错如下:
> > 2022/06/02 15:53:40 [error] 29284#29284: *175 [lua]
> > informer_factory.lua:292: list failed, kind: Endpoints, reason: Bad
> > Request: missing required Host header, message : 400 Bad Request: missing
> > required Host header, context: ngx.timer
> > 希望得到您的帮助

Reply via email to