cdh平台安装详细教程

article/2025/11/6 15:03:29

CDH安装文档目录

文章目录

  • 0、准备
  • 1、配置免密码登录
  • 2、配置环境变量
    • 2.1、配置主机名,安装JDK
    • 2.2、安装mysql
      • 2.2.1、查看mysql是否安装
      • 2.2.2、主节点安装mysql
    • 2.4、NTP安装
  • 3、CDH Manager包文件文件上传分发
  • 4、CDH5的安装配置
  • 5、hdfs的高可用配置
  • 6、kafka安装
  • 7、配置修改
  • 8、断电启动异常(重要)

0、准备

  1. 虚拟机或者实体机,安装CenterOs 6.5
    主机配置建议: 内存8G+
  2. 默认账户密码 admin
  3. 通过ifconfig查看主机ip
    我这里三台虚拟机:
    H1 192.168.19.128 (主机)
    H2 192.168.19.129 (从机)
    H3 192.168.19.130 (从机)

博文需要用到的脚本下载地址:cdh及其组件安装的shell脚本集合 。

1、配置免密码登录

1、修改hostip.properties文件,按行加入主机、从机的ip地址。

2、需要将shell文件夹上传到主节点的root目录下,在主节点机器上执
行脚本clientSSHAuthorize.sh

输入任意名字作为保存keyFile ,密码为空

在这里插入图片描述

注脚本执行过程:
 在h1执行 ./clientSSHAuthorize.sh h2IP
 脚本运行完会自动连接到h2机器,切换目录 cd shell,执行 ./otherClientSSHAuthorize h3IP
 脚本运行完会自动连接到h3机器, 切换目录 cd shell,执行 ./otherClientSSHAuthorize h4IP
 …
 脚本运行完会自动连接到hn机器, 切换目录 cd shell,执行 ./otherClientSSHAuthorize h1IP
 执行完毕

2、配置环境变量

注意:如果客户指定主机名,不使用默认的h1.hadoop等,查看shell——客户指定主机名—更改主机名.txt,参照操作。

2.1、配置主机名,安装JDK

修改 setConfig.sh 脚本内容:

#install java8
scp jdk-8u73-linux-x64.tar.gz root@$host_ip:/root/shell/
echo "====install java on $host_ip===="
ssh -p 22 root@$host_ip "cd /root/shell && tar --no-same-owner -zxvf jdk-8u73-linux-x64.tar.gz && mkdir /usr/java/ && mv jdk1.8.0_73 /usr/java/"#source /etc/profile
ssh -p 22 root@$host_ip 'echo JAVA_HOME=/usr/java/jdk1.8.0_73 >> /etc/profile'
ssh -p 22 root@$host_ip 'echo JRE_HOME=/usr/java/jdk1.8.0_73/jre >> /etc/profile'
ssh -p 22 root@$host_ip 'echo PATH=\$PATH:\$JAVA_HOME/bin:\$JRE_HOME/bin >> /etc/profile'
ssh -p 22 root@$host_ip 'echo CLASS_PATH=.:\$JAVA_HOME/lib:\$JRE_HOME/lib >> /etc/profile'
ssh -p 22 root@$host_ip 'echo export JAVA_HOME JRE_HOME CLASS_PATH PATH >> /etc/profile'
ssh -p 22 root@$host_ip 'source /etc/profile'
echo "====finish java on $host_ip===="

在主节点上执行脚本setConfig.sh,该脚本主要完成以下工作:

1、完成关闭防火墙、修改主机名、修改主机名映射,脚本执行完毕后在每台机器上执行 java -version,查看java是否正确安装,如果没有正确安装执行以下命令:source /etc/profile

2、完成java安装
注意: 执行完成后通过java -version验证配置安装是否生效,如显示的还是java1.7的版本,则在该机器上执行以下命令:alternatives --config java
如果出现类似以下结果:
在这里插入图片描述
输入正确路径对应的数字回车即可。

3、重启每台机器
reboot

2.2、安装mysql

2.2.1、查看mysql是否安装

执行命令 ps -ef | grep mysql,查看mysql是否安装

2.2.2、主节点安装mysql

  • 1、 查看是否有mysql-server
    yum list mysql-server
  • 2、 通过 yum install mysql-server 安装mysql服务器有选择时输入 y ,最后看
    到 Complete ,表示安装服务器成功
  • 3、 常见错误解决方法
    如果出现 yum [Errno 256] No more mirrors to try 的错误,
    输入下面的命令即可解决问题:
    yum clean all
    yum makecache
    然后再从新执行:
    yum list
    yum install mysql-server 即可
  • 4、 执行 startMysql.sh 初始化数据库相关信息。

2.4、NTP安装

  • 1、 执行setNTP.sh,然后重启所有机器。

  • 2、 执行installNTP.sh脚本,观察输出值,其中2-5为on状态就代表成功。
    在这里插入图片描述

  • 3、 常见错误解决方法
    如果出现 yum [Errno 256] No more mirrors to try 的错误,输入下面的命令即可解决问题:
    yum clean all
    yum makecache
    然后再从新执行:
    yum list
    yum install ntp
    chkconfig ntpd on
    chkconfig --list ntpd 即可

  • 4、 配置NTP服务
    (1) 配置主节点的ntp服务

    修改masterntp.sh这个脚本里的ntpIp为时间同步服务器ip,如图所示,这个ip地址由事业部人员提供,用于时间同步。(可以选主机ip)
    在这里插入图片描述
    (2) 然后执行脚本masterntp.sh,执行后查看ntp状态,命令ntpstat
    在这里插入图片描述
    这个过程需要5-10分钟,最终变成以下效果: 在这里插入图片描述

  • 5、 配置子节点的ntp服务
    在主节点执行脚本slaverNtp.sh

3、CDH Manager包文件文件上传分发

  • 1、下载cloudera-manager-el6-cm5.5.2_x86_64 ,放到主节点shell目录下
  • 2、执行installCDH.sh脚本。
  • 3、将CHD5相关的Parcel包上传到主节点的 /opt/cloudera/parcel-repo/ 下,相关的文件如下网页)及列表文件:
    CDH-5.5.2-1.cdh5.5.2.p0.4-el6.parcel
    CDH-5.5.2-1.cdh5.5.2.p0.4-el6.parcel.sha1
    manifest.json
  • 4、执行脚本startCDHService.sh
    需要修改:
    chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo
    /opt/cm-5.5.2/etc/init.d/cloudera-scm-server restart
    for host_ip in $(cat /root/shell/hostip.properties)
    doecho $hostipssh -p 22 root@$host_ip "sysctl vm.swappiness=0"ssh -p 22 root@$host_ip "echo \"vm.swappiness=0\" >> /etc/sysctl.conf"ssh -p 22 root@$host_ip "echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag"#ssh -p 22 root@$host_ip "chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo"ssh -p 22 root@$host_ip "mkdir /var/log/cloudera-scm-agent/"ssh -p 22 root@$host_ip "mkdir /var/lib/cloudera-scm-agent/ssh -p 22 root@$host_ip "/opt/cm-5.5.2/etc/init.d/cloudera-scm-agent restart"
    done	
    

4、CDH5的安装配置

  • 1、Cloudera Manager Server和Agent都启动以后,就可以进行CDH5的安装配置了。
    这时可以通过浏览器访问主节点的7180端口测试一下了(由于CM Server的启动需要花点时间,这里可能要等待一会才能访问),默认的用户名和密码均为admin
    192.168.19.128:7180/cmf/login
  • 2、选择免费版安装
    在这里插入图片描述
    没错误可以继续,

    • 根据提示安装CDH包,可以在线安装,或者提前手动下载后复制到/opt/cloudera/parcel-repo目录
    • 前面已经放入/opt/cloudera/parcel-repo三个文件,如下
    • CDH-5.5.2-1.cdh5.5.2.p0.4-el6.parcel、CDH-5.5.2-1.cdh5.5.2.p0.4-el6.parcel.sha1、manifest.json,
    • 这里会提示 “CDH-..-.cdh*...p0.-el.parcel没有 .sha验证文件”,将CDH-..-.cdh*...p0.-el.parcel.sha1改后缀为sha,点击刷新,就可以安装。

(另外,CDH manaenger会认CDH版本,可以根据提示在线下载选定的版本,或者手动下载后复制到/opt/cloudera/parcel-repo目录)。

所有服务都不装,主机占用内存~2G,磁盘10G, 其他从机内存400M,磁盘6G。。。
在这里插入图片描述 在这里插入图片描述

  • 3、安装服务,选 自【定义服务】根据自己需要选择安装 (也可跳过后期再添加)
    在这里插入图片描述
    // 后续根据需要配置安装
    Zookerper直接添加服务。
    Kafka先要下载parcel包,分配成功后,再激活。最后在主页添加服务。

  • 4、数据库设置
    在这里插入图片描述

    • 1、hive对应的输入hive/root/root123456
    • 2、Oozie server对应的输入amon/root/root123456
  • 5、Hive驱动引起的错误
    在这里插入图片描述
    解决方法, 在主节点上输入命令:

cp shell/mysql/mysql-connector-java-5.1.37-bin.jar /opt/cloudera/parcels/CDH-5.5.2-1.cdh5.5.2.p0.4/lib/hive/lib/

在这里插入图片描述

  • 6、oozie出现以上类似错误
    解决方法, 在主节点上输入命令
    oozie安装出错时 把mysql-driver拷贝到 /var/lib/oozie
    cp shell/mysql/mysql-connector-java-5.1.37-bin.jar /var/lib/oozie

  • 7、基本流程按照下面的流程走,遇到问题有相依的处理方法,但注意以下的几个配置路径要放在文件空间目录上。
    在这里插入图片描述

  • 8、完成安装
    在这里插入图片描述

5、hdfs的高可用配置

高可用性配置参考《CDH里HDFS的HA配置.doc》。

6、kafka安装

CDH安装完成以后需要安装kafka,如何安装参见CDH集成Kafka文档:kafka_CDH/CDH集成Kafka.docx

7、配置修改

  • 1、 hdfs的配置修改,将检查hdfs权限(dfs.permissions)这个勾选去除,不选中。
  • 2、 flume安装完成以后需要修改系统用户和系统组为:root。
  • 3、 修改flume每个要使用到的agent,单独配置修改Java堆栈大小为4G.
  • 4、 kafka的日志目录设置为一个存储空间较大的磁盘,配置项为:Data Directories(log.dirs)。
  • 5、 kafka每个broker单独配置该broker的advertised.host.name为本机ip,暴露本地ip供外部producer连接。

8、断电启动异常(重要)

目前仅启动 zookeeper、 kafka
断电之后,我们尝试重启cdh,通过命令行
h1.hadoop

# /opt/cm-5.5.2/etc/init.d/cloudera-scm-server restart
cloudera-scm-server is already stopped
Starting cloudera-scm-server:                              [  OK  ]

h1-h4.hadoop

# /opt/cm-5.5.2/etc/init.d/cloudera-scm-agent restart
cloudera-scm-agent is already stopped
Starting cloudera-scm-agent:                               [  OK  ]

都正常,但是 http://192.168.3.171:7180/cmf/home 不能访问。找到根本错误如下

[root@h1 init.d]# /opt/cm-5.5.2/etc/init.d/cloudera-scm-server status
cloudera-scm-server dead but pid file exists

先直接rm run/cloudera-scm-server.pid, 再次启动仍然不能访问。

没有去查看cloudera的详细日志,先查看了mysql的相关进程和服务。

# /etc/rc.d/init.d/mysqld status
mysqld is stopped
[root@h1 shell]# service mysqld start
Another MySQL daemon already running with the same unix socket.
Starting mysqld:                                           [FAILED][root@h1 bin]# find / -name mysql.sock
/var/lib/mysql/mysql.sock
[root@h1 bin]# mysql -u root -p -S /var/lib/mysql/mysql.sock
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111)

数据库异常,直接 rm /var/lib/mysql/mysql.sock,再执行

[root@h1 mysql]# service mysqld start
Starting mysqld:                                           [  OK  ]

后面再启动cdh,再次访问7180端口网页,重启相关服务。
在这里插入图片描述


http://chatgpt.dhexx.cn/article/gQXlbQB3.shtml

相关文章

大数据之cdh集群安装

安装前的准备工作 配置主机名、hosts、开启PermitRootLogin、设置密码 、做免密 、java环境变量、时间同步 安装过程概述(Ubuntu18.04安装) (centos7离线安装参考https://www.cnblogs.com/swordfall/p/10816797.html) http://ro-bucharest-repo.bigs…

CDH6.x安装教程(附带整合kerberos)

CDH从6.3.3版开始不再免费,6.3.2及以下版本可免费使用,大家如有需要可联系我索取安装包。 安装步骤总览: 1、配置服务器系统基础环境 2、配置本地仓库 3、安装数据库 4、安装CM 5、添加大数据服务 CDH基本架构简述: CDH主要…

CDH安装部署步骤

CDH下载地址: CDH5.4: http://archive.cloudera.com/cdh5/ Cloudera Manager5.4.3: http://www.cloudera.com/downloads/manager/5-4-3.html 准备工作:(linux必须是64位的) 安装CDH之前,我们需要安装一…

CDH安装配置(详细说明)

从网上看了很多的资料,填了不少的坑。总结一下。(这篇是整合网络的资料自己的坑) 关于CDH和Cloudera Manager CDH (Clouderas Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloudera维护&…

CDH的安装详细步骤

目录 目录 第1章 配置环境 1.1.准备阶段 1.1.1.服务器 1.1.2.操作系统 1.2.安装配置 1.2.1.安装操作系统 1.2.2.配置操作系统 1.2.3.安装Oracle JDK (所有节点) 1.2.4.配置SSH免密 1.2.5.安装配置mysql 1.2.6. NTP时间同步 第2章 安装CDH …

CDH6.2.0详细安装步骤

CDH6.2.0版本安装指南 1. 准备集群 本文档使用的是三台虚拟机,IP和主机名自行修改,三台虚拟机需要能联网,并且能够免密登录,这些网上都能找到详细的教程,有问题也可以底部留言交流。 ip名称内存xxx.xx.x.169node16916…

俗话说:学好c语言,走遍天下都不怕

c语言的重要性 C语言产生于1972年,是计算机的一种高级语言,目前在国际上还是很流行的,因为它具有低级程序语言的功能,所以也有人说它是中级语言。 对于大多数程序员来说。C语言是学习编程的第一门语言,也可以说是入门…

如何学习 C 语言?

在线资源 C程序员帮助建立了互联网,而互联网可以帮助你学习C。互联网时刻都在发展、变化,这里所列的资源只是在撰写本书时可用的资源。当然,你可以在互联网中找到其他资源。 如果有一些与C语言相关的问题或只是想扩展你的知识,可…

关于学好C语言的心得

一.工欲善其事,必先利其器 选择visual sudio 2019 原因:1.vs2019是集成开发环境,对新手友好,不需要配置环境,上手就可以使用 2.大部分网课教程都在使用,避免产生冲突 下载网址:Visual Studio 产…

c语言学的是什么,C语言怎么学?

计算机有一种专业叫c语言,那么什么是c语言,怎么去学它?能给我们带来什么?这篇文章主要是针对此内容做一讲解! c语言是一种电脑程序设计语言。它有高级语言的特点,也有整编语言的特征。可以作为系统设计和应…

为什么要学好c语言,c语言到底多重要,你造吗

一、前言 对于理工 科学生来说,这个答案可能很简单,因为这是一门必修课。而对于程序员来说选择一门编程语言,在某种程度上,对职业生涯的发展会产生重大的影响,所以必须慎 之又慎。那么,为什么要选择一门诞…

零基础如何学好C语言?

经常有人会这样问"我没有一点基础,该如何入门C语言,该如何学好C语言 ?"看到很多初学者摸不到门路,我在这里制定了相应的学习计划,对于零基础新手一定会有很大的帮助。 很多新手认为学习C语言离不开记忆语法&#xff0c…

怎样学习C语言?

一 、怎样学习C语言 很多人对学习C语言感到无从下手,经常问我同一个问题:究竟怎样学习C语言?我是一个教师,已经开发了很多年的程序,和很多刚刚起步的人一样,学习的第一个计算机语言就是C语言。 经过这些年的…

如何学好C语言--你的学渣朋友告诉你

光说不练假把式,光练不说傻把式,又练又说真把式。 真实感受,不是我不想学,是我真的不知道我哪里不会啊和得怎么做啊?本文作者当初就是这么废掉的 推荐两个练习的网站 (一)C语言网 https://www.dotcpp.com/ 水题基…

学好C语言,你只需要这几句口诀!

学好C语言的秘诀就是1234:“一字真言,两种态度,三个框架,四项注意”。 一、一字真言 各位看官,学好C语言,其实只需一个字,那就是“编”。 (一)编。 学习C语言&#x…

推荐给初学者:如何学好C语言?

点击上方“大鱼机器人”,选择“置顶/星标公众号” 福利干货,第一时间送达! 学习C语言不是一朝一夕的事情,但也不需要花费十年时间才能精通。如何以最小的代价学习并精通C语言是本文的主题。请注意,即使是“最小的代价”…

如何学好C语言?

目录 零基础学习C语言该怎么入门?第一步 视频课程第二步 阅读配套教材第三步 完成配套练习习题第四步 如果题目不会做怎么办?第五步 如果参考答案看不懂怎么办?第六步 熟练使用C语言第七步 全面理解C语言第八步 精通C语言第九步 C语言实战 零…

新手如何学好C语言?

作为一名资深码农,在软件行业也拼搏了十多年,这里跟想学习C语言的萌新童鞋分享下我的个人学习心得!!! 在大学时代,我们大二才开始学习C语言(起步有点晚啊),第一次看到那…

完全卸载nginx的详细步骤

一个执着于技术的公众号 前言 在开局配置Nginx时有可能会配置错误,报各种错误代码。看不懂或者懒得去看这个报错时,其实最简单的方式是卸载并重装咯。今天就带大家一起学习下,如何彻底卸载nginx程序。 卸载nginx程序的详细步骤 1、停止Nginx软…