分享

Cloudera Manager 和 CDH 4 终极安装(一)

本帖最后由 xioaxu790 于 2014-8-7 21:44 编辑
问题导读
1、Cloudera Manager 和 CDH 4 安装,需要哪些软件包?
2、Cloudera Manager的默认端口是多少?
3、采用什么方法安装?





系统环境
操作系统:CentOS 6.5
Cloudera Manager 版本:4.8.1
CDH版本:4.5.0

各机器准备工作:
  1. yum -y groupinstall "Development tools"yum -y installwget
复制代码


Cloudera-manager压缩包地址:    http://archive.cloudera.com/cm4/ ... 4.8.1_x86_64.tar.gz
CDH 下载地址:            http://archive.cloudera.com/cdh4/parcels/
IMPALA 下载地址:           http://archive.cloudera.com/impala/parcels/
Cloudera Search(SOLR)下载地址:   http://archive.cloudera.com/search/parcels/latest/

官方安装参考
地址


官网介绍的安装方式有三种:
1.png



我们选择了第三种方法。
理由是第一种方法必须要求所有机器都能连网,而且外国网站不太稳定。一旦失败,重装非常痛苦。
第二种方法还没仔细研究,看上去要下载很多包。
第三种方法对系统侵入性最小,最大优点可实现全离线安装,而且重装什么的都非常方便。后期的集群统一包升级也非常好。

准备工作
以下所有操作都以root进行。
0 修改主机名

  修改/etc/sysconfig/network文件
  1. NETWORKING=yes
  2.     HOSTNAME=yc01
复制代码


  重启后生效
  1. service network restart
复制代码


  修改/etc/hosts文件,类似
  1.    192.168.1.191 yc01  
  2. 192.168.1.192 yc02
复制代码


1 安装 salt (可忽略)
 略。

2 打通 ssh
  所有机器,使用 ssh-keygen -t rsa 一路按回车就行了。
  刚才都作甚了呢?主要是生成ssh的密钥和密钥的存放路径。 在 ~/.ssh下。
  打开~/.ssh 下面至少有两个文件
  id_rsa,私钥
  id_rsa.pub,公钥
  在主结点上:
  1. cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
复制代码


  scp文件到其他机器:
  1. scp ~/.ssh/authorized_keys root@yc02:~/.ssh/
复制代码


  现在登陆到其他机器就不用密码了。

3 安装 java
  由于 CDH4 支持 JAVA7 ,考虑到 CDH5 只支持 JAVA7,果断上。(后面的Mysql也用了最新的5.6.16,后来发现悲剧了,不知道是哪个原因,于是JDK又改成了官方推荐版,还是不行,又把Mysql回退到5.1.X版本,最终可以了。个人猜测JDK还是可以用7的,Mysql只能用5.5,再往上就不行了。参考 http://www.cloudera.com/content/ ... cdhrsv_topic_2.html

  从Oracle官网下载解压JDK 。 tar zxvf jdk-7u51-linux-x64.gz 放到 /opt/java 下。

  以前好像在哪看到过说,CDH 需要一个 /usr/java/default 的软链,才会识别。以防万一,建了一个,至少这样也更容易管理:
  1. mkdir -p /usr/java ; cd /usr/java ;
  2. ln -s /opt/java/jdk1.7.0_51 latest ; ln -s latest default
复制代码


  最后JAVA添加环境变量
  1. export JAVA_HOME=/usr/java/default
  2. export PATH=$JAVA_HOME/bin:$PATH
  3. export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
复制代码


  使配置生效  
  1. source /etc/profile
复制代码



4 安装Mysql数据库(安装过程后来直接跳过了,直接 yum -y install mysql-server 再建需要的数据库)
  Cloudera Manager 自身的需要数据库,它现在支持 Mysql 、PostgreSQL 和 Oracle ,本人没用过PostgreSQL ,Oracle 兴师动众,果断上 Mysql 。
Installing and Configuring a MySQL Database


官网上说了很多,总结起来三句话:
1) 安装一个 Mysql
下载地址 http://dev.mysql.com/downloads/mysql/

       下载了客户端和服务端
  1. rpm -ivh MySQL-server-5.6.16-1.el6.x86_64.rpm
  2. rpm -ivh MySQL-client-5.6.16-1.el6.x86_64.rpm
复制代码


     安装server是会提示 生成 root 的随机码。

1.png

  1.  SET PASSWORD = PASSWORD('ycmedia_2014');
  2.    默认mysql不会生成 /etc/my.cnf 文件,cp /usr/my.cnf /etc/my.cnf
复制代码


2) 配置MySql 自身的一些参数,和 CDH 没任何关系。只着重强调了一下 max_connections 的值。建议是 数据库数*100+50。大集群(50台以上)建议必须分开放。
过程: vi /etc/my.cnf ,修改哪些参数,参考上面那个链接。只为一般性目的的可直接跳过此步骤。


3) 建数据库,授权。需要哪些库呢,免费版:amon、hmon、hive、smon、scm(Cloudera Manager 自身,我自己命名的)
     这些库的名字其实是可以自定义的。其它都是官网示例的名字,就这样吧。保持一致。只有最后一个库是我自己命名的。
  1.     create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
  2.     create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
  3.     create database smon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
  4.     create database hmon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
  5.     给用户授权,类似如下:
  6.     grant all on *.* to root@"%" Identified by "123456";
复制代码


5 关闭防火墙 和 SELinux

  关闭防火墙:
  1.  service iptables stop (临时关闭)
  2.  chkconfig iptables off (重启后生效)
复制代码


  关闭SELINUX:
  1. setenforce 0 (临时生效)  
  2. 修改 /etc/selinux/config 下的 SELINUX=disabled (重启后永久生效)
复制代码


正式开工
1 安装 Cloudera Manager Server 和 Agents
  解压压缩包:
  1. tar xzf /opt/package/cloudera-manager*.tar.gz -C /opt/; mv /opt/cm-4.8.1 /opt/cloudera-manager-4.8.1
复制代码


  添加 cloudera-scm 用户
  1.     useradd --system --home=/opt/cloudera-manager-4.8.1/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
复制代码


  为了方便,下面称 /opt/cloudera-manager-4.8.1 为 <tarball root>
  修改<tarball root>/etc/cloudera-scm-agent/config.ini 下面的 server_port 和 server_host ,把server_port 改成ClouderaManager运行的主机名或ip, 默认server_port 端口是 7182

  Cloudera Manager 会在下面目录保存一些玩意。
1.png


2 为Cloudera Manager 建立数据库
  建立数据库前要下载 jdbc驱动,放到 <tarball root>/share/cmf/lib/ 下。

  生成数据库
  1. <tarball root>/share/cmf/schema/scm_prepare_database.sh mysql scm  -hlocalhost -uroot -p123456  --scm-host localhost scm scm scm
复制代码

  格式是: scm_prepare_database.sh 数据库类型 数据库 服务器 用户名 密码 --scm-host Cloudera_Manager_Server所在的机器 .......

  后面那三个不知道代表什么,直接照抄官网的了。详细说明:
2.png



3 开启Cloudera Manager Server 端
  在你上面安装的那台机器上开启Server端:
  1. <tarball root>/etc/init.d/cloudera-scm-server start
复制代码


  设置成开机启动:
  1. cp <tarball root>/etc/init.d/cloudera-scm-server /etc/init.d/cloudera-scm-server
  2. chkconfig cloudera-scm-server on
复制代码


4 开启Cloudera Manager Agents 端
     先SCP <tarball root> 到所有机器上 ,然后在每台机器上开启Agents端:
  1. sudo <tarball root>/etc/init.d/cloudera-scm-agent start
复制代码


  设置开机启动:
  1. cp <tarball root>/etc/init.d/cloudera-scm-agent /etc/init.d/cloudera-scm-agent
  2.   chkconfig cloudera-scm-agent on
复制代码


5 启动 Cloudera Manager 管理控制台
地址类似 http://example.com:7180/ ,默认端口是 7180,如果上面没改的话。
用户名密码都是 admin
1.png

至此:Cloudera Manager 安装完毕。


下一篇:Cloudera Manager 和 CDH 4 终极安装(二)




本文转自:http://www.linuxidc.com/Linux/2014-03/98842.htm#userconsent#


已有(1)人评论

跳转到指定楼层
Victor-Shy 发表于 2014-9-22 11:06:29
楼主你这是用tar包的方式安装的cm吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条