使用Nginx作为微服务API网关

时间:2016-11-22 04:37:08

标签: node.js nginx docker kubernetes microservices

我们正在将我们的monolith API分成微服务。

我们不需要速率限制,身份验证,缓存或任何其他类似网关的功能。

使用非常简单的无状态Nginx容器路由到底层服务是否是一种有效的方法?

2 个答案:

答案 0 :(得分:2)

是的,Nginx可以是部署和服务(loadbalancer或externalIP类型),可以转发到上游服务。

您可能不得不经常更改nginx.conf(当您添加/删除服务时),因此我建议使用ConfigMap保留您的nginx.conf并将其作为卷部署在您的部署中。请参阅:http://kubernetes.io/docs/user-guide/configmap/并向下滚动以通过卷使用configmap。

要记住的另一件事是,如果删除并创建nginx.conf中引用的服务作为上游服务,则必须重新启动部署,因为nginx在nginx时解析所有服务DNS标签启动。

答案 1 :(得分:0)