- vừa được xem lúc

Tích hợp Elasticsearch và Kibana vào Docker-Compose

0 0 38

Người đăng: BaoTrung

Theo Viblo Asia

Giới thiệu

Elasticsearch là công cụ tìm kiếm và phân tích phân tán, RESTful mã nguồn mở, được xây dựng trên Apache Lucene. Kibana là một nền tảng phân tích hiển thị dữ liệu từ Elasticsearch một cách trực quan dễ sử dụng . Kibana cũng là một công cụ mã nguồn mở miễn phí, cho tất cả mọi người sử dụng. Kibana cung cấp các tính năng cho người dùng quản lý như biểu đồ cột, biểu đồ đường, biểu đồ tròn, biểu đồ nhiệt và nhiều loại chart khác nữa. Bài viết sau sẽ hướng dẫn tích hợp Elasticsearch và Kibana vào docker-compose

Nội dung

Để thực hiện kết nối 2 service trong docker trước tiên cần thiết lập một network chung cho 2 service đó mô hình như sau

Như hình để thực hiện kết nội cần tạo một network ES-NET bằng lệnh sau:

docker network create es-net --driver=bridge

Để kiểm tra network được tạo hay chưa chúng ta dùng lệnh :

docker network ls

Kết quả :

NETWORK ID NAME DRIVER SCOPE
acd9ccf2f539 bridge bridge local
f14ca1c8849e es-net bridge local
6840debcb248 host host local
f514cb30a663 none null local

Install and run Elastic search service

Trước tiên chúng ta cần thực hiện pull image Elasticsearch và chạy nó trên docker bằng lệnh sau


docker run -d \
--name es-container \
--net es-net \
-p 9200:9200 \
-e xpack.security.enabled=false \
-e discovery.type=single-node \
docker.elastic.co/elasticsearch/elasticsearch:7.11.0

--name chỉ định name của container là es-container và --net chỉ định network là es-net , -p xác định port 9200 được export, type node là single-node , version phiên bản 7.11.0

Install and run kibana service

Sau cùng chúng ta cần pull image kibana và thực hiện connect đến elastic bằng câu lệnh dưới.

docker run -d \
--name kb-container \
--net es-net \
-p 5601:5601 \
-e ELASTICSEARCH_HOSTS=http://es-container:9200 \
docker.elastic.co/kibana/kibana:7.11.0

Tương tự lệnh trên sẽ thực hiện chạy docker với các thông số

--name tên container --net chỉ định network là es-net( trùng với network đã sử dụng ở elasticsearch) -p chỉ định port -e xác định container elactic search dùng để link đến. ở đây là http://es-container:920 với es-container là tên container

Sau khi thực hiện run Kibana và mở browser ở địa chỉ http://localhost:5601

Giao diện sẽ như hình

Shutting service

Nếu muốn shutdown elastic search hoặc kibana thực hiện lệnh sau :

docker container stop kb-container
docker container stop es-container

Nếu muốn xóa tất cả hẵn sử dụng lệnh

docker container prune

Tích hợp tất cả vào docker-compose

Chúng ta có thể tích hợp các câu lệnh trên vào docker compose bằng cách viết file docker-compose.yml như sau

version: "3.0"
services: elasticsearch: container_name: es-container image: docker.elastic.co/elasticsearch/elasticsearch:7.11.0 environment: - xpack.security.enabled=false - "discovery.type=single-node" networks: - es-net ports: - 9200:9200 kibana: container_name: kb-container image: docker.elastic.co/kibana/kibana:7.11.0 environment: - ELASTICSEARCH_HOSTS=http://es-container:9200 networks: - es-net depends_on: - elasticsearch ports: - 5601:5601
networks: es-net: driver: bridge

Khởi chạy docker-compose bằng lệnh

docker-compose up -d

trong đó -d sẽ thực khởi chạy docker bằng chế độ detact

Nếu muốn stop cả 2 service trên sử dụng lệnh

docker-compose down 

Bình luận

Bài viết tương tự

- vừa được xem lúc

Elasticsearch là gì ?

. Lời nói đầu. Elasticsearch là gì .

0 0 35

- vừa được xem lúc

Backup và Restore Elasticsearch snapshot với AWS S3 trong Kubernetes

Ở công ty mình vừa có mấy task devops liên quan đến scaling, clustering Elasticsearch nên viết lại đề phòng sau này cần dùng. Có một task là chuyển dữ liệu từ single-node Elasticsearch cũ lên cluster mới.

0 0 50

- vừa được xem lúc

Reindex Elasticsearch data with zero downtime

Elasticsearch là một search engine tuyệt vời cho mọi dự án muốn áp dụng chức năng search cho sản phẩm của mình, với những tính năng như là near-realtime search, auto-complete, suggestion,.... Cùng với đó là lợi thế kiến trúc distributed search system, có thể dễ dàng scaling, failing handle. Khi muốn

0 0 40

- vừa được xem lúc

Fork you ElasticSearch! How Open Source Works

ElasticSearch recently dropped its open-source licensing strategy, prompting AWS to fork it. Learn how "Open Source" actually works and how companies profit from it.

0 0 48

- vừa được xem lúc

Tìm hiểu Text và Keyword trong Elasticsearch

Giới thiệu. Khi mình mới bắt đầu tìm hiểu về Elasticsearch mình không nghĩ rằng giữa kiểu dữ liệu Text và Keyword có sự khác nhau nhưng khi vào dự án thực tế mình mới nhận ra được sự khác biệt giữa 2

0 0 140

- vừa được xem lúc

Tìm hiểu và cài đặt Elasticsearch

Elasticsearch là gì. Elasticsearch cung cấp công cụ tìm tiếm và phân tích gần như là thời gian thực, áp dụng với mọi kiểu dữ liệu - văn bản có cấu trúc hoặc phi cấu trúc, số, thông tin địa lý.

0 0 114