type
status
date
slug
summary
tags
category
icon
password
😀
这里写文章的前言: CDH搭建,减少了hadoop集群生态的维护

📝 CDH端口开放

端口号
组件
备注
7180
CDH web UI
9870
HDFS web UI
8088
Yarn web UI
19888
Historyserver web UI
8080
8888
Hue(未优化)
8889
Hue(优化)
3306
MySQL
6379
Redis
9092
kafka
2181
zk
4040
Spark
18088
Spark
10000
Hiveserve2
10002
Hive
11000
Oozie
51000
Sentry
8020
HDFS

修改主机hosts配置

host

比如这里的配置,每台集群的机器都需要配置, 具体自身的ip和hostname等进行配置

ssh免密配置

配置所有机器之间相互的免密 CDH的服务是有server和agent概念的,agent收集到往server进行汇报情况
执行ssh-keygen -t rsa并敲三次回车,会在我们的/root/.ssh目录下生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
 
将公钥拷贝到免密登录的目标机器上
ssh-copy-id hadoop102
ssh-copy-id hadoop103
ssh-copy-id hadoop104
 
每台机器上重复ssh等操作
 

集群同步脚步

vim xsync : 将下面的脚步内容给复制到 xsync 中
chmod u+x xsync : 复制完值,给脚步加上对应的权限

同步执行指令脚步

chmod u+x xcall.sh
 

防火墙检测是否关闭

查看状态: sudo systemctl status firewalld
禁用: sudo systemctl disable firewalld
停止: sudo systemctl disable firewalld
 

检查hostname是否成功

hostname
hostnamectl status

禁用SELinux mode

安全增强的Linux (SELinux)允许通过策略设置访问控制。如果在部署CDH时遇到困难,请在将CDH部署到集群之前,在每个主机上将SELinux设置为permissive模式
getenforce
如果输出结果为Permissive 或Disabled
  1. 打开 /etc/selinux/config 文件
  1. 将SELINUX = enforcing 这一行改为 SELINUX= permissive
  1. 保存并关闭文件
  1. 重新启动系统或运行 setenforce 0 命令来立即禁用 SELinux
 

禁用透明大页配置

在每台服务器上分别执行

启动NTP服务

CDH要求在集群中的每台机器上配置一个网络时间协议(NTP)服务。大多数操作系统使用时间同步的ntpd服务。 注:RHEL 7兼容的操作系统默认使用chronyd而不是ntpd。如果chronyd正在运行,Cloudera Manager将使用它来确定主机时钟是否同步。否则,Cloudera Manager使用ntpd
 

yum需要安装的源

yum源工具安装

yum -y install yum-utils createrepo
 

导入 cm 资源包

创建/var/www/html/cm文件夹
将资料包中cm文件夹下的文件放入/var/www/html/cm文件夹中
 

创建 repo

使用createrepo命令创建本地yum源;在/etc/yum.repos.d/文件夹下创建新的yum repo文件
 
配置了hosts文件的情况下我们可以直接使用hadoop102作为域名访问
 

清除缓存

清除缓存并建立新的元数据缓存
 
 

CM及依赖组件安装

java环境

xcall yum -y install oracle-j2sdk1.8.x86_64
配置java的环境变量,因为我们在上面已经把/etc/profile中的内容追加到/root/.bashrc中,所以我们现在只需要配置/root/.bashrc文件即可
vim /root/bin/setjavahome.sh

mysql安装

 
InnoDB log files 做备份
 
/etc/my.cnf文件修改
 
初始化mysql
配置my.cnf完成后,启动MySQL;需要注意:
  1. 因为当前无密码,所以启动时直接回车
  1. Disallow root login remotely 选项需要输入 N , 这样 root 用户才能远程访问
 
将JDBC的jar放入到/usr/share/java文件夹中
 
创建各用户数据库(注意hive的数据库叫metastore)
Service
Database
User
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
 

通过yum安装daemons,agent,server

 
 

配置本地Parcel存储库

 
 
 

参数配置

  • dfs.client.use.datanode.hostname
  • yarn.nodemanager.resource.cpu-vcores
  • yarn.scheduler.maximum-allocation-vcore
  • yarn.scheduler.maximum-allocation-mb
  • yarn.nodemanager.resource.memory-mb
  • spark.dynamicAllocation.enabled
 
调度相关参数设置:
yarn.scheduler.capacity.root.queues yarn.scheduler.capacity.root.capacity yarn.scheduler.capacity.root.spark.capacity yarn.scheduler.capacity.root.hive.capacity
 
 
 
 
 
 

🤗 总结归纳

📎 参考文章

 
💡
有关文章的问题,欢迎您在底部评论区留言,一起交流~