本文共 4237 字,大约阅读时间需要 14 分钟。
ELK是一整套解决方案,是三个软件产品的首字母缩写很多公司都在使用,如:Sina、携程、华为、美团等
Elasticsearch:负责日志检索和储存 Logstash:负责日志的收集和分析、处理 Kibana:负责日志的可视化
ELK组件在海量日志系统的运维中,可用于解决 分布式日志数据集中式查询和管理 系统监控,包含系统硬件和应用各个组件的监控 故障排查
设置主机名称和IP对应关 系解决依赖关系 安装软件包 修改配置文件 启动服务
主机名 | IP |
---|---|
ces1 | ?.?.?.11 |
ces2 | ?.?.?.12 |
ces3 | ?.?.?.13 |
kibana | ?.?.?.14 |
ces1,ces2,ces3
yum -y install java-1.8.0-openjdkjava -versionunzip elk.zipyum -y install elasticsearch-2.3.4.rpmvim /etc/elasticsearch/elasticsearch.ymlcluster.name: ces 17行node.name: es1 23行network.host: 0.0.0.0 54行discovery.zen.ping.unicast.hosts: ["ces1", "ces2", "ces3"] 68行systemctl start elasticsearch.servicesystemctl enable elasticsearch.servicess -untlp | grep java
打开浏览器 IP:9200 或 curl http://IP:9200
常用方法GET,POST,HEAD 其他方法 OPTIONS,PUT, DELETE,TRACE和CONNECT ES常用 PUT — 增 DELETE — 删 POST — 改 GET — 查
在 linux中cur是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的htp命令行工具。它支持多种请求模式,自定义请求头等强大功能,是一款综合工具
curl -i http://域名 | head -n 30
curl -XPOST http://域名
head插件 它展现ES集群的拓扑结构,并且可以通过它来进行索引( Index)和节点(Node)级别的操作 它提供组针对集群的查询API,并将结果以sonη和表格形式返回 它提供一些快捷菜单,用以展现集群的各种状态
kopf插件 是一个 Elasticsearch的管理工具 它提供了对ES集群操作的APⅠ bigdesk插件 是 elasticsearch的一个集群监控工具 可以通过它来查看es集群的各种状态,如:cpu、内存使用情况,索引数据、搜索情况,htt连接数等 ces1,ces2,ces3rpm -ql elasticsearchln -s /usr/share/elasticsearch/bin/plugin /sbin/plugin install file:///root/elasticsearch-head-master.zip #安装head插件plugin install file:///root/elasticsearch-kopf-master.zip #安装kopf插件plugin install file:///root/bigdesk-master.zip #安装bigdesk插件plugin list #查看安装的插件
Web页面访问插件 _plugin/插件名称
http://IP:9200/_plugin/bigdesk/http://IP:9200/_plugin/head/http://IP:9200/_plugin/kopf/**
curl http://IP:9200/_cat/curl http://IP:9200/_cat/nodes/curl http://IP:9200/_cat/nodes?curl http://IP:9200/_cat/nodes?vcurl http://IP:9200/_cat/nodes?h我们需要新建一个索引 你的分片数不能大于物理服务器的数量 同样的数据不会存在同样的服务器上 查询API /_cat/xxxx 创建index
curl -XPUT http://ces2:9200/date -d ' {'settings':{ "index":{ "number_of_shards": 3, "number_of_replicas": 1 } }}'
使用curl命令连接使用ES数据库 使用PUT方法增加数据 使用POST修改数据 使用GET查询数据 使用DELETE删除数据
增加数据localeLANG=en_US.UTF-8 #设置编码####################################################curl -XPUT http://ces1:9200/索引/类型/id -d 'json数据'####################################################curl -XPUT "http://ces1:9200/taindex/teacher/1" -d '{"职业": "诗人","名字": "李白","称号": "诗仙","年代": "唐"}'修改数据
####################################################curl -XPOST http://ces1:9200/索引/类型/id/_update -d 'json数据'####################################################curl -XPOST "http://ces1:9200/taindex/teacher/1/_update" -d '{ "doc":{ "年代": "唐代" } }'查询数据
####################################################curl -XGET http://ces1:9200/索引/类型/id?pretty####################################################curl -XGET "http://ces1:9200/taindex/teacher/1?pretty" -d"{'_index' : 'taindex','_ty pe' : 'teacher','_id' : '3','found' : 'false'}"删除数据
####################################################curl -XDELETE http://ces1:9200/索引/类型/id?pretty####################################################curl -XDELETE http://ces1:9200/taindex/teacher/1?pretty
删除索引
####################################################curl -XDELETE http://ces1:9200/索引/类型/id?pretty####################################################curl -XDELETE http://ces1:9200/taindex/ #删除索引{ "acknowledged":true}curl -XDELETE http://ces1:9200/* #删除所有索引{ "acknowledged":true}
安装Kibana 配置启动服务查看5601端口是否正常 通过web页面访问Kibana
yum -y install kibana-4.5.2-1.x86_64.rpmrpm -qc kibanavim /opt/kibana/config/kibana.ymlserver.port: 5601 # 2行# 若把端口改为80,可以成功启动kibana,但ss时没有端口,没有监听80端口,服务里面写死了,不能用80端口,只能是5601这个端口server.host: "0.0.0.0" # 5行# 服务器监听地址elasticsearch.url: "https://ces3:9200" # 15行# IP:9200kibana.index: ".kibana" # 23行# kibana自己创建的索引kibana.defaultAppId: "discover" # 26行# 打开kibana页面时,默认打开的页面discoverelasticsearch.pingTimeout: 1500 # 53行# ping检测超时时间elasticsearch.requestTimeout: 30000 # 57行# 请求超时elasticsearch.startupTimeout: 5000 # 64行# 启动超时systemctl restart kibana.servicesystemctl enable kibana.servicess -untlp | grep 5601
转载地址:http://tmnwi.baihongyu.com/