51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Linux搭建Cloudera Manager+CDH6.3.1环境

一、大数据环境发展历史

2009年新的Apache Hadoop子项目成立,2011年3月被称为"21世纪的瑞士军刀",12月27日发布1.0.0可用,2013年10月15日发布2.2.0可用,推动大数据技术快速落地企业。

1、安装方式分为原生包(tar包安装),和集群管理工具安装(HDP,CDH,CDP)
文章源自小柒网-https://www.yangxingzhen.cn/7820.html

  • 原生包方式

缺点:就是要自己安装每个组件,做组件与组件的集成,监控平台啊等需要自行适配,运维成本高
文章源自小柒网-https://www.yangxingzhen.cn/7820.html

优点:可以自定义各种组件版本,对于二次开发,兼容协调有很好的优势
文章源自小柒网-https://www.yangxingzhen.cn/7820.html

  • 集群管理工具安装

缺点:对于自定义各种组件版本不友好,对于二次开发,兼容协调非常不方便
文章源自小柒网-https://www.yangxingzhen.cn/7820.html

优点:不需要管理组件与组件的集成,已提供良好的监控平台,运维成本较低
文章源自小柒网-https://www.yangxingzhen.cn/7820.html

2、集群管理工具对比
文章源自小柒网-https://www.yangxingzhen.cn/7820.html

|-----------------------------------------------------|--------------------------------------------------|--------------------------------------------------|--------------------------------------------------| | 比较项/产品文章源自小柒网-https://www.yangxingzhen.cn/7820.html | HDP文章源自小柒网-https://www.yangxingzhen.cn/7820.html | CDH文章源自小柒网-https://www.yangxingzhen.cn/7820.html | CDP文章源自小柒网-https://www.yangxingzhen.cn/7820.html | | 公司 | Hortonworks | Cloudera | Cloudera | | 全名 | Hortonworks Data Platform | Cloudera's Distribution Including Apache Hadoop | Cloudera Data Platform | | 集群管理工具 | Ambari | Cloudera Manager | Cloudera Manager | | 最早时间 | 2011年 | 2008年 | Cloudera和Hortonworks2018年合并后 | | 收费情况 | 免费 | 社区版免费,企业版收费(4000$一台节点) | 10000$一台节点,内存硬盘自行购买 |

二、Cloudera Manager介绍

Cloudera Manager(简称CM)是Cloudera公司开发的一款大数据集群安装部署利器,这款利器具有集群自动化安装、中心化管理、集群监控、报警等功能,使得安装集群从几天的时间缩短在几小时以内,运维人员从数十人降低到几人以内,极大的提高集群管理的效率。

三、Cloudera Manager功能

Cloudera Manager有四大功能:

1)管理:对集群进行管理,如添加、删除节点等操作。

2)监控:监控集群的健康情况,对设置的各种指标和系统运行情况进行全面监控。

3)诊断:对集群出现的问题进行诊断,对出现的问题给出建议解决方案。

4)集成:对hadoop的多组件进行整合。

四、环境准备

|----|-----------------|------------|---------------|--------------------| | 序号 | 操作系统 | 主机名 | IP地址 | 硬件配置 | | 1 | CentOS 7.9.2009 | cdh-server | 172.168.1.156 | 8 vCPU 16 GiB 60G | | 2 | CentOS 7.9.2009 | node1 | 172.168.1.18 | 8 vCPU 16 GiB 200G | | 3 | CentOS 7.9.2009 | node2 | 172.168.1.19 | 8 vCPU 16 GiB 200G | | 4 | CentOS 7.9.2009 | node3 | 172.168.1.20 | 8 vCPU 16 GiB 200G |

1)所需资源获取地址:

链接:https://pan.baidu.com/s/1cNj28m8XkQcRED47iex29Q

提取码:qn71

  • MySQL5.7

mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar

  • MySQL驱动包

mysql-connector-java.jar

  • cloudera-manager包

cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm

cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm

cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm

cloudera-manager-server-db-2-6.3.1-1466458.el7.x86_64.rpm

enterprise-debuginfo-6.3.1-1466458.el7.x86_64.rpm

oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm

allkeys.asc

  • parcel数据包

CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel

CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel.sha

CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel.sha1

CDH-6.3.1-1.cdh6.3.1.p0.1470567-el7.parcel.sha256

manifest.json

1、更新系统(所有主机)

[root@localhost ~]# yum -y update

2、修改主机名(所有主机)

cdh-server

[root@localhost ~]# hostnamectl set-hostname cdh-server

node1

[root@localhost ~]# hostnamectl set-hostname node1

node2

[root@localhost ~]# hostnamectl set-hostname node2

node3

[root@localhost ~]# hostnamectl set-hostname node3

3、配置hosts(所有主机)

[root@cdh-server ~]# cat >>/etc/hosts <<EOF

172.168.1.156 cdh-server

172.168.1.18 node1

172.168.1.19 node2

172.168.1.20 node3

EOF

4、配置免密钥

cdh-server

[root@cdh-server ~]# ssh-keygen

[root@cdh-server ~]# ssh-copy-id root@node1

[root@cdh-server ~]# ssh-copy-id root@node2

[root@cdh-server ~]# ssh-copy-id root@node3

5、关闭防火墙、selinux(所有主机)

[root@cdh-server ~]# systemctl stop firewalld

[root@cdh-server ~]# systemctl disable firewalld

[root@cdh-server ~]# sed -i '/SELINUX/s/enforcing/disabled/g' /etc/selinux/config

[root@cdh-server ~]# setenforce 0

6、安装httpd服务

cdh-server

[root@cdh-server ~]# yum -y install httpd httpd-devel

启动httpd

[root@cdh-server ~]# systemctl start httpd

配置开机自启

[root@cdh-server ~]# systemctl enable httpd

7、安装yum-utils、createrepo

[root@cdh-server ~]# yum -y install yum-utils createrepo

8、安装NTP服务(所有主机)

[root@cdh-server ~]# yum -y install ntp ntpdate

[root@node1 ~]# yum -y install ntp ntpdate

[root@node2 ~]# yum -y install ntp ntpdate

[root@node3 ~]# yum -y install ntp ntpdate

启动NTP服务

[root@cdh-server ~]# systemctl start ntpd

[root@node1 ~]# systemctl start ntpd

[root@node2 ~]# systemctl start ntpd

[root@node3 ~]# systemctl start ntpd

9、配置YUM源(所有主机)

[root@cdh-server ~]# cat >/etc/yum.repos.d/cloudera-manager.repo <<EOF

[cloudera-manager]

name=Cloudera Manager 6.3.1

baseurl=http://172.168.1.156/cloudera-repos/cm6/6.3.1/redhat7/yum

gpgcheck=0

enabled=1

EOF

10、上传资源包(cdh-server)

将下载好的软件包都上传至/var/www/html目录下面

11、安装JDK(所有主机)

[root@cdh-server ~]# yum -y install oracle-j2sdk1.8

12、配置环境变量(所有主机)

[root@cdh-server ~]# cat >>/etc/profile <<EOF

export JAVA_HOME=/usr/java/jdk1.8.0_181-cloudera

export CLASSPATH=\$CLASSPATH:\$JAVA_HOME/lib:\$JAVA_HOME/jre/lib

export PATH=\$JAVA_HOME/bin:\$JAVA_HOME/jre/bin:\$PATH:\$HOMR/bin

EOF

五、安装MySQL-5.7

cdh-server机器

1、解压Mysql压缩包

[root@cdh-server ~]# cd /var/www/html

[root@cdh-server html]# chown -R apache.apache /var/www/html

[root@cdh-server html]# tar xf mysql-5.7.27-1.el7.x86_64.rpm-bundle.tar

2、安装Mysql

[root@cdh-server html]# yum -y install libaio net-tools *.rpm

3、配置Mysql

[root@cdh-server html]# echo character-set-server=utf8 >> /etc/my.cnf

4、启动Mysql服务

[root@cdh-server html]# systemctl start mysqld

[root@cdh-server html]# systemctl enable mysqld

获取Mysql密码

[root@cdh-server html]# grep password /var/log/mysqld.log | sed 's/.*\(............\)$/\1/'

(tPlKjWa6NAy

注:(tPlKjWa6NAy为Mysql登录密码
5、创建数据库并授权

创建cm需要的库的用户

|------------------------------------|-----------|--------| | 服务名 | 数据库名 | 用户名 | | Cloudera Manager Server | scm | scm | | Activity Monitor | amon | amon | | Reports Manager | rman | rman | | Hue | hue | hue | | Hive Metastore Server | metastore | hive | | Sentry Server | sentry | sentry | | Cloudera Navigator Audit Server | nav | nav | | Cloudera Navigator Metadata Server | navms | navms | | Oozie | oozie | oozie |

[root@cdh-server html]# mysql -p

方法一(密码123456Aa.)

mysql> source initSQL.sql;

方法二(密码123456)

mysql> CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE monitor DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

mysql> set password for root@localhost = password('123456');

mysql> GRANT ALL privileges on *.* to 'root'@'%' identified by '123456';

mysql> GRANT ALL ON scm.* TO 'scm'@'%' IDENTIFIED BY '123456';

mysql> GRANT ALL ON monitor.* TO 'monitor'@'%' IDENTIFIED BY '123456';

mysql> GRANT ALL ON amon.* TO 'amon'@'%' IDENTIFIED BY '123456';

mysql> GRANT ALL ON rman.* TO 'rman'@'%' IDENTIFIED BY '123456';

mysql> GRANT ALL ON hue.* TO 'hue'@'%' IDENTIFIED BY '123456';

mysql> GRANT ALL ON metastore.* TO 'hive'@'%' IDENTIFIED BY '123456';

mysql> GRANT ALL ON sentry.* TO 'sentry'@'%' IDENTIFIED BY '123456';

mysql> GRANT ALL ON nav.* TO 'nav'@'%' IDENTIFIED BY '123456';

mysql> GRANT ALL ON navms.* TO 'navms'@'%' IDENTIFIED BY '123456';

mysql> GRANT ALL ON oozie.* TO 'oozie'@'%' IDENTIFIED BY '123456';

mysql> flush privileges;

mysql> show databases;

6、配置JDBC驱动包

[root@cdh-server html]# mkdir -p /usr/share/java/

[root@cdh-server html]# cp mysql-connector-java.jar /usr/share/java

[root@cdh-server html]# cd /usr/share/java

[root@cdh-server java]# scp mysql-connector-java.jar root@node1:/usr/share/java/

[root@cdh-server java]# scp mysql-connector-java.jar root@node2:/usr/share/java

[root@cdh-server java]# scp mysql-connector-java.jar root@node3:/usr/share/java

六、安装Cloudera Manager

cdh-server机器

1、安装Cloudera Manager

[root@cdh-server html]# yum -y install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server

2、配置本地Parcel存储库

将本地存储库cdh6目录放到httpd可访问目录/var/www/html下(前面已经做了,可忽略)

3、初始化scm库

[root@cdh-server html]# /opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm 123456Aa.

4、启动Cloudera Manager服务

[root@cdh-server html]# systemctl start cloudera-scm-server

5、查看日志

[root@cdh-server ~]# tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log

出现Started Jetty server,代表启动成功。

6、查看端口

[root@cdh-server ~]# netstat -lntup |grep 7180

7、访问Cloudera Manager

1)浏览器访问http://172.168.1.156:7180/,出现如下界面

账号密码均为admin

2)添加集群

3)这里我们选择免费版本

4)输入群集名称

5)配置需要增加的机器

6)配置存储库地址,这里选择更多选项

7)配置数据包地址

这里全部都打√

8)配置SSH登录凭据

9)安装Agents

10)处理相关警告:所有机器都要修改

  • 问题一

临时

[root@cdh-server ~]# sysctl vm.swappiness=10

永久

[root@cdh-server ~]# echo 'vm.swappiness=10'>> /etc/sysctl.conf

  • 问题二

[root@cdh-server ~]# echo never > /sys/kernel/mm/transparent_hugepage/defrag

[root@cdh-server ~]# echo never > /sys/kernel/mm/transparent_hugepage/enabled

修改启动脚本

[root@cdh-server ~]# vim /etc/rc.local

添加以下内容

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

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

11)重新运行检查

12)选择安装组件,这里选择自定义服务(根据需要选择),这里选择Hbase、HDFS、Hive、YARN、Zookeeper服务

13)自定义角色分配

14)数据库配置

检查成功后,点击继续

基本配置,不需要管,直接下一步

15)运行命令

16)安装完成,如下图

17)问题处理

1)HDFS:Java Heap Size of NameNode in Bytes

解决方法:堆大小,最小1G,建议使用4G

2)NameNode and SecondaryNameNode have different heapsizes

NameNode和SecondaryNameNode具有不同的堆大小

解决方法:群集 -->> HDFS -->> 配置 -->> 搜索 Java Heap Size

3)Memory Overcommit Validation Threshold

解决方法:主机node3上的内存被调拨过度。总内存分配额是16.0 GiB个字节,但是RAM只有15.8 GiB个字节

内存调拨为15.8/16=0.9875 > 默认值0.8,改成1.0就OK了。

4)Erasure Coding Policy Verification Test

擦除编码策略需要9个数据节点:RS-6-3-1024k。数据节点数仅为3个。

解决方法:擦除编码策略验证测试,直接抑制或者直接再添加6个节点

5)Java Heap Size of Host Monitor in Bytes

解决方法:推荐的堆大小为1.0吉字节,大于配置768.0兆字节。

6)Maximum Non-Java Memory of Host Monitor

解决方法:建议的非 Java 内存大小为 2.0 吉字节,大于配置1.2吉字节。

7)Java Heap Size of Service Monitor in Bytes

解决方法:建议的非 Java 内存大小为 2.0 吉字节,大于配置1.8吉字节。

8)Maximum Non-Java Memory of Service Monitor

解决方法:建议的非 Java 内存大小为12.0吉字节,大于配置11.2吉字节。

至此,Linux搭建Cloudera Manager+CDH6.3.1环境完毕。
继续阅读

历史上的今天

1 月
13

赞(1)
未经允许不得转载:工具盒子 » Linux搭建Cloudera Manager+CDH6.3.1环境