Не удается установить Elasticsearch 1.0.1 в Ubuntu 12.04 с помощью sudo dpkg -iasticsearch-1.0.1.deb
Я пытаюсь установить Elasticsearch 1.0.1 на Ubuntu 12.04. Пока я сделал:
Сначала я удалил старый пакет упругих поисков 0,90
sudo dpkg -r elasticsearch
затем
cd ~
sudo apt-get update
sudo apt-get install openjdk-7-jre-headless -y
wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.0.1.deb
sudo dpkg -i elasticsearch-1.0.1.deb
Последний шаг приводит к следующему
(Reading database ... 57341 files and directories currently installed.)
Preparing to replace elasticsearch 1.0.1 (using elasticsearch-1.0.1.deb) ...
Unpacking replacement elasticsearch ...
Setting up elasticsearch (1.0.1) ...
chown: cannot access `/etc/elasticsearch/*': No such file or directory
Поэтому я создал / etc /asticsearch с пустым файлом в нем, а затем сделал
sudo chmod 777 /etc/elasticsearch
Теперь, когда я бегу
sudo dpkg -i elasticsearch-1.0.1.deb
я получил
(Reading database ... 57341 files and directories currently installed.)
Preparing to replace elasticsearch 1.0.1 (using elasticsearch-1.0.1.deb) ...
Unpacking replacement elasticsearch ...
Setting up elasticsearch (1.0.1) ...
Processing triggers for ureadahead ...
Но ничего не появляется в / etc /asticsearch
Однако я получаю папку появляется в
/usr/share/elasticsearch
Со следующим содержанием
bin core-signatures.txt lib NOTICE.txt README.textile
Отсюда, если я бегу
sudo bin/elasticsearch
я получил
log4j: ПРЕДУПРЕЖДЕНИЕ Не удалось найти ни одного дополнительного устройства для регистратора (узла). log4j:WARN Пожалуйста, правильно инициализируйте систему log4j. log4j:WARN См. http://logging.apache.org/log4j/1.2/faq.html для получения дополнительной информации.
И продолжает бежать
Если я открою новое окно и запустить
curl -XGET 'localhost:9200'
я получил
{
"status" : 200,
"name" : "Volstagg",
"version" : {
"number" : "1.0.1",
"build_hash" : "5c03844e1978e5cc924dab2a423dc63ce881c42b",
"build_timestamp" : "2014-02-25T15:52:53Z",
"build_snapshot" : false,
"lucene_version" : "4.6"
},
"tagline" : "You Know, for Search"
}
Так что, похоже, он работает, и я могу заполнить поиск (symfony2 FOSElasticaBundle)
php app/console fos:elastica:populate
Но если я сделаю поиск, результаты не будут найдены.
Итак, вопрос в том, установлен он или нет, и почему он не работает должным образом?
Я использую github.com/FriendsOfSymfony/FOSElasticaBundle с PHP-фреймворком Symfony2. Конфигурация для пакета такова:
fos_elastica:
clients:
default: { host: localhost, port: 9200 }
indexes:
products:
client: default
types:
product:
mappings:
name: { boost: 5 }
commonName: { boost: 5 }
sku: { boost: 3 }
description:
isRemedy:
countries:
type: "nested"
properties:
code: ~
book:
type: "nested"
properties:
author: ~
isbn: ~
persistence:
driver: orm
model: Helios\CoreBundle\Entity\Product
provider: ~
finder: ~
listener: ~
elastica_to_model_transformer:
ignore_missing: true
При заполнении я не получаю никаких ошибок, но поиск все равно не работает.
Спасибо
2 ответа
Мне удалось установить asticsearch- 1.0.1, используя старый метод
cd ~
wget https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-1.0.1.tar.gz
tar -xf elasticsearch-1.0.1.tar.gz
cd /usr/local/
sudo mkdir elasticsearch
cd elasticsearch
cd ~
sudo mv elasticsearch-1.0.1 /usr/local/elasticsearch/
теперь, если я бегу
curl -XGET 'localhost:9200'
это возвращается
{
"status" : 200,
"name" : "Mister Jip",
"version" : {
"number" : "1.0.1",
"build_hash" : "5c03844e1978e5cc924dab2a423dc63ce881c42b",
"build_timestamp" : "2014-02-25T15:52:53Z",
"build_snapshot" : false,
"lucene_version" : "4.6"
},
"tagline" : "You Know, for Search"
}
curl -XGET 'localhost:9200/_cluster/health?pretty'
теперь возвращает:
{
"cluster_name" : "elasticsearch",
"status" : "green",
"timed_out" : false,
"number_of_nodes" : 2,
"number_of_data_nodes" : 2,
"active_primary_shards" : 5,
"active_shards" : 10,
"relocating_shards" : 0,
"initializing_shards" : 0,
"unassigned_shards" : 0
}
Я могу заполнить свои поисковые индексы, и все работает нормально. Я до сих пор не знаю, почему я не смог установить программу установки пакета, поэтому мой первоначальный вопрос остается без ответа.
Не знаю, почему вы не можете искать, но есть несколько вещей, которые вы можете проверить. На этой странице указаны пути к файлам конфигурации.
http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/setup-service.html
Скрипт инициализации находится по адресу /etc/init.d/elasticsearch, если вы ожидаете этого. Файл конфигурации находится в / etc / default /asticsearch.
Чтобы проверить, все ли в порядке, запустив такие запросы, как: /_cluster/health /_nodes/stats
надеюсь, это поможет