Linux下安装elasticsearch和kibana
Elasticsearch介绍和安装
Elastic官网: link.
Elastic有一条完整的产品线及解决方案:Elasticsearch、Kibana、Logstash等,前面说的三个就是大家常说的ELK技术栈。
Elasticsearch官网: link.
Elasticsearch具备以下特点:
分布式,无需人工搭建集群(solr就需要人为配置,使用Zookeeper作为注册中心)
Restful风格,一切API都遵循Rest原则,容易上手
近实时搜索,数据更新在Elasticsearch中几乎是完全同步的。
安装
-
安装和配置(Elasticsearch是用Java语言开发的所有需要事先安装JDK1.8及以上)
-
出于安全考虑,elasticsearch默认不允许以root账号运行。先新建一个用户并切换
-
解压
-
查看目录结构,修改配置
进入config目录:cd config
需要修改的配置文件有两个:
1.jvm.optionsElasticsearch基于Lucene的,而Lucene底层是java实现,因此我们需要配置jvm参数。 编辑jvm.options: vim jvm.options -Xms512m -Xmx512m
2 .elasticsearch.yml
vim config/elasticsearch.yml network.host: 0.0.0.0 修改为0.0.0.0后则可以远程访问 http.port: 9200 path.data: /home/es/data # 数据目录位置 没有data目录就新建并授权 path.logs: /home/es/logs # 日志目录位置 node.name: "node-1" cluster.initial_master_nodes: ["node-1"]
-
给用户赋予对应的权限
chown -R es:es /usr/local/elasticsearch-7.6.2
-
运行;
进入elasticsearch/bin目录输入命令: ./elasticsearch &
-
错误解决
错误1max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144] vm.max_map_count:限制一个进程可以拥有的VMA(虚拟内存区域)的数量,继续修改配置文件 1.vim /etc/sysctl.conf 2. 添加下面内容: vm.max_map_count=655360 3.sysctl -p
错误2
max number of threads [1024] for user [leyou] is too low, increase to at least [4096] 这是线程数不够。 继续修改配置: 1.vim /etc/security/limits.d/90-nproc.conf 2.修改下面的内容: soft nproc 4096
-
启动
- 可以看到绑定了两个端口:
- 9300:集群节点间通讯接口
- 9200:客户端访问接口
- 在浏览器中访问:http://localhost:9200
kibana介绍和安装
Kibana是一个基于Node.js的Elasticsearch索引数据统计工具,可以利用Elasticsearch的聚合功能,生成各种图表,如柱形图,线状图,饼图等。
而且还提供了操作Elasticsearch索引数据的控制台,并且提供了一定的API提示,非常有利于我们学习Elasticsearch的语法。
-
安装
- 下载地址:链接: link.
- 解压到特定目录即可
- 查看目录结构
-
安装
- 进入安装目录下的config目录,修改kibana.yml文件:
- 修改elasticsearch服务器的地址:
- elasticsearch.hosts: [“http://localhost:9200”]
- server.port: 5601
- server.host: “0.0.0.0”
- 运行 进入bin目录输入命令: ./kibana&
效果
安装ik分词器
Lucene的IK分词器早在2012年已经没有维护了,现在我们要使用的是在其基础上维护升级的版本,并且开发为ElasticSearch的集成插件了,与Elasticsearch一起维护升级,版本也保持一致
github下载地址: link.
- 将下载后的压缩包上传的elasticsearch目录的plugins目录下
- unzip elasticsearch-analysis-ik-7.6.2.zip -d ik-analysis
- 然后重启elasticsearch(es用户启动):
ik分词器测试
在kibana控制台输入下面的请求:
POST _analyze
{
"analyzer": "ik_max_word",
"text": "我是中国人"
}
效果
至此 Linux下安装elasticsearch和kibana
才疏学浅,难免会有纰漏,如果你发现了错误的地方,可以在留言区提出来,我对其加以修改。
感谢您的阅读