ELK从5.6.3升级到6.3.0总结
ELK从5.6.3升级到6.3.0总结
由于6.3.0默认有es的监控功能,并且我们现在es总是有各种问题,原有的es开源插件head和HQ的监控都不够详细,所以决定升级es集群。我们目前es有5个node。我们的数据流向是filebeat logstash kafka logstash elasticsearch grafana
elasticsearch 升级总结
安装总结
由于各种配置文件问题,直接rpm -e elasticsearch, 然后安装6.3.0的es,/etc/elasticsearch/elasticsearch.yml 配置文件不变。
rolling update 总结
根据官网从5.6.3到6.3.0可以rolling upgrade,按照步骤直接操作,但是在升级完一个node之后,等es没有Initializing Shards和Relocating Shards的时候,等了两天的时候,Initializing Shards和Relocating Shards一直有,而且新的index貌似大部分都在升级的这个节点,导致数据严重不均衡,如果这样下去,这样这一个新升级的节点承受不了这么大的数据量,这时候找了是3台空闲机器,装上6.3.0的es加到整个集群中,这样一直等到了没有Initializing Shards和Relocating Shards的时候,但是按道理讲,es应该变成绿色,但是es集群还有UNASSIGNED shards,不过没有Initializing Shards和Relocating Shards。当时判断数据不会丢,所以接着升级,这样所有节点升级完成。后来发现UNASSIGNED shards应该是升级完后老的index有些逻辑问题,下面详细说下。
UNASSIGNED shards问题
在升级完所有index后发现还有UNASSIGNED shards的问题,确认集群的设置cluster.routing.allocation.enable已经由“none”设置成null了,看有人说要手动reroute这些shards,看了一下大概有500个shards,当时找了一个状态yellow的index发现replicas是1,有10个shards,5个UNASSIGNED,(当时认为replica应该是2,后来发现自己是错的,正常replica就是1,这样一共两副本)直接改成2,结果状态是15个shards,5个UNASSIGNED,我又改回了replicas=1,这样这个index状态就green了,然后就按照这个方法改,后来发现replica=2最后一个shard需要20分钟才确定到node上index才变green,这样把replica=3,在started shards是14的时候把replica=1,这样就修复了400多个shards,还剩下10个左右的shard UNASSIGNED,在反复执行一下这个流程,这样所有的UNASSIGNED shards就解决了。后来发现做这个过程中es报了大量的错误,估计这个有很多的逻辑错误,es需要反复修复,当时我们的ELK系统中logstash已经判断es不可用了,但是从es的监控来看es是正常的,估计就是es修复这个UNASSIGNED shards需要耗费写资源,下次要是再处理这个问题,需要慢慢的处理,不能短时间内修复所有的shards(我当时差不多1个小时就把500多个shards修复了,主要是分片的量小,整个index才不到5m),需要持续监控es的状态还有日志,最好在es比较闲的时候做。
最终都升级完成了,es整体的状态green了。
消费kafka的logstash5.6.3升级到6.3.0问题
配置文件沿用原有的没有问题,但是升级完后logstash template有问题,logstash无法往es里面放数据,具体的时间点是所有es节点都升级完成的第二天,(es需要所有节点都升级完成后,es的整个集群才是新版本的),logstash新建index的时候,原有template和新版本的不兼容,当时由于这些日志logstash已经在kafka里面commit了offset,如果不能及时解决,这段时间的所有日志都会丢失(可以找回,但是我们kafka 30多个topics,150多个partition,难度很大),百度了一个解决方案,直接删除原有logstash的template,重启logstash,logstash就会在es里面重新创建template。这样消费kafka的logstash就算升级完成。后来又仔细看了一下其实只要删除template中带_all的配置就行了,新老的区别就只是这一个。
kibana升级总结
这个没有太多操作,由于kibana的数据放到了es的.kibana index,升级完成后,说kibana数据需要升级,界面也给了升级链接,直接按照步骤升级就ok了。升级链接
grafana升级总结
这个是这次升级一起搞的,grafana从4.X升级到5.X,直接安装新的软件,拷贝/var/lib/grafana/grafana.db就行了。然后启动grafana就ok了。
收集端filebeat和logstash升级
这个还在计划中,预计就是停止所有filebeat,然后停止logstash,收集端备份/var/lib/filebeat/registry,和/etc/filebeat/filebeat.yml文件。然后升级filebeat,修改原有用到document_type的地方改成fields。然后logstash也要升级完后对应的修改,然后这两个组件也要加上xpack.monitor的配置,接着把filebeat和logstash起来就行了。需要注意的是之前装过filebeat6.2版本,这个版本在centos6上用/etc/init.d/filebeat restart,总是停出问题来,如果文件还是这样,建议用supervisor启动filebeat,可以尝试supervisor的这个配置(stopasgroup = true): stopsignal = KILL。
ELK从5.6.3升级到6.3.0总结的更多相关文章
- Hadoop-1.2.1 升级到Hadoop-2.6.0 HA
		Hadoop-1.2.1到Hadoop-2.6.0升级指南 作者 陈雪冰 修改日期 2015-04-24 版本 1.0 本文以hadoop-1.2.1升级到hadoop-2.6.0 Z ... 
- DPA 9.1.85 升级到DPA 10.0.352流程
		SolarWinds DPA的升级其实是一件非常简单的事情,这里介绍一下从DPA 9.1.95升级到 DPA 10.0.352版本的流程.为什么要升级呢? DPA给用户发的邮件已经写的非常清楚了(如下 ... 
- jackson2.5.0升级到2.7.0
		开发环境:spring-mvc4.1.7.jackson2.7.0 问题描述:项目中将原来的jackson2.5.0升级到2.7.0,导致服务调用出错. mvc相关的配置文件如下: <?xml ... 
- ORACLE 10升级到10.2.0.5 Patch Set遇到的内核参数检测失败问题
		在测试ORACLE 10.2.0.4升级到10.2.0.5 Patch Set的过程中,遇到一个内核参数检查失败的问题,具体错误信息如下所示 实验环境: 操作系统:Oracle Linux Ser ... 
- 探索Oracle数据库升级6   11.2.0.4.3 Upgrade12c(12.1.0.1)
		探索Oracle数据库升级6 11.2.0.4.3 Upgrade12c(12.1.0.1) 一.前言: Oracle 12c公布距今已经一年有余了,其最大亮点是一个能够插拔的数据库(PD ... 
- linux内核升级(ubuntu12.04从3.13.0升级到3.4.0 )
		花了一天的时间,终于把ubuntu12.04 的linux内核版本从3.13.0升级到3.4.0 升级后,系统更加稳定.具体步骤:# wget http://www.kernel.org/pub/li ... 
- mac版chrome升级到Version 65.0.3325.18后无法打开百度bing搜狗
		mac版本chrome升级到Version 65.0.3325.18后发现突然无法访问百度,搜狗,bing,神马等一系列的国内搜索引擎网站.连百度的儿子们比如知道,百度百科都无法访问. 1.首先想到的 ... 
- 【Android Studio安装部署系列】三十一、从Android studio3.0.0升级到Android studio3.0.1
		版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 突然想要升级到较高版本.要跟随潮流嘛,不然就落后了. 下载IDE http://www.wanandroid.com/tools/i ... 
- CoreProfiler升级到.NetStandard 2.0
		致所有感兴趣的朋友: CoreProfiler和相应的Sample项目cross-app-profiling-demo都已经升级到.NetStandrard 2.0和.NetCore 2.0. 有任何 ... 
随机推荐
- regex正则表达式学习
			正则表达式 动机1. 处理文本成为计算机常见工作之一2. 对文本内容的搜索提取是一项比较复杂困难的工作3. 为了快速方便处理上述问题,正则表达式技术诞生,主键发展为一个被众多语言使用的独立技术 定义: ... 
- 破损的键盘 (Broken Keyboard)--又名悲剧文本(线性表)
			题目: 你有一个破损的键盘.键盘上的所有键都可以正常工作,但有时Home键或者End键会自 动按下.你并不知道键盘存在这一问题,而是专心地打稿子,甚至连显示器都没打开.当你 打开显示器之后, 展现在 ... 
- 关于textarea标签自己遇到的问题
			效果描述: 固定文本框的宽高,让文本框不被拖拽,让提示内容的文字垂直居中 html: <div> <label>活动详情</label> <textarea ... 
- POJ-3159.Candies.(差分约束 + Spfa)
			Candies Time Limit: 1500MS Memory Limit: 131072K Total Submissions: 40407 Accepted: 11367 Descri ... 
- python爬虫系列之初识爬虫
			前言 我们这里主要是利用requests模块和bs4模块进行简单的爬虫的讲解,让大家可以对爬虫有了初步的认识,我们通过爬几个简单网站,让大家循序渐进的掌握爬虫的基础知识,做网络爬虫还是需要基本的前端的 ... 
- cocoapods 安装中出的太多问题
			前言: 新欢的公司,新买的电脑,新安装 cocoapods.然后开开心心去百度如何安装 cocoapods,前面的步骤我就不说了. 在 pod setup 上之后,网速超慢然后就失败 fatal: T ... 
- WPF打印京东电子面单(可以异步)
			参考:https://www.cnblogs.com/guogangj/archive/2013/02/27/2934733.html 模板:JDFlowDocument.xaml <FlowD ... 
- Git merge 不同的branch
			Git的优势是可以创建不同的branch,然后在每个branch上开发.那么问题是:如果不同的branch之间需要做同步,比如sourceBranch上做的修改也需要同步到targetBranch,改 ... 
- Linux内核基本装载卸载
			Linux由两部分组成:内核核心+内核模块核心的命名通常是vmlinuz-VERSION-release,模块的放置于/lib/modules/VERSION-release/ 一旦系统运行起来,内核 ... 
- 分布式一致性的基石---Paxos算法(1)
			分布式一致性的基石---Paxos算法(1) Paxos算法是由微软的工程师Lamport提出,Lamport依靠Paxos算法获得图灵奖: Paxos算法旨在解决相互信任的分布式系统中,多个节点能快 ... 
