本文版权归博客园和作者吴双本人共同所有 转载和爬虫请注明原文地址 www.cnblogs.com/tdws

一.linux centos7.x安装ES

1.下载java

 sudo yum install java-1.8.0-openjdk.x86_64
java -version 确认安装结果

2.下载和安装ES

 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.2.rpm
rpm -ivh elasticsearch-5.6.2.rpm
 systemctl enable elasticsearch

如果你机器内存小,就去/etc/elasticsearch 下 修改jvm.options

 systemctl start elasticsearch   //启动
systemctl status elasticsearch //状态

3.配置ES

nano /etc/elasticsearch/elasticsearch.yml

移除cluster.name和node.name前面的#井号来取消注释。另一个重要的配置是服务器角色master或slave。

master负责集群健康和稳定。在大型生产部署环境中通常有很多节点,建议拥有多个专用Master。通常专用master不会存储数据和创建indexes. 因此一般不会因过载而导致集群健康受到威胁。

slaves作为工作机,可以加载数据任务。即使slave节点过载,集群健康也不会受到严重的影响,其他节点可以承担额外的负载。

决定服务器角色的配置乘坐node.master。如果你只有一个ES节点,应该保持其默认值为true, 即唯一的节点也是master. 如果希望将节点配置为slave, 取消这行注释,并且把值修改为false.

node.master: false 

另一个重要的配置项是node.data , 它决定是否存储数据,在大多数情况下,此选项应保留默认值true.但是有两种情况你也许不希望节点存储数据,一个是结点作为专用master,另一个则是节点仅用于从其他节点获取数据并聚合结果的时候,这种情况也被称为 搜索负载平衡器,search load balancer.

再说到如果你只有一个ES节点的话,则应该注释此配置,并保留其默认true值。否则,为了禁用数据存储,则取消该行注释,并将值修改为false.

node.data: false

另外两个重要配置项为index.number_of_shards和index.number_of_replicas 。

前者决定index将会被分割成多少片(shards),第二个决定了在集群中被分发的副本(replicas)数。有更多的分片shards可以提高性能,有更多的replicas可以搜索更快。

如果你仍然在单节点的ES上探索和测试ES。最好从一个shards开始,然后设置无replicas.因此应按照如下设置(请确保取消注释)

index.number_of_shards: 1 
index.number_of_replicas: 0

最后一个你感兴趣的应该是修改path.data设置,它决定了数据的存储路径。默认设置为/var/lib/elasticsearch.在生产环境中,建议你使用专用分区和挂载点来存储数据。在最好的情况下,专用分区是一个单独的存储介质,以提供更好的性能和数据隔离。您可以通过取消注释并更改path.data的值,来指定不同的路径:

path.data: /media/different_media

在修改设置后不要忘了 restart es服务。下面使用几个基础命令测试一下:

 curl -X GET 'http://localhost:9200'

 curl -X POST 'http://localhost:9200/tutorial/helloworld/1' -d '
{ "message": "Hello World!" }' //存点数据 curl -X GET 'http://localhost:9200/tutorial/helloworld/1' //再获取下 curl -X PUT 'localhost:9200/tutorial/helloworld/1?pretty' -d '
{ "message": "Hello People!" }' 更新一下 curl -XGET 'http://localhost:9200/_count?pretty' -d ' { "query": { "match_all": {} } }' //计算文档数量

二.Docker搭建ES

虽然弄了两台服务器,但感觉还不够,Docker环境安装ES就比较方便了,正好也可以借着docker 开多个es镜像的容器来学习ES集群。更多的内容可以参考docker es文档https://www.elastic.co/guide/en/elasticsearch/reference/5.0/docker.html

 docker pull docker.elastic.co/elasticsearch/elasticsearch:5.6.2

//不过我的服务器内存还是不够开启那么多es,所以在启动容器实例的时候 设置了512m.

docker run -p 9301:9200 -e ES_JAVA_OPTS="-Xms512m -Xmx512m"  -e "xpack.security.enabled=false" docker.elastic.co/elasticsearch/elasticsearch:5.6.2

Centos7安装ES 和 Docker搭建ES的更多相关文章

  1. Docker搭建ES

    Centos7安装ES 和 Docker搭建ES 文版权归博客园和作者吴双本人共同所有 转载和爬虫请注明原文地址 www.cnblogs.com/tdws 一.linux centos7.x安装ES ...

  2. Docker搭建ES集群

    Spring Boot连接ES,spring-boot-starter-data-elasticsearch. 必须为集群方式!否则报错! 报错: None of the configured nod ...

  3. Centos7.6上利用docker搭建Jenkins来自动化部署Django项目

    一般情况下,将一个项目部署到生产环境的流程如下: 需求分析-原型设计-开发代码-内网部署-提交测试-确认上线-备份数据-外网更新-最终测试,如果发现外网部署的代码有异常,需要及时回滚. 整个过程相当复 ...

  4. 在阿里云Centos7.6上利用docker搭建Jenkins来自动化部署Django项目

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_84 一般情况下,将一个项目部署到生产环境的流程如下: 需求分析-原型设计-开发代码-内网部署-提交测试-确认上线-备份数据-外网更 ...

  5. Linux7(centOS7)安装jdk/tomcat/docker/mysql

    jdk的rpm安装.tomcat的解压缩安装.docker的yum安装.mysql的docker安装 下载地址 1.1.jdk下载地址 https://www.oracle.com/java/tech ...

  6. Docker搭建ElasticSearch+Redis+Logstash+Filebeat日志分析系统

    一.系统的基本架构 在以前的博客中有介绍过在物理机上搭建ELK日志分析系统,有兴趣的朋友可以看一看-------------->>链接戳我<<.这篇博客将介绍如何使用Docke ...

  7. Centos7安装Docker 基于Dockerfile 搭建httpd运行环境

    Centos7安装Docker 基于Dockerfile 搭建httpd运行环境 docker docker搭建 docker build 本文档完成目标内容如下 使用Docker搭建http服务器一 ...

  8. Docker搭建EFK日志收集系统,并自定义es索引名

    EFK架构图 一.EFK简介 EFK不是一个软件,而是一套解决方案,并且都是开源软件,之间互相配合使用,完美衔接,高效的满足了很多场合的应用,是目前主流的一种日志系统. EFK是三个开源软件的缩写,分 ...

  9. centos7安装docker、docker-compose、es7.3.0、kibana7.3.0

    一.安装docker 1.更新yum包 sudo yum update 2.卸载旧版本(如果安装过旧版本的话) sudo yum remove docker docker-common docker- ...

随机推荐

  1. Java之路上,让我们Stand Up Again

    在开始之前,先发表一下个人想法吧. 在读书的时候每天忙的不可开交,也就没有了所谓的自由,突然参加工作,传统的朝八晚五,标准的八小时工作制,每天都是两点一线,工作中涉及商业机密,公司的东西也不能带回家, ...

  2. 【MySQL】查看支持的字符集show character set;

  3. Sublime Text编辑器 + vim插件

    Sublime安装 Sublime Text 是一个代码编辑器.Sublime Text是由程序员Jon Skinner于2008年1月份所开发出来,它最初被设计为一个具有丰富扩展功能的Vim. Su ...

  4. JavaWeb之Java Servlet完全教程(转)

    Servlet 是一些遵从Java Servlet API的Java类,这些Java类可以响应请求.尽管Servlet可以响应任意类型的请求,但是它们使用最广泛的是响应web方面的请求. Servle ...

  5. Struts2学习---拦截器+struts的工作流程+struts声明式异常处理

    这一节我们来看看拦截器,在讲这个之前我是准备先看struts的声明式异常处理的,但是我发现这个声明式异常处理就是由拦截器实现的,所以就将拦截器的内容放到了前面. 这一节的内容是这样的: 拦截器的介绍 ...

  6. AutoLayout的几种方法

    1.XIB 2.Fram 3.屏幕比例适配(个人比较推荐)  iOS屏幕适配(尺寸适配) 4.NSLayoutConstraint. 5.Masonry  概述 使用 Objective-C 纯代码编 ...

  7. iOS 如何优化 App 的启动时间

    App 运行理论 main() 执行前发生的事 Mach-O 格式 虚拟内存基础 Mach-O 二进制的加载 理论速成 Mach-O 术语 Mach-O 是针对不同运行时可执行文件的文件类型. 文件类 ...

  8. ArcGIS 网络分析[8.6] 资料6 创建网络分析图层及进行路径分析

    基于上篇所介绍的内容,就说说如何利用访问到的网络数据集,在Map中添加网络数据集图层.创建网络分析图层中的路径图层,并执行路径分析示例.

  9. NOI 2005维护数列

    题目描述 请写一个程序,要求维护一个数列,支持以下 6 种操作:(请注意,格式栏 中的下划线‘ _ ’表示实际输入文件中的空格) 输入输出格式 输入格式: 输入文件的第 1 行包含两个数 N 和 M, ...

  10. Nginx集群之.Net打造WebApp(支持IOS和安卓)

    目录 1       大概思路... 1 2       Nginx集群之.Net打造WebApp(支持IOS和安卓) 1 3       安卓模拟器... 1 4       MUI框架... 3 ...