精华 Neo4j 企业版因果集群监控方案 — Halin
发布于 4 年前 作者 yusonglin 1754 次浏览 来自 分享

halin-icon.png Halin 是 Neo4j 集群的自动监控解决方案,用于监视 Neo4j 数据库和集群,实时查看集群运行指标、日志、配置等数据。您可以使用它来判断瓶颈或配置错误,并以交互方式跟踪系统负载。需要注意的是它并不具有实时报警功能。Halin是一个简单的React应用程序,它使用BOLT连接到您的数据库。由于 Neo4j 已经在本地公开了Bolt和Cypher,因此无需配置即可使其与新的Neo4j实例一起使用。 Halin 同样可以监控 Neo4j 单节点,唯一真正的区别是数据库获得一个选项卡。实际上,在单机模式下,Halin 倾向于将 Neo4j 实例视为只有一个成员的集群。对于 Neo4j 社区版用户,某某些组件被禁用

1、安装

Halin 可通过浏览器 halin.graphapp.io 在线运行,并且可以连接到本地和远程数据库。该应用程序也可以作为应用程序从 https://install.graphapp.io 下载并安装到 Neo4j Desktop 。要在Neo4j Desktop 中通过自动更新将Halin作为Graph App使用,只需将Halin URL粘贴到Graph App Install侧栏中。有关详细信息,请参见GitHub自述文件。还可以通过 Docker 或者 本地安装,运行 Halin 应用程序。

1) 自行部署 Halin(例如:公司防火墙或者内网)

  • yarn install ;
  • 本地编辑 package.json,然后将“homepage”字段更改为部署Halin时可访问的URL。例如,如果您使用公司内网https://fileserver.mycompany.com,则可以将其设置为 https://fileserver.mycompany.com/halin
  • npm run build构建完成的HTML / CSS工件;这将产生一个dist 文件夹,其中包含需要部署的所有内容;
  • 将dist文件夹中的所有内容复制到文件共享服务器;在上面的示例中,该halin目录将是由托管的目录fileserver.mycompany.com

2)在开发模式下运行 Halin

3)Running in Docker

docker run -d -p 127.0.0.1:3000:3000 --rm -t mdavidallen/halin:latest 打开浏览器 http://localhost:3000/ If you’d like to build the Halin docker container from source: docker build -t halin:latest -f Dockerfile .

4)作为GraphApp运行

Neo4j Desktop 启用开发模式; 对于开发应用程序的切入点,请使用http://localhost:3000/ ; 详情查看 moxious/halin。

2、主要功能

  • 集群总览
  • 节点监控
  • 诊断顾问
  • 配置清单
  • 活动查询
  • 运行指标
  • 日志文件
  • 用户管理

3、功能介绍

1)登录

配置Host、Port、Username、Password等信息,点击“Connect”。 截屏2020-04-07下午12.31.11.png

2)集群总览

在 Neo4j 支持人员的帮助下,Halin 创建了一个仪表板,以显示整个集群的运行状况。连接后,Halin将获取有关集群或单个实例的信息,并将您带到集群总览页面。 截屏2020-04-07下午12.31.26.png

3)节点监控

除了集群总览之外,集群中的各个节点也很重要,还有一些选项可以监视有关它们的许多不同指标,包括CPU /内存利用率、Neo4j 占用的磁盘空间、实时页面缓存信息和计算机特定的配置。 在“Members”,我们可以看到集群的三个节点(带有绿色星号的一个是 Leader)。每个图都可以启用或禁用节点,因此您可以分别查看统计信息。 内存管理对于Neo4j实例性能影响非常大,您可以看到内存垃圾回收峰值、事务负载以及页面缓存利用率的各种指标,这些指标可以帮助诊断性能问题。 截屏2020-04-07下午12.31.40.png

4)数据库管理

查看数据库文件占用大小等信息。 截屏2020-04-07下午12.31.50.png

5)用户管理

Halin 还提供了一个用于创建用户和角色的界面,允许您将任何用户与角色相关联(前提是您以管理员用户身份登录Halin)。因为集群的每个节点都分别管理身份验证,所以通常如果要在所有节点上创建用户,则必须运行相同的代码才能在每个位置创建该用户,Halin为您自动执行此操作,并尝试在集群范围定义用户。 截屏2020-04-07下午12.31.59.png

6)诊断顾问

Halin 包含一个诊断顾问。顾问程序的目的是让您下载诊断信息包,该信息包将为您提供整个群集配置的广泛概述,并且还可以帮助自动查找配置问题。这会即时收集有关Neo4j实例的大量元数据,然后通过一系列规则运行它,这些规则会根据适合的、可以使用的改进以及有错误的地方提出建议。该规则集将随着时间和用户建议而增长。 截屏2020-04-07下午12.32.08.png 截屏2020-04-07下午12.32.58.png 截屏2020-04-07下午12.53.54.png 在上面的屏幕截图中,我们可以看到一些绿色的复选标记,表示Halin已检查好(我们有管理员用户,已启用备份但不在外部端口上,并且网络端口设置看起来不错)。 您可以单击“下载诊断”按钮,然后下载包含Halin收集的所有内容的 JSON 文件。

7)配置清单

您还会在 Advisor 旁边看到“Configuration Diff”工具。这将指出每台机器的配置文件是否有差异,这对于找出错误的配置也很有用。 截屏2020-04-07下午12.53.44.png

4、下一步干什么?

如果在 Neo4j 使用过程中遇到问题,那么Neo4j实例上尝试Halin,或者访问Neo4j社区站点,Halin的工作将是检测此问题是否存在(或即将发生),并提供有关如何避免或解决此问题的建议!

相关资源:

Releasehttps://github.com/moxious/halin/releases 资源https://github.com/moxious/halin 文档https://r.neo4j.com/halin

更多技术咨询:

联系人:于先生 Email:yusonglin@we-yun.com 微信号:ysllong_0226 微云数聚网址:www.we-yun.com

回到顶部