cdh5.15.1离线搭建说明

    由于使用apache hadoop进行部署,部署步骤繁多,管理运维成本较高,于是使用Cloudera Manager进行部署、管理hadoop集群,能够加快部署,减少运维成功,同时支持其他集群的部署和管理,如:kafka、zookeeper、spark等。

前言

    本文档的搭建说明是基于centos7、jdk8、cdh5.15.1、cloudera manager5.15.1,部署节点为3个对应的hostname为node1、node2和node3。

下载资源

下载cloudera manager包

    访问下载地址:https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.15.1/RPMS/x86_64/,下载如下图所示红框中的文件:

访问下载地址:https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/,下载如下图所示红框中文件:

下载CDH包

    访问下载地址:http://archive.cloudera.com/cdh5/parcels/5.15.1/,下载如下图所示红框中的文件:

下面从如下几个步骤进行说明部署:

1.设置静态ip。

2.设置hostname。

3.关闭防火墙以及selinux。

4.ssh免密码登陆。

5.jdk配置。

6.开启httpd

7.ntp时间同步配置。

8.mysql配置。

9.cloudera manager配置。

10. cloudera manager界面配置。

设置静态ip

    使用命令:"ip a" 查看使用网卡的名称,本次部署的名称为:ens192,修改/etc/sysconfig/network-scripts/ifcfg-ens192配置文件,修改内容如下红框中所示:

执行命令:"service network restart"重启网络即可。

设置hostname

1.执行命令"hostnamectl set-hostname yourhostname"修改hostname。

2.执行命令"hostname"查看设置好的hostname

3.在/etc/hosts文件中添加ip->hostname的映射。

关闭防火墙以及selinux

关闭防火墙:

1.执行命令:"systemctl stop firewalld.service" 停止firewall。

2.执行命令:"systemctl disable firewalld.service"禁止firewall开机启动。

3.指定命令:"firewall-cmd --state"查看默认防火墙状态(关闭后显示notrunning,开启后显示running)。

关闭selinux:

修改/etc/selinux/config文件中的SELINUX属性为disabled。

ssh免密设置

1.在各个机器中执行命令:"ssh-keygen -t rsa",在~/.ssh路径下生成id_rsa、id_rsa.pub文件说明生成成功。

2.在node1节点上执行命令:"cat id_rsa.pub>>authorized_key" 将node1的公钥内容拷贝到authorized_keys文件。

3.在node2、node3节点上执行命令:"ssh-copy-id -i node1"将本节点的公钥拷贝到node1机器上的authorized_keys文件。

4.在node1节点上执行命令:"scp ~/.ssh/authorized_keys node2:~/.ssh"、"scp ~/.ssh/authorized_keys node3:~/.ssh"将node1上的authorized_keys文件拷贝到其他节点。

5.执行命令:"ssh root@node2" 不需要进行密码验证说明免密成功。

jdk配置

    从官网(http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)下载jdk8,并传输到各个节点,进行解压并设置jdk的环境变量,修改/etc/profile文件,修改内容如下:

修改之后执行命令:"source /etc/profile",使环境变量生效。如在窗口中执行命令:"java -version"出现如下图所示即安装成功。

开启httpd

1.执行命令:"yum install httpd "进行安装。

2.执行命令:"systemctl start httpd.service"开启服务。

3.执行命令:"systemctl enable httpd.service "设置开机自启动。

ntp时间同步服务配置

    这节的内容就参考:https://www.cnblogs.com/quchunhui/p/7658853.html,本次配置也是参考该博客内容进行配置的,这里就不把别人的博客粘过来了。

mysql配置

1.下载安装mysql repo源,执行命令:"wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm"下载repo源   ,执行命令:"rpm -ivh mysql-community-release-el7-5.noarch.rpm"安装repo源。

2. 执行命令:"service mysqld restart"重启mysql服务。

3.执行命令:"mysql -u root -p"进入mysql命令窗口,创建之后元数据存储所需的数据库,创建的库如下:

mysql> create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

mysql> create database monitor DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

mysql>create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

mysql>create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

mysql>create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

将这些库授权给root用户,执行命令如下:

mysql> grant all on *.* TO 'root'@'%' IDENTIFIED BY '123456'WITH GRANT OPTION;

mysql>flush privileges;

mysql > exit;

4.设置开机自启动mysql,执行命令:"chkconfig mysqld on (systemctl enable mysqld.service)".

cloudera manager配置

1.修改cloudera-manager.repo文件,将版本号添加到该文件中,如下图所示:

2.将文件拷贝到各个节点中,本次搭建使用node1作为cloudera-manager-server节点,其余节点作为cloudera-manager-agent节点。

node1节点上需要的文件:

cloudera-manager-agent-5.15.1-1.cm5151.p0.3.el7.x86_64.rpml  

cloudera-manager-daemons-5.15.1-1.cm5151.p0.3.el7.x86_64.rpml  

cloudera-manager.repol  

cloudera-manager-server-5.15.1-1.cm5151.p0.3.el7.x86_64.rpml  

cloudera-manager-server-db-2-5.15.1-1.cm5151.p0.3.el7.x86_64.rpml 

 enterprise-debuginfo-5.15.1-1.cm5151.p0.3.el7.x86_64.rpml  

其余节点需要的文件:

cloudera-manager-agent-5.15.1-1.cm5151.p0.3.el7.x86_64.rpml 

cloudera-manager-daemons-5.15.1-1.cm5151.p0.3.el7.x86_64.rpml 

cloudera-manager.repol 

分别在各个节点的拷贝路径下执行命令:"yum localinstall --nogpgcheck *.rpm",进行安装rpm相关文件。

3.在主节点移动文件,将CDH文件移动到/opt/cloudera/parcel-repo路径下是为了在之后的cloudera manager界面配置时不需要在线进行下载加快配置。执行命令如下:

"mv CDH-5.15.1-1.cdh5.15.1.p0.4-el7.parcel manifest.json /opt/cloudera/parcel-repo/"

"mv CDH-5.15.1-1.cdh5.15.1.p0.4-el7.parcel.sha1 /opt/cloudera/parcel-repo/CDH-5.15.1-1.cdh5.15.1.p0.4-el7.parcel.sha" #注意这里有重命名

4.下载mysql connector,访问地址http://www.mysql.com/downloads/connector/j/5.1.html下载mysql jdbc驱动、解压拷贝到/usr/share/java路径下并重命名为mysql-connector-java.jar。命令如下:

"tar zxvf mysql-connector-java-5.1.47.tar.gz"

"cp ./mysql-connector-java-5.1.47-bin.jar  /usr/share/java/mysql-connector-java.jar"

5.配置mysql作为cloudera manager的数据库,在node1节点上执行命令:"/usr/share/cmf/schema/scm_prepare_database.sh mysql scm -hlocalhost -uroot -p123456 --scm-host localhost scm scm scm"

-h:mysql地址。

-u/-p :数据库用户名/密码。

--scm-host:scm-server所在的机器主机。

第一个scm:数据库名。

第二个scm:创建的mysql用户的用户名。

第三个scm:创建的mysql用户的密码。

6.修改cloudera-scm-server和cloudera-scm-agent的jdk环境变量,server的文件为/etc/default/cloudera-scm-server,agent的文件为/etc/default/cloudera-scm-agent。修改内容如下图所示:

7.启动cloudera-scm-server,执行命令:"/etc/init.d/cloudera-scm-server start"。

cloudera manager界面配置

    按照上面章节操作启动cloudera-scm-server等待约1分钟之后访问http://192.168.58.130:7180进行登录,用户名和密码都为admin,选择免费版,一路next开始安装,界面如下所示

1.选择版本

2.为cdh集群安装指定主机

3.集群安装

4.jdk安装选项,图中红框不进行勾选

5.选择单用户模式

6.ssh免密配置

7.安装agents

在该过程有可能出现socket.gaierror: [Errno -2] Name or service not known问题,在出错的机器上执行命令“rm -f /usr/bin/host,之后重新安装即可。

8.安装parcel

这里因为已经将CDH-*文件移动到/opt/cloudera/parcel-rep,所以选择之后不需要进行在线下载。

9.检查主机正确性

在这一步有可能报如下图所示的警告:

在报警告的机器上依次执行如下命令:

sysctl -w vm.swappiness=10 

echo "vm.swappiness = 10" >> /etc/sysctl.conf 

echo never > /sys/kernel/mm/transparent_hugepage/defrag

echo never > /sys/kernel/mm/transparent_hugepage/enabled

echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag' >> /etc/rc.local 

echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local 

点击重新运行之后警告消除。

10.选择服务

这里选择自定义服务,选择zookeeper、hdfs、hbase三个服务。

11.配置成功

启动服务时候会有一些警告,这些警告都是因为指定路径下的磁盘空间不足、内存不足或是配置参数值不合理,可以根据警告中的提示进行修改,由于是本地环境进行搭建资源有限所以对这些警告弃之不理。

12.修改jdk版本

    上述为cloude manager的完整安装步骤,有看不明白的地方一定是我写的不够清楚,所有欢迎提任何问题以及改善方法。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值