一、环境

1.1 操作系统

$ cat /etc/redhat-release 

CentOS release 6.5 (Final)

1.2 Java环境

$ java -version

java version "1.7.0_80"

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

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

1.3 集群环境

 10.171.95.1 master

 10.171.95.2 slave

二、配置网络以及数据库

2.1 配置网络

2.1.1 /etc/hosts

配置如下:

10.171.95.1 master

10.171.95.2 slave

注意:此处的机器名称不能带有下划线,否则会导致后面cloudera-scm-agent启动不起来,这个问题我找了好久各种方法都不好使,最后在查看日志的时候发现是hostname中带有下划线导致的,郁闷!

更改机器名称:

$ vim /etc/sysconfig/network

HOSTNAME=your_host_name

2.1.2 ssh免密码登陆

这个很简单,此处略去。

2.2 配置mysql

2.2.1 安装mysql

略去。

2.2.2 设置用户权限

先执行:$ sh cm-5.3.8/share/cmf/schema/scm_prepare_database.sh  mysql cm -hlocalhost -P3306 -uroot -pmysql_root_password  --scm-host localhost scm scm scm

此时会报错。为了解决错误,做如下操作:

先用root用户登陆mysql: $ mysql -uroot -pmysql_root_password

再做如下操作:

mysql> SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

+---------------------------------------+

| query                                           |

+---------------------------------------+

| User: 'scm'@'localhost';                 |

+---------------------------------------+

10 rows in set (0.06 sec)

mysql> show grants for 'scm'@'localhost';

+------------------------------------------------------------------------------------------------------------+

| Grants for scm@localhost                                                                                                        |

+------------------------------------------------------------------------------------------------------------+

| GRANT USAGE ON *.* TO 'scm'@'localhost' IDENTIFIED BY PASSWORD '*45E6E3C68BDF1AC7EBB5C5A3BCBD5E9437B293BE' |

| GRANT ALL PRIVILEGES ON `cm`.* TO 'scm'@'localhost'                                                        |

+------------------------------------------------------------------------------------------------------------+

2 rows in set (0.02 sec)

可以看到,上面的权限仅仅允许localhost访问,此时再增加一个权限,使得对所有的ip都能够访问:

赋权是需要指定用户名和密码,默认的用户名和密码保存在/opt/cm-5.3.8/etc/cloudera-scm-server/db.properties下面。

$ cat /opt/cm-5.3.8/etc/cloudera-scm-server/db.properties

com.cloudera.cmf.db.type=mysql

com.cloudera.cmf.db.host=localhost:3306

com.cloudera.cmf.db.name=cm

com.cloudera.cmf.db.user=scm

com.cloudera.cmf.db.password=scm

可以看到数据库名称,用户名称和密码。

赋权时如果采用:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'scm'@'%' IDENTIFIED BY PASSWORD 'scm' WITH GRANT OPTION;

可能会报如下错误:

ERROR 1827 (HY000): The password hash doesn't have the expected format. Check if the correct password algorithm is being used with the PASSWORD() function.

令我郁闷的是第一次这样做的时候没有报错,后来就不行了,不知为什么。

解决方法如下:

mysql> select password('scm');

+-------------------------------------------+

| password('scm')                           |

+-------------------------------------------+

| *45E6E3C68BDF1AC7EBB5C5A3BCBD5E9437B293BE |

+-------------------------------------------+

将明文密码'scm'改为加密后的密码'*45E6E3C68BDF1AC7EBB5C5A3BCBD5E9437B293BE'

mysql> GRANT ALL PRIVILEGES ON *.* TO 'scm'@'%' IDENTIFIED BY PASSWORD '*45E6E3C68BDF1AC7EBB5C5A3BCBD5E9437B293BE' WITH GRANT OPTION;

mysql> flush privileges;

这样即可生效,该方法来自于:http://www.icchasethi.com/adding-a-new-mysql-user-with-root-privileges/

如果操作错误,可如下清空数据,再重新操作。

mysql> delete from mysql.user where user='scm';

mysql> flush privileges;

mysql> drop database cm;

好了,此时再执行该脚本,应该就顺利通过了。

$ sh cm-5.3.8/share/cmf/schema/scm_prepare_database.sh  mysql cm -hlocalhost -P3306 -uroot -p123  --scm-host localhost scm scm scm

三、启动server以及agent

3.1 在server端启动:

$ ./cm-5.3.8/etc/init.d/cloudera-scm-server start

$ ./cm-5.3.8/etc/init.d/cloudera-scm-agent start

3.2 在slave端只启动agent:

$ ./cm-5.3.8/etc/init.d/cloudera-scm-agent start

此时可以在浏览器中输入master对应的外网地址以及端口(7180):http://master_outer_ip:7180,如果正常的话就可以打开登陆页面,如果打不开,可以检查防火墙是否关闭。

$ service iptables status

$ service iptables stop

CDH5 安装过程的更多相关文章

  1. 适合国内网速的CDH5安装

    0.集群规划 说明:因为CDH能够方便的动态加入删除主机,动态改变主机上的服务,所以后面再对各机器上跑得服务进行分配. 共三台机器 操作系统: centos6.5 机器名:work01.work02. ...

  2. webstorm下载&&安装过程&&打开项目

    一.webstorm下载 WebStorm 是jetbrains公司旗下一款JavaScript 开发工具.被广大中国JS开发者誉为"Web前端开发神器"."最强大的HT ...

  3. vagrant 1.8.6 安装过程及总结遇到的坑

    下面先总结遇到的问题,这些问题如果你也遇到,可能需要搜索很多次才能找到原因. 如果想看安装过程,可以先直接跳到后面第二部分部分. 1 问题汇总: 1.1 vagrant版本过高问题. vagrant ...

  4. 安装过程错误[INS-30131]

    问题:Oracle Database 安装过程错误[INS-30131]   原因:安装用户没有对临时文件夹的读写权限   解决方案:   1.以管理员身份运行cmd.exe 2.输入命令(需启动Se ...

  5. TortoiseGIT的安装过程详解

    TortoiseGIT简介 TortoiseGIT 是Git版本控制系统的一个免费开源客户端,它是git版本控制的 Windows 扩展.可以使你避免使用枯燥而且不方便的命令行.它完全嵌入 Windo ...

  6. RabbitMQ 集群安装过程详解

    一.安装Erlang 1.rabbitMQ是基于erlang的,所以首先必须配置erlang环境. 从erlang官网下载 otp 18.3.下载链接:http://erlang.org/downlo ...

  7. JAVA安装过程中出现的“javac不是内部或外部指令”的解决方法

    近来重新安装了JAVA,安装过程中出现问题,网上找到解决办法,汇总发布. 解决流程: 1.确定自己的环境变量设置没问题,没有出现遗漏 : . 等情况 (具体环境变量设置百度) 2.环境变量设置后 ,d ...

  8. LNMP安装过程

    LNMP一键安装包是什么? LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat/Fedora.Debian/Ubuntu/Raspbian/Deepin VPS或独 ...

  9. hbase 1.1.7在centor6.5安装过程

    1.自己安装的最新版一直没成功,换成了1.1.7稳定版的.中间遇到的问题记录下 1) jdk 用的1.7版本的,安装过程省略. 2)下载hbase  zip包:https://mirrors.tuna ...

随机推荐

  1. 【HDU4391】【块状链表】Paint The Wall

    Problem Description As a amateur artist, Xenocide loves painting the wall. The wall can be considere ...

  2. 从 man 指令起步(info简介)

    前言 小生认为一切指令的学习首先要从帮助入手,深入了解它的功能,即使是在实际项目中我们都离不开它的帮助.因为我们不一定能够记住全部指令的全部的相关功能,因此,查看指令的帮助是我们的不二选择. 正文 下 ...

  3. CPU风扇故障导致自动关机

    今天在使用电脑时,突然自动关机,重启后过一段时间又自动关机,于是打开机箱后盖,插上电源观察各个部位运行情况,发现CPU风扇不转,判断问题就是由于CPU温度太高了.于是换个风扇,再开机情况就正常了.

  4. js基础 - 兼容代码

    js基础 - 兼容代码 . scrollTop . chrome document.body.scrollTop . IE && firefox document.documentEl ...

  5. AspNet WebApi : MessageHandler(消息处理器 )

    1. Http Message Handler WebApi中的MessageHandler类似MVC中的filter,可用于请求/响应到达真正目标前对请求或者响应进行修改,比如:用户身份验证,请求头 ...

  6. MySQL查询优化:连接查询排序limit

    MySQL查询优化:连接查询排序limit(join.order by.limit语句) 2013-02-27      个评论       收藏    我要投稿   MySQL查询优化:连接查询排序 ...

  7. Caption,Text,WindowText的区别——TControl也有FText,是为了模拟一个窗口

    TControl = class(TComponent) // 控件的Windows功能从TControl开始 property Caption: TCaption read GetText writ ...

  8. Android Wear开发 - 卡片通知 - 第一节 : 添加Android Wear通知特性

    一. 前言说明 Android Wear大部分显示形式是卡片的形式,而最简单地支持Android Wear方式就是用通知**Notification**.而实现最简单的,非高度自定义的通知,则只需要在 ...

  9. Struts 2 标签

    注:要使用Strust 2标签需<%@ taglib prefix="s" uri="/struts-tags" %> 表单标签: .form标签 ...

  10. NodeJS制作爬虫全过程

    这篇文章主要介绍了NodeJS制作爬虫的全过程,包括项目建立,目标网站分析.使用superagent获取源数据.使用cheerio解析.使用eventproxy来并发抓取每个主题的内容等方面,有需要的 ...