ElasticSearch 1. 认识和安装

ElasticSearch

来自百度百科:

  Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。官方客户端在Java、.NET(C#)、PHP、Python、Apache Groovy、Ruby和许多其他语言中都是可用的。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr,也是基于Lucene。
  Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用Elasticsearch的水平伸缩性,能使数据在生产环境变得更有价值。Elasticsearch 的实现原理主要分为以下几个步骤,首先用户将数据提交到Elasticsearch 数据库中,再通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据,当用户搜索数据时候,再根据权重将结果排名,打分,再将返回结果呈现给用户。
  Elasticsearch是与名为Logstash的数据收集和日志解析引擎以及名为Kibana的分析和可视化平台一起开发的。这三个产品被设计成一个集成解决方案,称为“Elastic Stack”(以前称为“ELK stack”)。

 
ELK传送门
ES官网:https://www.elastic.co/cn/elasticsearch/

ES相关概念

NRT(Near Realtime)  近实时  
cluster  集群  
Node     节点(集群中的一台服务器)  
index    索引(类似于Mysql中的一个数据库)  
type     类型(类似于数据库中的一张表)  
document 文档(类似于表中的一条数据)  
Field    字段(一条数据中的一列,一个字段)  
shard    分片(ES把一个index里面的数据,分为多个shard,分布式的存储在各个服务器上面)  
replica  副本(ES集群中,一模一样的数据有多份,能正常提供查询和插入的分片叫做 primary shard,其余的管它们叫做 replica shard(备份的分片))  

ES单机版安装

# 下载elasticsearch安装包
wget 下载或上传安装包
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.2.1-linux-x86_64.tar.gz  
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.2.1-linux-x86_64.tar.gz.sha512
shasum -a 512 -c elasticsearch-7.2.1-linux-x86_64.tar.gz.sha512 
tar -xzf elasticsearch-7.2.1-linux-x86_64.tar.gz
cd elasticsearch-7.2.1/


修改配置文件./config/elasticsearch.yml
cluster.name: my-application
node.name: node-1
path.data: /path/elasticsearch/data
path.logs: /path/elasticsearch/logs
network.host: 192.168.75.131
http.port: 9200
discovery.seed_hosts: ["192.168.75.130:9300"]
cluster.initial_master_nodes: ["node-1"]

启动服务:./bin/elasticsearch
1. 报错:不能以root用户启动(解决:新建其他用户并授权,用其他用户启动)
创建普通用户
groupadd elastic
useradd elastic -g elastic
passwd elastic
把各种es相关目录关联给elastic用户
chown -R elastic:elastic /path   # es安装目录/日志目录
2. 报错:[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]。。。  
编辑 /etc/security/limits.conf,追加以下内容;
	* soft nofile 65536
	* hard nofile 65536
	* soft nproc 5000
	* hard nproc 5000
编辑/etc/sysctl.conf,追加:
	vm.max_map_count=655360
执行:sysctl -p
重启服务器
3. AccessDeniedException: /path/data/nodes (日志或数据存储目录权限缺失)
授权:chown -R elastic:elastic /path

启动elasticsearch

验证成功:访问9200端口
http://192.168.75.130:9200/
查看健康状态:
http://192.168.75.130:9200/_cluster/health?pretty

ElasticSearch 单机模式设置密码

vi /etc/elasticsearch/elasticsearch.yml
添加:
    http.cors.enabled: true
	http.cors.allow-origin: "*"
	http.cors.allow-headers: Authorization
	xpack.security.enabled: true
	xpack.security.transport.ssl.enabled: true
重启:
sudo systemctl restart elasticsearch.service

cd /usr/share/elasticsearch/bin/
./elasticsearch-setup-passwords interactive
(为用户elastic, kibana, logstash_system,beats_system设置密码)  

Kibana

ElastciSearch的数据查询展示界面。
Kibana是一个开源的分析与可视化平台,设计出来用于和Elasticsearch一起使用的。你可以用kibana搜索、查看存放在Elasticsearch中的数据。Kibana与Elasticsearch的交互方式是各种不同的图表、表格、地图等,直观的展示数据,从而达到高级的数据分析与可视化的目的。

Kibana安装

# 下载kibana的npm
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.2.0-x86_64.rpm
# 检查版本
shasum -a 512 kibana-7.2.0-x86_64.rpm 
# 安装
sudo rpm --install kibana-7.2.0-x86_64.rpm

配置外网访问
/etc/kibana/kibana.yml
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://192.168.1.1:9200","http://192.168.1.2:9200","http://192.168.1.3:9200"]

加入开机启动
sudo /bin/systemctl daemon-reload
sudo /bin/systemctl enable kibana.service
启停
sudo systemctl start kibana.service
sudo systemctl stop kibana.service

Kibana安装后资源文件夹详情:
在这里插入图片描述

Kibana设置密码

vi /etc/kibana/kibana.yml
修改:
elasticsearch.username: "elastic"
elasticsearch.password: "123456"
重启:
sudo systemctl restart kibana.service

附:linux开放端口

1、开启防火墙 
systemctl start firewalld
2、开放指定端口
 firewall-cmd --zone=public --add-port=1935/tcp --permanent
 命令含义:
--zone #作用域
--add-port=1935/tcp  #添加端口,格式为:端口/通讯协议
--permanent  #永久生效,没有此参数重启后失效
3、重启防火墙
firewall-cmd --reload
4、查看端口号
netstat -ntlp   //查看当前所有tcp端口·
netstat -ntulp |grep 1935   //查看所有1935端口使用情况·
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值