CDH安装部署步骤

CDH下载地址:

CDH5.4:

http://archive.cloudera.com/cdh5/

Cloudera Manager5.4.3:

http://www.cloudera.com/downloads/manager/5-4-3.html

 

准备工作:(linux必须是64位的)

安装CDH之前,我们需要安装一下CM,CM环境搭建所需要的条件,对电脑来说:

我们要根据我们电脑的内存进行分配相应的空间。

然后就是centos环境的问题,我用的是,我之前搭建hadoop集群时用的机器centos6.6 这个里面主机名,ip,网络都已经配过了,然后三台机器之前也可以进行两两互相通信,要是配个centos都不会的话,那建议你就放弃吧。先把首先的环境准备好,再进行后续配置CDH的工作。

1、linux虚拟机准备工作:

系统环境搭建

1 、网络配置( 所有节点)

vi /etc/sysconfig/network 修改 hostname:

通过 service network restart 重启网络服务生效

vi /etc/hosts ,修改 ip 与主机名的对应关系

 

2 、SSH  免密码登录

主节点执行:

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

生成无密码密钥对

拷贝公钥到其他节点,执行

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

测试:主节点 ssh 其他节点 ……

3、 关闭 防火墙

临时关闭:

service iptables stop

重启后生效:

chkconfig iptables off

 

4、 关闭 SELINUX

临时关闭:

setenforce 0

修改配置文件/etc/selinux/config(重启生效):

将 SELINUX=enforcing 改为 SELINUX=disabled

 

查看 SELINUX 状态:

1、/usr/sbin/sestatus –v

SELinux status: enabled(enabled:开启;disabled:关闭)

 

2、使用命令:getenforce

 

5、 安装 JDK

 

本文采用 RPM 包安装…….执行:(也可以用tar包进行安装jdk)

rpm -ivh jdk-7u80-linux-x64.rpm

 

配置环境变量,修改/etc/profile:

export JAVA_HOME=/usr/java/jdk1.7.0_80

export PATH=$JAVA_HOME/bin:$PATH

export CLASSPATH=.:$JAVA_HOMdE/lib/dt.jar:$JAVA_HOME/lib/tools.jar

 

生效:

source /etc/profile

 

查看版本:

[root@slave6 cdh]# java -version

java version "1.7.0_80"

Java(TM) SE Runtime Environment (build 1.7.0_80-b15)

Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)

 

6、 设置 NTP

所有节点安装 NTP:

yum install ntp

配置开机启动:

chkconfig ntpd on

检查是否设置成功:

chkconfig --list ntpd (2-5 为 on 状态则成功)

设置同步:

ntpdate -u ntp.sjtu.edu.cn(时钟服务器根据实际环境设置、本文采用 210.72.145.44-国家授时

中心服务器 IP 地址)

 

7、 安装 配置 MySql

安装过程略……本文采用 MySql 5.5

安装成功以后,对权限进行一下设置:

 

首先选中mysql数据库:

 

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

flush privileges;

 

详情见hive环境搭建

 

建库操作及脚本参照:步骤三、步骤六

 

8 、下载依赖包(这个我没弄)

·  chkconfig

·  python (2.6 required for CDH 5)

·  bind-utils

·  psmisc

·  libxslt

·  zlib

·  sqlite

·  cyrus-sasl-plain

·  cyrus-sasl-gssapi

·  fuse

·  portmap

·  fuse-libs

·  redhat-lsb

整理一块就是一条命令:

(第一次失败,第二次成功,不要问我为什么,我也不知道)

yum install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs redhat-lsb -y

 

9、确保环境字符集为英文状态,如果是中文将会出现问题。如果时中文编码,请修改一下字符集:

 

编辑文件:

vi  /etc/sysconfig/i18n  

然后修改值为:

LANG="en_US"

2、CM的安装:(Cloudera Manager Server&Agent)

忠告:

老哥给你一个忠告,好好检查一下上面的环境是否配置成功,然后jdk的环境是否成功。时间是否一致,ssh免密码登录是否配置好,字符集是否是英文的,防火墙是否关闭。检查检查再检查,别急着往下怼,怼不好,还得重新开始、

 

2-1、安装CM

拷贝 cloudera-manager-el6-cm5.4.3_x86_64.tar.gz 到所有 Server、Agent 节点

创建 cm 目录:

mkdir /opt/cloudera-manager

解压 cm 压缩包:

tar xvzf cloudera-manager*.tar.gz -C /opt/cloudera-manager

 

2-2、创建用户 cloudera-scm (所有节点)

执行:

useradd --system --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

2-3、配置 CM Agent:

修改文件/opt/cloudera-manager/cm-5.4.3/etc/cloudera-scm-agent/config.ini 中

server_host 修改成server的主机名,我用的是master,然后这个server_port千万别改。

 

2-4、配置 CM Server的数据库:

将驱动包拷贝到目录下( 注意拷贝过去的驱动包名字一定要和下边的一样,否则会报错 ):

cp mysql-connector-java-5.1.31/mysql-connector-java-5.1.31-bin.jar /usr/share/java/mysql-

connector-java.jar

 

执行:

mysql> grant all privileges  on *.* to 'temp'@'%' identified by 'temp' with grant option;

 

cd /opt/cloudera-manager/cm-5.4.3/share/cmf/schema

 

模板:

./scm_prepare_database.sh mysql temp -h 主机名 -utemp -ptemp --scm-host 主机名 scm scm scm

如:

 

./scm_prepare_database.sh mysql temp -h master -utemp -ptemp --scm-host master scm scm scm

(对应于:数据库类型、数据库服务器、用户名、密码、CMServer 所在节点…….)

注意:

如果我们执行失败的话,我们将权限扩大一点。把

mysql> grant all privileges  on *.* to 'temp'localhost'%' identified by 'temp' with grant

mysql> grant all privileges  on *.* to 'temp'主机名'%' identified by 'temp' with grant

 

或者删除掉其它权限只留下一个带%的就OK了:

删除多余会对权限造成影响的数据:

delete from user where host !='%';

刷新权限  flush privileges;

 

mysql> drop user 'temp'@'%';

若上步失败或过程中操作中断,删除所有库、重头来过 /( ㄒ o ㄒ )/~~

若安装 Oozie 等组件可能需要手动创建对应组件所需的数据库,例如:

create database ooziecm DEFAULT CHARACTER SET utf8;

grant all on ooziecm.* TO 'ooziecm'@'%' IDENTIFIED BY 'ooziecm';

 

2-5、创建 Parcel  目录:

Manager  节点创建目录/opt/cloudera/parcel-repo,

 

执行:

mkdir -p /opt/cloudera/parcel-repo

chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo

将下载好的文件(CDH-5.4.0-1.cdh5.4.0.p0.27-el6.parcel、CDH-5.4.0-1.cdh5.4.0.p0.27-el6.parcel.sha、manifest.json)拷贝到该目录下。

Agent  节点创建目录/opt/cloudera/parcels,执行:

mkdir -p /opt/cloudera/parcels

chown cloudera-scm:cloudera-scm /opt/cloudera/parcels

 

2-6、启动 CM Manager&Agent  服务

执行:

Manager:   /opt/cloudera-manager/cm-5.4.3/etc/init.d/cloudera-scm-server start

Agents:    /opt/cloudera-manager/cm-5.4.3/etc/init.d/cloudera-scm-agent start

访问:http://ManagerHost:7180,若可以访问(用户名、密码:admin),则安装成功。

 

Manager 启动成功需要等待一段时间,过程中会在数据库中创建对应的表需要耗费一些时间。

然后返回两级目录进入 log里面

可以通过  

tail -f XXX.log

进行动态查看文件日志,看是否启动成功。

CDH安装部署步骤_第1张图片

CDH安装部署步骤_第2张图片

 

CDH5 5  安装成功测试:

CM Manager && Agent 成功启动后,登录前端页面进行 CDH 安装配置。

如果出现如下界面表示安装成功:

CDH安装部署步骤_第3张图片

http://master:7180 

CDH安装部署步骤_第4张图片

CDH安装部署步骤_第5张图片

CDH安装部署步骤_第6张图片

 

 

要是觉得不详细可以参考:

http://www.cnblogs.com/haozhengfei/p/d90e8f4da465036fabbb1d1e1eae886a.html 

至此,CM算是搭建好了。

 

CDH正式环境搭建:

通过CM把CDH集群部署起来,部署的方式有四种:cm,yum,rpm,tarball,其中我们采用的是离线cdh

CDH安装部署步骤_第7张图片

下面所有的操作都是在web界面上操作的;9个步骤,

1、如果不小心点击了外网的版本,那么就会从外网下载,这个时候点击返回,依旧会下载,那么唯一的解决办法

2、就是停掉server,进去之后会出现已下载,也就是我们早就下载好到了parcels-repo,当然会是100%;然后第二

3、个步骤是分配,就是把parcels-repo里面的软件分发到agent的parcel目录去;

4、cloudera建议我们的/proc/sys/vm/swappiness交换内存为0,将这个文件设置为0即可;当然这样修改只是本次开机

5、下次开机依旧不会改成这样;可以改另一个文件;

6、我们后面看到的图表,监控都是来自于CM service;从最开始那个ppt图上面可以看到

7、在使用cm配置cdh的时候,默认是没有给我们做高可用,虽然我们使用的是cm版本五,使用的hadoop是2.x,但是

8、还是会有snn,只有在做了高可用之后snn才会消失;当我们只在cm上面安装hadoop的时候,有一个步骤,数据库检测

9、由于安装hadoop不需要数据库,所以会一闪而过;

 

 

参考链接:

https://www.cnblogs.com/cac2020/p/10488341.html

http://www.cnblogs.com/haozhengfei/p/d90e8f4da465036fabbb1d1e1eae886a.html 

 

你可能感兴趣的:(大数据,集群搭建,CDH,CDH部署)