ELK系列(四)、Kibana安装
前言上篇文章已经完成了ES集群的安装,并且开启了x-pack权限认证,本片文章继续讲述Kibana的安装与使用。
本次安装采用tar.gz压缩包,开箱即用,基于之前的集群环境,安装在hadoop101服务器上。
解压安装并修改配置文件上传压缩包至 /opt/software 目录,并解压到上一级 module 目录下:
12345678910111213141516171819202122cd /opt/softwaretar -xvf kibana-7.10.2-linux-x86_64.tar.gz -C ../module/# 备份解压后 config 目录下的 kibana.yml 配置文件cd /opt/module/kibana-7.10.2-linux-x86_64/configcp kibana.yml kibana.yml.bak# 写空文件内容> kibana.ymlvim /opt/module/kibana-7.10.2-linux-x86_64/config/kibana.yml# 添加以下内容server.port: 5601server.host: ...
ELK系列(三)、ElasticSearch集群安装并开启x-pack权限认证
前言本篇教程基于上篇《ELK系列(二)、ElasticSearch单实例安装》的基础上进行的集群安装教程,此处默认ES单点安装已成功启动并运行。
ES集群安装采用单台服务器多实例方式进行,单实例方式安装较为简单,直接分发安装包,修改相应的配置文件即可,读者可根绝多实例安装方式自行搭建。
主机名
节点角色
新增主机映射
hadoop100
master节点、data节点
es-master-1、es-hot-1
hadoop101
data节点
es-hot-2
ES安装包目录:/opt/module/elasticsearch-7.10.2配置文件目录:/data1/elk/esconfig数据存放目录:/data1/elk/esdata日志所在目录:/data1/elk/eslogs如果上述目录先前单点安装时已存在并且data相应有写入数据,建议删除重新创建上述目录权限均为 elasticsearch 用户和 elasticsearch 组(可参考上篇文章添加用户命令)
创建master、data节点配置文件hadoop100节点1)hadoop100创建ma ...
ELK系列(二)、ElasticSearch单实例安装
前言 ELK系列文章统一选用 v7.10.2,为目前本司线上使用版本。另外大家在进行ELK平台构建时,Elastic体系选用的各组件版本尽量保持一致,否则安装过程中可能会出现各种版本依赖问题。
本文将主要讲述ES单点服务安装及服务器系统参数调优,后续章节会讲述ES集群(一主二从,单服务器多实例)安装方式及生产环境参数配置。
环境说明
服务器环境:CentOS 7.5JDK环境:JDK1.8ES版本:Elasticsearch7.10.2Elastic下载:https://elasticsearch.cn/download/
安装步骤下载、上传、解压123456mkdir -p /opt/softwaremkdir -p /opt/module# 默认已将安装包下载上传至 /opt/softwarecd /opt/softwaretar -xvf elasticsearch-7.10.2-linux-x86_64.tar.gz -C ../module/
启动12cd ../module/elasticsearch-7.10.2/bin/./elasticsearch
一般解压后 ...
ELK系列(一)、Elasticsearch相关概念说明
前言本人公司项目组最近刚刚上线了ElasticSearch+HBase百亿级数据存储与实时检索,底层数据量大且数据重要性级别高。先前项目组成员们经过较长时间的本地化测试及底层存储设计优化,最终以较好的测试结果(性能、稳定性、扩展性)顺利通过技术评审。就在前端时间经过大家不懈努力终于成功上线,顺利替换了先前线上使用的某国产分布式数据库(该数据库响应时间已不满足当前业务场景)。由于距今上线运行时间较短,稳定性还在观测中,但目前表现情况一切良好。具体事宜后续视情况进行更新。
此时,又恰逢小菜鸟的个人博客顺利上线两月之久,打算陆续推出 ELK技术栈 相关的系列文章,包括但不限于ElasticSearch、Logstash、Kibana、Filebeat技术框架,同时还会穿插讲述与Kafka消息队列结合使用来分析处理实时流数据、微服务实时流量监控平台、实时同步Mysql数据到ES/HBase等。
题记在学习一项新技术之前,首先要思考这项技术是如何产生的?又解决的什么难题?要掌握哪些核心知识?带着问题学习去了解往往是事半功倍的,也会收获颇丰。
这里给大家分享一篇《ElasticSearch相关概念 ...
Spark On Yarn 提升spark submit速度
引言本文承接上篇 Spark on yarn运行时Jar包加载踩坑经历 来进一步分析spark-submit 通过–jars 传入本地jar包 和 HDFS上的jar包的区别,以及 spark.yarn.jars 与前两者的区别。
–jars的使用1. –jars 传入本地jar包
1--jars a.jar,b.jar,c.jar
::: hljs-left
:::
传入本地jar包时,spark-submit脚本会执行Uploading resource的操作将本地的jar包拷贝到spark的临时依赖地址供后续任务执行,当jar包很多或者jar包容量很大时,需要Uploading很长时间,解决办法就是将依赖上传至HDFS。
2. –jars 传入HDFS jar包
1--jars hdfs://nameservice1/user/dependency.a.jar,hdfs://nameservice1/user/dependency.b.jar,hdfs://nameservice1/user/dependency.c.jar
::: hljs-left
:::
Source ...
Spark on yarn运行时Jar包加载踩坑经历
前言本文起因于近段时间在做的项目,百亿级数据的存储与实时检索。项目主要采用HBase存储全量数据,Elasticsearch作为二级索引库,数据入库采用Spark批量写入,最终数据通过微服务平台API接口对外提供实时线上访问。
HBase端采用saveAsNewHadoopFile算子生成HFile文件,然后通过HBase自带bulk load方式进行加载
Elasticsearch端采用批量bulk方式写入数据
具体方案由于工作原因,不便透漏,此处不再详细叙述,感兴趣的可以至 留言板 或者 随心聊 模块私信本人。
下面主要叙述项目上线后 Spark on yarn 运行时 Jar 包加载异常的解决方案。
生产异常报错由于表入库时需要读取 Mysql 数据库当前表的配置信息,因此项目中添加了 Mysql 驱动的依赖,测试环境从开发到上线均正常运行。但一上生产通过调度工具调用起来直接就报错,我们这上线换版出现问题是比较严重的,所以当时还是小小惊了一下的,然后抓紧时间通过电话排查问题(此时我已经回家了)。
1.查看运行日志
1234// 主要日志java.sql.SQLExceptio ...
Md5加密中为什么要 & 0xff
转载于:带着梦想飞翔
这里首先要搞明白一个道理(自己设想的)* byte有8位,假如全部都是 11111111 那么对应的int(10进制)类型就是 255* 虽然255(十进制)和11111111(二进制)都表示同一个数,但作为String类型存储255作为String类型存储长度为3,而11111111作为string类型存储长度为8* 【关键点一】MessageDigest.getInstance(“MD5”).digest(“需要加密的字符”.getBytes()) 计算出来的结果返回的byte[]长度始终为16位。* 所以说,真正的密文 是由java别人大神写的算法计算出来的。已经保证16位的固定长度的byte* 【关键点二】要记住我们计算出来的md5(32位)最后都都是固定长度32的字符串* 那么问题出现了:byte[16]这个数组要是直接转化为int类型在存储为字符。而byte的取值范围为-128 ~ 127.那么作为0-99转化为总长度为16的字符串没有问题,* 但,100 ~ 128和-10 ~ -128这些数字转换为总长度为16的字符串就不一定了。* 因为一个by ...
Hadoop数据压缩
压缩概述压缩技术能够有效减少底层存储系统(HDFS)读写字节数。压缩提高了网络带宽和磁盘空间的效率。在运行MR程序时,I/O操作、网络数据传输、 Shuffle 和 Merge 要花大量的时间,尤其是数据规模很大和工作负载密集的情况下,因此,使用数据压缩显得非常重要。
由于磁盘 I/O 和网络带宽是 Hadoop 的宝贵资源,数据压缩对于节省资源、最小化磁盘 I/O 和网络传输非常有帮助。可以在任意 MapReduce 阶段启用压缩。不过,尽管压缩与解压操作的CPU开销不高,其性能的提升和资源的节省并非没有代价。
由此压缩的优缺点也较为明显:
优点:以减少磁盘 IO、减少磁盘存储空间
缺点:增加 CPU 开销
压缩策略和原则压缩是提高 Hadoop 运行效率的一种优化策略。
通过对 Mapper、Reducer 运行过程的数据进行压缩,以减少磁盘IO,提高MR程序运行速度。
注意:采用压缩技术减少了磁盘IO,但同时增加了CPU运算负担。所以,压缩特性运用得当能提高性能,但运用不当也可能降低性能。
压缩基本原则:
运算密集型的job,少用压缩
IO密集型的job,多用压缩
对于 M ...
hadoop-3.1.3 启动HDFS时报错ERROR: Attempting to operate on hdfs namenode as root的解决方法
最近在升级 Hadoop3.1.3 版本首次启动集群时报如下错误:
123456789Starting namenodes on [hadoop100]ERROR: Attempting to operate on hdfs namenode as rootERROR: but there is no HDFS_NAMENODE_USER defined. Aborting operation.Starting datanodesERROR: Attempting to operate on hdfs datanode as rootERROR: but there is no HDFS_DATANODE_USER defined. Aborting operation.Starting secondary namenodes [hadoop102]ERROR: Attempting to operate on hdfs secondarynamenode as rootERROR: but there is no HDFS_SECONDARYNAMENODE_USER defined ...
SSL证书 基于Nginx配置Https
前言 最近一段时间在搞自己的博客网站,本地环境一直使用的HTTP协议,但在上线发布到个人服务器后还使用HTTP访问就有点说不过去了。
另外博客网站的基础架构为 Hexo框架 + Butterfly主题 + 博客后端管理(自己开发便于管理博客);此处涉及到自己个人后台服务以及服务端数据库的基本操作,还包括阿里云OSS存储对象。考虑至此,还是打算安装SSL证书,采用HTTPS方式堆外提供访问(其实最多的想法还是担心对于不搞程序的盆友们一看到不安全的链接就直接劝退了,这是万万伤不起的)。毕竟自己也是土生土长的程序猿,怎么能容忍此种情况发生。
虽然自己之前没搞过Nginx方面的东西,但这些都不是问题,只有一句话:“没有不会搞,只有不想搞”。
使用的环境如下:
123服务器: 腾讯云轻量应用服务器(1G,2core)centos: 7.6nginx: 1.8.0
申请证书 此处采用的是腾讯云域名解析,首选先申请个人域名,并添加至域名解析中。
点击域名进入域名记录列表配置页,添加域名解析记录:
添加完成后可在页面最上端前往 DNSPod控制台 进行SSL证书申请,找到刚刚添加的记录值,如图操作 ...