Centos7使用CDH6.3.0安装大数据集群

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: Centos7使用CDH6.3.0安装大数据集群

修改网络和主机名

cdh6-master

[root@cdh6-master ~]# hostnamectl set-hostname cdh6-master

[root@cdh6-master ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=bdf6fb11-50f4-403a-8ba6-b9dca61a591e
DEVICE=ens33
ONBOOT=yes

IPADDR=192.168.200.125
NETMASK=255.255.255.0
GATEWAY=192.168.200.2
DNS1=8.8.8.8

cdh6-slave1

[root@cdh6-slave1 ~]# hostnamectl set-hostname cdh6-slave1

[root@cdh6-slave1 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=e2b4e53e-5a4d-4b20-b6ff-39a67539214a
DEVICE=ens33
ONBOOT=yes

IPADDR=192.168.200.126
NETMASK=255.255.255.0
GATEWAY=192.168.200.2
DNS1=8.8.8.8

cdh6-slave2

[root@cdh6-slave2 ~]# hostnamectl set-hostname cdh6-slave2

[root@cdh6-slave2 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=a15136a1-c83b-4750-9ff3-2ca779e39818
DEVICE=ens33
ONBOOT=yes

IPADDR=192.168.200.127
NETMASK=255.255.255.0
GATEWAY=192.168.200.2
DNS1=8.8.8.8

关闭防火墙和SELinux

vi /etc/hosts

192.168.200.125        cdh6-master
192.168.200.126        cdh6-slave1
192.168.200.127        cdh6-slave2
# 关闭防火墙
systemctl stop firewalld
# 禁止防火墙开机自启
systemctl disable firewalld
# 临时生效
setenforce 0
# 永久生效
修改 /etc/selinux/config 下的 SELINUX=disabled 

SSH免密登陆

cdh6-master节点(只需要主节点能免密登陆其它节点以及自己就可以了):

# 输入之后一直回车
ssh-keygen    

# 赋值秘钥到其它节点包括自己
ssh-copy-id   cdh6-master
ssh-copy-id   cdh6-slave1
ssh-copy-id   cdh6-slave2

注意事项:如果出现 ssh-copy-id: command not found 需要执行该命令(yum -y install openssh-clients

集群时间同步

所有节点

#全部节点安装ntp
rpm -qa |grep ntpd
###没有安装ntp,则需要安装此服务
yum install -y ntp

cdh6-master

vi /etc/ntp.conf
###去掉这个注释,将地址改成网段地址
restrict 192.168.200.2 mask 255.255.255.0 nomodify notrap

###注释掉这几个
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst

###添加一下内容
server 127.127.1.0
fudge  127.127.1.0  stratum  10

vi /etc/sysconfig/ntpd
###加入下面一句话,用于配置boot时间和系统时间同步
SYNC_HWCLOCK=yes
###可选,选择上海时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

cdh6-slave1cdh6-slave2

输入 crontab -e 命令进入编辑状态,然后输入一下内容(该任务保存在目录/var/spool/cron 下,必须用root用户才能看到  )
* * * * * /usr/sbin/ntpdate        cdh6-master

启动所有节点的ntp

service ntpd start

chkconfig ntpd on

安装repo、GPG key、jdk

所有节点。
# 安装repo,如果没有wget就yum install -y wget
wget https://archive.cloudera.com/cm6/6.3.0/redhat7/yum/cloudera-manager.repo -P /etc/yum.repos.d/

# 导入GPG key
rpm --import https://archive.cloudera.com/cm6/6.3.0/redhat7/yum/RPM-GPG-KEY-cloudera
# 安装jdk
yum install -y oracle-j2sdk1.8
# 配置java环境变量
vi /etc/profile
# 最后面加上
export JAVA_HOME=/usr/java/jdk1.8.0_141-cloudera
export PATH=$PATH:$JAVA_HOME/bin
# 生效环境变量
source /etc/profile

上传cdh资源包到cdh6-master节点

cdh6-slave1安装MySQL

cdh-slave1节点。
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

rpm -ivh mysql-community-release-el7-5.noarch.rpm

yum update

yum install -y mysql-server

systemctl start mysqld

systemctl enable mysqld
###初始化Mysql

/usr/bin/mysql_secure_installation

[...]
Enter current password for root (enter for none):
OK, successfully used password, moving on...
[...]
Set root password? [Y/n] Y
New password:
Re-enter new password:
Remove anonymous users? [Y/n] Y
[...]
Disallow root login remotely? [Y/n] N
[...]
Remove test database and access to it [Y/n] Y
[...]
Reload privilege tables now? [Y/n] Y
All done!

安装MySQL JDBC Driver

所有节点。
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.tar.gz

tar -zxvf mysql-connector-java-5.1.46.tar.gz

mkdir -p /usr/share/java/

cd mysql-connector-java-5.1.46

cp mysql-connector-java-5.1.46-bin.jar /usr/share/java/mysql-connector-java.jar

注意:

一定要将mysql-connector-java-5.1.46-bin.jar改名为mysql-connector-java.jar,不然初始化cm的时候无法识别。

创建数据库

在安装MySQL数据库的 cdh6-slave1节点。

需要建的库有scm、amon、rman、hue、metastore、sentry、nav、navms、oozie

CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

CREATE DATABASE hive DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

开放远程权限:

mysql> use mysql;

mysql> grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;

mysql> grant all privileges on *.* to 'scm'@'master.cdh6' identified by '123456' with grant option;

mysql> flush privileges;

离线安装cdh

下载安装包

# 创建文件夹
mkdir -p /opt/cloudera/parcel-repo/
# 将CHD6相关的Parcel包放到主节点的/opt/cloudera/parcel-repo/目录中,如果没有此目录,可以自己创建。
CDH-6.3.0-1.cdh6.3.0.p0.537114-el7.parcel
CDH-6.3.0-1.cdh6.3.0.p0.537114-el7.parcel.sha256
manifest.json

CM

cloudera-manager的rpm安装包就直接rpm -ivh安装即可,先解压cloudera-manager-daemons-6.3.0-1281944.el7.x86_64.rpm。

CDH

注意:

CDH-6.3.0-1.cdh6.3.0.p0.1279813-el7.parcel.sha256重命名为CDH-6.3.0-1.cdh6.3.0.p0.1279813-el7.parcel.sha,这点必须注意否则,系统会重新下载。

然后,CDH-6.3.0-1.cdh6.3.0.p0.1279813-el7.parcel.sha中的秘钥修改为对应版本的秘钥。

解压CM安装包

环境依赖安装:

yum install -y perl

yum install -y bind-utils psmisc libxslt cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs httpd mod_ssl openssl-devel python-psycopg2 MySQL-python /lib/lsb/init-functions libpq.so.5

所有节点:

rpm -ivh cloudera-manager-daemons-6.3.0-1281944.el7.x86_64.rpm

rpm -ivh 

仅仅在master节点:

rpm -ivh

修改所有节点的CM主机指向

vi /etc/cloudera-scm-agent/config.ini
# 将server_host修改为CM-Server所在的主机名
server_host=cdh6-master

初始化数据库

我这里MySQL安装在 cdh6-slave1节点,cm-server安装在 cdh6-master节点。
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql -h cdh6-slave1 --scm-host cdh6-master scm scm

注意事项,如果MySQL和cm-server在一台服务器上:

/opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm

启动cdh6-master节点的cloudera-scm-server

systemctl start cloudera-scm-server

等待server启动完毕之后,再启动所有节点的cloudera-scm-agent

systemctl start cloudera-scm-agent

安装大数据组件

1.png

2.png

3.png

4.png

5.png

6.png

7.png

8.png

9.png

10.png

11.png

12.png

13-安装Zookeeper-1.png

13-安装Zookeeper-2.png

13-安装Zookeeper-3.png

13-安装Zookeeper-4.png

13-安装Zookeeper-5.png

13-安装Zookeeper-6.png

13-安装Zookeeper-7.png

14.png

可能会遇到的问题

虚拟内存设置

Cloudera 建议将 /proc/sys/vm/swappiness 设置为 0。当前设置为 60。使用 sysctl 命令在运行时更改该设置并编辑 /etc/sysctl.conf 以在重启后保存该设置。您可以继续进行安装,但可能会遇到问题,Cloudera Manager 报告您的主机由于交换运行状况不佳。以下主机受到影响:

临时解决

通过echo 0 > /proc/sys/vm/swappiness即可解决。

永久解决

sysctl -w vm.swappiness=0

echo vm.swappiness = 0 >> /etc/sysctl.conf

大内存设置

大内存页禁用

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

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

升级软件依赖版本

Starting with CDH 6, PostgreSQL-backed Hue requires the Psycopg2 version to be at least 2.5.4, see the documentation for more information. This warning can be ignored if hosts will not run CDH 6, or will not run Hue with PostgreSQL. The following hosts have an incompatible Psycopg2 version of '2.5.1'

解决方法:可以忽略。

yum install python-pip

pip install --upgrade psycopg2

安装Parcel提示主机运行状况不良

解决方法

删除agent目录下面的cm_guid文件,并重启失败节点的agent服务恢复。

find / -name cm_guid
/var/lib/cloudera-scm-agent/cm_guid

删除它/var/lib/cloudera-scm-agent/cm_guid

###重启agent
systemctl cloudera-scm-agent restart

关于博主

欢迎关注博主个人博客:www.lzhpo.com

相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
5天前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
54 20
|
28天前
|
存储 Shell 网络安全
Centos7.9安装openldap
Centos7.9安装openldap
52 16
|
30天前
|
数据可视化 Linux 应用服务中间件
Centos7.9安装phpldapadmin
Centos7.9安装phpldapadmin
59 15
|
1月前
|
网络协议 Java 应用服务中间件
centos7环境下tomcat8的安装与配置
本文介绍了在Linux环境下安装和配置Tomcat 8的详细步骤。首先,通过无网络条件下的文件交互软件(如Xftp 6或MobaXterm)下载并解压Tomcat安装包至指定路径,启动Tomcat服务并测试访问。接着,修改Tomcat端口号以避免冲突,并部署Java Web应用项目至Tomcat服务器。最后,调整Linux防火墙规则,确保外部可以正常访问部署的应用。关键步骤包括关闭或配置防火墙、添加必要的端口规则,确保Tomcat服务稳定运行。
|
1月前
|
存储 分布式计算 Hadoop
Centos7.9安装kerberos
Centos7.9安装kerberos
82 25
|
2月前
|
存储 负载均衡 监控
揭秘 Elasticsearch 集群架构,解锁大数据处理神器
Elasticsearch 是一个强大的分布式搜索和分析引擎,广泛应用于大数据处理、实时搜索和分析。本文深入探讨了 Elasticsearch 集群的架构和特性,包括高可用性和负载均衡,以及主节点、数据节点、协调节点和 Ingest 节点的角色和功能。
80 0
|
3月前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第16天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括配置系统源、安装 SQL Server 2019 软件包以及数据库初始化,确保 SQL Server 正常运行。
156 4
|
4月前
|
缓存 Linux 编译器
【C++】CentOS环境搭建-安装log4cplus日志组件包及报错解决方案
通过上述步骤,您应该能够在CentOS环境中成功安装并使用log4cplus日志组件。面对任何安装或使用过程中出现的问题,仔细检查错误信息,对照提供的解决方案进行调整,通常都能找到合适的解决之道。log4cplus的强大功能将为您的项目提供灵活、高效的日志管理方案,助力软件开发与维护。
134 0
|
5月前
|
缓存 Linux 开发工具
CentOS7 安装KDE报错的解决方法:Loaded plugins:fastestmirror,langpacks There is no installed group.
CentOS7 安装KDE报错的解决方法:Loaded plugins:fastestmirror,langpacks There is no installed group.
265 0
|
6月前
|
网络协议 Linux
CentOS7 yum安装报错“Could not resolve host: mirrorlist.centos.org;"之解决办法(换源)
CentOS7 yum安装报错“Could not resolve host: mirrorlist.centos.org; Name or service not known“之解决办法(换源)