6

我有一个运行 Ubuntu 12.04 的虚拟机,并且正在尝试安装 ElasticSearch。我以最好的“以艰难的方式学习 X”的精神遵循了这个要点,并且一切都安装得很好——软件包被下载、解压缩、复制到正确的位置等。

当我运行它时问题就来了 - 通过调用:

$ /usr/local/share/elasticsearch/bin/elasticsearch

或使用服务包装器 ( $ rselasticsearch console)

输出记录到wrapper.log并包含在下面。我认为我可能遇到了 JAVA 主页/类路径问题,但不确定。

非常感谢任何帮助!

Running ElasticSearch...
wrapper  | Unable to write to the configured log directory: /usr/local/share/elasticsearch/logs (No such file or directory)
wrapper  |   The directory does not exist.
wrapper  | Unable to write to the configured log file: /usr/local/share/elasticsearch/logs/service.log (No such file or directory)
wrapper  |   Falling back to the default file in the current working directory: wrapper.log
wrapper  | --> Wrapper Started as Console
wrapper  | Java Service Wrapper Community Edition 32-bit 3.5.14
wrapper  |   Copyright (C) 1999-2011 Tanuki Software, Ltd. All Rights Reserved.
wrapper  |     http://wrapper.tanukisoftware.com
wrapper  | 
wrapper  | Launching a JVM...
jvm 1    | WrapperManager: Initializing...
jvm 1    | WrapperSimpleApp Error: Unable to locate the class org.elasticsearch.bootstrap.ElasticSearchF : java.lang.ClassNotFoundException: org.elasticsearch.bootstrap.ElasticSearchF
jvm 1    | 
jvm 1    | WrapperSimpleApp Usage:
jvm 1    |   java org.tanukisoftware.wrapper.WrapperSimpleApp {app_class{/app_method}} [app_arguments]
jvm 1    | 
jvm 1    | Where:
jvm 1    |   app_class:      The fully qualified class name of the application to run.
jvm 1    |   app_arguments:  The arguments that would normally be passed to the
jvm 1    |                   application.
wrapper  | JVM exited while loading the application.
...
wrapper  | There were 5 failed launches in a row, each lasting less than 300 seconds.  Giving up.
wrapper  |   There may be a configuration problem: please check the logs.
wrapper  | <-- Wrapper Stopped

更新

鉴于我们现在是 2016 年,在 Ubuntu 上运行 ES 的最简单方法是使用 Docker。docker run elasticsearch将下载最新版本并在前台运行它,显然您可以将其作为守护进程运行,或运行特定版本(例如elasticsearch:1.7.2),并设置端口等。

4

5 回答 5

12

警告任何尝试我之前所做的事情的人 - Gist 中指定的 URL 是源版本,而不是编译版本,因此没有 *.class 文件。

您可以按原样使用 Gist,但用 ElasticSearch 站点的最新下载 URL 代替当前的 github URL,例如:

....
wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.1.1.tar.gz -O elasticsearch.tar.gz
tar -xf elasticsearch.tar.gz
rm elasticsearch.tar.gz
sudo mv elasticsearch-* elasticsearch
sudo mv elasticsearch /usr/local/share
...

** 这是截至 2014 年 5 月 20 日的最新版本。要获得更多更新版本,请访问页面,右键单击 TAR 链接(在下载部分下),复制链接并替换第一行中的 wget 参数。

于 2013-01-11T12:53:53.873 回答
8

我以与您相同的方式安装了 elasticsearch 并遇到了同样的问题。最后我通过安装编译版本而不是从 github 解决了这个问题。它涉及使用与要点相同的步骤,除了使用来自http://www.elasticsearch.org/download/2012/12/27/0.20.2.html而不是 github 的 tar。我分叉并更新了要点,可在https://gist.github.com/4512530获得。希望这可以帮助。

于 2013-01-11T19:26:34.390 回答
6

按照此步骤轻松配置 Elastic Search。

第 1 步 — 安装 Java:

$ sudo apt-get 更新

$ sudo apt-get install openjdk-7-jre

$ java -版本

第 2 步 — 下载和安装 Elasticsearch:

$ wget https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.2.deb

$ sudo dpkg -i elasticsearch-1.7.2.deb

$ sudo update-rc.d 弹性搜索默认值

第 3 步 — 配置弹性:

$ sudo nano /etc/elasticsearch/elasticsearch.yml

node.name:“我的第一个节点” cluster.name:mycluster1

$ sudo 服务弹性搜索开始

第 4 步 - 保护 Elastic :

$ sudo nano /etc/elasticsearch/elasticsearch.yml

network.bind_host:本地主机

script.disable_dynamic: 真

第 5 步 — 测试:

$ curl -X GET 'http://localhost:9200' 或在任何浏览器中运行 http://localhost:9200。

您应该看到以下响应:

{ 
“状态”:200,
“名称”:“Harry Leland”,
“cluster_name”:“elasticsearch”,
“版本”:{
“数字”:“1.7.2”,
“build_hash”:“e43676b1385b8125d647f593f7202acbd816e8ec”,
“build_timestamp” :“2015-09-14T09:49:53Z”,
“build_snapshot”:false,
“lucene_version”:“4.10.4”
},
“标语”:“你知道,用于搜索”
}

参考:

http://laravelcode.com/post/how-to-install-elastic-search-in-local-system-and-live-server

于 2016-03-08T17:36:16.303 回答
3

解包 elasticsearch 网站上可用的 deb 文件对我来说效果很好:

sudo dpkg -i elasticsearch-1.1.1.deb

于 2014-05-18T07:16:44.190 回答
0

按照https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-repositories.htmlapt中的说明进行安装似乎效果很好。

于 2015-11-11T13:29:40.370 回答