开发者社区 > 云原生 > 正文

你们一般线上使用Sentinel 会使用 官方提供的 dashboard吗?

大佬们,你们一般线上使用Sentinel 会使用 官方提供的 dashboard吗?会不会直接暴露 服务的HttpServer的端口(spring.cloud.sentinel.transport.port= )?

展开
收起
奔放或澜 2023-12-03 12:17:26 98 0
2 条回答
写回答
取消 提交回答
  • Sentinel是阿里中间件团队开源的轻量级高可用流量控制组件,主要以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度帮助用户保护服务的稳定性。它分为核心库和控制台两个部分,核心库不依赖任何框架/库,集成了主流框架,可以进行单机限流降级等功能,而控制台Dashboard则提供了可视化的管理限流规则、对接Sentinel等多种功能。

    对于线上使用Sentinel是否会使用官方提供的dashboard,这主要取决于实际需求。Sentinel的控制台模块可以图形化地监控机器以及服务的运行情况,配置复杂的各种流控、降级等规则,以保证线上服务的稳定运行。但同时,需要知道的是,控制台(Dashboard)基于 Spring Boot 开发,打包后可以直接运行,不需要额外的 Tomcat 等应用服务器。

    关于暴露服务HttpServer端口的问题,在应用对应的机器上启动一个Http Server来与Sentinel控制台做交互是必须的。然而在生产环境中直接暴露这个端口可能会带来安全风险,因为任何人都可以通过该端口访问到Sentinel的控制接口。为了解决这个问题,我们可以采取以下两种措施:限制访问来源,只允许来自特定IP或者网络段的请求访问Sentinel的控制接口;加密通信,可以启用SSL/TLS加密来保护Sentinel与Dashboard之间的通信,以防止数据被窃取或篡改。

    另外,对于暴露服务端口的具体配置,我们可以通过-Dcsp.sentinel.dashboard.server属性来指定控制台对外暴露的服务地址和端口。例如,可以将localhost:8080设置为dashboard地址和端口。同时,通过-Dcsp.sentinel.api.port属性来指定客户端暴露给Dashboard调用的端口(默认是8719)。

    总的来说,Sentinel的dashboard提供了强大的功能,能够有效地管理和保护服务的稳定性。但在使用时也需要注意相关的安全问题,避免因端口暴露导致的安全隐患。

    2023-12-05 10:13:33
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    Sentinel是阿里巴巴开源的一款流量控制组件,主要用于服务的保护和熔断。在生产环境中,使用Sentinel Dashboard是比较常见的做法,因为除了规则管理及推送外,它还提供了监控功能,支持可靠、快速的实时监控和历史监控数据查询。Sentinel Dashboard以Spring Boot应用的方式运行,暴露端口是必要的,但端口号需要确保不被占用。若出现端口冲突问题,可以通过修改配置文件或者调整端口号来解决。

    然而,暴露Sentinel服务的HttpServer端口可能会带来安全隐患。攻击者一旦获取到这个端口信息,就可能对服务进行攻击。因此,在生产环境中部署Sentinel Dashboard时,必须非常小心。要确保只有授权的用户才能访问,并采取一些安全措施,例如使用HTTPS加密通信、限制访问来源等。同时,还需要定期检查和更新Sentinel的规则,防止恶意流量攻击。

    总的来说,虽然Sentinel Dashboard在生产环境中具有很多优点,能够极大地方便我们对服务的管理和保护。但是在使用过程中也需要考虑到安全问题,做好防护措施,以保证服务的稳定性和安全性。

    2023-12-03 20:05:21
    赞同 展开评论 打赏
问答分类:
问答地址:

阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。

相关电子书

更多
阿里云容器 AHAS Sentinel 网关流控揭秘 立即下载
workshop专场-微服务专场-开发者动手实践营-微服务-使用Sentinel进行微服务流量控制 立即下载
Sentinel分布式系统下的流量防卫兵 立即下载