提供以下服务:api
,prometheus
(指标监控),grafana
(用于指标检查的用户界面)。
api
可以从外部(公开端口)进行访问,并且使用https以及OAuth(均用于公开指标)。
监视服务使用docker-compose一起部署,并且包括:
prometheus
不会公开任何端口,并且已配置为能够访问api服务来刮取指标。没有通过任何身份验证或加密(默认的docker-network加密除外)对其进行明确保护。
grafana
公开了一个可从devops团队访问的面向Web的端口,因此将其配置为使用ssl和基本身份验证。它使用docker-internal网络来查询prometheus,而无需任何身份验证。
我想知道此设置是否对普罗米修斯服务的安全性有重大不利影响?它一点也不安全,但是不能从外部访问。很好吗?还是应该在它前面放置一个反向代理,以添加ssl和(基本)身份验证,并让grafana使用该代理进行通信,而不是使用docker-network?
当存在赞成/反对者论点列表以及该问题中未提及或倾向于内部docker通讯或使用反向代理的强烈论点时,我认为该问题得到了回答。