Debian软件包安装方式
Elasticsearch的Debian软件包可以从我们的网站下载或从我们的APT仓库安装。它可以用于任何基于Debian的系统上安装Elasticsearch,如Debian和Ubuntu。
Elasticsearch的最新稳定版本可以在Elasticsearch下载页面获取。其它版本可以在上之前的下载页面找到。
注意
Elasticsearch需要Java 8或更高版本。可以使用Oracle官方发布或开源版本的OpenJDK。
导入Elasticsearch PGP Key
Elasticsearch的所有包都采用如下指纹与签名Key进行签名(PGP key D88E42B4,可从https://pgp.mit.edu):
下载并安装该公用签名密钥:
从APT库中安装
在操作之前您可能需要在Debian系统中安装apt-transport-https
软件包:
库定义保存到/etc/apt/sources.list.d/elastic-5.x.list
:
注意
有以下几个原因不使用
add-apt-repository
: 1.add-apt-repository
添加到系统/etc/apt/sources.list
文件,而不是在/etc/apt/sources.list.d
中清空之前的仓库文件 1.add-apt-repository
需要按照一些非默认的依赖以及在许多发行版本中他不是默认安装的。 1. 老版本的add-apt-repository
总是添加deb-src
将导致错误,因为我们不提供源码包。如果你添加了deb-src
,你将会看到一个如下的错误直到你删除了deb-src
:
您可以通过如下方式安装Elasticsearch Debian软件包:
警告
如果同一Elasticsearch版本库中两个条目,在使用
apt-get update
是你会看到在这样的错误:在
/etc/apt/sources.list.d
和/和/etc/apt/sources.list
文件中检查下重复的/etc/apt/sources.list.d/elasticsearch-5.x.list
条目。注意
在
systemd-based
的发行中,安装脚本会尝试设置内核参数(例如:vm.max_map_count
);你可以通过设置环境变量ES_SKIP_SET_KERNEL_PARAMETERS=true
跳过此设置。
手动下载并安装Debian软件包
① 通过sha1sum
或shasum
比较官方发布的SHA公钥
SysV init
vs systemd
SysV init
vs systemd
Elasticsearch不是在安装后自动启动。如何启动和停止Elasticsearch取决于你的系统是否使用的SysV init
或system
(较新发行版中使用)。你可以说这是一个用来运行以下命令:
通过SysV init
启动Elasticsearch
SysV init
启动Elasticsearch使用update-rc.d
命令来配置Elasticsearch在系统启动时自动启动:
Elasticsearch可以通过service
命令来启动与停止:
任何原因的Elasticsearch启动失败,都会将原因打印到控制套。日志文件可以在/var/log/elasticsearch/
中找到。
通过systemd
启动Elasticsearch
systemd
启动Elasticsearch要配置Elasticsearch在系统启动时自动启动,运行以下命令:
Elasticsearch可以通过service命令来启动与停止:
无论Elasticsearch是否成功没有启动, 这些命令不提供反馈。相反,该信息将被写入位于/var/log/elasticsearch/
的日志文件中。
默认情况下,Elasticsearch服务的信息不记录在信息systemd
的journal
日志中。若要启用journalctl
日志记录,在elasticsearch.service
文件的ExecStart
命令行中必须删除--quiet
选项。
当systemd
启用了日志记录,日志信息的使用可用journalctl
命令:
tail
查看journal
:
要列出journal
中elasticsearch服务的日志条目:
要列出指定时间之后的列出journal
中elasticsearch服务的日志条目:
更多的journalctl
操作手册,请参考:https://www.freedesktop.org/software/systemd/man/journalctl.html。
检查Elasticsearch运行
您可以在已运行的Elasticsearch节点上,发送一个HTTP请求测试localhost
的9200
端口:
返回的消息应该是这样的:
配置Elasticsearch
Elasticsearch默认从/etc/elasticsearch/elasticsearch.yml
文件中加载配置。这个配置文件的格式说明请参考Elasticsearch配置。
Debian软件包也有一个系统配置文件(/etc/default/elasticsearch),它允许你设置以下参数:
参数名
描述
ES_USER
运行的用户,默认为elasticsearch
。
ES_GROUP
运行的Group,默认为elasticsearch
。
JAVA_HOME
自定义java路径。
MAX_OPEN_FILES
最大的打开文件数,默认最大数量65536
。
MAX_LOCKED_MEMORY
最大锁定内存大小。你使用bootstrap.memory_lock
的elasticsearch.yml
选项将被设置为unlimited
。
MAX_MAP_COUNT
进程的内存映射区域最大数量。如果你使用mmapfs
的索引存储类型,确保此项设置为高值。欲了解更多信息,请查看Linux内核文件查看相关的max_map_count
。这是在启动elasticsearch之前通过sysctl
设置的,默认为262144。
LOG_DIR
日志目录,默认为/var/log/elasticsearch
。
DATA_DIR
Data目录,默认为/var/lib/elasticsearch
。
CONF_DIR
配置文件目录(其中必须包括elasticsearch.yml
和log4j2.properties
文件),默认为/etc/elasticsearch
。
ES_JAVA_OPTS
任何额外的JVM系统属性,你可能要应用。
RESTART_ON_UPGRADE
配置在安装包升级后重启,默认为false
。这意味着你将在安装包后需要手动重新启动您的elasticsearch实例。这样做的原因是为了保证,在群集升级时不会连续的重新分配分片导致高网络流量、并降低群集的响应时间。
注意
使用systemd部署需要配置
systemd
的系统资源限制,而不是通过/etc/sysconfig/elasticsearch
文件。更多信息请参见:系统设置。
Debian目录结构
Debian包中配置文件、日志和数据目录在Debian-based系统中对应的位置:
类型
描述
默认位置
设置方式
home
Elasticsearch主目录或 $ES_HOME
/usr/share/elasticsearch
bin
二进制脚本,包括启动节点的elasticsearch
、安装插件的elasticsearch-plugin
/usr/share/elasticsearch/bin
conf
配置文件,包括elasticsearch.yml
/etc/elasticsearch
path.conf
conf
环境变量,包括heap大小、文件操作符
/etc/default/elasticsearch
data
节点上分配的各索引/分片的数据文件的目录,可以配置多个位置。
/var/lib/elasticsearch
path.data
log
日志文件的位置。
/var/log/elasticsearch
path.logs
plugins
插件的位置。每一个插件将被包含在一个子目录。
/usr/share/elasticsearch/plugins
repo
共享文件系统存储库位置。可以容纳多个位置。文件系统存储库可以放在这里指定的任意目录中的任何子目录。
未配置
path.repo
script
脚本文件位置。
/etc/elasticsearch/scripts
path.scripts
下一步
现在,您搭建了一个测试环境Elasticsearch。开始更深入的研究或投入生产使用Elasticsearch之前,你需要做一些额外的配置:
了解如何配置Elasticsearch。
配置重要的系统设置。
Last updated