1. 准备服务器
- 机器要求(8g+ , 4core)
- 安装centeros 原生minal版本操作系统
- 开启网络和开机自启(因为minal版的操作系统网卡开机不是自动启动的)
-
安装常用软件
yum -y install gcc gcc-c++ vim wget openssh-clients ntp lsof
-
克隆机器
cdh-server cdh01 cdh02 ch03 cdh04 cdh05
-
免密码登录
cdh-server(10.10.10.200)----免密登录---->cdh-server(10.10.10.200) cdh-server(10.10.10.200)----免密登录---->cdh01(10.10.10.201) cdh-server(10.10.10.200)----免密登录---->cdh02(10.10.10.202) cdh-server(10.10.10.200)----免密登录---->cdh03(10.10.10.203) cdh-server(10.10.10.200)----免密登录---->cdh04(10.10.10.204) cdh-server(10.10.10.200)----免密登录---->cdh05(10.10.10.205)
2. cdh集群搭建的准备工作
-
准备6个机器
cdh-server 6gb内存 30gb硬盘 4核 cdh01 6gb内存 30gb硬盘 4核 cdh02 6gb内存 30gb硬盘 4核 cdh03 6gb内存 30gb硬盘 4核 cdh04 6gb内存 30gb硬盘 4核 cdh05 6gb内存 30gb硬盘 4核
-
关闭防火墙和开机自启(所有机器都要做)
service iptables stop chkconfig iptables off
-
开启时间同步服务器(所有机器都要做)
service ntpd start chkconfig ntpd on
-
关闭linux的selinux服务(所有机器都要做)
vim /etc/selinux/config #SELINUX=enforcing SELINUX=disabled
-
安装jdk(所有机器都要做)
.......
-
安装mysql数据库(任意一个机器即可)
1>安装数据库 yum -y install mysql-server 2>启动数据库服务 service mysqld start 3>设置开机自启 chkconfig mysqld on 4>登录到mysql mysql -uroot -p 5>设置mysql的密码 set password=password('root'); 6>刷新权限 flush privileges 7>开启远程登录的权限 use mysql; delete from user where password=''; update user set host='%' where user='root'; flush privileges
-
设置/proc/sys/vm/swappiness为0。(所有机器都做)
因为CDH运行需要消耗大量的内存,默认值为60,也就是说当内存使用到100-60=40%的时候,就开始出现有交换分区的使用。 大家知道,内存的速度会比磁盘快很多,这样子会加大系统io,同时造的成大量页的换进换出,严重影响系统的性能,所以我们在操作系统层面, 要尽可能使用内存,对该参数进行调整。 调整: vim /etc/sysctl.conf 添加内容 vm.swappiness=0 重启可以生效,当然也可以激活: sysctl -p
-
关闭THP(所有机器都做)
echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled echo never > /sys/kernel/mm/transparent_hugepage/enabled echo never > /sys/kernel/mm/transparent_hugepage/defrag
3. 安装cloudera manager(cm)
-
准备cm的安装包
[root@cdh-server opt] cloudera-manager-el6-cm5.6.1_x86_64.tar.gz
-
解压clouder-manager(cm)
[root@cdh-server opt] tar -zxvf cloudera-manager-el6-cm5.6.1_x86_64.tar.gz -C /opt/
-
修改agent配置文件
vim /opt/cm-5.6.1/etc/cloudera-scm-agent/config.ini server_host=cdh-server
-
拷贝mysql驱动
[root@cdh-server opt] 将mysql的驱动jar包拷贝到/opt/cm-5.6.1/share/cmf/lib/ 中做CM初始化元数据库使用
-
初始化cm元数据库
[root@cdh-server opt] /opt/cm-5.6.1/share/cmf/schema/scm_prepare_database.sh mysql cm -uroot -proot -hcdh05 -P3306 --scm-host cdh-server scm scm scm
-
把cdh-server上的cm安装目录拷贝到其他机器
[root@cdh-server opt] scp -r /opt/cm-5.6.1 root@cdh01:/opt/ scp -r /opt/cm-5.6.1 root@cdh02:/opt/ scp -r /opt/cm-5.6.1 root@cdh03:/opt/ scp -r /opt/cm-5.6.1 root@cdh04:/opt/ scp -r /opt/cm-5.6.1 root@cdh05:/opt/
-
在所有节点创建cloudera-scm用户
useradd --system --home=/opt/cm-5.6.1/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
-
配置环境变量(所有机器都要做)
export PATH=$PATH:/opt/cm-5.6.1/etc/init.d #使环境变量生效 source /etc/profile.d/cdh-env.sh
-
启动相应的服务
cdh-uplooking-server ===>clouder-scm-server start cdh-uplooking01 ===>clouder-scm-agent start cdh-uplooking02 ===>clouder-scm-agent start cdh-uplooking03 ===>clouder-scm-agent start cdh-uplooking04 ===>clouder-scm-agent start cdh-uplooking05 ===>clouder-scm-agent start
-
端口使用情况
webui的端口为:cdh-server的7180 内部通信的端口为: cdh-server的7182
-
通过webui可以访问我们的cm
cdh-server:7180 #只要能进入登录界面就好 先不要开始安装
4. 开始安装cdh集群
-
准备cdh安装包
[root@cdh-server parcel-repo] 将CDH5相关的Parcel包放到主节点的/opt/cloudera/parcel-repo/目录中(parcel-repo目录不存在的话需要手动创建) cp /soft/CDH-5.6.1-1.cdh5.6.1.p0.3-el6.parcel /opt/cloudera/parcel-repo/ cp /soft/CDH-5.6.1-1.cdh5.6.1.p0.3-el6.parcel.sha1 /opt/cloudera/parcel-repo/CDH-5.6.1-1.cdh5.6.1.p0.3-el6.parcel.sha cp /soft/manifest.json /opt/cloudera/parcel-repo/ #注意,在/opt/cloudera/parcel-repo/目录下一定要.sha1后缀名改为.sha,不然系统不识别离线安装包,还会从网络中下载
-
开始安装
http://cdh-server:7180
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。