【ElasticSearch+NetCore 第一篇】在Windows上安装部署ElasticSearch和ElasticSearch-head
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
一、下载ElasticSearch
官网下载地址:https://www.elastic.co/cn/downloads/elasticsearch
注意,现在ElasticSearch的最新版本为7.1.1,与6.x版本相比改动较大,但相关资源(稳定的SDK)并没有更新,所以容易造成问题,所以推荐下载6.8的版本使用。
二、安装ElasticSearch
新建ElasticSearchService文件夹,在该文件夹内新建node-1和node-2两个文件夹。将下载到的压缩包内的文件复制到node1文件夹内。
进入 node- > bin 目录,在该文件夹下 shift+右键 打开PowerShell或者Cmd窗口,输入 elasticsearch.bat 即可。注意,不同的cmd工具输入的格式可能可能有些出入,比如在powershell中,需要写成 ./elasticsearch
回车,等待程序启动完成。
打开浏览器,输入:http://localshot:9200,可以看到一段json数据,说明elasticsearch已经启动成功。
三、安装elasticsearch-head
ElasticSearch-head依赖NodeJs和Grunt,请先安装好nodejs环境,在此不做赘述。
github地址:https://github.com/mobz/elasticsearch-head
如果已经安装了git,可以直接使用git命令克隆一份代码到本地 git clone git://github.com/mobz/elasticsearch-head.git ,没有安装也可以手动下载zip包,解压后,后面的操作是一样的。
进入elasticsearch-head目录,运行 npm install ,因为某些原因,使用npm的速度会比较慢,所以建议使用 cnpm ,如果未安装,请 参考这里 。安装完成后,运行 cnpm install,静等安装完成即可。
当包全部安装结束,使用 npm run start 命令启动 elasticsearch-head
打开浏览器,输入:http://localhost:9100,进入管理界面。
这时,我们发现elasticsearch-head无法连接到服务,这是因为它和elasticsearch的交互是通过ajax来完成的,这里会存在跨域的问题,
解决的方式也很简单,找到elasticsearch的保存目录,在config文件夹下使用vscode打开 elasticsearch.yml 文件,在最下方输入以下代码:
- http.cors.enabled: true
- http.cors.allow-origin: "*"
保存,重启elasticsearch服务,重新打开 http://localhost:9100,连接成功。
四、安装多个ElasticSearch实例
ElasticSearch原生支持集群功能,配置起来也很简单,还是上面提到的 elasticsearch.yml 文件,需要添加几个配置:
- 集群名称【cluster.name】,要添加到集群的所有节点中,这个配置项必须有而且必须一致
- 节点名称【node.name】,当前节点的名称,这个配置项必须有,而且在集群中必须唯一
- 绑定IP【network.host】,服务绑定的ip地址,默认是 127.0.0.1,本地测试时可以省略,生产环境下,必须要有
- http端口【http.port】,默认使用9200端口,因为我是在同一台电脑上配置多个节点,所以在这里必须配置一个不同的端口,如果是部署在不同的电脑上,这个可以省略
- 服务发现【discovery.zen.ping.unicast.hosts】,这里配置的是集群通讯用的端口,默认是9300,如果实在多台机器上部署节点,那端口号可以省略,但如果在同一台机器上部署多个节点,需要指定端口号,默认会自动往后排 9301,9302...
OK,下面实际操作一下,停止node-1的服务,把文件拷贝一份到node-2文件夹。
分别打开相应目录下的 config > elasticsearch.yml文件,添加上面说到的配置项,最终的配置如下:
- http.cors.enabled: true
- http.cors.allow-origin: "*"
- cluster.name: taoxue
- node.name: node-
network.host: 127.0.0.1- http.port:
- discovery.zen.ping.unicast.hosts: ["127.0.0.1:9200", "127.0.0.1:9201"]
OK,分别启动这两个节点,在浏览器中打开 http://localhost:9200 和 http://localhost:9201,发现已经应用了我们的刚刚的配置。
这里注意下,如果你下载的是 7.x 版本的,集群配置稍有不同,这里我也贴一下在一台电脑上开多个节点的配置文件,但还是那句话,不建议使用7.x的版本,因为后面会有很多坑。
- http.cors.enabled: true
- http.cors.allow-origin: "*"
- cluster.name: taoxue
- node.name: node-
- http.port:
- cluster.initial_master_nodes: ["node-1","node-2","node-3"]
- http.cors.enabled: true
- http.cors.allow-origin: "*"
- cluster.name: taoxue
- node.name: node-
- http.port:
- cluster.initial_master_nodes: ["node-1","node-2","node-3"]
五、添加中文分词器插件 ElasticSearch-IK
github地址:https://github.com/medcl/elasticsearch-analysis-ik/
下载已经打包好的release包,注意要跟我们安装的ElasticSearch的版本一致。我安装的6.8.1版本,这里没有对应的IK版本,那就不管,找大版本最近的6.8.0。
下载完成以后,打开ElasticSearch的目录的plugins文件夹,新建一个文件夹命名为ik,把压缩包的内容拷贝进去。
启动ElasticSearch服务,发现无法运行,大概的意思是插件IK是基于6.8.0构建的,而现在运行的是6.8.1版本。不要慌,在刚才的ik文件夹内找到一个名为 plugin-descriptor.properties 的文件,用vscode打开,直接滚动到最后一行, elasticsearch.version=6.8. ,把这里的 6.8.0 改成 6.8.1,保存,然后重新启动服务,可以发现,可以正常启动了。
至此,elasticsearch的安装就结束了,下一篇,我们将尝试使用aspnetcore + elasticsearch实现一些简单的增删改查的工作。
【ElasticSearch+NetCore 第一篇】在Windows上安装部署ElasticSearch和ElasticSearch-head的更多相关文章
- ElasticSearch入门 第一篇:Windows下安装ElasticSearch
这是ElasticSearch 2.4 版本系列的第一篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...
- Zabbix agent 在windows上安装部署
Zabbix agent 在windows上安装部署 1.下载与解压 地址: http://www.zabbix.com/downloads/2.4.4/zabbix_agents_2.4.4.win ...
- 在Windows上安装部署Cuckoo
1. Cuckoo使用的第三方工具及库 Yara:http://plusvic.github.io/yara/ Pydeep:https://github.com/kbandla/pydeep Yar ...
- 【Docker】第一篇 Docker的初始化安装部署
一.Docker基础 Dacker倡导的理念:一个容器一个进程 Docker的版本了解: Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE. 社区版是免费提供给个人 ...
- [dart学习]第一篇:windows下安装配置dart编译环境,写出helloworld
前言 博主非科班出身,平时多用C语言,最近想了解学习一门第二语言,看上了可用于移动开发的目前还小众一点dart,准备用一段比较长的时间来慢慢学习.理解. 关于dart语言不再详细介绍了,大家可以访问 ...
- Linux基石【第一篇】VMware上安装Centos及配置
一.安装VMware软件 首先,下载个VMware软件,直接百度:VMware,然后找到可以下载的就可以 然后按步骤安装即可,安装完后,双击打开 二.安装Centos系统 打开VMware虚拟机,然后 ...
- 如何在windows上安装部署设置SVN服务器
1 一.准备工作 1.SVN服务器:解压缩包,可以从官方网站下载最新版本. 2.SVN客户端:TortoiseSVN,即常说的小乌龟,是一个客户端程序,用来与服务器端通讯. 2 二.安装服务器和客 ...
- 在Windows上安装Elasticsearch 5.0
在windows上安装Elasticsearch Elasticsearch可以使用.zip软件包安装在Windows上. elasticsearch-service.bat命令,它将设置Elasti ...
- 在Windows上安装Elasticsearch 5.x
在Windows上安装Elasticsearch 5.x 自己想学习Elasticsearch,但是又不懂Linux,按照同事给的Linux安装教程,也是搞不明白,于是想先在Windows上安装一下入 ...
随机推荐
- RabbitMQ队列,Redis\Memcached缓存
RabbitMQ RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统. MQ全称Message Queue,消息队列(MQ)是一种应用程序对应用程序的通信方式.应用程序通过读写出入队列 ...
- 【转】 Pro Android学习笔记(五七):Preferences(1):ListPreference
目录(?)[-] 例子1ListPreference小例子 定义一个preferences XML文件 继承PreferenceActivity 用户定制偏好的读取 第一次运行时设置缺省值 设置Cat ...
- c++对象导出到lua
转自:http://www.cnblogs.com/ringofthec/archive/2010/10/26/luabindobj.html 虽然有tolua++, luabind等等, 不过自己手 ...
- JavaScript设模式---单例模式
单例模式也称为单体模式,其中: 1,单体模式用于创建命名空间,将系列关联的属性和方法组织成一个逻辑单元,减少全局变量. 逻辑单元中的代码通过单一的变量进行访问. 2,三个特点: ① 该类只有一个实例: ...
- 核PCA与PCA的精髓和核函数的映射实质
1.PCA简介 遭遇维度危机的时候,进行特征选择有两种方法,即特征选择和特征抽取.特征选择即经过某种法则直接扔掉某些特征,特征抽取即利用映射的方法,将高维度的样本映射至低维度.PCA(或者K-L变换) ...
- 第七篇 elasticsearch 链接mysql不会更新
这是我键的索引 "settings":{ "number_of_shards":3, "number_of_replicas":2 }, & ...
- 6.5 通过命令安装git
本来是一头雾水,以为很麻烦,结果,一句命令就搞定: 安装完后,在搜索框搜索,即出现github.
- hdu1054
/* [题意] 给定一棵树,标记一节点,则与该节点所连的边都被标记,问最少需要标记多少个节点使得所有边都被标记: 或者说给定一个树型城堡,在交叉路口放一个士兵,则与该路口相连的路都被守住, 问最少需要 ...
- 2016 年排名 Top 100 的 Java 类库
我们分析了GitHub中47,251个依赖,从中找出了排名前一百的Java类库,让我们看看谁在前面,谁在后面. 我们在漫长的周末的消遣方式就是浏览GitHub并且搜索流行的Java类库.我们决定把其中 ...
- win7 系统安装 docker
如果顺利的话,步骤如下: 1.下载DockerToolbox 2.安装DockerToolbox,默认配置,一路下一步即可完成安装 3.安装成功后,桌面会新增三个快捷方式,如下图 4.点击运行Dock ...