CDH5.15.1集群安装部署
CDH集群安装部署
大数据平台软件清单
本文部署的大数据基础平台为CDH,操作系统的版本为CentOS6.8,JDK的版本为1.8,Cloudera Manager与CDH的版本为5.15.1,数据库采用MySQL5.7,JDBC驱动的版本为5.1.40,以上所有软件均为开源版本,具体如下表所示:
NO. 软件名称 版本
:--- :---------------- :-------------
1 操作系统 CentOS6.8 64位
2 JDK 1.8.0_73
3 Cloudera Manager 5.15.1
4 CDH 5.15.1
5 数据库 MySQL5.7
6 JDBC驱动 5.1.40
安装前准备
配置网络名称和SSH
(1)编辑/etc/sysconfig/network文件,修改HOSTNAME,将主机名修改为kms-1.example.com,三台主机名依次为kms-1.example.com、kms-2.example.com、kms-3.example.com
[root@kms-1 ~]# vi /etc/sysconfig/network
(2)编辑/etc/hosts文件,配置主机IP与主机名
[root@kms-1 ~]# vi /etc/hosts
添加配置的内容如下所示
192.168.10.200 kms-1.apache.com kms-1 192.168.10.201 kms-2.apache.com kms-2 192.168.10.202 kms-3.apache.com kms-3
(3)执行 ssh-keygen -t rsa命令,生成密钥,生成的密钥存在于/home/kms/.ssh目下
[root@kms-1 ~]# ssh-keygen -t rsa
(4)执行ssh-copy-id命令,将公钥发送至其他主机
[root@kms-1 ~]# ssh-copy-id kms-1.example.com [root@kms-1 ~]# ssh-copy-id kms-2.example.com [root@kms-1 ~]# ssh-copy-id kms-3.example.com
首先免密登录本地

免密登录本地主机

(5)在其他主机执行上述相同操作
集群时间同步
(1)安装ntp,如果操作系统已经安装了,可以不用再安装
[root@kms-1 ~]# yum install -y ntp
(2)设置ntp开机启动
[root@kms-1 ~]# chkconfig ntpd on
(3)检查是否设置成功
[root@kms-1 ~]# chkconfig --list ntpd
(4)在其他主机上执行上述步骤
(5)主节点ntpserver配置,编辑/var/lib/ntp/drift文件,添加如下内容
[root@kms-1 ~]# vi /var/lib/ntp/drift restrict 127.0.0.1 restrict -6 ::1 restrict default nomodify notrap server 202.120.2.101 prefer includefile /etc/ntp/crypto/pw keys /etc/ntp/keys
(6)启动主节点ntp服务
[root@kms-1 ~]# service ntpd start
(7)执行ntpstat命令查看同步状态
[root@kms-1 ~]# ntpstat
(8)从节点ntp客户端配置
[root@kms-2 ~]# vi /var/lib/ntp/drift restrict 127.0.0.1 restrict -6 ::1 restrict default nomodify notrap server kms-1.example.com includefile /etc/ntp/crypto/pw keys /etc/ntp/keys
(9)手动与主节点时间同步
[root@kms-2 ~]# ntpdate -u kms-1.example.com
(10)启动从节点ntp服务
[root@kms-2 ~]# service ntpd start
(11)查看从节点的时间同步状态
[root@kms-2 ~]# ntpstat
关闭防火墙与SELINUX
(1)执行chkconfig iptables off
[root@kms-1 ~]# chkconfig iptables off
(2)执行service iptables stop
[root@kms-1 ~]# service iptables stop
(3)查看状态
[root@kms-1 ~]# chkconfig --list iptables
(4)编辑/etc/sysconfig/selinux,将SELINUX=enforcing改为SELINUX=disabled
[root@kms-1 ~]# vi /etc/sysconfig/selinux
(5)在其他节点执行上述步骤
(6)重启所有主机
安装JDK与MySQL
(1)解压tar包到/usr/java目录下
[root@kms-1 softwares]# tar -xzvf jdk-8u73-linux-x64.tar.gz -C /usr/java/
(2)设置java环境变量在文件末尾添加下面的内容
[root@kms-1 jdk1.8.0_73]# vi /etc/profile export JAVA_HOME=/usr/java/jdk1.8.0_73 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
(3)让环境变量生效
[root@kms-1 jdk1.8.0_73]# source /etc/profile
(4)查看java
[root@kms-1 jdk1.8.0_73]# java -version
(5)在其他主机上执行上述步骤
(6)卸载已有的已有的mysql-libs
[root@kms-1 mysql5.7]# rpm -qa grep mysql [root@kms-1 mysql5.7]# rpm -e --nodeps mysql-libs-5.1.73-7.el6.x86_64
(7)使用RPM包安装MySQL
[root@kms-1 mysql5.7]# rpm -ivh mysql-community-common-5.7.15-1.el6.x86_64.rpm [root@kms-1 mysql5.7]# rpm -ivh mysql-community-libs-5.7.15-1.el6.x86_64.rpm [root@kms-1 mysql5.7]# rpm -ivh mysql-community-client-5.7.15-1.el6.x86_64.rpm [root@kms-1 mysql5.7]# rpm -ivh mysql-community-server-5.7.15-1.el6.x86_64.rpm
(8)设置开机启动
[root@kms-1 mysql5.7]# chkconfig mysqld on
(9)启动MySQL服务
[root@kms-1 mysql5.7]# chkconfig mysqld on
(10)关闭密码校验
[root@kms-1 mysql5.7]# echo "validate_password=off">> /etc/my.cnf
(11)修改/etc/my.cnf
[root@kms-1 mysql5.7]# vi /etc/my.cnf
添加如下内容
[mysqld]character-set-server=utf8############################[client] default-character-set=utf8 [mysql] default-character-set=utf8

(12)重启MySQL服务
[root@kms-1 ~]# service mysqld restart
(13)查看root用户初始密码
[root@kms-1 ~]# cat /var/log/mysqld.log more grep password
(14)登录MySQL修改密码
[root@kms-1 ~]# mysql -uroot -p mysql> set password='123qwe';
(15)为Cloudera组件创建数据库
mysql>CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;mysql>GRANT ALL ON scm.* TO 'scm'@'%' IDENTIFIED BY '123qwe';mysql>CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;mysql>GRANT ALL ON amon.* TO ' amon'@'%' IDENTIFIED BY '123qwe';mysql>CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;mysql>GRANT ALL ON rman.* TO ' rman'@'%' IDENTIFIED BY '123qwe';mysql>CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;mysql>GRANT ALL ON hue.* TO ' hue'@'%' IDENTIFIED BY '123qwe';mysql>CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;mysql>GRANT ALL ON metastore.* TO 'hive'@'%' IDENTIFIED BY '123qwe';mysql>CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;mysql>GRANT ALL ON sentry.* TO ' sentry'@'%' IDENTIFIED BY '123qwe';mysql>CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;mysql>GRANT ALL ON nav.* TO ' nav'@'%' IDENTIFIED BY '123qwe';mysql>CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;mysql>GRANT ALL ON navms.* TO ' navms'@'%' IDENTIFIED BY '123qwe';mysql>CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;mysql>GRANT ALL ON oozie.* TO ' oozie'@'%' IDENTIFIED BY '123qwe';mysql> GRANT ALL ON *.* TO 'root'@'%' IDENTIFIED BY '123qwe';mysql> flush privileges;
Linux参数配置
(1)查看swappiness
[root@kms-1 ~]# cat /proc/sys/vm/swappiness
(2)设置swappiness的值
[root@kms-1 ~]# echo 10 > /proc/sys/vm/swappiness [root@kms-1 ~]# echo vm.swappiness = 10 >> /etc/sysctl.conf
(3) 查看透明大页是否启用
[root@kms-1 ~]# cat /sys/kernel/mm/transparent_hugepage/defrag [root@kms-1 ~]# cat /sys/kernel/mm/transparent_hugepage/enabled
(4)关闭透明大页面
[root@kms-1 ~]# vi /etc/rc.d/rc.local
在最后一行添加如下内容
if test -f /sys/kernel/mm/transparent_hugepage/enabled; thenecho never > /sys/kernel/mm/transparent_hugepage/enabledfiif test -f /sys/kernel/mm/transparent_hugepage/defrag; thenecho never > /sys/kernel/mm/transparent_hugepage/defragfi
(5)赋予rc.local具有可执行权限
[root@kms-1 ~]# chmod +x /etc/rc.d/rc.local
(6) 查看文件句柄数
[root@kms-1 ~]# ulimit -n
(7)修改限制
[root@kms-1 ~]# vi /etc/security/limits.conf
添加如下内容
* soft nofile 100000 * hard nofile 100000
(8)在其他主机上执行上述操作,并重启主机
部署Cloudera Manager
安装Cloudera Manager
(1)解压安装cloudera-manager
cloudera manager 的目录默认位置在/opt 下, 将解压后的cm-5.15.1 和cloudera 目录放到/opt 目录下。
[root@kms-1 ~]tar -xzvf cloudera-manager-el6-cm5.15.1_x86_64.tar.gz -C /opt
(2)安装cloudera-manager数据库,将驱动改名,并放到/opt/cm-5.15.1/share/cmf/lib/和/usr/share/java目录中
[root@kms-1 mysql5.7]# cp mysql-connector-java.jar /opt/cm5.15.1/share/cmf/lib/ [root@kms-1 mysql5.7]# cp mysql-connector-java.jar /usr/share/java/
(3)初始化CM5 的数据库
/opt/cm-5.15.1/share/cmf/schema/scm_prepare_database.sh mysql scm scm
(4)配置Agent
将config.ini中的server_host 修改为主节点的主机名。
[root@kms-1 ~]# vi /opt/cm-5.15.1/etc/cloudera-scm-agent/config.ini # Hostname of the CM server. server_host=kms-1.example.com
同步Agent 到其他节点
[root@kms-1 opt]# scp -r cm-5.15.1/ kms-2.example.com:/opt/ [root@kms-1 opt]# scp -r cm-5.15.1/ kms-3.example.com:/opt/
(5)在所有节点创建cloudera-scm 用户
[root@kms-1 ~]# useradd --system --home=/opt/cm-5.15.1/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
(6)准备Parcels包
将CHD5 相关的Parcel 包放到主节点的/opt/cloudera/parcel-repo/目录
[root@kms-1 parcel-repo]# cp /opt/softwares/CDH5.15.1/* .
相关的文件如下:
CDH-5.15.1-1.cdh5.15.1.p0.4-el6.parcelCDH-5.15.1-1.cdh5.15.1.p0.4-el6.parcel.sha1manifest.json
将CDH-5.15.1-1.cdh5.15.1.p0.4-el6.parcel.sha1 重命名为CDH-5.15.1-1.cdh5.15.1.p0.4-el6.parcel.sha
[root@kms-1 parcel-repo]# mv CDH-5.15.1-1.cdh5.15.1.p0.4-el6.parcel.sha1 CDH-5.15.1-1.cdh5.15.1.p0.4-el6.parcel.sha
访问CM Server与Agent
(1)在主节点上启动cloudera-scm-server
[root@kms-1 ~]# /opt/cm-5.15.1/etc/init.d/cloudera-scm-server start
(2)在所有节点上,启动cloudera-scm-agent :
[root@kms-1 ~]# /opt/cm-5.15.1/etc/init.d/cloudera-scm-agent start
(3)在浏览器中访问http://192.168.10.200:7180,用户名和密码均为admin

部署CDH
选择部署的版本与主机
(1)登录后用户许可条款和条件

(2)选择部署版本

(3)选择免费版本后点击继续

(4)指定主机,选择当前管理的主机后点击继续

群集安装
(1)选择本地的Parcel版本后点击继续

(2)等待安装选定的parcel完成,点击继续

(3)检查主机的正确性,点击完成

群集设置
(1)选择安装所有服务,点击继续

(2)自定义角色分配

(3)数据库设置,测试连接成功之后,点击继续

(4)选择默认配置,点击继续

(5)其中服务成功之后,点击继续

(6)安装完成
CDH5.15.1集群安装部署的更多相关文章
- HBase 1.2.6 完全分布式集群安装部署详细过程
Apache HBase 是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,是NoSQL数据库,基于Google Bigtable思想的开源实现,可在廉价的PC Server上搭建大规模结构化存 ...
- 2 Hadoop集群安装部署准备
2 Hadoop集群安装部署准备 集群安装前需要考虑的几点硬件选型--CPU.内存.磁盘.网卡等--什么配置?需要多少? 网络规划--1 GB? 10 GB?--网络拓扑? 操作系统选型及基础环境-- ...
- HBase集群安装部署
0x01 软件环境 OS: CentOS6.5 x64 java: jdk1.8.0_111 hadoop: hadoop-2.5.2 hbase: hbase-0.98.24 0x02 集群概况 I ...
- flink部署操作-flink standalone集群安装部署
flink集群安装部署 standalone集群模式 必须依赖 必须的软件 JAVA_HOME配置 flink安装 配置flink 启动flink 添加Jobmanager/taskmanager 实 ...
- Hadoop ha CDH5.15.1-hadoop集群启动后,集群容量不正确,莫慌,这是正常的表现!
Hadoop ha CDH5.15.1-hadoop集群启动后,集群容量不正确,莫慌,这是正常的表现! 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.集群启动顺序 1>. ...
- Hadoop ha CDH5.15.1-hadoop集群启动后,两个namenode都是standby模式
Hadoop ha CDH5.15.1-hadoop集群启动后,两个namenode都是standby模式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一说起周五,想必大家都特别 ...
- 1.Hadoop集群安装部署
Hadoop集群安装部署 1.介绍 (1)架构模型 (2)使用工具 VMWARE cenos7 Xshell Xftp jdk-8u91-linux-x64.rpm hadoop-2.7.3.tar. ...
- K8S集群安装部署
K8S集群安装部署 参考地址:https://www.cnblogs.com/xkops/p/6169034.html 1. 确保系统已经安装epel-release源 # yum -y inst ...
- 【分布式】Zookeeper伪集群安装部署
zookeeper:伪集群安装部署 只有一台linux主机,但却想要模拟搭建一套zookeeper集群的环境.可以使用伪集群模式来搭建.伪集群模式本质上就是在一个linux操作系统里面启动多个zook ...
- 第06讲:Flink 集群安装部署和 HA 配置
Flink系列文章 第01讲:Flink 的应用场景和架构模型 第02讲:Flink 入门程序 WordCount 和 SQL 实现 第03讲:Flink 的编程模型与其他框架比较 第04讲:Flin ...
随机推荐
- [Rocky Linux] 使用btrfs
使用btrfs rocky本身并没有btrfs的相关管理工具,所以需要自己安装,但是遗憾的发现它的源中啥也没有.只能考虑自己安装. 相关说明 btrfs Wiki (kernel.org) 可以从中得 ...
- Python-Json异常:Object of type Decimal is not JSON serializable
源起: 使用python分离出一串文本,因为是看起来像整数,结果json转换时发生异常:TypeError: Object of type Decimal is not JSON serializab ...
- C++ STL函数对象 仿函数
1 //STL函数对象 仿函数 2 #include<iostream> 3 #include<string> 4 5 using namespace std; 6 7 8 / ...
- Codeforces Round 922 (Div. 2)(A~D)补题
A题考虑贪心,要使使用的砖头越多,每块转的k应尽可能小,最小取2,最后可能多出来,多出来的就是最后一块k=3,我们一行内用到的砖头就是\(\frac{m}{2}\)下取整,然后乘以行数就是答案. #i ...
- C++ Qt开发:QHostInfo主机地址查询组件
Qt 是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍如何运用QHo ...
- Mybatis中没有返回值的查询方法
最近在项目开发中发现一件非常有意思的事情,一个Mapper.java文件中有一个查询方法没有返回值,这引起了我的好奇心, 没有返回值查询还有什么用呢? 仔细去看这个Mapper.java文件对应的xm ...
- MinGW编译Python至pyd踩坑整理
不需要安装VS工具,pyd使用说明. 用scoop自动安装配置MinGw 需要魔法,用包管理scoop安装不需要手动配置.这一步可以自行下载mingw64然后手动配置. scoop install m ...
- github git clone下载加速 && npm install 下载加速
git clone https://pd.zwc365.com/seturl/< https 开头的项目地址> npm install --registry=https://registr ...
- ble无线智能工牌解决方案技术解析
场景需求 在无线智能工牌领域,团队做了几个实际场景的解决方案之后,积累了一些行业需求经验和技术经验.这里做一个总结,算是一种沉淀吧.场景一:居家养老,医护和护工人员定期上门服务,根据工作时长来发工资 ...
- Ubuntu 16.04 LAMP(PHP7.0) 环境搭建并测试
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明 本文作为本人csdn blog的主站的备份.(Bl ...