2017年2月22日, 星期三

Cloudera Manager安装_搭建CDH集群

cpu   内存16G 内存12G 内存8G
默认单核单线 CDH1_node9 Server  || Agent 10G 6G 5G
CDH2_node10 Agent 2G 1-1.5G 1G
CDH3_node11 Agent 2G 1-1.5G 1G

1.  系统环境准备

1、网络配置 

vi /etc/sysconfig/network

vi /etc/hosts

2、SSH免密钥登录

  1. 虚拟机的环境准备非常重要:免密钥的master需要和slave免密钥;那么cloudera manager的server需要和agent免密钥;
  2. 那么具体的软件比如hdfs的namenode所在的节点就需要和它的datanode节点免密钥;

全部会话 :ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

ssh-copy-id node11/node12/node13

3、防火墙关闭

Service iptables  stop

Chkconfig iptables off

4、SELINUX关闭 setenforce 0

vi /etc/selinux/config (SELINUX=disabled)

5.安装JDK配置环境变量

三台机器都需要

将jdk上传到node11的/home/tools目录下

Node11执行:scp  jdk+Tab node12:`pwd`

scp  jdk+Tab node13:`pwd`

全部会话:rpm -ivh jdk*

修改 vi /etc/profile 添加环境变量(一个一个添加)

source ./etc/profile

export JAVA_HOME=/usr/java/default  //注意java的路径

export PATH=$JAVA_HOME/bin:$PATH

6. 安装NTP

Yum install ntp -y

设置开机启动 chkconfig ntpd on

设置时间同步 – ntpdate -u s2c.time.edu.cn(全部会话)

7. 安装配置mysql

yum install mysql-server -y

设置开机启动:chkconfig mysqld on

启动mysql:  service mysqld start

查看状态:  service mysqld status

mysql 进入

use mysql

select host,user from user

修改 mysql 权限: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;

刷新:flush privileges;

删除多余会对权限造成影响的数据:delete from user where host !='%';

刷新权限

select host,user from user;

quit 退出

重新登录:mysql -u root -p

密码:123

8. 下载第三方依赖包

  1. 最后一步安装第三方依赖包的时候,主要针对的是centos,公司中还是要看使用的linux发行版缺少那些版本;

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

2. CM安装

1. 安装Cloudera Manager Server、Agent

上传到/home/toolsx下 (三台机器都要安装)

mkdir /opt/cloudera-manager

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

2. 创建用户cloudera-scm

全部会话:useradd --system --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

3. 配置CM Agent

  1. cm的安装包的server和agent都是同一个包,启动的时候启动命令指定为server还是agent;cm有一个工作目录,需要
  2. 我们来创建;创建一个用户;修改agent的配置,给它指定server的位置;那个端口7182是server和agent通信的端口;
  3. server_host配置为server的名字;

修改文件/opt/cloudera-manager/cm-5.4.3/etc/cloudera-scm-agent/config.ini中 server_host(三台机器)

4. 配置CM Server数据库

拷贝mysql jar文件到目录 /usr/share/java/

注意jar包名称要修改为mysql-connector-java.jar

mysql -u root -p

use mysql;

grant all 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 CDH1 -utemp -ptemp --scm-host CDH1 scm scm scm

格式:数据库类型、数据库、数据库服务器、用户名、密码、cm server服务器

5. 创建Parcel目录

  1. 创建parcel目录,这些目录是server和agent用来接收和发送数据的目录,server端的parcel-repo这个目录会把所有
  2. 的安装文件全部下载到此目录,而agent也需要安装包,parcels就是用来存储指定的安装包的,当然需要有权限能操作
  3. 这些目录;

Server节点

– mkdir -p /opt/cloudera/parcel-repo

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

Agent节点

– mkdir -p /opt/cloudera/parcels

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

6. 制作CDH本地源

下载好文件CDH-5.4.0-1.cdh5.4.0.p0.27-el6.parcel以及manifest.json,将这两个文件放到server节点的 /opt/cloudera/parcel-repo下。

实际上这个三个文件

打开manifest.json文件,里面是json格式的配置,找到与下载版本相对应的hash码,新建文件,文件名与你的 parel包名一致,并加上.sha后缀,将hash码复制到文件中保存。

7. 关机做快照。

    init 0 || power off

8. 启动CM Server、Agent

  1. 我们的系统需要预留内存;保证自己的系统能够跑起来,关闭所有的安全卫士;保证第一台节点的内存很多,以后可以
  2. 在cdh1有很多东西;虚拟机默认都采用单核单线,如果cpu可以,采用双核双线;老师使用的是16g内存,虚拟机在固态
  3. 硬盘上面,启动cloudera manager都需要几分钟,如果机器不好,可能需要启动一节课;如果实在不行,就需要单台转载
  4. 所有节点的功能;
  1. 当我们使用server start 会立马返回一个ok,这个只是表明该命令提交成功而已;毕竟server会在linux和mysql中创建
  2. 目录和数据库表,所以第一次启动的时候如果时间很长,千万不要关闭;不然下一次启动的话,依旧会创建这些目录
  3. 然后就会冲突;启动成功与否,可以通过一个日志文件来查看;当看到以下命令的时候,说明启动完成:

先确保启动了mysql  service mysqld start

全部会话:cd /opt/cloudera-manager/cm-5.4.3/etc/init.d/

CDH1:执行./cloudera-scm-server start

CDH1,2,3执行:./cloudera-scm-agent start

观察启动server的日志

cd /opt/cloudera-manager/cm-5.4.3/log/cloudera-scm-server

tail -f 上面目录下的log的文件

 

出现如下内容表明启动成功

2017-02-22 19:57:04,638 INFO WebServerImpl:org.mortbay.log: Started SelectChannelConnector@0.0.0.0:7180

2017-02-22 19:57:04,638 INFO WebServerImpl:com.cloudera.server.cmf.WebServerImpl: Started Jetty server.

进入web浏览器进行访问,端口号:7180

至此。CM安装成功。

 

p.MsoNormal { margin: 0pt; margin-bottom: .0001pt; text-align: justify; font-family: 等线; font-size: 10.5000pt }
h2 { margin-top: 13.0000pt; margin-bottom: 13.0000pt; page-break-after: avoid; text-align: justify; line-height: 173%; font-family: "等线 Light"; font-weight: bold; font-size: 16.0000pt }
span.msoIns { text-decoration: underline; color: blue }
span.msoDel { text-decoration: line-through; color: red }
div.Section0 { }

9.关闭CDH

先关闭浏览器页面的服务。

上下两个一次关闭。

 

再关闭虚拟机命令行的服务。

 

 

 

 

搭建CDH集群

通过CM把CDH集群部署起来,部署的方式有四种:cm,yum,rpm,tarball,其中我们采用的是离线cdh
  1. 下面所有的操作都是在web界面上操作的;9个步骤,
  2. 如果不小心点击了外网的版本,那么就会从外网下载,这个时候点击返回,依旧会下载,那么唯一的解决办法
  3. 就是停掉server,进去之后会出现已下载,也就是我们早就下载好到了parcels-repo,当然会是100%;然后第二
  4. 个步骤是分配,就是把parcels-repo里面的软件分发到agent的parcel目录去;
  5. cloudera建议我们的/proc/sys/vm/swappiness交换内存为0,将这个文件设置为0即可;当然这样修改只是本次开机
  6. 下次开机依旧不会改成这样;可以改另一个文件;
  7. 我们后面看到的图表,监控都是来自于CM service;从最开始那个ppt图上面可以看到
  8. 在使用cm配置cdh的时候,默认是没有给我们做高可用,虽然我们使用的是cm版本五,使用的hadoop是2.x,但是
  9. 还是会有snn,只有在做了高可用之后snn才会消失;当我们只在cm上面安装hadoop的时候,有一个步骤,数据库检测
  10. ,由于安装hadoop不需要数据库,所以会一闪而过;

以下利用CM搭建CDH

Jar包存放位置:

/opt/cloudera/parcels/CDH-5.4.0-1.cdh5.4.0.p0.27

 

查看任务管理器--观察内存使用状况

 

p.MsoNormal { margin: 0pt; margin-bottom: .0001pt; text-align: justify; font-family: 等线; font-size: 10.5000pt }
h1 { margin-top: 17.0000pt; margin-bottom: 16.5000pt; page-break-after: avoid; text-align: justify; line-height: 240%; font-family: 等线; font-weight: bold; font-size: 22.0000pt }
h2 { margin-top: 13.0000pt; margin-bottom: 13.0000pt; page-break-after: avoid; text-align: justify; line-height: 173%; font-family: "等线 Light"; font-weight: bold; font-size: 16.0000pt }
span.10 { font-family: 等线 }
span.15 { font-family: "等线 Light"; font-weight: bold; font-size: 16.0000pt }
p.16 { margin: 0pt; margin-bottom: .0001pt; text-indent: 21.0000pt; text-align: justify; font-family: 等线; font-size: 10.5000pt }
span.msoIns { text-decoration: underline; color: blue }
span.msoDel { text-decoration: line-through; color: red }
table.MsoNormalTable { font-family: "Times New Roman"; font-size: 10.0000pt }
table.MsoTableGrid { font-family: "Times New Roman"; font-size: 10.0000pt }
div.Section0 { }

Cloudera Manager安装_搭建CDH集群的更多相关文章

  1. Cloudera Manager 4.6 安装部署hadoop CDH集群

    Cloudera Manager 4.6 安装详解 1. Cloudera Manager介绍 1.1. 功能介绍 Cloudera Manager是一个针对hadoop集群的管理工具,功能包括:cd ...

  2. 使用cloudrea manager管理已有的cdh集群(转)

    转自:http://blog.51cto.com/teacheryan/1912116 本文介绍如何搭建cloudera manager去接入已有hadoop组件(cdh). 一.下载必备文件: 1. ...

  3. 通过Ops Manager安装管理mongodb-3.4集群

    node1 Ops Manager,mongodb,agent node2 mongodb,agent node3 mongodb,agent 参考文档 https://docs.opsmanager ...

  4. Hadoop之Hive 安装_(hadoop 集群)

    Hive mysql的metastore安装准备(***掌握***) 在nameNode1机子上实践: 把hive-0.12.0.tar.gz解压到/itcast/ # tar -zxvf hive- ...

  5. 朝花夕拾之--大数据平台CDH集群离线搭建

    body { border: 1px solid #ddd; outline: 1300px solid #fff; margin: 16px auto; } body .markdown-body ...

  6. CDH集群安装&测试总结

    0.绪论 之前完全没有接触过大数据相关的东西,都是书上啊,媒体上各种吹嘘啊,我对大数据,集群啊,分布式计算等等概念真是高山仰止,充满了仰望之情,觉得这些东西是这样的: 当我搭建的过程中,发现这些东西是 ...

  7. 使用Windows Azure的VM安装和配置CDH搭建Hadoop集群

    本文主要内容是使用Windows Azure的VIRTUAL MACHINES和NETWORKS服务安装CDH (Cloudera Distribution Including Apache Hado ...

  8. Cloudera Manager安装之利用parcels方式安装3或4节点集群(包含最新稳定版本或指定版本的安装)(添加服务)(CentOS6.5)(五)

    参考博客 Cloudera Manager安装之利用parcels方式安装单节点集群  Cloudera Manager安装之Cloudera Manager 5.3.X安装(三)(tar方式.rpm ...

  9. Cloudera Manager安装之利用parcels方式安装单节点集群(包含最新稳定版本或指定版本的安装)(添加服务)(CentOS6.5)(四)

    不多说,直接上干货! 福利 => 每天都推送 欢迎大家,关注微信扫码并加入我的4个微信公众号:   大数据躺过的坑      Java从入门到架构师      人工智能躺过的坑          ...

随机推荐

  1. Python3基础 在print中用 %d 输出一个整数

    镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.-------------------------------------- ...

  2. apue- chapter 3 文件IO

    1.函数open和函数openat #include<fcnl.h> int open(const char *path,int oflag,.../*mode_t mode */) in ...

  3. 14.TCP的坚持定时器和保活定时器

    一.坚持定时器   1.坚持定时器的由来         TCP通过让接收方指明希望从发送方接受的窗口大小来进行流量控制.设置窗口大小为0可以组织发送方传送数据,直至窗口变为非0为止.         ...

  4. HDU-1862-EXCEL排序

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1862 这个题考的就是你对sort函数的掌握:会用sort函数对字符串,数字排序,只要懂得话题目很简单 ...

  5. 验证浏览器是否安装已flash插件的js脚本

    function flashChecker() { var hasFlash = 0; //是否安装了flash var flashVersion = 0; //flash版本 if(document ...

  6. 添加redo日志组和添加日志组多元化

    查看redo日志组的状态和日志的位置. SQL> 没有被使用,所以切几次日志,组合4已生效. SQL> select * from v$log; GROUP#   THREAD#  SEQ ...

  7. 有关extdelete恢复测试

    客户意外rm掉了数据文件,导致数据库无法打开,由于没有完整的备份和归档,需要使用别的方法,而客户又关闭了数据库,导致无法使用文件描述符恢复,就要使用linux上别的方法了,现记录使用extundele ...

  8. jQuery实践-别踩白块儿网页版

    ▓▓▓▓▓▓ 大致介绍 终于结束了考试,放假回家了.这次的别踩白块儿网页版要比之前做的 jQuery实践-网页版2048小游戏 要简单一点,基本的思路都差不多. 预览:别踩白块网页版 这篇博客并不是详 ...

  9. oracle数据库包package小例子

    为了把某一个模块的函数.存储过程等方便查询维护,可以把它们打到一个包里.下面给出一个简单的小例子. 1.创建包头 create or replace package chen_pack is func ...

  10. java gc的调用机制 和编程规则

    转载:http://sunzhyng.iteye.com/blog/480148 一个优秀的Java程序员必须了解GC的工作原理.如何优化GC的性能.如何与GC进行有限的交互,有一些应用程序对性能要求 ...