Elasticsearch 参考指南(启动Elasticsearch)

启动Elasticsearch

启动Elasticsearch的方法取决于你如何安装它。

归档包(.tar.gz

如果你使用.tar.gz包安装了Elasticsearch,那么你可以从命令行启动Elasticsearch。

从命令行运行Elasticsearch

Elasticsearch可以从如下所示命令行启动:

./bin/elasticsearch

默认情况下,Elasticsearch在前台运行,将其日志打印到标准输出(stdout),按Ctrl-C即可停止。

所有与Elasticsearch打包在一起的脚本都需要一个支持数组的Bash版本,并假设Bash在/bin/bash中可用,因此,Bash应该可以直接或通过符号链接在此路径上可用。

作为守护进程运行

要将Elasticsearch作为守护程序运行,请在命令行中指定-d,并使用-p选项将进程ID记录在文件中:

./bin/elasticsearch -d -p pid

日志消息可以在$ES_HOME/logs/目录中找到。

要关闭Elasticsearch,请关闭pid文件中记录的进程ID:

kill `cat pid`
RPM和Debian包中提供的启动脚本负责启动和停止Elasticsearch进程。

归档包(.zip

如果使用.zip包在Windows上安装了Elasticsearch,就可以从命令行启动Elasticsearch,如果你想让Elasticsearch在系统启动时自动启动,而不需要任何用户交互,请将Elasticsearch安装为服务。

从命令行运行Elasticsearch

Elasticsearch可以从如下所示命令行启动:

.\bin\elasticsearch.bat

默认情况下,Elasticsearch在前台运行,将其日志打印到stdout,按Ctrl-C即可停止。

Debian软件包

Elasticsearch安装后不会自动启动,如何启动和停止Elasticsearch取决于你的系统是使用SysV init还是systemd(用于较新的发行版),你可以运行这个命令知道哪个正在使用:

ps -p 1

使用SysV init运行Elasticsearch

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

sudo update-rc.d elasticsearch defaults 95 10

可以使用service命令启动和停止Elasticsearch:

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

如果Elasticsearch由于任何原因无法启动,它会打印出失败的原因到stdout,日志文件可以在/var/log/elasticsearch/中找到。

使用systemd运行Elasticsearch

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

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

依如下方式启动和停止Elasticsearch:

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

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

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

启用systemd日志记录时,可以使用journalctl命令获取日志记录信息:

tail journal:

sudo journalctl -f

列出elasticsearch服务的journal条目:

sudo journalctl --unit elasticsearch

从给定时间开始列出elasticsearch服务的journal条目:

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

查看man journalctl或从https://www.freedesktop.org/software/systemd/man/journalctl.html获得更多命令行选项。

Docker镜像

如果安装了Docker镜像,可以从命令行启动Elasticsearch,根据你使用的是开发模式还是生产模式,有不同的方法,参见从命令行运行Elasticsearch。

MSI软件包

如果你使用.msi包在Windows上安装了Elasticsearch,你可以从命令行启动Elasticsearch,如果你希望它在系统启动时自动启动,而不需要任何用户交互,请将Elasticsearch安装为Windows服务。

从命令行运行Elasticsearch

一旦安装完毕,Elasticsearch就可以从命令行启动,如果不作为服务安装并在安装完成时配置为启动,如下所示:

.\bin\elasticsearch.exe

命令行终端将显示如下所示的输出:

Elasticsearch 参考指南(启动Elasticsearch)

默认情况下,Elasticsearch在前台运行,除了LOGSDIRECTORY中的<cluster name>.log文件外,还将其日志打印到stdout,按Ctrl-C即可停止。

RPM软件包

Elasticsearch安装后不会自动启动,如何启动和停止Elasticsearch取决于你的系统是使用SysV init还是systemd(用于较新的发行版),你可以运行这个命令知道哪个正在使用:

ps -p 1

使用SysV init运行Elasticsearch

使用chkconfig命令配置Elasticsearch以便在系统启动时自动启动:

sudo chkconfig --add elasticsearch

可以使用service命令启动和停止Elasticsearch:

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

如果Elasticsearch由于任何原因无法启动,它会打印出失败的原因到stdout,日志文件可以在/var/log/elasticsearch/中找到。

使用systemd运行Elasticsearch

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

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

依如下方式启动和停止Elasticsearch:

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

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

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

启用systemd日志记录时,可以使用journalctl命令获取日志记录信息:

tail journal:

sudo journalctl -f

列出elasticsearch服务的journal条目:

sudo journalctl --unit elasticsearch

从给定时间开始列出elasticsearch服务的journal条目:

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

查看man journalctl或从https://www.freedesktop.org/software/systemd/man/journalctl.html获得更多命令行选项。


上一篇:引导检查

相关推荐