CentOS 6.4 离线安装 Cloudera 5.7.1 CDH 5.7.1
因为项目开发需要要在本地组建一个Hadoop/Spark集群,除了Hadoop/Spark还要同时安装多个相关的组件,如果一个个组件安装配置,对于一个由多台服务器组成的集群来说,工作量是巨大的。
所以需要借助Cloudera来安装,因为它本身集成了丰富的数据分析处理相关的组件和管理工具,而且还能帮助简化集群安装和配置。
Cloudera提供多种安装方式,但公司IT政策不允许本地集群接入互联网,所以我们只能选择离线安装这种方式。
安装前准备
主机和系统
Host | OS | Memory | IP |
HadoopMaster |
Cent OS 6.4 x64 |
16G |
192.168.1.10 |
HadoopSlave1 |
Cent OS 6.4 x64 |
16G |
192.168.1.11 |
HadoopSlave2 |
Cent OS 6.4 x64 |
8G |
192.168.1.12 |
安装包下载
可以自行到下面列出的文件目录里去找最新版本或直接点文件链接下载5.7.1的parcel和sha文件
注意:这里我们用的是Cent OS 6.4所以下载的时候要选择带el6标记的文件
Cloudera Manager:
文件目录:http://archive.cloudera.com/cm5/cm/5/
Cloudera Manager5.7.1:http://archive.cloudera.com/cm5/cm/5/cloudera-manager-el6-cm5.7.1_x86_64.tar.gz
CDH:
文件目录:http://archive.cloudera.com/cdh5/parcels/5/
CHD5.7.1 parcel: http://archive.cloudera.com/cdh5/parcels/5.7/CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel
CHD5.7.1 sha: http://archive.cloudera.com/cdh5/parcels/5.7/CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel.sha1
Kafka:
文件目录:http://archive.cloudera.com/kafka/parcels/2.0.1/
Kafka1.2.0.1 parcel: http://archive.cloudera.com/kafka/parcels/2.0.1/KAFKA-2.0.1-1.2.0.1.p0.5-el6.parcel
Kafka1.2.0.1 sha: http://archive.cloudera.com/kafka/parcels/2.0.1/KAFKA-2.0.1-1.2.0.1.p0.5-el6.parcel.sha1
系统和环境配置
更改主机名
打开网络配置
sudo vim /etc/sysconfig/network
如下方式更改主机名,把集群中的机器主机名分别改为HadoopMaster/HadoopSlave1/HadoopSlave2
NETWORKING=yes
HOSTNAME=HadoopMaster
重启网络
sudo service network restart
配置hosts文件
打开hosts文件
sudo vim /etc/hosts
改为如下配置
192.168.1.10 HadoopMaster 192.168.1.11 HadoopSlave1 192.168.1.12 HadoopSlave2
主机之间SSH免密码登录配置
生成SSH密钥
所有机器上执行下面命令,一路回车,可生成本机的rsa类型的密钥。
ssh-keygen -t rsa
执行完之后在~/.ssh/目录下会生成一个保存有公钥的文件:id_rsa.pub
在所有机器执行下面命令把自己的公钥拷贝到Master机
ssh-copy-id hadoop@HadoopMaster
把HadoopMaster的authorized_keys拷贝到HadoopSlave1和HadoopSlave2
scp ~/.ssh/authorized_keys hadoop@HadoopSlave1:~/.ssh/ scp ~/.ssh/authorized_keys hadoop@HadoopSlave2:~/.ssh/
详细步骤请参考:http://www.cnblogs.com/keitsi/p/5653520.html
所有机器安装Java 8
-
旧版本卸载
#查看安装的Java rpm -qa | grep java #卸载相应的Java包 rpm -e --nodeps Java包名
-
安装包下载
打开下面链接下载相关的rpm包
http://www.oracle.com/technetwork/java/javase/downloads/index.html
-
安装
sudo rpm -ivh jdk-8u91-linux-x64.rpm
- 写入全局的环境变量
sudo echo "JAVA_HOME=/usr/java/latest/" >> /etc/environment
在Master机安装配置MySQL
- 安装MySQL
sudo yum install mysql-server
- 设置开机启动
sudo chkconfig mysqld on
- 启动MySQL service
sudo service mysqld start
- 设置root用户密码
sudo mysqladmin -u root password 'xxxx'
关闭所有机器的防火墙和SELinux
如果一个个配置端口的话会比较麻烦,所以在安装过程中就把防火墙关闭,可以在安装完成后再根据需求配置
- 关闭防火墙
临时关闭
sudo service iptables stop
如果要永久关闭,可以修改配置:
sudo chkconfig iptables off
- 关闭SELinux
临时关闭
sudo setenforce 0
如果要永久关闭,可以修改配置:
sudo vim /etc/selinux/config
设置SELINUX=disabled
安装配置NTP(可跳过)
NTP用于同步各个服务器的时间,因为如果服务器之间的时间相差太大的话会导致集群报警或一些服务down掉。
如果集群可连接外网并可以连接到时间服务器的话,可以自己在网上搜索安装教程。
但是这里是内网的测试环境没有办法连接到同步服务器,所以只能自己手机控制时间了!
Cloudera Manager安装
文件上传
把cloudera-manager-el6-cm5.7.1_x86_64.tar上传到Master机并拷贝到所有的Slave机子上
scp cloudera-manager-el6-cm5.7.1_x86_64.tar.gz hadoop@HadoopSlave1:~ scp cloudera-manager-el6-cm5.7.1_x86_64.tar.gz hadoop@HadoopSlave2:~
解压文件
在所有机器上执行下面命令,把cm的压缩文件解压到/opt/
sudo tar xzvf cloudera-manager-el6-cm5.7.1_x86_64.tar.gz -C /opt/
Agent配置
在所有机器上配置Master机的主机名
sudo vim /opt/cm-5.7.1/etc/cloudera-scm-agent/config.ini
把server_host设置成Master机的主机名
server_host=HadoopMaster
新建用户cloudera-scm
为所有机器新建cloudera-scm用户,注意把--home设置为对应的路径:
sudo useradd --system --home=/opt/cm-5.7.1/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
为Cloudera Manager建立数据库
下载MySQL驱动:http://dev.mysql.com/downloads/connector/j/
解压把驱动的jar文件上传到/opt/cm-5.7.1/share/cmf/lib
初始化数据cloudera库
sudo /opt/cm-5.7.1/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -uroot -pmysql@Hadoop0 --scm-host localhost scm mysql@Hadoop:scm:88
mysql@Hadoop0为root用户的密码
mysql@Hadoop:scm:88为给新建的scm用户设定的密码,因为MySQL 5.6以后密码规则比较,所以密码尽量设置复杂点(包含大写,小写,特殊字符并长度大于10)。
在Master机上启动Cloudera Manager Server
sudo /opt/cm-5.7.1/etc/init.d/cloudera-scm-server start
在所有机器上启动Cloudera Manager Agent
sudo /opt/cm-5.7.1/etc/init.d/cloudera-scm-agent start
打开Cloudera Manager主页
http://192.168.1.10:7180/
第一次启动比较慢,可能需要等待几分钟才可以打得开cloudera manager主页。
登录Cloudera Manager
默认用户名密码都是admin,第一次登录成功之后先进入到cloudera manager的安装引导界面:
CDH安装
CDH文件上传
重命名sha文件(这一步很重要,如果跳过,会出现找不到哈希文件的错误,而导致加载parcel失败)
把下载好的CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel.sha1 和 KAFKA-2.0.1-1.2.0.1.p0.5-el6.parcel.sha1重命名为
CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel.sha 和 KAFKA-2.0.1-1.2.0.1.p0.5-el6.parcel.sha
把CDH和KAFKA的parcel和sha文件上传到Master机 的 /opt/cloudera/parcel-repo/目录
CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel CDH-5.7.1-1.cdh5.7.1.p0.11-el6.parcel.sha KAFKA-2.0.1-1.2.0.1.p0.5-el6.parcel KAFKA-2.0.1-1.2.0.1.p0.5-el6.parcel.sha
选择cloudera manager的版本
选择要安装CDH的主机
所有正常启动agent的机器都会显示在这个页面
选择要安装的Parcels
安装Parcel
选择要安装的服务
如下图所示,有多种服务组合供选择(服务是随时可以根据需求增删的),我这里根据项目需求选择自定义服务。
集群设置
一般按默认设置就可以了,也可以根据自己的需求定制。
点击继续安装,在安装的过程中可能会有一些服务的配置需要设置,一般按默认配置就可以了。
完成安装
至此,Cloudear Manger/CDH的安装已经完成,你可以在Cloudear Manger管理界面上对集群进行更细化的定制。
转载请注明出处:http://www.cnblogs.com/keitsi/p/cloudera_install.html
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战