内容简介:Elasticsearch的官方下载网址为https://www.elastic.co/cn/downloads/elasticsearch,可以看到有适合Windows、Linux和MacOS等不同操作系统的版本,如下图示:其中WINDOWS、LINUX和MACOS是Elasticsearch的压缩包,下载后解压缩到电脑上就可以使用,DEB包和RPM包是已经编译好适合于Linux环境的安装包,MSI是Windwos环境下的安装包,Docker是Docker容器环境的安装包。请根据自己的操作系统环境,下载适
-
- Elasticsearch集群环境搭建
- 下载
- Elasticsearch集群环境搭建
Elasticsearch的官方下载网址为https://www.elastic.co/cn/downloads/elasticsearch,可以看到有适合Windows、 Linux 和MacOS等不同操作系统的版本,如下图示:
其中WINDOWS、LINUX和MACOS是Elasticsearch的压缩包,下载后解压缩到电脑上就可以使用,DEB包和RPM包是已经编译好适合于Linux环境的安装包,MSI是Windwos环境下的安装包,Docker是 Docker 容器环境的安装包。请根据自己的操作系统环境,下载适合的文件,笔者电脑是Linux Ubuntu,下载的就是适合Linux的压缩包。
-
-
- 目录介绍
-
下载完成后将其解压缩,可以看到Elasticsearch如下的目录结构:
Eleasticsearch 目录介绍 |
|
bin |
可执行文件的存放目录,包含关键命令如下: elasticsearch :Elasticsearch的启动命令,Linux下加”-d”参数以服务的形式后台运行。 elasticsearch-certutil :用于生成与Elastic Stack一起使用的证书 elasticsearch-migrate :用于将基于文件的用户和角色,迁移到native realm elasticsearch-node :该命令可以在当前节点关闭的时候,在该节点执行某些不安全的操作, 此命令可以用于调整当前节点在集群中的角色,并且可以在灾难发生后用于恢复某些数据。 elasticsearch-saml-metadata :该命令用于生成SAML 2.0服务提供者(SP)元数据文件。 elasticsearch-setup-passwords :用于给x-pack内置用户(如elastic、kibana、logstash_system、beats_system等)设置密码,此命令仅在初始配置Elasticsearch安全功能期间使用。 elasticsearch-shard :该命令用于在Lucene索引或translog的分片拷贝发生损坏、且无法自动恢复分片时,用于删除分片的损坏部分,然后恢复对未受影响的段中任何剩余数据的访问,使用该命令前必须停止Elasticsearch。 elasticsearch-syskeygen :该命令用于在elasticsearch配置目录中创建系统密钥文件,可以使用生成的系统密钥文件对敏感数据进行对称加密。 elasticsearch-users :该命令用于管理基于文件的用户身份验证,它可以添加和删除用户、分配用户角色以及管理密码。 详细的功能及使用,后续的章节会谈到。 |
config |
配置文件的存放目录,包括elasticsearch.yml和jvm.options等关键配置文件。 |
data |
默认的数据存放目录(注:该目录默认不存在,当Elasticsearch通过默认的配置参数启后,该目录才会被创建)。 |
jdk |
存放的是适合当前Elasticsearch版本的jdk,避免用户使用不兼容的JDK版本或者单独下载JDK,真正做到解压缩后就可以使用,不过也增加了下载包体的大小,达到了325M,该目录在7.x中才引入。 |
lib |
引用的相关库的存放目录,elasticsearch.jar本身也放于该目录。 |
logs |
默认的日志存放目录。 |
modules |
功能模块的存放目录,如aggs、reindex、geoip、xpack、eval,详细如下所示: 详细的功能及使用,后续的章节会谈到。 |
plugins |
插件是Elasticsearch中非常重要的模块,让Elasticsearch的功能可以灵活定制,更方便使用, 每个插件都将包含在一个子目录中,默认不包含任何插件,用户自己的情况进行下载,插件的下载方式,通过命令: bin/elasticsearch-plugin install [plugin_name]Elasticsearch分类以下几大类: API扩展插件 :API扩展插件通过添加新的API或功能,扩展Elasticsearch的搜索或映射等功能; 告警插件 :告警插件提供了索引监视功能,并在警报阈值时触发警报; 分析插件 :分析插件提供新的字段分析器(Analyzers)、分词器(tokenizer)、分词过滤器(token filters)或字符过滤器来扩展Elasticsearch的功能; 发现插件 :插件提供了对Amazon EC2、Microsoft Azure Classic、GCE(Google Compute Engine)和Kubernate的搭建了搜索服务的节点的发现功能; 数据预处理插件:提供从附件(如PPT、XLS和PDT)中抽取数据、GeoIP信息处理、用户客户端信息提取等; 管理功能插件 :插件提供了对Elasticsearch执行管理的功能或者交互功能的UI,如X-PACK; 映射插件 :映射插件允许向Elasticsearch增加新的字段数据类型,如mapper-size插件提供_size元字段,当启用该字段时,索引原始_source字段的字节大小; 安全插件 :为Elasticsearch增加了一层安全层,可以轻松地为其弹性堆栈添加企业级安全性,让Elasticsearch更加安全; 数据快照或数据还原插件 :用于支持将数据存放到云存储或者分布式文件系统中,或者从云存储或者分布式文件系统进行数据恢复,支持包持Amazon S3、Microsoft Azure、HDFS、Google云存储以及Openstack等 存储插件:提供了除基于Lucene默认存储的额外存储方式的更多选择; 详细的功能及使用,后续的章节会谈到。 |
-
-
- 核心配置文件介绍
-
Elasticsearch核心配置文件 |
|
config/elasticsearch.yml |
该文件是Elasticsearch的核心配置文件,里面涉及到集群名称、节点名称、日志存放路径、数据存放路径、所使用的IP地址和端口号、master节点、是否允许跨域访问等。 |
config/jvm.options |
配置Elasticsearch使用的JVM参数,如堆的大小、单个线程的大小、所使用的垃圾收集的方式、是否开启JMX、GC日志的收集等。 |
-
-
-
- elasticsearch.yml
-
-
Elasticsearch.yml的默认配置
# ======================== Elasticsearch Configuration =========================
# 注:Elasticsearch使用很多合理的默认配置,该配置文件只列出了集群及当前节点配置需要调整的参数
#
# 更多的配置选项参看:
# https://www.elastic.co/guide/en/elasticsearch/reference/index.html
#
# ------------------------ Cluster(集群) -------------------------
# 集群名称配置,默认是elasticsearch
# cluster.name: my-application
#
# -------------------------- Node(节点) --------------------------
# 配置节点名称,默认为随机名称
# node.name: node-1
#
# 当前节点的自定属性:
# node.rack: r1
#
# ------------------------- Paths(路径) --------------------------
# 指定es的数据存储目录,默认为$es_home/data目录
# path.data: /path/to/data
#
# 指定es的日志存储目录,默认为$es_home/logs目录
# path.logs: /path/to/logs
#
# ------------------------- Memory(内存) -------------------------
#
# 锁定物理内存地址,防止es的内存被交换出去,避免使用swap交换分区,因为当系统进行内存交换的时候,
# es的性能表现会很差。当network.host配置为非127.0.0.1时,需要在Linux的/etc/security/limits.conf增
# 加允许应用对内存锁定的配置:
# * soft memlock unlimited
# * hard memlock unlimited
# bootstrap.memory_lock: true
#
# 确保ES_HEAP_SIZE参数设置为系统可用内存的一半左右,且执行ES进程的用户具有使用这些内存的权限
#
# ------------------------ Network(网络) -------------------------
#
# 为es设置绑定的ip,默认是127.0.0.1,设置为0.0.0.0允许绑定到该服务器的所有IP地址都可以访问
# network.host: 192.168.0.1
#
# 为es设置监听端口,默认是9200,transport.tcp.port的值为http.port加上100
# http.port: 9200
#
# 更多关于网络的配置,参看:
#
#
# ------------------------ Discovery(发现) ------------------------
#
# 初使服务器列表,当此节点时启动时会执行发现动作,如需要配置端口,则需要配置transport.tcp.port的值
# 默认列表为 ["127.0.0.1", "[::1]"]
#
#discovery.seed_hosts: ["host1", "host2"]
#
# 用于在集群启动时,选择master节点的节点,该值在network.host的值不为127.0.0.1时,且只有一个节点时,其值必须要填写:
#
#cluster.initial_master_nodes: ["node-1", "node-2"]
#
# ------------------------ Gateway(网关) -------------------------
#
# 设置集群中需要指定个节点启动后,才进行数据恢复处理,其默认值是1
# gateway.recover_after_nodes: 3
#
# 更多信息:
#
#
# ------------------------ Various -------------------------
#
# 设置是否允许删除多个索引库,默认true表示必须需要显式指定索引库名称
# action.destructive_requires_name: true
-
-
-
- jvm.options
-
-
jvm.options的默认配置
## JVM配置
################################################################
## 重要: JVM堆大小
################################################################
##
## 为了使Elasticsearch避免频繁的发生Full GC,最大堆和最小堆的值,,
## 要设置为一样,如下设置为4G。Xms表示初使化堆的大小,Xms表示最大
## 的大小
## -Xms4g
## -Xmx4g
## 更多参看:
## https://www.elastic.co/guide/en/elasticsearch/reference/current/heap-size.html
##
################################################################
# 堆的默认值为1G
-Xms1g
-Xmx1g
################################################################
## 专业人员设置
################################################################
##
## 以下是JVM垃圾回收相关的设置,建意不懂JVM垃圾回收的人员不要随意
## 修改配置
##
################################################################
## 垃圾回收配置
-XX:+UseConcMarkSweepGC
-XX:CMSInitiatingOccupancyFraction=75
-XX:+UseCMSInitiatingOccupancyOnly
## 垃圾回收G1GC策略的配置,仅在JDK10及以上的版本支持
# 使用G1GC策略,将以下行的注释去掉
# 10-:-XX:-UseConcMarkSweepGC
# 10-:-XX:-UseCMSInitiatingOccupancyOnly
# 10-:-XX:+UseG1GC
# 10-:-XX:InitiatingHeapOccupancyPercent=75
# 显式设置每个线程堆栈的大小
-Xss1m
## heap dumps
# 当 Java 堆分配失败时,在当前工作目录中创建JVM的堆转储
-XX:+HeapDumpOnOutOfMemoryError
# 为堆转储指定备用路径,并确保该目录是存在的并且有足够的空间
-XX:HeapDumpPath=data
# 为JVM致命错误日志指定备用路径
-XX:ErrorFile=logs/hs_err_pid%p.log
......
在该配置文件中,主要的关注配置为JVM堆和单个线程堆栈大小的配置
# 堆的默认值为1G
-Xms1g
-Xmx1g
# 显式设置每个线程堆栈的大小
-Xss1m
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- MyBatis 核心配置综述之 ResultSetHandler
- MyBatis 核心配置综述之 ParameterHandler
- ModSecurity OWASP核心规则集的两种配置模式
- 关于 Elasticsearch 集群核心配置,腾讯大佬的灵魂 9 问,你能接住几个?
- 使用 Kustomize 帮你管理 kubernetes 应用(四):简述核心配置 kustomization.yaml
- CSS核心技术详解-核心概念
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
从Python开始学编程
Vamei / 电子工业出版社 / 2016-11-24 / CNY 49.00
改编自Vamei博客的《Python快速教程》。本书以Python为样本,不仅介绍了编程的基本概念,还着重讲解编程语言的主流范式:面向过程、面向对象、面向函数。读者不仅可以轻松学会Python,以后再学习其他编程语言时也会更加容易。一起来看看 《从Python开始学编程》 这本书的介绍吧!