ElasticSearch简介与安装配置

tech2022-10-25  113

ES简介

ES是一个基于RESTful web接口并且构建在Apache Lucene之上的开源分布式搜索引擎。 特点是:高可用,高扩展,是一种NOSQL的数据存储工具

ES安装前的准备

下载: elasticsearch-6.2.2.tar.gz elasticsearch-head-master.zip elasticsearch-analysis-ik-6.2.2.zip kibana-6.2.2-linux-x86_64.tar.gz logstash-6.2.2.tar.gz node-v8.9.1-linux-x64.tar.gz

ES安装

1.把下载好的安装包,拖拽到/software目录中 2.输入:yum install -y unzip 下载解压缩工具 3.输入:cd /software 进入安装包目录,输入ll可以查看目录中的文件 4.输入:tar -zxvf elasticsearch-6.2.2.tar.gz -C /opt 5.输入:tar -zxvf kibana-6.2.2-linux-x86_64.tar.gz -C/opt 6.输入:tar -zxvf logstash-6.2.2.tar.gz -C /opt 7.输入:tar -zxvf node-v8.9.1-linux-x64.tar.gz -C/opt 8.输入:unzip elasticsearch-head-master.zip 9.输入 mv elasticsearch-head-master /opt/eshm 把解压的文件夹移动并改名 10.输入:cd /opt 11.输入:mv kibana-6.2.2-linux-x86_64/ kibana622 12.输入:mv logstash-6.2.2/ logstash622 13.输入:mv node-v8.9.1-linux-x64/ node8

ES的配置

1.输入:vi /etc/hostname 修改主机名 2.输入:vi /etc/hosts 修改主机列表 3.配置es的参数 (1)输入:vi /opt/es622/config/elasticsearch.yml,按shift+g,快速定位到尾行,按o在下一行插入以下内容: cluster.name: test --集群名 node.name: test-master --节点名 node.master: true --是否是主节点 network.host: 192.168.56.110 --本机地址 discovery.zen.ping.unicast.hosts: ["192.168.56.110"] --同上 http.cors.enabled: true http.cors.allow-origin: "*" 4.配置系统参数 (1)输入:vi /etc/sysctl.conf 插入内容:vm.max_map_count=655360 最好首次也要使用以下命令刷新 sysctl -w vm.max_map_count=655360 (2)输入:vi /etc/security/limits.conf(配置完成可能需要重启) 插入内容: * soft nofile 65536 * hard nofile 65536 * soft nproc 4096 * hard nproc 4096 5.修改es622目录的属组(es不能使用root启动) chown -R bigdata:bigdata es622 6.输入:su bigdata 切换到普通用户 7.在/opt目录下输入:./es622/bin/elasticsearch 底部出现 started即是启动成功 8.在windows界面打开网页,输入http://192.168.56.110:9200/,可以正常出页面,切有节点的信息,即是启动成功

Head-master及node的配置

1.输入:vi /etc/profile 按shift+g定位到底部,然后按o在下一行插入以下内容: export NODE_HOME=/opt/node8 export PATH=$PATH:$NODE_HOME/bin (如之前在java配置过PATH变量则在原先的尾部增加: :$NODE_HOME/bin) 2.输入:source /etc/profile 激活配置文件,输入node -v 可以查看是否配置成功 3.输入:cd /opt/eshm 4.输入:npm install -g grunt-cli --等待的时间比较长,要有点耐心 5.输入:npm install 出错时需要输入: npm install phantomjs-prebuilt@2.1.14 --ignore-scripts 6.输入:vi Gruntfile.js,在以下位置高亮位置增加一行代码:hostname: ‘*’, connect: { server: { options: { port: 9100, hostname: '*', base: '.', keepalive: true } } 7.输入:vi _site/app.js,找到如下代码,并进行修改: this.base_uri =this.config.base_uri ||this.prefs.get("app-base_uri") || "http://localhost:9200"; 修改成为: this.base_uri =this.config.base_uri ||this.prefs.get("app-base_uri") || "http://192.168.56.110:9200"; 8.输入:npm run start 启动head-master 9.在windows界面,打开网页,输入:http://192.168.56.110:9100/

用Head-master对ES进行测试

1.点击索引页签,点击新建索引 2.点击总览页签,即可查看索引的情况

kibana安装,配置和实例

1、输入:cd /opt/kibana622 2、输入:vi config/kibana.yml 按shift+g跳转到行末,按o增加以下内容: server.host: "192.168.56.110" elasticsearch.url: "http://192.168.56.110:9200" 3、输入:./bin/kibana 运行kibana 4、在windows界面打开网页,输入http://192.168.56.110:5601/ 5、实例 PUT demo --增加 GET demo --查询 #删除 index DELETE demo #提交数据 PUT /demo/user/1 { "firstName":"luo","lastName":"xin","age":36,"hobby":"I like gongfu","interests":["games"] } #查询数据 GET demo/user/1 GET demo/user/_search GET demo/user/1?_source=age,lastName,hobby #删除指定数据 DELETE /demo/user/A_KKx3ABEZ3jJD3MqVuu #修改 POST /demo/user/1/_update{ "doc":{ "age":30 } } POST /demo/user/ { "firstName":"wang","lastName":"feng","age":51,"hobby":"I like changge","interests":["toutiao"] } GET /_mget GET /demo/user/_mget GET /demo/user/_mget{ "ids":[1,"BPKUx3ABEZ3jJD3MSlvF"] } POST _analyze{ "analyzer": "standard", "text": ["我是回家"] } POST _analyze{ "analyzer": "whitespace", "text": ["我 要 回家"] } POST demo2/books/_bulk {"index":{"_id":1}}{"title":"JAVA","price":35} {"index":{"_id":2}}{"title":"HTML","price":45} {"index":{"_id":3}}{"title":"MYSQL","price":55} GET demo2/books/_mget POST demo2/books/_bulk {"delete":{"_index":"demo2","_type":"books","_id":3}} {"update":{"_index":"demo2","_type":"books","_id":2}} {"doc":{"price":59}} DELETE demo2/books/3 GET demo2/books/_search?q=title:JAVA GET demo2/books/_search?q=title:JAVA&q=price:35

logstash实例

1.输入:cd /opt/logstash622 进入logstash的安装目录 2.输入:./bin/logstash -e ‘input { stdin{} } output { stdout{} }’ 来测试logstash是否正常工作 3.输入:./bin/logstash -e ‘input { stdin{} } output { stdout{ codec => json } }’ 把控制台输入的数据转换成json格式的数据,也可以替换成rubydebug类型的 4../bin/logstash -e ‘input { stdin{} } output { stdout{ codec => json } elasticsearch { hosts => [“192.168.56.110:9200”] } }’ 把控制台输入的数据转换成rubydebug类型的数据,同时上传到es服务器,可以在对应192.168.56.110:9100的页面进行查看 5.使用logstash读取文件 ./bin/logstash -f demo.conf demo.conf 的内容代码如下: input{ file{ path => "/opt/logstash622/test/demo.txt" start_position => "beginning" sincedb_path => "/dev/null" } } filter{ ruby{ code => "event.timestamp.time.localtime" } } output{ stdout{ codec => rubydebug } elasticsearch{ hosts => ["192.168.56.110:9200"] } }
最新回复(0)