ElasticSearch 下载地https://www.elastic.co/downloads/elasticsearch;
使用的安装包有
elasticsearch-7.6.1-linux-x86_64.tar.gz
elasticsearch-7.6.1-windows-x86_64.zip
elasticsearch-analysis-ik-7.6.1.zip
elasticsearch-head-master.zip
1.elasticsearch window和linux安装
1.首先是windows版本的安装,下载后解压进入到你安装的盘符我的是D:\ES\elasticsearch-7.6.1\config中,打开elasticsearch.yml,最下面添加如下内容:
//使elasticsearch-head-master插件可以跨域访问
http.cors.enabled: true
http.cors.allow-origin: "*"
然后双击执行 elasticsearch.bat 。等待打印信息输出完之后打开浏览器,输入:http://localhost:9200/ 。页面显示如下,则说明安装好了。
{
"name" : "node-1",
"cluster_name" : "my-es",
"cluster_uuid" : "ChOV85ePT0utnPuY-w74WQ",
"version" : {
"number" : "7.6.1",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "aa751e09be0a5072e8570670309b1f12348f023b",
"build_date" : "2020-02-29T00:15:25.529771Z",
"build_snapshot" : false,
"lucene_version" : "8.4.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
2.linux安装稍麻烦一点
(安装好后如果虚拟机重启后无法访问重启防火墙命令
systemctl restart iptables.service)
将安装包放到usr/local目录下解压,然后进入config文件下打开elasticsearch.yml,修改内容如下
#配置es的集群名称,默认是elasticsearch,es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群。
cluster.name: my-es
#节点名称
node.name: node-1
#设置索引数据的存储路径
path.data: /usr/local/elasticsearch/data
#设置日志的存储路径
path.logs: /usr/local/elasticsearch/logs
#设置当前的ip地址,通过指定相同网段的其他节点会加入该集群中
network.host: 0.0.0.0
#设置对外服务的http端口
http.port: 9200
#将节点一加入
cluster.initial_master_nodes: ["node-1"]
#保证可以跨域访问使用浏览器可以访问虚拟机的linux
http.cors.enabled: true
http.cors.allow-origin: "*"
注:
1、补齐必要的目录
mkdir -p /usr/local/elasticsearch/data
mkdir -p /usr/local/elasticsearch/logs (目录可能已经存在,需先确定清楚)
2、network.host: 0.0.0.0
修改Elasticsearch的配置,使其支持外网访问。在浏览器中,访问http://xxxx:9200/(xxxx是运行elasticsearch的服务器的ip地址)即可。否则这可以在本机使用。
因为安全问题elasticsearch 不让用root用户直接运行,所以要创建新用户。
具体操作如下:
useradd testuser
passwd testuser
再输入两次密码(自定义)
为用户赋权限
chown -R testuser:testuser /usr/local/elasticsearch
然后切换使用es用户启动 :su testuser
cd /usr/local/elasticsearch
3.如果启动后在linux内可以访问,而无法在外部访问可以查看是否是防火墙未开启端口
[root@localhost src]# cd /etc/sysconfig/
[root@localhost sysconfig]# vim iptables
//添加下面的命令去添加未开放的端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 9200 -j ACCEPT
linux内访问命令:curl 本机ip:9100
最后
修改内核参数、线程等配置 (否则启动后可能会报错)
vi /etc/security/limits.conf
添加
soft nofile 65536
hard nofile 131072
soft nproc 2048
hard nproc 4096
vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
最后记得执行:sysctl -p
大功告成 最后 在es根目录下 bin/elasticsearch启动es
2.elasticsearch-head-master插件安装
首先下载node.js
然后下载elasticsearch-head-master.zip安装包
解压后在根目录输入npm install可能要等待很久
然后再npm run start
打开ip:9200就可以进入页面操作了
注意:
如果npm install出现一直停留在"fetchMetadata: sill pacote range manifest for "解决方法
npm config set registry https://registry.npm.taobao.org
– 配置后可通过下面方式来验证是否成功
npm config get registry 或npm info express
或者
使用 npm config set registry http://registry.cnpmjs.org/
然后
npm i