centos7通过CDH部署Hadoop
一、角色分配及安装环境准备
资料下载地址:
链接: 百度网盘
1.机器及机器角色规划
2.关闭防火墙及SELinux
3.安装依赖(server)
yum install -y cyrus-sasl-plain cyrus-sasl-gssapi portmap fuse-libs bind-utils libxslt fuseredhat-lsb-core
createrepo deltarpm python-deltarpm mod_ssl openssl-devel python-psycopg2 MySQL-python
4.配置hosts解析
192.168.1.136 hadoop01
192.168.1.137 hadoop02
192.168.1.138 hadoop03
5.配置Cloudera Manager yum仓库(server)
#服务端配置
yum install nginx -y
mkdir -p /usr/share/nginx/html/cm6/ mv *.rpm /usr/share/nginx/html/cm6/ createrepo -pdo /usr/share/nginx/html/cm6/ /usr/share/nginx/html/cm6/ vim /etc/nginx/nginx.conf root /usr/share/nginx/html/cm6/;
autoindex on;
systemctl restart nginx
systemctl enable nginx
#客户端配置 vim /etc/yum.repos.d/cm.repo [cm-repo] name=cm baseurl=http://192.168.1.136 gpgcheck=0 enabled=1 yum repolist cm-repo cm 6 yum list | grep cloudera
6.创建cloudera-scm用户(server)
useradd cloudera-scm
echo "cloudera-scm" |passwd --stdin cloudera-scm
echo "cloudera-scm ALL=(root)NOPASSWD:ALL" >> /etc/sudoers
7.安装MySQL(集群内安装)
参考:https://www.cnblogs.com/panwenbin-logs/p/11425652.html
create database scm DEFAULT CHARACTER SET utf8;
grant all PRIVILEGES on *.* TO 'root'@'%' IDENTIFIED BY 'Qwer@123' WITH GRANT OPTION;
grant all PRIVILEGES on *.* TO 'root'@'localhost' IDENTIFIED BY 'Qwer@123' WITH GRANT OPTION;
grant all PRIVILEGES on *.* TO 'root'@'hadoop01' IDENTIFIED BY 'Qwer@123' WITH GRANT OPTION;
flush privileges;
8.所有节点安装jdk
yum install oracle-j2sdk1.8 -y #不要自定义安装
二、安装CM Server及Agent服务
1.安装服务
yum install -y enterprise-debuginfo-6.2.1-1426065.el7.x86_64
yum install -y cloudera-manager-server-6.2.1-1426065.el7.x86_64
yum install -y cloudera-manager-server-db-2-6.2.1-1426065.el7.x86_64
cp mysql-connector-java-5.1.40.jar /opt/cloudera/cm/lib
/opt/cloudera/cm/schema/scm_prepare_database.sh -h 192.168.1.136 mysql scm root Qwer@123 # 主机 database类型 数据库名称 账号 密码
cat /etc/cloudera-scm-server/db.properties #初始后保存连接的相关信息
systemctl start cloudera-scm-server
netstat -tnlp #7180端口
2.配置本地parcel包
#必须要在数据库初始化后执行
cp CDH-6.2.1-* allkeys.asc /opt/cloudera/parcel-repo
mv CDH-6.2.1-1.cdh6.2.1.p0.1425774-el7.parcel.sha1 CDH-6.2.1-1.cdh6.2.1.p0.1425774-el7.parcel.sha #删除结尾1
3.访问控制台
4.配置parcel
回到主页
修改更新频率为1分钟,默认1个小时
等待一分钟,确保出现torrent文件
5.创建集群
根据企业实际情况选择对应的版本,因为实验选择免费版本
定义集群名称
定义主机名称
其他会自动安装
6.检查集群
7.修复问题
临时生效:
sysctl -w vm.swappiness=10
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
永久生效:
echo "vm.swappiness=10" >> /etc/sysctl.conf
echo "echo never > /sys/kernel/mm/transparent_hugepage/defrag" >> /etc/rc.local
echo "echo never > /sys/kernel/mm/transparent_hugepage/enabled" >> /etc/rc.local
8.新增主机
其余步骤与上面类似,不在赘述
三、安装CM service服务
1.CM service服务简介
可作为一组角色实施各种管理功能
1. Activity Monitor:收集关于MapReduce服务运行的活动的信息。默认情况下不添加此角色,实际生产环境也是不需要的。
2. Host Monitor:收集有关主机的运行状况和指标信息。
3. Service Monitor:从YARN和Impala服务中收集关于服务和活动信息的健康和度量信息。
4. Event Server:聚合组件的事件并将其用于警报和搜索。
5. Alert Publisher :为特定类型的事件生成和提供警报,实际情况下用的也少。
2.创建服务所需的相关目录(server)
mkdir -p /var/lib/cloudera-host-monitor
mkdir /var/lib/cloudera-service-monitor
chown -R cloudera-scm:cloudera-scm /var/lib/cloudera-host-monitor
chown -R cloudera-scm:cloudera-scm /var/lib/cloudera-service-monitor/
3.安装
安装,稍等一会查看是否有监控数据
四、安装HDFS服务
定义相关配置默认即可
所有步骤执行完成
优dfs.permissions化配置否则会因为权限问题不能再hdfs中创建目录和文件
手动测试写入数据
没有问题,安装成功
五、安装YARN服务
无特殊配置,参考上一步按提示填入对应的内容,其他默认即可
验证
cd /opt/cloudera/parcels/CDH-6.2.1-1.cdh6.2.1.p0.1425774/lib/hadoop-mapreduce/
hadoop jar hadoop-mapreduce-examples-3.0.0-cdh6.2.1.jar pi 2 4
六、安装 Hive(选择带需要ZK)
1.数据中创建Hive库
2.拷贝mysql驱动
cp mysql-connector-java-5.1.40.jar /opt/cloudera/parcels/CDH/lib/hive/lib/
3.集群安装服务
验证
#验证 hive #执行命令 select from_unixtime(1583781807, 'yyyy-MM-dd');
#UI
http://hadoop01:10002/
https://docs.cloudera.com/documentation/enterprise/6/6.2/topics/introduction.html
"一劳永逸" 的话,有是有的,而 "一劳永逸" 的事却极少