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):

4609 5ACC 8548 582C 1A26 99A9 D27D 666C D88E 42B4

下载并安装该公用签名密钥:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

从APT库中安装

在操作之前您可能需要在Debian系统中安装apt-transport-https软件包:

sudo apt-get install apt-transport-https

库定义保存到/etc/apt/sources.list.d/elastic-5.x.list

echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /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中清空之前的仓库文件
  2. add-apt-repository需要按照一些非默认的依赖以及在许多发行版本中他不是默认安装的。
  3. 老版本的add-apt-repository总是添加deb-src将导致错误,因为我们不提供源码包。如果你添加了deb-src,你将会看到一个如下的错误直到你删除了deb-src
    Unable to find expected entry 'main/source/Sources' in Release file
    (Wrong sources.list entry or malformed file)
    

您可以通过如下方式安装Elasticsearch Debian软件包:

sudo apt-get update && sudo apt-get install elasticsearch

警告

如果同一Elasticsearch版本库中两个条目,在使用apt-get update是你会看到在这样的错误:

Duplicate sources.list entry https://artifacts.elastic.co/packages/5.x/apt/ ...

/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软件包

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.3.0.deb
sha1sum elasticsearch-5.3.0.deb #①
sudo dpkg -i elasticsearch-5.3.0.deb

① 通过sha1sumshasum比较官方发布的SHA公钥

SysV init vs systemd

Elasticsearch不是在安装后自动启动。如何启动和停止Elasticsearch取决于你的系统是否使用的SysV initsystem(较新发行版中使用)。你可以说这是一个用来运行以下命令:

ps -p 1

通过SysV init启动Elasticsearch

使用update-rc.d命令来配置Elasticsearch在系统启动时自动启动:

sudo update-rc.d elasticsearch defaults 95 10

Elasticsearch可以通过service命令来启动与停止:

sudo -i service elasticsearch start
sudo -i service elasticsearch stop

任何原因的Elasticsearch启动失败,都会将原因打印到控制套。日志文件可以在/var/log/elasticsearch/中找到。

通过systemd启动Elasticsearch

要配置Elasticsearch在系统启动时自动启动,运行以下命令:

sudo /bin/systemctl daemon-reload
sudo /bin/systemctl enable elasticsearch.service

Elasticsearch可以通过service命令来启动与停止:

sudo systemctl start elasticsearch.service
sudo systemctl stop elasticsearch.service

无论Elasticsearch是否成功没有启动, 这些命令不提供反馈。相反,该信息将被写入位于/var/log/elasticsearch/的日志文件中。

默认情况下,Elasticsearch服务的信息不记录在信息systemdjournal日志中。若要启用journalctl日志记录,在elasticsearch.service文件的ExecStart命令行中必须删除--quiet选项。

systemd启用了日志记录,日志信息的使用可用journalctl命令:

tail查看journal:

sudo journalctl -f

要列出journal中elasticsearch服务的日志条目:

sudo journalctl --unit elasticsearch

要列出指定时间之后的列出journal中elasticsearch服务的日志条目:

sudo journalctl --unit elasticsearch --since  "2016-10-30 18:17:16"

更多的journalctl操作手册,请参考:https://www.freedesktop.org/software/systemd/man/journalctl.html

检查Elasticsearch运行

您可以在已运行的Elasticsearch节点上,发送一个HTTP请求测试localhost9200端口:

GET /

返回的消息应该是这样的:

{
  "name" : "Cp8oag6",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "AT69_T_DTp-1qgIJlatQqA",
  "version" : {
    "number" : "5.3.0",
    "build_hash" : "f27399d",
    "build_date" : "2016-03-30T09:51:41.449Z",
    "build_snapshot" : false,
    "lucene_version" : "6.4.1"
  },
  "tagline" : "You Know, for Search"
}

配置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_lockelasticsearch.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.ymllog4j2.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之前,你需要做一些额外的配置:

© ApacheCN Team all right reserved,powered by Gitbook该文件修订于: 2018-03-13 09:41:17

results matching ""

    No results matching ""