一、大数据环境发展历史
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
- 2020Linux系统LVM磁盘扩容(XFS文件系统)
- 2020Linux系统LVM磁盘扩容(EXT4文件系统) CDH最后更新:2022-11-25