安装和配置集群(Installing and Configuring your Cluster)

第一步是确保正确安装了 Java SE环境。ElasticSearch需要版本6或更高的版本,可以从下面的地址下载:http://www.oracle.com /technetwork/java/javase/downloads/index.html。如果您愿意,也可以使用OpenJDK。要安装 ElasticSearch,先从http://www.elasticsearch.org/download/ 下载并解压。选择最新的稳定版本。就是这样!安装完成。

注意:本书的写作过程中使用的版本是0.20.0。

与 ElasticSearch通信是基于HTTP协议和REST接口。这意味着,对于一些基本的查询和请求,您甚至可以使用一个web浏览器;但对于更复杂 的,您需要额外的软件,比如CURL命令。如果您使用Linux或mac OS X命令,CURL包应该已经可用。如果您使用的是Windows,您可以从http://curl.haxx.se/download.html 下载它。

目录结构(Directory structure)

现在让我们去新创建的目录中。我们可以看到下面的目录结构:

  目录(Directory)   描述(Description)
  bin   运行ElasticSearch实例和插件管理所需的脚本
  config   配置文件所在的目录
  lib   ElasticSearch所使用的库

ElasticSearch启动后,它将创建以下目录(如果它们不存在):

  目录(Directory)   描述(Description)
  data   存储ElasticSearch所使用的所有数据
  logs   实例运行期间产生的事件和错误信息的文件
  plugins   用于存储安装的插件
  work   临时文件

配置ElasticSearch(Configuring ElasticSearch)

原 因之一-但当然,不是独一无二的-ElasticSearch获得越来越多的关注,因为ElasticSearch入门非常容易。因为合理的默认值和自动 化的简单环境,我们可以不改变一行配置文件而直接跳过配置进入下一章。然而,为了真正理解ElasticSearch,值得去明白一些可用设置。

整 个配置位于config目录。我们可以看到两个文件:elasticsearch.yml(或elasticsearch.json,如果存在,它将被使 用)和logging.yml。第一个文件负责服务器缺省配置设置。这是很重要的,因为这些值可以在运行时改变并且作为集群的状态,所以这个文件中的值可 能不准确。我们将在第8章向您展示如何检查准确的配置,处理问题。我们在运行时不能改变的两个值是cluster.name和node.name。

cluster.name属性负责持有我们的集群的名称。集群名称分隔不同的集群。具有相同名称的节点配置将试图形成一个集群。

第 二个值是实例名。我们可以舍弃这个参数定义。在这种情况下,ElasticSearch自动选择一个唯一的名称。注意,这个名称是在每次启动后选择,所以 每次重启后名称是不同的。定义名称可以通过API指向具体实例或当使用监控工具看见长时间运行的节点和重新启动时正在发生的事情。如果您不提供一个名 称,ElasticSearch会自动选择一个随机的-所以同一个节点在重新启动后可以有不同的名称。考虑给节点描述性的名称。

文件中其它注释掉的参数,我们建议你浏览它。不要担心不理解,在阅读接下来的几章后,我们希望一切都会变得清晰。

第二个文件(logging.yml)定义了多少信息写入系统日志,定义了日志文件,并定期创建新文件。当你需要适应监控或备份方案,或在系统调式的时候,这个文件的变化是必要的。

现 在让我们离开配置文件。配置的一个重要组成部分是调优您的操作系统。在索引的时候,尤其是当您有很多分片和副本,ElasticSearch将创建多个文 件;因此,系统不能限制打开的文件描述符少于32000。对于Linux服务器,通常可以改变/etc/security/limits.conf。并且 当前值可以用ulimit命令显示。

下一个设置是连接到一个实例的内存限制。默认值(1024MB)可能是不够的。如果您在日志文件中发现 条目OutOfMemoryError,那么设置环境变量ES_HEAP_SIZE值大于1024。注意:这个值不应该设置为物理内存总量的50%以上- 其余部分可以用作磁盘高速缓存,它极大地提高了搜索的性能。

翻译【ElasticSearch Server】第一章:开始使用ElasticSearch集群(2)的更多相关文章

  1. 使用mod_cluster进行apache httpd server和jboss eap 6.1集群配置

    本文简单介绍,使用mod_cluster进行apache httpd server和jboss eap 6.1集群配置.本配置在windows上测试通过,linux下应该是一样的.可能要稍作调整.后面 ...

  2. CentOS6安装各种大数据软件 第四章:Hadoop分布式集群配置

    相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...

  3. CentOS6安装各种大数据软件 第六章:HBase分布式集群的配置

    相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...

  4. 《Entity Framework 6 Recipes》翻译系列 (1) -----第一章 开始使用实体框架之历史和框架简述

    微软的Entity Framework 受到越来越多人的关注和使用,Entity Framework7.0版本也即将发行.虽然已经开源,可遗憾的是,国内没有关于它的书籍,更不用说好书了,可能是因为EF ...

  5. 《Entity Framework 6 Recipes》翻译系列(2) -----第一章 开始使用实体框架之使用介绍

    Visual Studio 我们在Windows平台上开发应用程序使用的工具主要是Visual Studio.这个集成开发环境已经演化了很多年,从一个简单的C++编辑器和编译器到一个高度集成.支持软件 ...

  6. Elasticsearch学习系列七(Es分布式集群)

    核心概念 集群(Cluster) 一个Es集群由多个节点(Node)组成,每个集群都有一个共同的集群名称作为标识 节点(Node) 一个Es实例就是一个Node.Es的配置文件中可以通过node.ma ...

  7. Elasticsearch 6.x版本全文检索学习之集群调优建议

    1.系统设置要到位,遵照官方建议设置所有的系统参数. https://www.elastic.co/guide/en/elasticsearch/reference/6.7/setup.html 部署 ...

  8. 第十四章 二进制部署k8s集群的平滑升级

    1.软件包下载 去github上下载较新的Kubernetes软件包https://github.com/ 2.升级说明 升级包括master节点升级和node节点的升级,本章升级至v1.15.12: ...

  9. Service Broker应用(2):不同server间的数据传输,包含集群

    不同Server之间的数据传输,包含DB使用AlwaysOn 配置脚本: SQL Server Service Broker 跨集群通信 具体的TSQL 脚本语句如下.注意的是TSQL语句是在发送方还 ...

  10. 使用Rancher Server部署本地多节点K8S集群

    当我第一次开始我的Kubernetes之旅时,我一直在寻找一种设置本地部署环境的方式.很多人常常会使用minikube或microk8s,这两者非常适合新手在单节点集群环境下进行操作.但当我已经了解了 ...

随机推荐

  1. JSP include标签和include指令

    test1.jsp <% int a = 5; out.println(a); %> test2.jsp <jsp:include page="/test1.jsp&quo ...

  2. linux入门教程(二) 图形界面还是命令窗口

    对于linux的应用,我想大多数都是用在服务器领域,对于服务器来讲真的没有必要跑一个图形界面.所以我们平时安装linux操作系统时往往是不安装图形界面的.说到这里也许你会有疑问,图形界面还能选择装或者 ...

  3. lintcode:落单的数

    题目: 落单的数 给出2*n + 1 个的数字,除其中一个数字之外其他每个数字均出现两次,找到这个数字. 样例 给出 [1,2,2,1,3,4,3],返回 4 挑战 一次遍历,常数级的额外空间复杂度 ...

  4. iOS使用Charts框架绘制—柱形图

    首先看一下最终要实现的效果: 最终效果 一.初始化barChartView 绘制柱形图需要用到BarChartView这个类,下面是初始化代码: self.barChartView = [[BarCh ...

  5. 通过数据库表自动生成POJO(JavaBean)对象

    主类: package bqw.tool; import java.util.ResourceBundle;import java.sql.DriverManager;import java.sql. ...

  6. android sqlite支持的数据类型

    Sqlite3支持的数据类型 :NULL.INTEGER.REAL.TEXT.BLOB 但实际上,sqlite3也接受如下的数据类型:    smallint 16 位元的整数.    interge ...

  7. Cookie的具体使用之来存储对象

    1.创建一个新的cookie,并赋值. HttpCookie cookie;       cookie=new HttpCookie("user");       cookie.D ...

  8. redis状态与性能监控

    Redis介绍 Redis是一种高级key-value数据库.它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富.有字符串,链表.哈希.集合和有序集合5种.支持在服务器端计算集合 ...

  9. 函数buf_page_address_fold

    /********************************************************************//** Calculates a folded value ...

  10. JAVA将Excel中的报表导出为图片格式(二)实现思路

    接上文,一封类似于下方设计的Excel报表,如何将它指定的区域导出为样式一模一样的JPG图片呢? 要实现这个功能没有现成的解决方案,谷歌度娘了好久也没有,最终自己想了几条思路: 思路1:将报表中的背景 ...