zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Docker安装Ek7.x.x

2023-04-18 16:22:09 时间

阅读量: 61

什么是ELK

ELK是ElasticSearch 、 Logstash、Kibana三大开源框架首字母大写简称。市面上也称为Elastic Stack。Lostash是ELK的中央数据流,用于从不同目标(文件/数据存储/MQ)收集不同格式数据,经过过滤后支持输出到不同目的地。Kibana可以将elastic的数据通过友好的页面展示出来,提供实时分析的功能

市面上很多开发只要提到ELK能够一直说出它是一个日志分析架构技术栈总称,但实际上ELK不仅仅适用于日志分析,它还可以支持其他任何数据分析和手机的场景,日志分析和收集知识更具有代表性。并非唯一性。

Docker安装ElasticSearch7.x.x

笔者的系统环境是:Ubuntu 19.10

搜索Es镜像

docker search elasticsearch

安装 Es 镜像

由于墙的原因,下载比较慢,需要修改docker的镜像为daocloud的镜像仓库

设置中国镜像:点我跳转

Ubuntu运行下面命令

curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io

重启下 docker服务

systemctl restart docker.service

拉取镜像的时候,官方推荐要指定版本号,如果没有指定,默认是:  镜像名:latest  下载最新版本,这是不推荐的方式,要避免这样使用

以下开始从拉取镜像

docker pull daocloud.io/library/elasticsearch:7.6.1

查看容器

docker images

运行容器

docker run --name es  
-p 9200:9200 -p 9300:9300 
-e "discovery.type=single-node" 
-e ES_JAVA_OPTS="-Xms512m -Xmx1000m" 
-v /home/docker/elastic/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml 
-v /home/docker/elastic/data:/usr/share/elasticsearch/data 
-v /home/docker/elastic/plugins:/usr/share/elasticsearch/plugins 
-d 41072cdeebc5

访问网页,检测是否启动成功

这条命令的意思是,将id为41072cdeebc5的容器运行起来,其中:

命令参数

说明

–name es

容器取名为 es

-p 9200:9200 -p 9300:9300

映射到9200,9300两个端口

-v /home/docker/elastic:/usr/share/elasticsearch/data

将容器中/usr/share/elasticsearch/data的映射到本地目录的/home/docker/elastic下通过这种设置,可以保证数据持久化

-v /home/docker/elastic/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml

将容器中/usr/share/elasticsearch/config/elasticsearch.yml的映射到本地目录的/home/docker/elastic/config/elasticsearch.yml下通过这种设置,可以保证数据持久化

-v /home/docker/elastic/plugins:/usr/share/elasticsearch/plugins

将容器中/usr/share/elasticsearch/pluginsch.yml的映射到本地目录的/home/docker/elastic/plugins下通过这种设置,可以保证数据持久化

-e ES_JAVA_POTS=”-Xms1024m -Xmx1024m”

限制es的最小和最大使用的内存空间

-d

后台运行

查看运行状态

docker ps -a

熟悉下目录

目录名

描述

默认位置

设置

home

Elasticsearch的根目录或$ES_HOME

在解压的时候创建

bin

二进制脚本文件包括elasticsearch启动节点、elasticsearch-plugin安装插件

$ES_HOME/bin

conf

配置文件 包括elasticsearch.yml

$ES_HOME/config

path.conf

data

在节点上分配的每个index/shard的数据文件的位置,可以容纳多个位置

$ES_HOME/data

path.data

logs

日志文件的位置

$ES_HOME/logs

path.logs

plugins

插件文件的位置,每个插件将包含在其子目录中

$ES_HOME/plugins

repo

共享文件系统存储库位置。可容纳多个位置。文件系统存储库可以放在这里指定的任何目录的任何子目录中

path.repo

script

脚本文件的位置

$ES_HOME/scripts

path.scripts

elasticsearch.yml的配置信息

network.host: 0.0.0.0
http.cors.enabled: true        # 是否支持跨域
http.cors.allow-origin: "*"    # 表示支持所有域名

安装Es的管理面板

笔者这里使用的是 chrome 下的 ElasticSearch Head 插件,点我跳转 进行安装

Docker安装Kibana7.x.x

Kibana是一个针对ElasticSearch的开源分析及可视化平台,用来搜索、查看交互存储在ElasticSearch索引中的数据。使用Kibana,可以通过各种如表进行高级数据分析及展示。Kibana让海量数据更容易理解。它操作简单,基于浏览器的用户界面可以快速创建仪表板实时显示Elasticsearch查询动态。设置Kibana非常简单。无需编码或者额外的基础构架,几分钟内就可以完成Kibana安装并启动Elasricsearch索引检测。

官网地址:点我跳转

Kibana 要和 Es的版本一致

docker pull docker.elastic.co/kibana/kibana:7.6.1

查看容器

docker images

运行容器

docker run --name kibana  
-p 5601:5601 
-v /home/docker/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml 
-d f9ca33465ce3

访问网页,检测是否启动成功

这条命令的意思是,将id为f9ca33465ce3的容器运行起来,其中:

命令参数

说明

–name kibana

容器取名为 kibana

-p 5601:5601

映射到5601 端口

-v /home/docker/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml

将容器中/usr/share/kibana/config/kibana.yml的映射到本地目录的/home/docker/kibana/config/kibana.yml下通过这种设置,可以保证数据持久化

-d

后台运行

访问网页,检测是否启动成功

kibana.yml的配置信息

server.name: kibana
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://172.18.0.5:9200"]
i18n.locale: zh-CN