iT邦幫忙

2024 iThome 鐵人賽

DAY 0
0
自我挑戰組

重新開始 elasticsearch 系列 第 2

2024 鐵人賽 Day3: docker 安裝 elasticsearch + kibana

  • 分享至 

  • xImage
  •  

elasticsearch 的服務可以透過兩種方式取得:

  • elastic cloud:透過雲端服務的 market place 購買企業版授權後,就可以在雲端快速的部署託管的 elasticsearch 服務。
  • 地端架設 elasticsearch 叢集:於主機、vm 或容器內部署企業或 community 版本的服務。

接下來會透過 docker 於地端安裝 elasticsearch 服務,並且因本文重點會在實作 ES 上的應用,叢集架構僅採用 single node;single node 沒有任何錯誤容忍的空間,容易有服務中斷、資料遺失的風險,官方不推薦使用 single node 作為正式環境(production)配置。

以下是在地端架設一個可用 single node ES 叢集的 docker-compose.yml ;共有 elasticsearch & kibana 兩個服務,image 都是使用 Elastic 官方發佈的 image、服務預設的 port 、透過 bridge network 把兩個服務放在同一個網路環境(elastic)中。

這邊要感謝 docker 的出現和普及,雖然不是萬能,但對於我極度有限的 OS 知識和經驗而言, docker 真的讓很多工具的初步探索變的非常容易。

version: '3'
services:
  elasticsearch:
    image: elasticsearch:8.15.0
    container_name: es
    ports:
      - 9200:9200
      - 9300:9300
    environment:
      - discovery.type=single-node
      - xpack.security.enabled=false
    networks:
      - elastic
  kibana:
    image: kibana:8.15.0
    container_name: kibana
    ports:
      - "5601:5601"
    depends_on:
      - elasticsearch
    networks:
      - elastic
networks:
  elastic:
    driver: bridge

使用 docker compose 將服務啟動後,可以打開瀏覽器輸入 url: localhost:9200,或是 curl 工具發出 get request 給 localhost:9200,如果會得到以下類似的 json 字串說明 ealsticsearch 服務的基本資訊,表示服務啟動成功。

{
  "name": "eb82baa6a1a6",
  "cluster_name": "docker-cluster",
  "cluster_uuid": "_uchHPFRTC67CZ9MNHvsPw",
  "version": {
    "number": "8.15.0",
    "build_flavor": "default",
    "build_type": "docker",
    "build_hash": "1a77947f34deddb41af25e6f0ddb8e830159c179",
    "build_date": "2024-08-05T10:05:34.233336849Z",
    "build_snapshot": false,
    "lucene_version": "9.11.1",
    "minimum_wire_compatibility_version": "7.17.0",
    "minimum_index_compatibility_version": "7.0.0"
  },
  "tagline": "You Know, for Search"
}

接下來看看 kibana 服務是不是也成功,請在瀏覽器輸入 localhost:5601 ,成功的話會顯示 kibana 首頁,類似下圖的畫面。

https://ithelp.ithome.com.tw/upload/images/20240917/20169448GRq8PDQhPm.png

畫面除了 menu bar 外大致可以分成三個區塊,功能入口、資料介接導覽、管理工具區。Elasitc 的界面我個人是蠻喜歡的,非常的清楚、易用,推薦大家每一個部分都可以點入探索看看有什麼樣的內容。

下一篇會開始使用 kibana 跟 ES 互動。


上一篇
2024 鐵人賽 Day2: 簡介 Elasticsearch
下一篇
2024 鐵人賽 Day4: Start From Demo Code
系列文
重新開始 elasticsearch 29
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言