Docker安装ELK
Docker安装ELK
- 环境说明:
三个服务在同一台机器上且防火墙关闭、端口开放。
- 注意:
ElasticSearch、Kibana、Logstash三个服务版本要保持一致!!!
安装ElasticSearch
下载镜像文件,这里指定版本号下载
docker pull elasticsearch:6.6.2
启动ES:
docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e NETWORK_HOST="0.0.0.0" elasticsearch:6.6.2
参数说明:
- –name elasticsearch:将容器命名为 elasticsearch
- -p 9200:9200:将容器的9200端口映射到宿主机9200端口
- -p 9300:9300:将容器的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:6.6.2:后台运行容器,并返回容器ID
打开 http://localhost:9200/
安装成功。
安装IK分词器
//进入es容器中
docker exec -it es bash//安装分词器
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.6.2/elasticsearch-analysis-ik-6.6.2.zip//定位
cd /usr/share/elasticsearch/plugins
ll
安装成功。
在Kibana界面的dev tools中或发送HTTP请求验证是否安装成功;
POST test/_analyze
{
“analyzer”: “ik_max_word”,
“text”: “hello world”
}
修改配置,解决跨域访问问题
首先进入到容器中,然后进入到指定目录修改elasticsearch.yml文件。
docker exec -it es bash
cd /usr/share/elasticsearch/config/
vi elasticsearch.yml
在elasticsearch.yml的文件末尾加上:
http.cors.enabled: true
http.cors.allow-origin: "*"
如果vi命令不能使用,上述结果执行成果可忽略:
//先执行
apt-get update
//再执行,可以通过vim进行修改
apt-get install vim
修改配置后重启容器即可。
docker restart elasticsearch
安装Logstash
下载镜像文件,这里指定版本号下载
docker pull logstash:6.6.2
我在工作目录建立一个 docker 目录 并在里面创建了 logstash 目录,用来存放所有配置
logstash里面存放配置文件
logstash.yml (文件内容)
path.config: /usr/share/logstash/conf.d/*.conf
path.logs: /var/log/logstash
conf.d文件夹中新建test.conf文件:
conf.d/test.conf (文件内容)input {#收集web_info.logpath => “/usr/share/logstash/conf.d/web_info.log”type => “super”start_position => “beginning”
}output {elasticsearch { hosts => ["localhost:9200"] }stdout { codec => rubydebug }
}
启动logstash:
docker run -it -d -p 5044:5044 --name logstash -v /Users/enle/docker/logstash/logstash.yml:/usr/share/logstash/config/logstash.yml -v /Users/enle/docker/logstash/conf.d/:/usr/share/logstash/conf.d/ logstash:6.6.2
前台进入logstash控制台,输入内容就会自动同步到es中
安装Kibana
下载镜像文件,这里指定版本号下载
docker pull kibana:6.6.2
启动kibana:
//查看docker内部ES:IP
docker inspect --format='{{.NetworkSettings.IPAddress}}' es //会获得ES的IP
*.*.*.*docker run --name kibana -e ELASTICSEARCH_URL=http://*.*.*.*:9200 -p 5601:5601 -d kibana:6.6.2
启动以后可以打开浏览器输入http://localhost:5601就可以打开Kibana的界面了。
如果重启docker容器es内网ip很容易发生改变,采用文章最后方法启动:建议启动Kibana方式
安装ElasticSearch-head
下载镜像文件
必须指定版本,否则报错(版本和其它版本无关联)
docker pull mobz/elasticsearch-head:5启动:
docker run -it -d -p 9100:9100 --name elasticsearch-head mobz/elasticsearch-head:5
启动以后可以打开浏览器输入http://localhost:9100就可以打开Head的界面了。
建议启动Kibana方式
因为每次重启容器docker内网中ip会变,建议启动kibana用命令:
docker run --name kibana -p 5601:5601 -d kibana:6.6.2//进入kibana中修改es容器地址
docker exec -it kibana bash
cd config
vi kibana.yml
如果图:
将elasticsearch修改成es在docker容器内网ip即:docker inspect --format=’{{.NetworkSettings.IPAddress}}’ es
Docker安装ELK相关推荐
- Centos7 Docker安装ELK详细步骤
系统配置:CentOS7.6 4核4G ELK版本:7.7.1 elastic官网地址:https://www.elastic.co/cn/ elastic产品地址:https://www.elast ...
- docker 安装ELK
参考文档: Docker ELK使用文档:http://elk-docker.readthedocs.io/ 1.拉取镜像 查看 Docker Hub 的镜像 docker search elk 拉取 ...
- 橘子学ES03之Docker安装ELK+cerebro
首先明白一点,ES是一个十分支持容器化运行的东西,加之docker的操作便捷性.前两篇我操作es和kibana真是够够的了. 一.服务器安装docker #1.卸载旧的版本: yum remove d ...
- Docker安装部署ELK教程 (Elasticsearch+Kibana+Logstash+Filebeat)
ELK是由 Elasticsearch.Logstash和Kibana 三部分组件组成. Elasticsearch 是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副 ...
- docker pull的镜像放在哪里_Docker 安装ELK及Docker常见命令
最近搭建基于Spring Cloud的微服务框架,日志系统当然最佳选择就是ELK.看着MAC 那紧巴巴的配置,又不想热情退去而留下一堆软件,果断选择Docker安装来节省那可怜的资源.当然这只是鹏哥的 ...
- Docker安装部署ELK教程 (Elasticsearch+Kibana+Logstash)
Elasticsearch 是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等. Logstash 是一个完全开 ...
- 从零学ELK系列(四):Docker安装Elasticsearch(超详细图文教程)
[前言] 为了更加真实的模拟生产部署环境,在上次的Docker环境中(<Centos安装Docker(超详细图文教程)>)中安装了Elasticsearch把步骤记录下来,一是方便自己以后 ...
- 从零学ELK系列(六):Docker安装Logstash(超详细图文教程)
[前言] 为了更加真实的模拟生产部署环境,在上次的Docker环境中(<Docker安装kibana(超详细图文教程)>)中安装了kibana,本次我们将安装日志清洗组件---logsta ...
- docker安装logstash及logstash配置
一.logstash跟es有版本对照关系 了解对照关系,决定要安装的logstash版本 二.ELK出现的原因 三.Logstash工作原理 Logstash事件处理管道有三个阶段:输入→过滤器→输出 ...
最新文章
- 编译驱动时出现Cannot open file trace.h错误
- linux下用c语言打印hellword,用C语言写一个Helloworld_实现第一步编译运行
- ABP+AdminLTE+Bootstrap Table权限管理系统第八节--ABP错误机制及AbpSession相关
- 把树分成森林 matlab,20170106RF_Matlab 随机森林指的是利用多棵树对样本进行训练并预测的一种分类器,包括两个方面:数据的随 269万源代码下载- www.pudn.com...
- 支付宝扫码支付完成后如何跳转跳转页面_支付宝支付页面广告(按效果付费,杜绝隐形消费),企业拓客好帮手...
- DatePicker 和 DatePickerDialog的基本使用方法
- FFmpeg获取H264文件的帧率
- 吴恩达 深度学习 2021版 作业
- 时间序列分解 | Python实现奇异谱分析(SSA)分解时间序列
- Apache Ranger:统一授权管理框架
- PTA数据结构7.1给定一个初始为空的栈和一系列压栈、弹栈操作,请编写程序输出每次弹栈的元素。栈的元素值均为整数。
- 菜鸟教程php模拟器,史上最强劲的android模拟器命令详解
- el-tree处理大量数据
- 三维建模软件之比较:和SketchUp、Revit建模软件相媲美 3D 地图 可视化 ThingJS
- 『Others』一键关闭所有应用程序
- 《融智学进阶文集》01:间接计算模型和间接形式化方法
- 第2期-通过去哪儿爬取机票价格
- B - Triple Shift(偶排列)
- 谷歌身份验证器代码实现
- 常见的进制以及进制转换