安装和配置集群(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. C++客户端程序(socket)

    // MyClient.cpp : 定义控制台应用程序的入口点.// #include "stdafx.h"#include "stdio.h"#include ...

  2. SpingMVC中利用BindingResult将错误信息返回到页面中

    SpingMVC中利用BindingResult将错误信息返回到页面中. ActionFrom中: private String name; private String password; get( ...

  3. Qt出现警告 Unescaped backslashes are deprecated!解决办法

    Fixing Qt Warning: Unescaped backslashes are deprecated! From: http://www.openguru.com/2011/10/fixin ...

  4. Centos硬件信息查看命令

    [root@yan-001 ~] # uname -a # 查看内核/操作系统/CPU信息的linux系统信息命令 [root@yan-001 ~] # head -n 1 /etc/issue # ...

  5. c# FastReport开发报表

    本文介绍c#应用FastReport开发报表,因此首先附该工具下载地址:http://download.csdn.net/detail/hws1058648831a/6378499 下载解压后可以直接 ...

  6. pt-online-schema-change

    [root@mysql5 ~]# pt-online-schema-change --alter=,u=root,p=1qaz2wsx,D=test,t=ddl_test --print --dry- ...

  7. Tomcat原理 分类: 原理 2015-06-28 19:26 5人阅读 评论(0) 收藏

    Tomcat的模块结构设计的相当好,而且其Web 容器的性能相当出色.JBoss直接就使用了Tomcat的web容器,WebLogic的早期版本也是使用了Tomcat的代码. Web容器的工作过程在下 ...

  8. ios高版本SDK在低版本真机调试

    将build settings的ios deployment target改为对应真机系统版本即可

  9. [POJ3694]Network(LCA, 割边, 桥)

    题目链接:http://poj.org/problem?id=3694 题意:给一张图,每次加一条边,问割边数量. tarjan先找出所有割边,并且记录每个点的父亲和来自于哪一条边,然后询问的时候从两 ...

  10. 面试题_82_to_87_Date、Time 及 Calendar 的面试题

    82)在多线程环境下,SimpleDateFormat 是线程安全的吗?(答案)不是,非常不幸,DateFormat 的所有实现,包括 SimpleDateFormat 都不是线程安全的,因此你不应该 ...