CDH方式搭建大数据平台的优势:
提供UI界面交互,极大的简化了集群的搭建,减少版本冲突
通过网页浏览器就可以实现集群的操作和管理
前言:
搭建前准备: 确保 linux系统的以及服务器集群的搭建已ok
示例版本: 5.14.0
示例节点: 两个
示例步骤: 安装前环境准备 , 安装过程 , 启动环境以及安装相应软件架构
一:整体架构
二:安装前准备
两台虚拟机,一台作为主节点,一台从节点
主节点:安装 cloudera manager server 和 cloudera manager agent
从节点:安装 cloudera manager agent
2.所有机器统一路径
mkdir -p /export/software (上传软件位置)
mkdir -p /export/servers (安装软件位置)
3.更改主机名(两台)
vim /etc/sysconfig/network
NETWORKING = yes
HOSTNAME = node01或者node02
4.更改主机名与ip地址的映射(两台)
vim /etc/hosts
192.168.138.100 node01
192.168.138.110 node02
5.两台机器关闭防火墙
service iptables stop
chkconfig iptables off
6.两台机器关闭selinux
vim /etc/selinux/config
SELINUX = disabled
7.两台机器安装JDK
cd /export/softwares
tar -zxvf jdk… -C /export/servers
8.配置环境变量
vim /etc/profile
export JAVA_HOME=/export/servers/jdk…
export PATH=: J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH
9.source /etc/profile
10.两台实现ssh免密登陆
生成公私密钥对
ssh -keygen -t rsa
11.两台机器将公钥拷贝到同一台机器上(这里都拷贝到node01上)
ssh-copy-id node01
12.拷贝authorized_keys拷贝到其他机器的/root/.ssh目录上
第一台把authorized_keys 拷贝到第二台: scp /root/.ssh/authorized_keys node02:/root/.ssh
13.第二台机器安装mysql
通过yum源在线安装
yum install mysql mysql-server mysql-devel
启动mysql服务 : /etc/init.d/mysql start
进入设置密码 : /usr/bin/mysql_secure_installation
进入mysql客户端 mysql -uroot -p 执行以下命令
grant all privileges on . to ‘root’@’%’ identified by ‘123456’ with grant option;
flush privileges;
14.解除linux系统打开文件最大数量的限制
两台机器都执行
vi /etc/security/limits.conf
添加以下内容:(不要忘了*号)
15.设置linux交换区内存(当内存不够的时候拿磁盘使用,不设置可能会报警告)
两台机器都要执行
echo 10 > /proc/sys/vm/sweppiness
编辑文件sysctl.conf
vim /etc/sysctl.conf
添加一行配置:(禁用交换区内存大小)
vm.swappiness = 0;
两台机器执行:
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
并编辑文件:rc.local
vim /etc/rc.local
添加以下两行配置:
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
16.两台机器的时钟同步
crontab -e
添加阿里云配置:
*/1 * * * * /usr/sbin/ntpdate ntp4.aliyun.com
17.两台服务器关闭防火墙
service iptables stop
chkconfig iptable off
18.服务器关机重启
reboot
一:安装资源下载(4个文件)
安装5.14.0版本
下载cm5的压缩包(好多,不要找错)
地址: http://archive.cloudera.com/cm5/cm/5/
具体文件下载(el6代表CentOS 6 版本的虚拟机)
具体文件: cloudera-manager-el6-cm5.14.0_x86_64.tar.gz
下载cm5的parcel包
地址: http://archive.cloudera.com/cdh5/parcels/
下载具体文件:
1. manifest.json
2. CDH-5.14.0-1.cdh5.14.0.p0.24-el6.parcel
3. CDH-5.14.0-1.cdh5.14.0.p0.24-el6.parcel.sha1
二:上传解压和拷贝
上传至 : /export/softwares
解压至
1.tar -zxvf cloudera-manager-el6-cm5.14.0_x86_64.tar.gz -C /opt/
2.重命名 CDH-5.14.0-1.cdh5.14.0.p0.24-el6.parcel.sha1 把字后面的1去掉
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
3.复制文件,拷贝到 /opt/cloudera/parcel-repo 目录下
cp manifest.json CDH-5.14.0-1.cdh5.14.0.p0.24-el6.parcel CDH-5.14.0-1.cdh5.14.0.p0.24-el6.parcel.sha /opt/cloudera/parcel-repo/
三:所有节点添加普通用户并给与root权限
命令: useradd --system --home=/opt/cm-5.14.0/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment “Cloudera SCM User” cloudera-scm
赋予cloudera-scm 用户root权限
命令: visudo
添加配置:
cloudera-scm ALL=(ALL) NOPASSWD ALL
四:更改主节点(node01)的配置文件
vim /opt/cm-5.14.0/etc/cloudera-scm-agent/config.ini
修改配置:
server_host=node01
server_port=7182
五:将/opt目录下的安装包分发到其他机器
cd /opt
scp -r cloudera/ cm-5.14.0/ node02:/opt
六:创建一些数据库备用
mysql在node02上
启动mysql; /etc/init.d/mysql start
mysql -u root -p
1.hive数据库:
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
2.集群监控数据库
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
3.hue数据库
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
4.oozie数据库
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
七:准备数据库连接的驱动包
在所有节点上上传一份数据库驱动jar包
放在目录: /usr/share/java
下载方式:下载在/export/softwares
下载命令:
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.45.tar.gz
解压压缩包到当前目录
tar -zxvf mysql-connector-java-5.1.45.tar.gz
cd /export/softwares/mysql-connector-java-5.1.45
复制jar包到指定目录
cp mysql-connector-java-5.1.45-bin.jar /usr/share/java/ mysql-connector-java-5.1.45-bin.jar
拷贝驱动到第二台机器上
cd /usr/share/java
scp mysql-connector-java-5.1.45-bin.jar -C node02:$PWD
八:为clouderaManager 创建数据库
在node01上执行
/opt/cm-5.14.0/share/cmf/scheme/scm_prepare_database.sh mysql -h node02 -u root -p 123456 --scm-host node01 scm root 123456
命令解释:
1./opt/cm-5.14.0/share/cmf/scheme/scm_prepare_database.sh mysql 代表数据库类型是mysql类型
2.-h node02 代表数据库主机名是node02
3.-u root -p 123456 数据库登录信息
4.–scm-host node01 代表clouderaManager 主机名是node01
5.scm root 123456 代表数据库叫scm 用户名是root 密码是123456
一:启动服务
主节点node01启动ClouderaMananger Server 和 ClouderaManager agent
命令:
/opt/cm-5.14.0/etc/init.d/cloudera-scm-server start
/opt/cm-5.14.0/etc/init.d/cloudera-scm-agent start
查看:server
jps
出现main即可
查看cm进程
ps -ef | grep cm
从节点node02启动ClouderaManager agent
命令:
/opt/cm-5.14.0/etc/init.d/cloudera-scm-agent start
二:浏览器访问
http://node01:7180/cmf/login
默认用户名: admin
默认密码: admin
三:集群操作
1.进入界面,点击继续,安装免费版Cloudera Express
2.为CDH集群安装指定主机
点击当前管理的主机–>勾选左边全部–>继续
3.进入集群安装
选择存储库–>选择方法:使用parcel(建议)–>选择CDH版本(CDH-5.14.0-1.cdh5.14.0p0.24)–>其他parcel(无)
4.等待集群的安装进度完成(自动安装)
解压–>分配–>激活
5.检查主机的正确性
没有警告说明ok
6.点击完成
7.进入集群设置(第一次使用需要设置select service)
可以选择自定义服务
挑选需要安装的软件即可
8.再进入集群设置,自定义角色分配
选择安装主机
9.自定义数据库
数据库主机名:node02
数据库类型: mysql
数据库名称:scm
用户名:root
密码:123456
10.集群设置,审核更改
11.开始安装进程
12.进入界面,可能报警告–是因为服务器配置不够