我正在尝试将consulentrance添加到我的项目中,我正在使用这个GitHub repo作为ui和entrance的文档:在这里,正如您所看到,不幸的是,Doc中没有入口,有一个ingressGateways,它没有用,因为它不会在Kubernetes内部创建入口(它只能将URL暴露给外部)
我已经搜索了很多,有2个可能的选项:
1:为入口创建额外展开
2:创建consulhelm图表以添加入口部署
(不幸的是,我在网上找不到合适的解决方案)
我正在尝试将consulentrance添加到我的项目中,我正在使用这个GitHub repo作为ui和entrance的文档:在这里,正如您所看到,不幸的是,Doc中没有入口,有一个ingressGateways,它没有用,因为它不会在Kubernetes内部创建入口(它只能将URL暴露给外部)
我已经搜索了很多,有2个可能的选项:
1:为入口创建额外展开
2:创建consulhelm图表以添加入口部署
(不幸的是,我在网上找不到合适的解决方案)
2条答案
按热度按时间rhfm7lfc1#
下面是一个示例Docker组合文件,它配置Traefik以公开一个名为
web
的入口点,该入口点侦听TCP端口8000,并将Traefik与领事的服务目录集成以进行端点发现。下面是一个Consul服务注册文件,它注册了一个名为
web
的应用程序,该应用程序正在侦听端口80。服务注册包括两个标记,指示Traefik通过名为web
的入口点向服务(traefik.enable=true
)公开流量,并为服务创建关联的路由配置。可以使用CLI(
consul service register web.hcl
)将其注册到Consul中,然后Traefik将通过目录集成发现它,并根据标记中指定的路由配置进行自我配置。Traefik在端口8000上接收到的HTTP请求(
Host
报头为example.com
,路径为/myapp
)将被路由到向Consul注册的web
服务。curl命令示例。
这是一个相对基本的示例,适合于开发/测试。如果您要部署到通常由访问控制列表(ACL)保护的生产领事环境中,则需要定义额外的Traefik配置参数。
8tntrjer2#
Helm图表中的
ingressGateways
配置用于部署领事服务网格的领事ingress gateway(由Envoy提供支持)。这与Kubernetes入口不同。Consul的入口允许路由到在服务网格内部运行的应用程序,并使用ingress-gateway配置条目(或将来使用Consul CRDs)进行配置。它不能路由到服务网格外部的端点,如Consul的API/UI端点。
如果您需要一个可以路由到网格之外的应用程序的通用入口,我建议使用诸如Ambassador、Traefik或Gloo之类的解决方案,这三种解决方案都支持与Consul集成以实现服务发现或服务网格。