摘 要 该期刊的目的是研究在企业生产环境下大数据架构的相关技术,包括操作系统配置,Cloudera管理器安装,CDH集群部署和集群参数调优,Kerberos集成,LDAP集成,保护传输中的数据安全和保护静态数据安全.生产环境依赖于AWS云服务。实验内容:CDH集群部署和集群参数调优;企业级身份验证系统kerberos;使用一个轻量级目录访问协议(LDAP)目录管理认证;当启动集群时用TLS/SSL服务器守护程序加载密钥;签名证书将被用在CDH集群环境;HDFS加密确保所有敏感数据在存储在磁盘之前被加密。
【关键词】CDH Kerberos LDAP TLS/SSL 签名证书 透明hdfs加密 AWS
近年来,随着社会的高速发展,科技迅速进步,信息流通越来越频繁,数据量的也呈现为几何倍的增长。对于如何处理这些巨量的数据,如何从这些数据的矿产中挖掘出金子,成为各个企业日益关注的目标。传统的大数据计算框架都是搭建在本地计算机上,这样做的好处是内网环境使得大数据平台相对安全,但计算机群占地大,硬件升级更换麻烦,随着各大厂商开发出云计算服务,使得有大数据计算需求的企业不必再局限于场地和计算机的配置,本次实验就是基于亚马逊云服务的虚拟计算机。现如今,企业和大型机构在寻求解决棘手的大数据问题时,往往会使用开源软件基础架构Hadoop的服务:提供大数据计算平台服务的厂商也有很多比较出名的平台有CDH(Cloudera Distribution Hadoop);openstack;华为等;本文就是基于CDH管理平台的大数据架构的研究。
1 部署配置
1.1 集群配置
1.1.1 硬件配置
cpu:Intel(R) Xeon(R) CPU E5-
2686 v4 @ 2.30GHz ;Mem :64GB;Disk:1 * 30GB SSD
1 * 500GB HDD
1.1.2 操作系统
Red Hat Enterprise Linux Server release 6.7(Santiago)
1.2 系统配置
(1)禁用防火墙;
(2)禁用SELinux;
(3)禁用THP;
(4)禁用Swap。
1.3 外部软件和服务
(1)配置 Mysql 数据库。我们使用AWS RDS作为外部数据库服务。数据库类型是MySQL5.5。由于RDS本身具有HA功能,所以没有额外的步骤来配置HA。
(2)配置必要的数据库。为相关的CDH组件编写数据库。这些数据库需要UTF-8支持。
(3)配置本地yum源。
1.4 CDH部署
1.4.1 角色安排
如表1所示。
1.4.2 安装Cloudera Manager
在edgenode001,执行如下指令:
# yum install oracle-j2sdk1.7
# yum install cloudera-manager-daemons cloudera-manager-server
#/usr/share/cmf/schema/scm_prepare_database.sh -h USERNAME>
# service cloudera-scm-server start
1.4.3 部署CDH集群
(1)我们可以访问Cloudera Manager 网站http://(yourip):7180按照网站导航即可安装完成;username,password均为admin。
(2)启用Navigator 数据管理仪表板。
Cloudera Navigator数据管理仪表板能够捕捉到的各种数据,元数据信息,用户的工作和数据处理。
(3)HA 部署。
1.HDFS HA 部署
2.YARN HA部署
2 实验过程
2.1 kerberos服务
(1)安装kerberos相关安装包在master节点,编辑相关配置文件:kdc.conf,kadm5.ac,;krb5.conf;初始化KDC数据库:kdb5_util create -s;开启KDC服务和kadmin守护进程。
(2) kerberos HA 部署。Kerberos的设计目的是允许主/从复制集群。虽然Kerberos集群可以由任意数量的主机组成,但建议您至少有两个主机。master作�橹鞣�务器和至少一个slave作为master的主备份。主服务器和从服务器可以分别被认为是主服务器和辅助服务。
Kerberos客户机应用程序设计用于在主服务器关闭时尝试通过辅助服务器进行身份验证。因此,在系统故障未能通过Kerberos身份验证服务到备份服务器时,您不需要做任何额外的工作。但是Kerberos的管理特性不提供自动故障转移。
(3)Kerberos与Cloudera Manager整合。部署kerberos客户端在每台节点上,通过Cloudera Manager控制台完成操作向导。
2.2 OpenLADP服务
(1)安装openldap相关安装包;编辑相关配置文件。
(2)OpenLADP与Hue整合。
(3)OpenLADP与Cloudera Manager整合。 (4)OpenLADP与Cloudera Navigator整合。
(5)OpenLADP HA 部署。
OpenLDAP HA通�^LDAP同步复制的实现。除了先前配置的LDAP服务器,它还需要另一个LDAP服务器节点。
2.3 集群加密服务
(1)为Cloudera Manager配置TLS加密服务。
获得用于Cloudera Manager TLS / SSL证书。
(2)ClouderaManager管理控制台启用HTTPS指定服务器密钥存储属性,指定ClouderaManager服务的SSL信任库特性。
(3)为Cloudera Manager Agents配置TLS加密。
通过配置使Agents使用TLS[5]连接到Cloudera Manager. 确保Cloudera Manager Agents主机能够验证服务器的证书和配置群集验证Agents的证书。
(4)配置CDH服务的加密服务。
为HDFS,YARN和MAPREDUCE配置TLS/SSL;配置HiveServer2和客户端驱动之间加密通信;为Cloudera Navigator数据管理配置TLS / SSL;为Oozie配置TLS/SSL;为Hue配置TLS/SSL;Spark加密。
3 结论
本文对企业生产环境下部署的大数据处理集群全过程进行了分析,得出以下结论:
(1)使用aws可以根据实际生产情况,随时调整机器配置灵活性强。
(2)使用CDH大数据处理平台,功能齐全,稳定。
(3)kerberos通过密钥系统为客户机 / 服务器应用程序提供强大的认证服务。
(4)LDAP作为一个统一认证的解决方案,使得对系统中用户的管理更加快捷高效。
(5)使用TLS/SSL实现应用之间以及客户端和服务器之间的保密和安全通讯。
(6)对hdfs进行加密使得企业数据的安全性得到了进一步加强。
参考文献
[1]cloudera.com CDH 5 Installation[EB/OL].http://www.cloudera.com/documentation/cdh/5-1-x/CDH5-Installation-Guide/cdh5ig_cdh5_install.html,2015.
[2]沈苏彬.网络安全原理与应用[M].人民邮电出版社,2005:73-74.
[3]Bellowvin S M,Merritt M.Limitation of the Kerberos Authentication System.ACM SIGCOMM Computer Communication Review.1990:119-132.
[4]Mattias Hellborg Arthursson Ulrik Sandberg Eric Dalquist Keith Barlow Rob Winch Spring LDAP Reference[EB/OL].https://docs.spring.io/spring-ldap/docs/2.1.0.RELEASE/reference/,2016-05-16/2017-11-9.
[5]SSL与TLS Designing and Building Secure Systems[M]北京:中国电力出版社,2002.
文章浏览阅读2w次,点赞7次,收藏51次。四个步骤1.创建C++ Win32项目动态库dll 2.在Win32项目动态库中添加 外部依赖项 lib头文件和lib库3.导出C接口4.c#调用c++动态库开始你的表演...①创建一个空白的解决方案,在解决方案中添加 Visual C++ , Win32 项目空白解决方案的创建:添加Visual C++ , Win32 项目这......_c#调用lib
文章浏览阅读4.6k次。苹方字体是苹果系统上的黑体,挺好看的。注重颜值的网站都会使用,例如知乎:font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, PingFang SC, Microsoft YaHei, Source Han Sans SC, Noto Sans CJK SC, W..._ubuntu pingfang
文章浏览阅读159次。表单表单概述表单标签表单域按钮控件demo表单标签表单标签基本语法结构<form action="处理数据程序的url地址“ method=”get|post“ name="表单名称”></form><!--action,当提交表单时,向何处发送表单中的数据,地址可以是相对地址也可以是绝对地址--><!--method将表单中的数据传送给服务器处理,get方式直接显示在url地址中,数据可以被缓存,且长度有限制;而post方式数据隐藏传输,_html表单的处理程序有那些
文章浏览阅读1.2k次。使用说明:开启Google的登陆二步验证(即Google Authenticator服务)后用户登陆时需要输入额外由手机客户端生成的一次性密码。实现Google Authenticator功能需要服务器端和客户端的支持。服务器端负责密钥的生成、验证一次性密码是否正确。客户端记录密钥后生成一次性密码。下载谷歌验证类库文件放到项目合适位置(我这边放在项目Vender下面)https://github.com/PHPGangsta/GoogleAuthenticatorPHP代码示例://引入谷_php otp 验证器
文章浏览阅读4.3k次,点赞5次,收藏11次。matplotlib.plot画图横坐标混乱及间隔处理_matplotlib更改横轴间距
文章浏览阅读2.2k次。①Storage driver 处理各镜像层及容器层的处理细节,实现了多层数据的堆叠,为用户 提供了多层数据合并后的统一视图②所有 Storage driver 都使用可堆叠图像层和写时复制(CoW)策略③docker info 命令可查看当系统上的 storage driver主要用于测试目的,不建议用于生成环境。_docker 保存容器
文章浏览阅读834次,点赞27次,收藏13次。网络拓扑结构是指计算机网络中各组件(如计算机、服务器、打印机、路由器、交换机等设备)及其连接线路在物理布局或逻辑构型上的排列形式。这种布局不仅描述了设备间的实际物理连接方式,也决定了数据在网络中流动的路径和方式。不同的网络拓扑结构影响着网络的性能、可靠性、可扩展性及管理维护的难易程度。_网络拓扑csdn
文章浏览阅读1.8k次,点赞5次,收藏8次。IOS系统Date的坑要创建一个指定时间的new Date对象时,通常的做法是:new Date("2020-09-21 11:11:00")这行代码在 PC 端和安卓端都是正常的,而在 iOS 端则会提示 Invalid Date 无效日期。在IOS年月日中间的横岗许换成斜杠,也就是new Date("2020/09/21 11:11:00")通常为了兼容IOS的这个坑,需要做一些额外的特殊处理,笔者在开发的时候经常会忘了兼容IOS系统。所以就想试着重写Date函数,一劳永逸,避免每次ne_date.prototype 将所有 ios
文章浏览阅读5.3k次。方法一:用PLSQL Developer工具。 1 在PLSQL Developer的sql window里输入select * from test for update; 2 按F8执行 3 打开锁, 再按一下加号. 鼠标点到第一列的列头,使全列成选中状态,然后粘贴,最后commit提交即可。(前提..._excel导入pl/sql
文章浏览阅读83次。Git常用命令速查手册1、初始化仓库git init2、将文件添加到仓库git add 文件名 # 将工作区的某个文件添加到暂存区 git add -u # 添加所有被tracked文件中被修改或删除的文件信息到暂存区,不处理untracked的文件git add -A # 添加所有被tracked文件中被修改或删除的文件信息到暂存区,包括untracked的文件...
文章浏览阅读202次。分享119个ASP.NET源码总有一个是你想要的_千博二手车源码v2023 build 1120
文章浏览阅读1.8k次。版权声明:转载请注明出处 http://blog.csdn.net/irean_lau。目录(?)[+]1、缺省构造函数。2、缺省拷贝构造函数。3、 缺省析构函数。4、缺省赋值运算符。5、缺省取址运算符。6、 缺省取址运算符 const。[cpp] view plain copy_空类默认产生哪些类成员函数