Android

Jak zainstalować elasticsearch na centos 7

[ ElasticSearch 1 ] Install logstash ELK stack on CentOS 7 | Elasticsearch, Logstash, Kibana

[ ElasticSearch 1 ] Install logstash ELK stack on CentOS 7 | Elasticsearch, Logstash, Kibana

Spisu treści:

Anonim

Elasticsearch jest otwartym, rozproszonym silnikiem wyszukiwania i analizy pełnotekstowej. Obsługuje operacje RESTful i pozwala przechowywać, wyszukiwać i analizować duże ilości danych w czasie rzeczywistym. Elasticsearch to jedna z najpopularniejszych wyszukiwarek napędzających aplikacje, które mają złożone wymagania wyszukiwania, takie jak duże sklepy e-commerce i aplikacje analityczne.

W tym samouczku wyjaśniono, jak zainstalować Elasticsearch na CentOS 7.

Wymagania wstępne

Zalogowany użytkownik musi mieć uprawnienia sudo, aby móc instalować pakiety.

Instalowanie Elasticsearch

Zalecanym sposobem instalacji Elasticsearch na CentOS 7 jest instalacja pakietu rpm z oficjalnego repozytorium Elasticsearch.

W chwili pisania tego artykułu najnowsza wersja Elasticsearch to 6.7 i wymaga Java 8 lub nowszej.

Aby zainstalować OpenJDK 8 w systemie CentOS:

sudo yum install java-1.8.0-openjdk-devel

Sprawdź instalację Java, drukując wersję Java:

java -version

Dane wyjściowe powinny wyglądać mniej więcej tak:

openjdk version "1.8.0_201" OpenJDK Runtime Environment (build 1.8.0_201-b09) OpenJDK 64-Bit Server VM (build 25.201-b09, mixed mode)

Teraz, gdy Java jest zainstalowana, następnym krokiem jest dodanie repozytorium Elasticsearch.

Zaimportuj klucz GPG repozytorium za pomocą następującego polecenia:

sudo rpm --import

Otwórz edytor tekstu i utwórz następujący plik repo:

sudo nano /etc/yum.repos.d/elasticsearch.repo

Wklej następującą treść do pliku:

/etc/yum.repos.d/elasticsearch.repo

name=Elasticsearch repository for 6.x packages baseurl=https://artifacts.elastic.co/packages/6.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md

Zapisz plik i zamknij edytor tekstu.

Jeśli chcesz zainstalować poprzednią wersję Elasticsearch, zmień 6.x w powyższym poleceniu na odpowiednią wersję.

Możesz teraz zainstalować pakiet Elasticsearch, wpisując:

sudo yum install elasticsearch

Po zakończeniu procesu instalacji uruchom i włącz usługę, uruchamiając:

sudo systemctl enable elasticsearch.service sudo systemctl start elasticsearch.service

Możesz sprawdzić, czy Elasticsearch działa, wysyłając żądanie HTTP do portu 9200 na localhost za pomocą następującego polecenia curl:

curl -X GET "localhost:9200/"

Dane wyjściowe będą wyglądać podobnie do następujących:

{ "name": "fLVNqN_", "cluster_name": "elasticsearch", "cluster_uuid": "6zKcQppYREaRH0tyfJ9j7Q", "version": { "number": "6.7.0", "build_flavor": "default", "build_type": "rpm", "build_hash": "8453f77", "build_date": "2019-03-21T15:32:29.844721Z", "build_snapshot": false, "lucene_version": "7.7.0", "minimum_wire_compatibility_version": "5.6.0", "minimum_index_compatibility_version": "5.0.0" }, "tagline": "You Know, for Search" }

Uruchomienie usługi może potrwać 5–10 sekund. Jeśli zobaczysz curl: (7) Failed to connect to localhost port 9200: Connection refused , poczekaj kilka sekund i spróbuj ponownie.

Aby wyświetlić wiadomości zarejestrowane przez usługę Elasticsearch, możesz użyć następującego polecenia:

sudo journalctl -u elasticsearch

W tym momencie masz zainstalowany Elasticsearch na serwerze CentOS.

Konfigurowanie Elasticsearch

Dane elasticsearch są przechowywane w katalogu /var/lib/elasticsearch , pliki konfiguracyjne znajdują się w /etc/elasticsearch .

Domyślnie Elasticsearch jest skonfigurowany do nasłuchiwania tylko na localhost. Jeśli klient łączący się z bazą danych działa również na tym samym hoście i konfigurujesz klaster z jednym węzłem, nie musisz zmieniać domyślnego pliku konfiguracyjnego.

Dostęp zdalny

Po wyjęciu z pudełka Elasticsearch nie implementuje uwierzytelniania, więc dostęp do niego może uzyskać każdy, kto ma dostęp do interfejsu API HTTP. Jeśli chcesz zezwolić na zdalny dostęp do serwera Elasticsearch, musisz skonfigurować zaporę ogniową i zezwolić na dostęp do portu Elasticsearch 9200 tylko od zaufanych klientów.

Począwszy od CentOS 7, FirewallD zastępuje iptables jako domyślne narzędzie do zarządzania zaporą.

Uruchom następujące polecenie, aby umożliwić ocenę ze zdalnego zaufanego adresu IP na porcie 9200 :

sudo firewall-cmd --new-zone=elasticsearch --permanent sudo firewall-cmd --reload sudo firewall-cmd --zone=elasticsearch --add-source=192.168.121.80/32 --permanent sudo firewall-cmd --zone=elasticsearch --add-port=9200/tcp --permanent sudo firewall-cmd --reload Nie zapomnij zmienić 192.168.121.80 pomocą zdalnego adresu IP.

Później, jeśli chcesz zezwolić na dostęp z innego adresu IP, użyj:

sudo firewall-cmd --zone=elasticsearch --add-source= --permanent sudo firewall-cmd --zone=elasticsearch --add-source= --permanent sudo firewall-cmd --reload

Po skonfigurowaniu zapory następnym krokiem jest edycja konfiguracji Elasticsearch i umożliwienie Elasticsearch nasłuchiwania połączeń zewnętrznych.

Aby to zrobić, otwórz plik konfiguracyjny elasticsearch.yml :

sudo nano /etc/elasticsearch/elasticsearch.yml

Wyszukaj wiersz zawierający network.host , odkomentuj go i zmień wartość na 0.0.0.0 :

/etc/elasticsearch/elasticsearch.yml

network.host: 0.0.0.0

Uruchom ponownie usługę Elasticsearch, aby zmiany odniosły skutek:

sudo systemctl restart elasticsearch

Otóż ​​to. Możesz teraz połączyć się z serwerem Elasticsearch ze swojej zdalnej lokalizacji.

Wniosek

Pomyślnie zainstalowałeś Elasticsearch na CentOS 7. Możesz teraz odwiedzić oficjalną stronę Dokumentacji Elasticsearch i dowiedzieć się, jak zacząć korzystać z Elasticsearch.

java elasticsearch bazy danych centos