十一、.net core(.NET 6)搭建ElasticSearch(ES)系列之ElasticSearch、head-master、Kibana环境搭建

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 搭建ElasticSearch+Kibana环境,前提条件:已经配置好JDK环境以及Nodejs环境。如果还未配置,请查看我的上一篇博客内容,有详细配置教程。先下载ElasticSearch(以下文章简称ES))、Kibana、以及简单可视化工具 head-master。注意,ES版本和Kibana或以后可能使用的Logstash版本必须一致,可以避免一些可能存在的不兼容或版本冲突等意外情况。


搭建ElasticSearch+Kibana环境


前提条件:已经配置好JDK环境以及Nodejs环境。如果还未配置,请查看我的上一篇博客内容,有详细配置教程。


先下载ElasticSearch(以下文章简称ES))、Kibana、以及简单可视化工具 head-master。注意,ES版本和Kibana或以后可能使用的Logstash版本必须一致,可以避免一些可能存在的不兼容或版本冲突等意外情况。


ES下载地址:

https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.13.1-windows-x86_64.zip


kibana下载地址:

https://artifacts.elastic.co/downloads/kibana/kibana-7.13.1-windows-x86_64.zip


elasticsearch-head-master下载地址:

链接:https://pan.baidu.com/s/1c-bMBAx0gMIBctNMfu2k1A 


提取码:head

都下好以后,解压缩到自己指定的某个文件夹下即可。

先看ES解压的内容:

1995789-20210605160948468-910450726.png


在启动ES之前,我们需要先做一些配置的修改。在config文件夹下,有一个elasticsearch.yml文件,这里面可以配置ES的启动端口号等信息。默认端口号是9200,如果需要修改成其他端口,需要把注释打开,然后把9200改成其他所需要的即可。此处我默认还是9200,不做更改:

1995789-20210605161022003-1729417567.png


然后是jvm.options文件,这个是基于java虚拟机的一个配置文件,因为ES底层是Java写的,所以需要基于虚拟机进行启动。里面配置了一些有关的参数,咱们可以进行一些修改。例如,默认配置分配的启动内存是4G,对于一般机器而言,可能有点压力,所以咱们可以对分配的内存大小进行限制:注意,最小是256M起步,不能低于256,不然起不来。我电脑应该跑得起来,就配置个2G~~

1995789-20210605161035959-693042011.png

 

注意事项:打开注释以后,配置信息需要顶格,以下我的写法不规范,容易出错哟!如果启动不起来,记得找下是不是因为没有顶格的原因导致的。

 1995789-20210605161055644-1774898645.png


然后,进入到bin文件夹下,点击 elasticsearch.bat进行启动:


1995789-20210605161110017-737794195.png


显示一堆东西以后,就代表启动完成了。这个时候,我们打开localhost:9200看看效果(默认9200,实际多少按照自己配置的为准)

1995789-20210605161125152-1146733002.png


显示如上所示的json信息,代表ES启动成功,恭喜恭喜~~接下来,配置可视化工具 head-master。先解压缩elasticsearch-head-master以后,进入到解压缩目录,可以看到这么些东西:

1995789-20210605161140980-560871005.png


打开命令提示符(建议使用管理员权限),进入到该目录下,然后使用 npm install 命令来安装有关环境:


1995789-20210605161211217-843310294.png

等下载完毕即可。


然后,在目录下的Gruntfile.js可以配置head-master的端口号等信息,head-master默认端口号为9100

1995789-20210605161230411-1636937101.png

 

_site文件夹下的app.js文件,可以修改连接ES的地址和端口号,假如ES部署在其他服务器上,或者端口号不一致,都可以在这儿进行修改。由于我都是在本地上的按照默认配置进行的,所以保持当前默认状态:

1995789-20210605161248569-635046629.png


ES可能需要跨域,咱们给ES加上跨域,这样才能让head-master连接上。在ES目录下的config文件夹下,在yml配置文件里面的最后面,新增跨域有关内容:

http.cors.enabled: true

http.cors.allow-origin: "*"

node.master: true

node.data: true


主要是前两个,后面两个默认情况下也是true,用于表示该节点是否有资格被选举成为node 和 该节点是否存储索引数据


1995789-20210605161501170-1391882013.png


准备就绪,重启ES,在ES控制台窗口按住ctrl+c进行关闭,然后再次点击es.bat文件进行启动。启动成功以后,切换回head-master的控制台窗口,输入 npm run start 进行启动:


1995789-20210605161527047-761172536.png

启动成功以后,打开 localhost:9100看看效果:


1995789-20210605161545227-818268200.png

由此可见,head-masteres进行通信成功。


颜色说明:绿色:最健康的状态,代表所有的主副分片都可用;黄色:所有的主分片可用,但是可能副分片无法使用;红色:部分主分片不可用,可能个别情况下还会有些数据可以查询到,但是大部分可能用不了。


接下来,我们进行配置kibana有关环境。首先解压kibanna。解压以后的目录,如图所示:


1995789-20210605161609640-1020128001.png


修改config文件夹下的kibana.yml配置文件,其中,server.portkibana服务启动使用的端口号,默认是5601,如果需要更换,可以在此处进行更改;elasticsearch.hostskibana连接的es所在的uri地址,此处进行配置对应的es的连接地址和端口号,默认情况下是使用本地的es地址以及默认的端口号9200


1995789-20210605161623011-1864550926.png

在配置文件最后面,可以看见当前kibana页面所优先显示的语言,如果没有设置,或者一般默认设置的都是英文。想要改成中文,需要更改i18n.locale:的值为 "zh-CN"

1995789-20210605161641285-1518589641.png

 

接下来,启动kibana。在kibanabin目录下,双击kibana.bat即可启动:

1995789-20210605161652765-2035109203.png

 

启动成功以后,我们打开对应的kibanna服务地址,此处我这边使用的默认地址 localhost:5601

1995789-20210605161706060-11770646.png

 

页面打开成功,上面就可以开始做一些可视化处理和查询等功能了。

1995789-20210605161715375-1925278689.png

 

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
目录
相关文章
|
1月前
|
开发框架 .NET 开发者
简化 ASP.NET Core 依赖注入(DI)注册-Scrutor
Scrutor 是一个简化 ASP.NET Core 应用程序中依赖注入(DI)注册过程的开源库,支持自动扫描和注册服务。通过简单的配置,开发者可以轻松地从指定程序集中筛选、注册服务,并设置其生命周期,同时支持服务装饰等高级功能。适用于大型项目,提高代码的可维护性和简洁性。仓库地址:<https://github.com/khellang/Scrutor>
50 5
|
24天前
|
存储 缓存 监控
极致 ElasticSearch 调优,让你的ES 狂飙100倍!
尼恩分享了一篇关于提升Elasticsearch集群的整体性能和稳定性措施的文章。他从硬件、系统、JVM、集群、索引和查询等多个层面对ES的性能优化进行分析,帮助读者提升技术水平。
|
2月前
|
开发框架 .NET C#
在 ASP.NET Core 中创建 gRPC 客户端和服务器
本文介绍了如何使用 gRPC 框架搭建一个简单的“Hello World”示例。首先创建了一个名为 GrpcDemo 的解决方案,其中包含一个 gRPC 服务端项目 GrpcServer 和一个客户端项目 GrpcClient。服务端通过定义 `greeter.proto` 文件中的服务和消息类型,实现了一个简单的问候服务 `GreeterService`。客户端则通过 gRPC 客户端库连接到服务端并调用其 `SayHello` 方法,展示了 gRPC 在 C# 中的基本使用方法。
54 5
在 ASP.NET Core 中创建 gRPC 客户端和服务器
|
1月前
|
开发框架 缓存 .NET
GraphQL 与 ASP.NET Core 集成:从入门到精通
本文详细介绍了如何在ASP.NET Core中集成GraphQL,包括安装必要的NuGet包、创建GraphQL Schema、配置GraphQL服务等步骤。同时,文章还探讨了常见问题及其解决方法,如处理复杂查询、错误处理、性能优化和实现认证授权等,旨在帮助开发者构建灵活且高效的API。
37 3
|
22天前
|
开发框架 算法 中间件
ASP.NET Core 中的速率限制中间件
在ASP.NET Core中,速率限制中间件用于控制客户端请求速率,防止服务器过载并提高安全性。通过`AddRateLimiter`注册服务,并配置不同策略如固定窗口、滑动窗口、令牌桶和并发限制。这些策略可在全局、控制器或动作级别应用,支持自定义响应处理。使用中间件`UseRateLimiter`启用限流功能,并可通过属性禁用特定控制器或动作的限流。这有助于有效保护API免受滥用和过载。 欢迎关注我的公众号:Net分享 (239字符)
46 0
|
2月前
|
存储 JSON Java
ELK 圣经:Elasticsearch、Logstash、Kibana 从入门到精通
ELK是一套强大的日志管理和分析工具,广泛应用于日志监控、故障排查、业务分析等场景。本文档将详细介绍ELK的各个组件及其配置方法,帮助读者从零开始掌握ELK的使用。
|
2月前
|
存储 监控 安全
|
3月前
|
自然语言处理 搜索推荐 关系型数据库
elasticsearch学习六:学习 全文搜索引擎 elasticsearch的语法,使用kibana进行模拟测试(持续更新学习)
这篇文章是关于Elasticsearch全文搜索引擎的学习指南,涵盖了基本概念、命令风格、索引操作、分词器使用,以及数据的增加、修改、删除和查询等操作。
43 0
elasticsearch学习六:学习 全文搜索引擎 elasticsearch的语法,使用kibana进行模拟测试(持续更新学习)
|
3月前
|
存储 JSON Java
elasticsearch学习一:了解 ES,版本之间的对应。安装elasticsearch,kibana,head插件、elasticsearch-ik分词器。
这篇文章是关于Elasticsearch的学习指南,包括了解Elasticsearch、版本对应、安装运行Elasticsearch和Kibana、安装head插件和elasticsearch-ik分词器的步骤。
339 0
elasticsearch学习一:了解 ES,版本之间的对应。安装elasticsearch,kibana,head插件、elasticsearch-ik分词器。
|
3月前
|
运维 监控 数据可视化
大数据-171 Elasticsearch ES-Head 与 Kibana 配置 使用 测试
大数据-171 Elasticsearch ES-Head 与 Kibana 配置 使用 测试
127 1