CM自动化安装CDH5.14.0详解
CDH5.14.0版本说明
CDH最早版本只包含hadoop、hive、hbase等基础组件,CDH5.14.0版本目前已经封装了spark、impala、kudu(CDH 5.13.x开始)等众多组件,但是目前kafka和CDH还是分离的,如果需要cdh离线安装kafka,需要单独下载kafka的parcel,具体请参考:kafka的cdh安装指导
服务器规划
主机名 | IP地址 | CM角色 | 配置 |
---|---|---|---|
cm-1 | 192.168.25.130 | server | 内存2G处理器4核物理空间40G |
cm-2 | 192.168.25.131 | agent | 内存1G处理器4核物理空间40G |
cm-3 | 192.168.25.132 | agent | 内存1G处理器4核物理空间40G |
cm-4 | 192.168.25.133 | agent | 内存1G处理器4核物理空间40G |
一:环境准备
1.1 关闭防火墙(每台主机)
service iptables status #关闭防火墙 service iptables stop #查看防火墙开机启动状态 chkconfig iptables --list #关闭防火墙开机启动 chkconfig iptables off
1.2 修改主机名(每台主机)
vim /etc/sysconfig/network
例如:
1.3 主机名映射(每台主机)
vim /etc/hosts
1.4 关闭selinux(每台主机)
[root@cm-1~]# vim /etc/sysconfig/selinux SELINUX=disabled 重启才能生效 重启后检查 [root@cm-1~]#sestatus -v SELinux status: disabled 表示已经关闭了
1.5 节点间时间同步(每台主机)
集群中所有主机必须保持时间同步,如果时间相差较大会引起各种问题
#每个服务器节点执行命令同步时间 ntpdate cn.pool.ntp.org
1.6 开启ntpd服务(每台主机)
#安装ntpd服务 yum install ntp #修改ntp配置 vi /etc/ntp.conf #修改如下部分: server 58.220.207.226 iburst server 47.92.108.218 iburst server 202.112.29.82 iburst server 202.108.6.95 iburst #其中ip为全球可用的ntp时间服务器,免费提供授时服务。 #配置之后,保存设置,重启服务 service ntpd stop service ntpd start
1.7 ssh免密登录
只需要实现cm-1到cm[2-4]的免密登录
[root@cm-1 ~]# ssh-keygen -t rsa (四个回车) 执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥) 将公钥拷贝到要免密登陆的目标机器上 [root@cm-1 ~]# ssh-copy-id cm-2 [root@cm-1 ~]# ssh-copy-id cm-3 [root@cm-1 ~]# ssh-copy-id cm-4
二:配置cm本地yum源
2.1 安装http服务器(cm-1)
先查看是否有httpd服务
[root@cm-1 ~]# rpm -qa|grep httpd httpd-tools-2.2.15-39.el6.centos.x86_64 httpd-2.2.15-39.el6.centos.x86_64
如果没有则安装
yum install httpd
设置httpd开机启动
[root@cm-1 ~]# chkconfig httpd on
2.2 将cdh的parcel文件挂载到http服务器(cm-1)
创建parcels目录
[root@cm-1 ~]# cd /var/www/html [root@cm-1 html]# mkdir parcels [root@cm-1 html]# cd parcels/
下载3个文件到parcels目录
下载地址
当然你也可以选择wget在线下载
[root@cm-1 parcels]# wget archive.cloudera.com/cdh5/parcels/5.14.0/CDH-5.14.0-1.cdh5.14.0.p0.24-el6.parcel
[root@cm-1 parcels]# wget archive.cloudera.com/cdh5/parcels/5.14.0/CDH-5.14.0-1.cdh5.14.0.p0.24-el6.parcel.sha1
[root@cm-1 parcels]# wget archive.cloudera.com/cdh5/parcels/5.14.0/manifest.json
校验parcel文件是否完整
很多时候由于网络原因导致parcel文件下载失败,为了保证parcel文件的完整我们可以通过sha文件进行校验
修改校验文件的文件名
这一步必须做,否则,系统会重新下载 CDH-5.14.0-1.cdh5.14.0.p0.24-el6.parcel
[root@cm-1 parcels]# mv CDH-5.14.0-1.cdh5.14.0.p0.24-el6.parcel.sha1 CDH-5.14.0-1.cdh5.14.0.p0.24-el6.parcel.sha
2.3 将cm的rpm文件挂载到http服务器(cm-1)
下载地址:https://archive.cloudera.com/cm5/repo-as-tarball/5.14.0/
#解压
[root@cm-1 ~]# tar -zxvf cm5.14.0-centos6.tar.gz -C /var/www/html
[root@cm-1 ~]# cd /var/www/html/
[root@cm-1 html]# ll
总用量 8
drwxrwxr-x 3 1106 592 4096 1月 22 2018 cm
drwxr-xr-x 2 root root 4096 2月 7 11:32 parcels
#创建与官网一样的rpm路径
[root@cm-1 html]# mkdir -p cm5/redhat/6/x86_64
[root@cm-1 html]# mv cm cm5/redhat/6/x86_64/
[root@cm-1 html]# ll
总用量 8
drwxr-xr-x 3 root root 4096 2月 7 11:36 cm5
drwxr-xr-x 2 root root 4096 2月 7 11:32 parcels
解释:为什么需要创建与官网一样的rpm路径,请看下图:
2.4 测试
http://192.168.25.130/parcels/
http://192.168.25.130/cm5/redhat/6/x86_64/cm/5.14.0/RPMS/x86_64/
2.5 配置本地yum源(每台主机)
配置yum源的目的是为了离线安装cm的服务端和客户端
[root@cm-1 yum.repos.d]# vi /etc/yum.repos.d/cloudera-manager.repo [cloudera-manager] name=Cloudera-Manager,version5.14.0 baseurl = http://192.168.25.130/cm5/redhat/6/x86_64/cm/5.14.0/ gpgcheck = 0
三:安装CM的server端
3.1 为cm安装mysql(cm-1)
参考:
安装mysql的时候一定注意:开放远程访问
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
FLUSH PRIVILEGES;
3.2 为cm创建数据库(cm-1)
创建cmf数据库
3.3 为cm安装数据库驱动(cm-1)
#cm默认在该目录找mysql驱动
[root@cm-1 ~]# mv mysql-connector-java-5.1.32.jar /usr/share/java
[root@cm-1 ~]# cd /usr/share/java
#重命名mysql驱动,一定要重命名
[root@cm-1 java]# mv mysql-connector-java-5.1.32.jar mysql-connector-java.jar
3.4 安装cm服务端(cm-1)
[root@cm-1 x86_64]# cd /var/www/html/cm5/redhat/6/x86_64/cm/5.14.0/RPMS/x86_64
[root@cm-1 x86_64]# yum install -y cloudera-manager-daemons-5.14.0-1.cm5140.p0.25.el6.x86_64.rpm
[root@cm-1 x86_64]# yum install -y cloudera-manager-server-5.14.0-1.cm5140.p0.25.el6.x86_64.rpm
3.5 为设置cm数据库连接信息(cm-1)
[root@cm-1 ~]# cd /etc/cloudera-scm-server/
[root@cm-1 cloudera-scm-server]# ls
db.properties log4j.properties
[root@cm-1 cloudera-scm-server]# vi db.properties
从 5.9版本开始
db配置文件里面多了一项配置:
com.cloudera.cmf.db.setupType
EXTERNAL表示用自建的 必须得指定这个参数,或者干脆注释掉这个配置项
3.6 安装oracle jdk(每台主机)
注意了:
1:最好是oracle jdk,大家可以直接使用cm提供的配套的oracle jdk
2:每台服务器都要安装,可以先在cm-1安装,完了后copy到cm[2-4]
卸载openjdk(记得每台服务都卸载)
[root@cm-1 java]# rpm -qa|grep java
tzdata-java-2014g-1.el6.noarch
java-1.6.0-openjdk-1.6.0.0-11.1.13.4.el6.x86_64
java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64
[root@cm-1 java]# rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-11.1.13.4.el6.x86_64
[root@cm-1 java]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64
安装Oracle jdk
[root@cm-1 x86_64]# cd /var/www/html/cm5/redhat/6/x86_64/cm/5.14.0/RPMS/x86_64
[root@cm-1 x86_64]# rpm -ivh oracle-j2sdk1.7-1.7.0+update67-1.x86_64.rpm
warning: oracle-j2sdk1.7-1.7.0+update67-1.x86_64.rpm: Header V4 DSA/SHA1 Signature, key ID e8f86acd: NOKEY
Preparing... ########################################### [100%]
1:oracle-j2sdk1.7 ########################################### [100%]
[root@cm-1 x86_64]#
#装完后,很多人不知道装哪里去了,告诉你在/usr/java下
#后续的安装默认就会到该目录找jdk
[root@cm-1 x86_64]# cd /usr/java
[root@cm-1 java]# ll
总用量 4
drwxr-xr-x 8 root root 4096 2月 7 12:04 jdk1.7.0_67-cloudera
[root@cm-1 java]#
配置JAVA环境变量
[root@cm-1 etc]# vi /etc/profile
export JAVA_HOME=/usr/java/jdk1.7.0_67-cloudera
export PATH=$PATH:$JAVA_HOME/bin
[root@cm-1 etc]# source /etc/profile
分发到cm[2-4]
# $PWD引用当前目录
[root@cm-1 java]# cd /usr/java
[root@cm-1 java]# scp -r /usr/java/ root@cm-2:$PWD
[root@cm-1 java]# scp -r /usr/java/ root@cm-3:$PWD
[root@cm-1 java]# scp -r /usr/java/ root@cm-4:$PWD
[root@cm-1 java]# scp /etc/profile root@cm-2:/etc/profile
[root@cm-1 java]# scp /etc/profile root@cm-3:/etc/profile
[root@cm-1 java]# scp /etc/profile root@cm-4:/etc/profile
3.7 启动cm服务(cm-1)
启动时间会有点长,请耐心等待,估计要1分钟左右
[root@cm-1 cloudera-scm-server]# service cloudera-scm-server start
#看启动日志,可以排忧解难
[root@cm-1 cloudera-scm-server]# cd /var/log/cloudera-scm-server
[root@cm-1 cloudera-scm-server]# cat cloudera-scm-server.log
3.8 测试(cm-1)
访问:http://192.168.25.130:7180/cmf/login,出现登录界面表示安装成功
登录用户名和密码都是admin
四:安装CM客户端
只要CM的服务器端安装成功,那么恭喜大家,后续的所有安装,大家都可以直接在管理页面上自动化完成,CM的客户端安装也不例外
4.1 同意license协议
admin/admin登录到CM
同意license协议,点击继续
4.2 选择免费版
4.3 选择CM客户端主机
4.4 指定cdh的parcel库和cm的rpm地址
4.5 安装cm客户端
这一步开始前,麻烦再做两件事情
第一件:每台主机都安装如下组件
yum install -y python-psycopg2 mod_ssl MySQL-python openssl-devel fuse-libs portmap /lib/lsb/init-functions fuse libxslt cyrus-sasl-gssapi
第二件:每台主机都注释掉不相关的repo文件
必须注释,要不然cm客户端的安装会变得很慢,甚至超时
4.6 安装CDH
4.7 安装大数据组件
一旦cdh安装完毕,恭喜你,接下来安装hdfs、yarn、hive、sqoop都是很简单的事情了
安装推荐:如果你要安装hdfs、yarn、hive、kudu、impala,而且impala和hive要整合,impala和kudu要整合,那么你的安装顺序是
(hdfs,yarn)=>hive==>kudu====>impala
总结
安装过程很痛苦,但是只需要你安装一次,希望你能耐心安装,祝你一路顺心,如果安装失败,需要卸载,请自行百度怎么卸载。
转自:http://www.wendaoxueyuan.com/thy-post/detail/40a90f4d-76b6-4ffb-bf89-4927fe51446b
CM自动化安装CDH5.14.0详解的更多相关文章
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-8CDH5安装和集群配置
Cloudera Manager Server和Agent都启动以后,就可以进行CDH5的安装配置了. 准备文件 从 http://archive.cloudera.com/cdh5/par ...
- CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-总目录
CentOS7+CDH5.14.0安装全流程记录,图文详解全程实测-总目录: 0.Windows 10本机下载Xshell,以方便往Linux主机上上传大文件 1.CentOS7+CDH5.14.0安 ...
- 自动化运维工具——ansile详解
自动化运维工具——ansible详解(一) 目录 ansible 简介 ansible 是什么? ansible 特点 ansible 架构图 ansible 任务执行 ansible 任务执行模式 ...
- Ubuntu16.04安装CDH5.14.2
一.安装cloudera manager(下文简称cm) (一).环境及软件准备: 1.环境:Ubuntu16.04 desktop x 3 台 ip分别为:10.132.226.121,10.132 ...
- Python安装、配置图文详解(转载)
Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境(I ...
- 【和我一起学python吧】Python安装、配置图文详解
Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境( ...
- Linux中redis安装配置及使用详解
Linux中redis安装配置及使用详解 一. Redis基本知识 1.Redis 的数据类型 字符串 , 列表 (lists) , 集合 (sets) , 有序集合 (sorts sets) , 哈 ...
- Linux下nginx编译安装教程和编译参数详解
这篇文章主要介绍了Linux下nginx编译安装教程和编译参数详解,需要的朋友可以参考下 一.必要软件准备1.安装pcre 为了支持rewrite功能,我们需要安装pcre 复制代码代码如下: # y ...
- Java从入门到精通——数据库篇Mongo DB 安装启动及配置详解
一.概述 Mongo DB 下载下来以后我们应该如何去安装启动和配置才能使用Mongo DB,本篇博客就给大家讲述一下Mongo DB的安装启动及配置详解. 二.安装 1.下载Mongo DB ...
随机推荐
- jedate(日期插件)
首先要引入JQuery,然后引入jedate.css和jedate.js(注:需要把下载好的jedate文件夹整个的放在项目中,不然图标无法显示) 没有把整个文件夹放进去的效果 ...
- spring在注解标注的方法上加切面
之前以为只能在方法签名上加切面,今天发现注解上也能加切面 1.自定义一个注解(任意注解都可以,不一定是自定义的) @Target({ElementType.METHOD}) @Retention(Re ...
- Boost Download
{ //https://www.boost.org/users/history/version_1_71_0.html }
- 【转】让应用程序支持emoji字符
什么是emoji?就是这些表情和符号:
- 生产环境用到的几个有用的Linux命令
有时候,几个有用的Linux命令可以很大的提高你的工作效率. 1.free -m 这个命令我暂时就只会这么使用,它可以查看服务器的内存资源 2.top 这个命令同样可以查看服务器的资源,当然我还是用它 ...
- NX二次开发-NXOpenC++ Example
NxOpenC++ Example NXOpen::WCS wcs坐标系 https://www.cnblogs.com/nxopen2018/p/11368763.html NXOpen::Draw ...
- 理解CommonJS ,AMD ,CMD, 模块规范
参考 : https://blog.csdn.net/xcymorningsun/article/details/52709608 1.CommonJS 模块规范 (同步加载模块): var math ...
- Ubuntu管理员密码设置
最近学习嵌入式编程,首先准备搭建一个嵌入式开发环境. 由于想省钱,就准备搭建一个虚拟的arm系统用于测试学习. 虚拟系统搭建与linux系统上,暂定使用Ubuntu+qemu进行环境搭建. 在进行Ub ...
- 机器学习基石笔记:Homework #3 LinReg&LogReg相关习题
原文地址:http://www.jianshu.com/p/311141f2047d 问题描述 程序实现 13-15 # coding: utf-8 import numpy as np import ...
- 『Golang』—— 标准库之 os
Golang 的 os 库基本承袭 Unix 下 C 语言的用法 path 库: func Base(path string) string //取文件名,不含目录部分 func Dir(path s ...