「最佳实践」Cloudera CDP如何对接XSKY HDFS Client?
前言
CDP 私有云基础版是 Cloudera Data Platform 的 on-premises 版本。该新产品结合了 Cloudera Enterprise Data Hub 和 Hortonworks Data Platform Enterprise 的优点以及新功能和增强功能。
图片来源:Cloudera 官网
CDP 私有云基础支持各种混合解决方案,将计算任务与数据存储分开,并且可以从远程集群访问数据,包括使用 CDP 私有云体验创建的工作负载。 这种混合方法通过管理存储,表架构,身份验证,授权和管理为容器化应用程序提供了基础。
图片来源:Cloudera 官网
那么,CDP 如何安装使用起来呢?
环境
• OS:CentOS 7.4
• JDK:1.8.0_181
• MariaDB:5.5.65
下载 & 制作 local repo
由于 Cloudera 官方的镜像速度不理想,这里需要自行下载 rpm 以及 paracel;
1. 下载 CDP 7(Cloudera Data Platform)的相关文件
• 创建目录
# cd ~
# mkdir cdp7
# cd cdp7
• 下载如下的文件
https://archive.cloudera.com/cdh7/7.1.3.0/parcels/manifest.json
https://archive.cloudera.com/cdh7/7.1.3.0/parcels/CDH-7.1.3-1.cdh7.1.3.p0.4992530-el7.parcel
https://archive.cloudera.com/cdh7/7.1.3.0/parcels/CDH-7.1.3-1.cdh7.1.3.p0.4992530-el7.parcel.sha1
https://archive.cloudera.com/cdh7/7.1.3.0/parcels/CDH-7.1.3-1.cdh7.1.3.p0.4992530-el7.parcel.sha256
2. 下载 CM 7 (ClouderaManager) 的相关文件
• 创建目录
# cd ~
# mkdir cm7
# cd cm7
• 下载如下的文件
https://archive.cloudera.com/cm7/7.1.3/allkeys.asc
https://archive.cloudera.com/cm7/7.1.3/redhat7/yum/RPMS/x86_64/cloudera-manager-agent-7.1.3-4999720.el7.x86_64.rpm
https://archive.cloudera.com/cm7/7.1.3/redhat7/yum/RPMS/x86_64/cloudera-manager-daemons-7.1.3-4999720.el7.x86_64.rpm
https://archive.cloudera.com/cm7/7.1.3/redhat7/yum/RPMS/x86_64/cloudera-manager-server-7.1.3-4999720.el7.x86_64.rpm
下载完成之后,执行 createrepo 命令生成 rpm 元数据;
# createrepo .
注意:
这里需要将 allkeys.asc 文件也下载下来,否则后面在安装 cloudera-agent 的时候会报错。
3. 安装并启动 httpd 服务
# yum -y install httpd
# systemctl start httpd
# systemctl status httpd
4. 将步骤 1、2 下载的文件移动到 /var/www/html/目录下
# mv ~/cp7 ~/cm7 /var/www/html
5. 制作 Cloudera Manager 的 repo 源
# cat /etc/yum.repos.d/cloudera-cm7.repo
[cloudera-cm]
name=Cloudera's Distribution for cm, Version 7
baseurl=http://10.252.90.47/cm/7.1.3
gpgcheck = 0
安装 Cloudera Manager Server
1. 通过 yum 安装 Cloudera Manager Server
# yum -y install cloudera-manager-server
2. 初始化数据库
# /opt/cloudera/cm/schema/scm_prepare_database.sh mysql cm cm password
3. 启动 Cloudera Manager Server
# systemctl start cloudera-scm-server
# systemctl status cloudera-scm-server
4. 等待 2~3 分钟之后,通过 http://IP:7180 访问,输入默认用户与密码:admin/admin,即可进入 CM 的欢迎界面,如下:
安装 CDP
1. 设置集群名称,然后点击继续。
2. 添加节点,这里节点的 hostname 为 cdh1、cdh2、cdh3,输入 cdh[1-3]点击搜索找到主机后,点击继续。
3. 在自定义存储库中,输入制作的 local repo:http://IP/cm7,在 Parcel Repository & Network Settings,配置已制作的 parcel 库:http://IP/cdp7,并删掉其他所有地址,点击继续
4. 已安装了 JDK ,这里选择Manually manage JDK,然后点击继续。
5. 输入添加节点的 ssh 凭证,这里选择密码方式访问,也可以使用私钥的方式。输入密码之后,点击继续。
6. 等待节点安装完成,然后点击继续。
7. 选择I understand the risks of...,然后点击继续。
8. 选择想要的服务,配置安装。
安装XHC(XSKY HDFS Client)
1. 下载 XHC 安装包 xflash-1.0-EOS.tar.gz,解压,配置计算节点 ip,通过命令实现一键安装。
# tar xzvf xflash-1.0-EOS.tar.gz
# ./install.sh -i xflash.hosts
2. 在 CDP 集群添加 XHC相关配置;
测试
1. 计算圆周率
# hadoop jar /opt/cloudera/parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 100 100
2. WordCount
创建文件
# cat create-file.sh
#!/bin/sh
for ((i=0;i<10000;i++))
do
echo "henry jim suse lusy tom jerry" >>./wordcount.txt
done
# sh create-file.sh
上传文件
# hadoop fs -mkdir -p xhc://localhost/spark-test/
# hadoop fs -put wordcount.txt xhc://localhost/spark-test/
# hadoop fs -ls xhc://localhost/spark-test/
Found 1 items
-rw-r--r-- 1 root root 300000 2020-10-12 17:22 xhc://localhost/spark-test/wordcount.txt
使用spark-shell执行如下代码:
val testFile = sc.textFile("xhc://localhost/spark-test/wordcount.txt")
val count = testFile.flatMap(line => line.split(" ")).map(word => (word, 1)).reduceByKey(_ + _)
count.collect
兼容度
XHC(XSKY HDFS Client)除了支持 CDP,还支持其他的 CDH or HDP 版本,具体兼容性如下表:
XHC版本 | 支持CDH版本 | 支持 HDP 版本 |
1.0 | 5.16.x 6.2.x 6.3.x 7.1.x | 2.6.x 3.1.x |
注:以上版本为 CDH or HDP 的主流版本,均已支持,如有不在列表内的版本,也不一定不支持,需要进一步做对接测试。
总结
从整个安装对接过程来看,CDP 7.1.3 的安装过程与 CDH 6 的安装过程并无太大区别。 自 CDH 6.2 就提出来的存算分离概念更是在 CDP 这个版本上落到了实处。而 XHC(XSKY HDFS Client)更是从一开始就坚持存算分离,致力为客户提供了一个无限扩展、持续保护、高效访问的存储系统。
推荐阅读
Recommended reading
点击下列标题 阅读更多资讯
|XSKY超融合产品XEHCI构建备份生态,完成和云祺兼容性互认证
|XSKY推出SDS-Formation编排工具,实现部署XSKY SDS集群自动化
|量身打造Hadoop HDFS高性能客户端,构筑数据湖理想底座