本文主要包括:
CM离线安装
CDH
HBase
jdk1.8
mysql 安装
yum 仓库配置
httpd 配置
CDH 安装遇到的坑
cdh 6.2 下载
链接: https://pan.baidu.com/s/1JAhno9pi0jpsllaL4Mh4_A?pwd=ikun 提取码: ikun
事前准备
至少三台以上机器,本文以三台机器为演示,分别为:10.0.0.10,10.0.0.11,10.0.0.12
修改三台机器的hostname
分别为master、node1 、node2
方法一
1 | hostnamectl set-hostname master |
方法二
1 | vi /etc/hostname |
配置三台机器的hosts,三台机器的hosts 相同
1 | vi /etc/hosts |
配置master 免密登录两台node
在master 节点上生成公钥和私钥
ssh-keygen
cd ~/.ssh/
将 id_rsa.pub中的内容,分别复制到两台node 服务器中的~/.ssh/authorized_keys
中,在master 中分别登录一次node服务器,保存验证。方便后面可以直接免密登录。
关闭三台服务器的防火墙
1 | systemctl stop firewalld ## 关闭防火墙 |
关闭SELINUX
只需要关闭一个需要配置http文件服务的虚拟机就可以
1 | vi /etc/selinux/config |
这里改完了需要重启虚拟机
这里如果不关闭SELINUX,下面视同httpd访问文件的时候,会报错:
You don’t have permission to access upload/ on this server
配置NTP服务(所有节点)
修改时区(改为中国标准时区)
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
安装ntp
yum -y install ntp
ntp主机配置 vi /etc/ntp.conf
在文件里新增server ntp.aliyun.com,并把原始的server给注释掉
重启service ntpd restart
离线安装rpm
先使用一台机器,下载rpm 包及依赖
下载rpm 及依赖包
1 | yumdownloader --resolve --destdir=/home/zk httpd |
离线安装rpm 包时,可以使用如下命令
1 | rpm -Uvh *.rpm --force --nodeps |
1 | yum install --downloadonly --downloaddir=/root/offlinerpms package_name |
注意:rpm包如果已安装则不进行下载,这是将install
替换为 reinstall
1 | yumdownloader --resolve --destdir=/root/offlinerpms package_name |
下载好之后传输到离线服务器,rpm -ivh *.rpm
进行安装,如果有缺少的依赖,继续下载传输安装即可
配置本地服务器(选定任意一台主机即可)
配置的本地文件服务器的目的是为了,让之后其他节点可以从这直接下载
我选用了master 服务器:10.0.0.10为文件服务器
如果使用离线安装,可以直接使用rpm -Uvh *.rpm --force --nodeps
1 | yum install -y httpd ##安装httpd |
这里注意,启用httpd服务以后,防火墙和selinux必须都关闭,否则,就会报如下错误:
You don't have permission to access upload/ on this server
生成yum源的描述的目录信息 可以让其他节点知道到这里下载
1 | yum install -y createrepo ##下载createrepo命令 |
在所有节点上添加yum源的配置文件
1 | cat >> /etc/yum.repos.d/cm6.repo << EOF |
查看yum配置源是否生效
1 | yum clean all && yum repolist && yum makecache |
JDK安装
所有服务器都安装
yum install -y oracle-j2sdk1.8-1.8.0+update181-1.x86_64
离线安装
rpm -ivh oracle-j2sdk1.8-1.8.0+update181-1.x86_64.rpm
从前面下载好的mysql-connector-java-5.1.49.jar文件上传至master节点上的/usr/share/java/目录下并重命名为mysql-connector-java.jar(如果/usr/share/java/目录不存在,需要手动创建):
如果/usr/share/java不存在,自行创建
1 | cd /usr/share/java |
mysql 安装
任选一台机器安装mysql ,也可以不在这三台机器当中安装。
本文将myslq 安装在master 机器中。
本文安装的是mysql 5.7 使用的是离线安装包mysql-5.7.19-1.el7.x86_64.rpm-bundle.tar
tar -xvf mysql-5.7.19-1.el7.x86_64.rpm-bundle.tar
查看系统是否自带安装 MySQL和mariadb。
1 | rpm -qa | grep mysql |
卸载
1 | rpm -e mysql-libs-5.1.52-1.el6_0.1.x86_64 // 普通删除模式 |
1 | rpm -Uvh *.rpm --force --nodeps |
查看mysql 是否安装成功
mysql -v
mysql有一个配置文件叫做my.cnf,我们会在配置文件中指定端口,数据存放目录,以及编码格式。输入如下命令:
vi /etc/my.cnf
1 | [mysqld] |
启动
systemctl start mysqld
查看密码
sudo grep ‘temporary password’ /var/log/mysqld.log
修改密码 及修改root用户能被任何主机访问
mysql -h 127.0.0.1 -u root -p
1 | SET PASSWORD = PASSWORD('12345678Qq!'); |
创建CDH所需要的数据库
根据所需要安装的服务参照下表创建对应的数据库以及数据库用户,数据库必须使用utf8编码,创建数据库时要记录好用户名及对应密码:
1 | -- scm |
clouder server 与agent安装
安装cm6相关依赖(所有节点)
yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb httpd mod_ssl
安装Cloudera Manager Server
这一步只需要在CM Server节点上操作。
执行下面的命令:
yum install cloudera-manager-daemons cloudera-manager-agent cloudera-manager-server
配置本地Parcel存储库
Cloudera Manager Server安装完成后,进入到本地Parcel存储库目录:
cd /opt/cloudera/parcel-repo ## Cloudera Manager Server完成以后,该目录就已经生成了
将第一部分下载的CDH parcels文件上传至该目录下,然后执行修改sha文件:
mv /data6/upload/parcels/* /opt/cloudera/parcel-repo/
mv CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel.sha1 CDH-6.2.0-1.cdh6.2.0.p0.967373-el7.parcel.sha
设置Cloudera Manager 数据库
Cloudera Manager Server包含一个配置数据库的脚本
mysql数据库与CM Server是同一台主机
执行命令:/opt/cloudera/cm/schema/scm_prepare_database.sh mysql scm scm
mysql数据库与CM Server不在同一台主机上
执行命令:/opt/cloudera/cm/schema/scm_prepare_database.sh mysql -h <mysql-host-ip> --scm-host <cm-server-ip> scm scm
执行如下命令:
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql -uroot -h master -p'12345678Qq!' --scm-host master scm scm scm
安装CDH节点
启动Cloudera Manager Server服务
systemctl start cloudera-scm-server
然后等待Cloudera Manager Server启动,可能需要稍等一会儿,可以通过命令tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log
去监控服务启动状态。
当看到INFO WebServerImpl:com.cloudera.server.cmf.WebServerImpl: Started Jetty server.日志打印出来后,说明服务启动成功,可以通过浏览器访问Cloudera Manager WEB界面了。
访问Cloudera Manager WEB界面
- 打开浏览器,访问地址:
http://10.0.0.10:7180
,默认账号和密码都为admin
首先是Cloudera Manager的欢迎页面,点击页面右下角的【继续】按钮进行下一步
勾选接受条款,点击【继续】进行下一步
版本选择,这里我就选择免费版了
选择版本以后会出现第二个欢迎界面,不过这个是安装集群的欢迎页
选择主机,这一步是要搜索并选择用于安装CDH集群的主机,在主机名称后面的输入框中输入各个节点的hostname,中间使用英文逗号分隔开,然后点击搜索,在结果列表中勾选要安装CDH的节点即可
由于已经安装完成,这里盗用一下网上的图片
指定存储库Cloudera Manager Agent这里选择自定义,填写上面使用httpd搭建好的Cloudera Manager YUM 库URL
CDH and other software 如果我们之前的【配置本地Parcel存储库】步骤操作无误的话,这里会自动选择【使用Parcel】,并加载出CDH版本,但是这里一直没有识别出来,还报了如下错误
找到问题原因:是因为parcel文件的.sha1需要改成.sha,修改完以后,就能识别出来了
这里一开始还跟着教程先用yum安装了cloudera-manager-agent,安装完了更报错,这里不要安装
- JDK安装选项,这里jdk已经安装了,不要勾选
- SSH登录配置,用于配置集群主机之间的SSH登录,填写root用户的密码,根据集群配置填写合适的【同时安装数量】值即可
- 安装Agent
cloudera-agent一键卸载脚本
yum remove cloudera-manager-daemons cloudera-manager-agent
安装Parcels
主机检查,Inspect Network Performance 和Inspect Network Performance需要点击的,一开始以为是自动检查,一直等着
然后标黄了几个选项Cloudera 建议将 /proc/sys/vm/swappiness 设置为最大值 10。当前设置为 30。使用 sysctl 命令在运行时更改该设置并编辑 /etc/sysctl.conf,以在重启后保存该设置。您可以继续进行安装,但 Cloudera Manager 可能会报告您的主机由于交换而运行状况不良。
已启用透明大页面压缩,可能会导致重大性能问题。请运行echo never > /sys/kernel/mm/transparent_hugepage/defrag和echo never > /sys/kernel/mm/transparent_hugepage/enabled以禁用此设置,然后将同一命令添加到 /etc/rc.local 等初始化脚本中,以便在系统重启时予以设置。
安装上面的提示执行即可;
但是有一点,报找不到java,这个有点不知道怎么解决了,这里先跳过了,点击I understand this risks
安装CDH集群
选择服务类型
这里我选择自定义服务,然后选择很多组件,hdfs、zk、yarn、hbase、kafka等等
角色分配
这里会有默认设置,然后把需要手动设置的手动设置一下,点击继续
数据库设置
这里根据要求设置即可
CDH日志清理
随着CM运行的时间越来越长,它所产生的日志文件也越来越大,需要定期去清理这些日志文件
在网上找了一个博客,用了他的自动化脚本,然后CM的监控页面都出问题了,无语了
以下是脚本:
1 | #!/bin/bash |
执行完成之后,监控页面如下图:
解决办法:
1 | mv cloudera-host-monitor/ cloudera-host-monitor_BAK |
然后重启Cloudera Management Service,然后就不报错了,但是,都是无数据了,也好理解,都删除了嘛。CM监控页面无数据,等待了一会,页面现实正常
cloudera-scm-agent 主机运行状况不佳
删除agent目录下面的cm_guid文件,并重启失败节点的agent服务恢复。
cm_guid文件的内容大概是uuid,用于唯一标示agent隶属于哪一个server。
如图cd到每台主机的目录/var/lib/cloudera-scm-agent下,把cm_guid文件 删除。然后重启代理服务节点
命令: service cloudera-scm-agent restart
重启之后即可
之后下一步下一步即可
等待安装完成
本文作者: NUK
最后更新: 2024年11月12日 17:20:39
本文链接: http://www.uilucky.com/post/5a1d538c.html
版权声明: 本作品采用 CC BY-NC-SA 4.0 许可协议进行许可,转载请注明出处!