Docker部署es+kibana -- 操作筆記


docker 部署es+kibana

安裝elasticsearch

進入docker 官方鏡像倉庫https://hub.docker.com/,如果第一次使用,需要注冊賬號

注冊登錄后,在頁面搜索elasticsearch

搜索到后,進入頁面向下查找


#es暴露的端口很多
#es也十分耗內存
#es的數據一般需要放置到安全目錄!使用掛載

#創建網絡,可以使用已經創建的網絡
$ docker network create --driver bridge --subnet 192.168.0.0/24 --gateway 192.168.0.1 mynet
#運行es,單節點運行
[root@node1 docker]# docker run -d --name elasticsearch --net mynet -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.10.1
#使用查看es狀態
[root@node1 docker]# docker ps
CONTAINER ID        IMAGE                  COMMAND                  CREATED             STATUS              PORTS                                            NAMES
443c4814689a        elasticsearch:7.10.1   "/tini -- /usr/loc..."   4 minutes ago       Up 4 minutes        0.0.0.0:9200->9200/tcp, 0.0.0.0:9300->9300/tcp   elasticsearch
[root@node1 docker]# curl localhost:9200
{
  "name" : "443c4814689a",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "nxo7C1UsRbyd33lTYQNtFQ",
  "version" : {
    "number" : "7.10.1",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "1c34507e66d7db1211f66f3513706fdf548736aa",
    "build_date" : "2020-12-05T01:00:33.671820Z",
    "build_snapshot" : false,
    "lucene_version" : "8.7.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

es運行后,發現系統變得比較卡,顯然是es耗掉了絕大部分內存

#查看系統消耗,占內存65%
[root@node1 docker]# docker stats
#停止es
[root@node1 docker]# docker stats
#增加內存限制,修改配置文件 -e 環境配置修改
[root@node1 docker]# docker run -d --name elasticsearch --net mynet -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx256m" elasticsearch:7.10.1
#查看系統消耗,占內存50%
[root@node1 docker]# docker stats 6f4f729a4ddd
[root@node1 docker]# curl localhost:9200
{
  "name" : "6f4f729a4ddd",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "f1CoqkN5SRCOjZIMh_PJ6g",
  "version" : {
    "number" : "7.10.1",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "1c34507e66d7db1211f66f3513706fdf548736aa",
    "build_date" : "2020-12-05T01:00:33.671820Z",
    "build_snapshot" : false,
    "lucene_version" : "8.7.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}
[root@node1 docker]# 

es安裝完成,現在安裝kibana

安裝kibana

到docker官方查看kibana

#docker 運行kibana,同es使用相同版本7.10.1,同樣使用mynet網絡
[root@node1 docker]# docker run -d --name kibana --net mynet -p 5601:5601 kibana:7.10.1
Unable to find image 'kibana:7.10.1' locally
7.10.1: Pulling from library/kibana
3c72a8ed6814: Already exists 
55b131d31acb: Pull complete 
... 
5ffe1970589a: Pull complete 
Digest: sha256:ee434144dd3f8d0f18bff10eda9918cd8e70f8deaaf6a75adf5d0df7f8094169
Status: Downloaded newer image for kibana:7.10.1
8d90e2e3fe43df43a7f936361a88cd2026c756381e71a80b37fea173ab9aba6a
#瀏覽器訪問http://192.168.1.10:5601, 可以查看到kibana 頁面,可以訪問成功

配置kibanan連接es

#停止正在運行的es和kibana
[root@node1 docker]# docker rm -f $(docker ps -aq)
8d90e2e3fe43
6f4f729a4ddd
#新建es數據和配置目錄
[root@node1 docker]#mkdir -p /mydata/elasticsearch/{config,data}
//新建並寫入配置文件
[root@node1 docker]#echo "http.host: 0.0.0.0" >> /mydata/elasticsearch/config/elasticsearch.yml
[root@node1 elasticsearch]# ls
config  data
[root@node1 elasticsearch]# cat config/elasticsearch.yml 
http.host: 0.0.0.0
#配置完成,執行命令啟動elasticsearch並掛載配置文件到虛擬機目錄:
#-p 9200:9200 -p 9300:9300 開發映射端口
#-e ES_JAVA_OPTS="-Xms64m -Xmx128m"設置es占用內存 最大128m 以后在設置
#-v 掛載目錄並啟動容器
#-e "discovery.type=single-node" 設置單擊模式運行
#-e ES_JAVA_OPTS="-Xms64m -Xmx128m" 設置es占用內存 最大128m 以后在設置
[root@node1 docker]# docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx128m" -v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v /mydata/elasticsearch/data:/usr/share/elasticsearch/data -v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins -d elasticsearch:7.10.1
315d59f62177833f85ebc9d37c527a34142b4b2c70cc9b5abccb6bd98e1a1370
# 訪問測試
[root@node1 docker]# curl localhost:9200
{
  "name" : "cc245a7cb465",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "cKAWvALsRuakx7l9ePbyDA",
  "version" : {
    "number" : "7.10.1",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "1c34507e66d7db1211f66f3513706fdf548736aa",
    "build_date" : "2020-12-05T01:00:33.671820Z",
    "build_snapshot" : false,
    "lucene_version" : "8.7.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

#配置kibana 連接到es
[root@node1 docker]#docker run -d --name kibana --net mynet -e ELASTICSEARCH_HOSTS=http://192.168.1.10:9200 -p 5601:5601 kibana:7.10.1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM