搭建CDH5私有安装源(上)

本文档详细介绍了如何在CentOS7环境下搭建CDH5的私有YUM安装源,以避免在线安装的缓慢和断线问题。通过创建HTTPD服务器、配置CDH5的repo源文件,以及下载并处理CDH5安装包和MySQL,为Hadoop集群提供便捷的安装途径。过程中还解决了httpd依赖问题,并调整了MySQL的密码策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

事项清单

CDH5可以在线从Cloudera 的源装, 也可以下载文件从本地离线装,还可以自己搭建安装源。
为了方便反复撸,在线从Cloudera装先排除掉,太慢了而且容易断线。

本地离线文件的方式我试了一次parcel方式的,虽然成功了但有些鸡肋。CDH5的 parcel文件是一个2G左右的大文件,集群里每个节点不管什么角色,都要有一份这个文件。
即使在Cloudera Manager配置好一个内部parcel源,节点也要先下载一份。

对于硬盘动辄十几T,多则数百T的hadoop节点来说,几G的消耗微乎其微。
但对硬盘文件大小就只有几个G的虚拟机来说,这已经很可观了.
为了让虚拟机复制得快点,也为了让我的SSD盘多活几年,老司机选择搭一个私有yum安装源。

已经装好的centos7 虚拟机上,要做的事情包括

  • 一个HTTP服务器
  • CDH5的repo源配置文件
  • 检验

HTTPD

centos里的httpd就是曾经的apache。
前面装好的虚拟机上,选择的compute node和add-ons里面,没有包括httpd,需要从光盘装
现在virtualbox里插上光盘,然后

# mount `blkid |grep iso9660|cut -d: -f1` /media
# rpm -ivh /media/Packages/mailcap-2.1.41-2.el7.noarch.rpm
# rpm -ivh /media/Packages/httpd-tools-2.4.6-88.el7.centos.x86_64.rpm
# rpm -ivh /media/Packages/httpd-2.4.6-88.el7.centos.x86_64.rpm

有没有发现有个奇怪的东西混进来?
httpd包要求/etc/mime.types这个文件,但它不告诉我依赖哪个包。
我试过创建一个空文件,但它不为所动
网上搜索一番才从一个英文的邮件列表里确认,安装mailcap包可以提供这个文件
嗯,开源软件的尿性实例之一

然后创建一个网站配置文件

# vim /etc/httpd/conf.d/vhost.conf

<VirtualHost *:80>
   DocumentRoot /var/www/cmrepo/
   ServerName cm.hadoop
   ServerAdmin laosiji@dashuju
   Options +Indexes
   ErrorLog logs/cmrepo.local-error_log
   CustomLog logs/cmrepo-access_log combined
</VirtualHost>

这个配置里,整个网站都是一个vhost
一定要有的是指定DocumentRoot的一行
其他ServerName和ServerAdmin都是自己起的名字,
Options行是允许列出文件目录,方便检查文件
Errorlog和CustomLog是区分不同的访问日志文件,与httpd自身的主进程日志区分开

配置好后还要关闭centos 7 默认的防火墙,否则无法访问

# systemctl stop firewalld
# systemctl disable firewalld

CDH5安装包

CDH5有提供打包好的文件,我用的版本下载地址是

等待文件下载完的时间里,先准备好一些其他的

# mkdir -p /var/www/cmrepo/
# vim /etc/yum.repos.d/cloudera-manager.repo

[cloudera-manager]
# Packages for Cloudera Manager, Version 5, on RedHat or CentOS 7 x86_64
name=Cloudera Manager
baseurl=http://192.168.0.103/
gpgkey =http://192.168.0.103/RPM-GPG-KEY-cloudera
gpgcheck = 1

文件里的192.168.0.103是用来做源的虚拟机ip,

从cloudera官方下载好的repo数据文件,解压后放到前面设定的/var/www/cmrepo目录下
解压出来是带目录层级的,找到repodata RPMS SRPMS几个目录放进去,
另外还有RPM-GPG-KEY-cloudera这个文件也一起放进去

# ls /var/www/cmrepo/
repodata  RPM-GPG-KEY-cloudera  RPMS  SRPMS

mysql

cloudera manager需要一个数据库,所以还要一个mysql
从mysql.com下载了5.7.27社区版本,对应el7的安装包,解压后是一堆rpm
因为mysql和centos自带的文件有点小冲突
要先强制卸载一个包
再把mysql的包按照commons-libs-client-server的顺序装上

# rpm -e --nodeps mariadb-libs
# rpm -ivh mysql-community-common-5.7.27-1.el7.x86_64.rpm
# rpm -ivh mysql-community-libs-5.7.27-1.el7.x86_64.rpm
# rpm -ivh mysql-community-client-5.7.27-1.el7.x86_64.rpm
# rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm

安装好后先修改my.conf调整密码策略,这样才能在后面操作里设定弱密码

# echo validate_password_policy=0  >>/etc/my.cnf
# echo validate_password_length=1  >>/etc/my.cnf
# systemctl start mysqld
# grep password /var/log/mysqld.log|head -1
2019-08-11T14:12:00.076559Z 1 [Note] A temporary password is generated for root@localhost: Y;lpgi4lNCle

mysql从某个版本后,完成安装后不再是默认空密码了,要从mysqld.log里找到自动生成的临时密码,

# mysql -uroot -p
Enter password:(输入临时密码,这次是Y;lpgi4lNCle,可以复制粘贴)
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'laosiji';

居然还没完,下篇继续

参考资料 https://www.cloudera.com/documentation/enterprise/5-16-x/topics/installation.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值