程序员大数据,机器学习,人工智能大数据

CDH超详细安装指南

2019-01-26  本文已影响8人  老老戟
精选.png

其他版本同理,自行处理

安装文件准备

CDH

下载地址: http://archive.cloudera.com/cdh5/parcels/latest/

下载操作系统对应的版本:

1.CDH-5.3.0-1.cdh5.3.0.p0.30-el6.parcel

2.CDH-5.3.0-1.cdh5.3.0.p0.30-el6.parcel.sha1

3.Manifest.json

Cloudera Manager

cm下载地址:http://archive-primary.cloudera.com/cm5/cm/5/
impala下载地址:http://archive-primary.cloudera.com/impala/parcels/
spark下载地址:http://archive-primary.cloudera.com/spark/parcels/

下载操作系统对应的版本:
1.cloudera-manager-el6-cm5.3.0_x86_64.tar.gz

Mysql

下载地址:http://dev.mysql.com/downloads/connector/j/

需要登录才可下载:

1.mysql-connector-java-5.1.34-bin.jar

系统环境准备

若无特殊需求将CDH安装在root用户下最佳。

所有配置完成后需重启集群所有机器。

配置Hosts

登录集群所有机器

执行命令:

vi /etc/hosts

将集群角色和IP写入,类似

192.168.60.3 master

127.0.0.1 master localhost

192.168.60.4 slave01

192.168.60.5 slave02

备注:

若出现域名/通信方面的错误可将127.0.0.1该行注释掉

打通SSH

登录Master机器

执行命令:

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

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

chmod 600 $_

将authorized_keys scp到所有Slave节点上:如果从节点没.ssh目录则运行

此命令创建:ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

scp ~/.ssh/authorized_keys hadoop@slaves:~/.ssh/

备注:

若无法免密码登录,需登录至Slave节点并执行命令:

chmod 600 ~/.ssh/authorized_keys

chmod 700 ~/.ssh

关闭IPv6

登录集群所有机器

执行命令:

vi /etc/modprobe.d/dist.conf

加入

alias net-pf-10 off

alias ipv6 off

执行命令:

vi /etc/sysconfig/network

加入

NETWORKING_IPV6=no

执行命令:

vi /etc/hosts

注释掉IPv6行

关闭SELINUX

登录集群所有机器

执行命令:

vi /etc/sysconfig/selinux

修改

SELINUX=disabled

关闭防火墙

登录集群所有机器

执行命令:

chkconfig --level 345 iptables off

打开句柄限制

登录集群所有机器

执行命令:

vi /etc/security/limits.conf

根据当前用户名,添加

hadoop soft nproc 20470

hadoop hard nproc 163840

hadoop soft nofile 10240

hadoop hard nofile 655360

hadoop soft stack 10240

执行命令:

vi /etc/pam.d/login

添加

session required pam_limits.so

安装JDK

登录集群所有机器

查看是否自带OpenJDK:

rpm -qa | grep java

卸载再带的JDK:

rpm -e --nodeps 包名

安装JDK:

rpm -i jdk-7u71-linux-x64.rpm

安装Mysql

登录Master机器

重置mysql密码:http://www.cnblogs.com/allenblogs/archive/2010/08/12/1798247.html
若可以联网,执行命令:

  1. 安装mysql 服务器端:
    yum install mysql-server
    yum install mysql-devel
  2. 安装mysql客户端:
    yum install mysql
  3. 启动mysql服务:
    service mysqld start或者/etc/init.d/mysqld start
    停止:
    service mysqld stop
    重启:
    service mysqld restart
  4. 创建root管理员:
    mysqladmin -u root password 123456
    5.登陆
    mysql -uroot -p123456

若无法联网,google如何安装(_
添加为自启动:
chkconfig mysqld on
启动mysql:
service mysqld start
修改root密码:
mysqladmin -u root password '123456'
进入mysql:
mysql -uroot -p123456
创建数据库:
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database hue default charset utf8 collate utf8_general_ci;
授权:
grant all privileges on . to 'root'@'主机名' identified by '123456' with grant option;
flush privileges;
NTP时间同步
登录Master机器
若Master机器可以访问互联网,先执行命令:
ntpdate -u 210.72.145.44
执行命令:
vi /etc/ntp.conf
添加并修改
server 127.127.1.0
fudge 127.127.1.0 stratum 8

#server 0.rhel.pool.ntp.org
#server 1.rhel.pool.ntp.org
#server 2.rhel.pool.ntp.org

restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
启动NTP服务:
service ntpd start

add for wuguozhu
若键入:ntpdate ntp.sjtu.edu.cn
出现:17 Sep 10:46:22 ntpdate[25363]: the NTP socket is in use, exiting
则:service ntpd stop再键入ntpdate ntp.sjtu.edu.cn

登录所有Slave机器
执行命令:
ntpdate master

/sbin/hwclock –w server 192.168.1.135
restrict 192.168.1.135 nomodify notrap noquery
server 127.127.1.0 # local clock
fudge 127.127.1.0 stratum 10

每小时向Master同步时间(根据具体需求自行设置间隔):
crontab -e
添加
0 */1 * * * /usr/sbin/ntpdate master
其它配置
Centos 6.5及以上版本不用执行本步骤(未验证)
登录集群所有机器
执行命令:
echo 0 > /proc/sys/vm/swappiness
执行命令:
vi ~/.bashrc
添加
echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag

Cloudera Manager安装
创建cloudera-scm用户
登录集群所有机器
执行命令:
useradd --system --home=/opt/cm-5.3.0/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
安装Cloudera Manager
登录Master机器
将cloudera-manager-el6-cm5.3.0_x86_64.tar.gz文件加压至/opt下,产生2个文件夹cloudera和cm-5.3.0。
添加mysql connector包
登录Master机器
将mysql-connector-java-5.1.34-bin.jar拷贝至/opt/cm-5.3.0/share/cmf/lib/和/opt/cloudera/parcels/CDH-5.3.0-1.cdh5.3.0.p0.30/lib/hive/lib/下。
初始化CM5的数据库数据库
登录Master机器
执行命令:
/opt/cm-5.3.0/share/cmf/schema/scm_prepare_database.sh mysql cm -hlocalhost -uroot -p123456 --scm-host localhost scm scm scm
修改Agent配置
登录Master机器
执行命令:
vi /opt/cm-5.3.0/etc/cloudera-scm-agent/config.ini
将server_host的值改成Master机器的名称
同步Agent到其他节点
登录Master机器
执行命令:
scp -r /opt/cm-5.3.0 root@slave[1-xx]:/opt/
准备Parcels
登录Master机器
将CDH-5.3.0-1.cdh5.3.0.p0.30-el6.parcel、CDH-5.3.0-1.cdh5.3.0.p0.30-el6.parcel.sha1和Manifest.json三个文件拷贝至/opt/cloudera/parcel-repo/文件夹下。
并将CDH-5.3.0-1.cdh5.3.0.p0.30-el6.parcel.sha1重命名为CDH-5.3.0-1.cdh5.3.0.p0.30-el6.parcel.sha。
启动Cloudera Manager
启动Cloudera Manager后等待1-3分钟,然后访问http://主节点IP:7180,若可以访问则表示安装成功。
登录Master机器
执行命令:
/opt/cm-5.3.0/etc/init.d/cloudera-scm-server start

登录集群所有机器
执行命令:
/opt/cm-5.3.0/etc/init.d/cloudera-scm-agent start

如果启动出现一下情况:

cloudera-scm-agent start

Starting cloudera-scm-agent: [FAILED]
则做一下操作:
mkdir /opt/cm-5.7.0/run/cloudera-scm-agent
chown -R cloudera-scm:cloudera-scm /opt/cm-5.7.0/run/cloudera-scm-agent

CDH安装

第一步

用户名密码皆为admin

图片.png

第二步

勾选上需要安装的主机。

图片.png

第三步

可以看到所下载并安装的CDH版本表示前面部署成功,否则需要在线下载。

图片.png

第四步

前面配置无误则无须下载,否则表示前面配置有误。
分发可能需要一段时间,视集群大小而定(此时集群一定要保证Master可以免密码登录到其它机器上)。

图片.png

第五步

检查集群的状况,可根据提示信息修改配置并重新检查。

图片.png

第六步

选择需要安装的组件,可自定义安装。

图片.png

第七步

给集群各个节点分配角色,目前所知道需要注意的地方是HBase Thrift Server不要为空,否则Hue无法访问HBase。

图片.png

第八步

设置mysql连接。

图片.png

注意:若无法连接mysql,可能是用户root 指定的master 的连接的密码为空,
需要更新密码,具体操作
1、登入mysql
2、Use mysql;
3、select Host,user,password from user;
4、update user set password='xxx' where Host='master' and user='root';
5、commit;
6、flush privileges;

第九步

后面的一路“继续”下去即可。安装所需时间较长,请耐心等待。

图片.png 图片.png

常用工具地址

Jobtracker
http://master:8088/cluster
Namenode
http://master:50070/dfshealth.jsp
Hue
http://master:8888/
Cloudera Manager
http://master:7180/
HBase
http://master:60010/master-status/

一些常见问题
1.运行Hadoop程序报错:org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="/user":hdfs:supergroup:drwxr-xr-x
——修改dfs.permissions为false,如下图所示。


图片.png

2.访问Cloudera Manager出现“无法发出查询:对 Service Monitor 的请求超时”。
——一般是没有问题的,可能服务器较卡导致的,多刷新几次即可。
3.添加服务时如果遇到deploy client configuration failed

  1. make a link to /usr/java/default
    mkdir -p /usr/java
    ln -s YOUR_JAVA_HOME /usr/java/default
  2. add sudo nopassword to cloudera-scm user
    vim /etc/sudoers

cloudera-scm ALL=(ALL) NOPASSWD: ALL

上一篇 下一篇

猜你喜欢

热点阅读