大数据平台环境搭建傻瓜式说明书.docx

上传人:牧羊曲112 文档编号:1906405 上传时间:2022-12-25 格式:DOCX 页数:32 大小:2.43MB
返回 下载 相关 举报
大数据平台环境搭建傻瓜式说明书.docx_第1页
第1页 / 共32页
大数据平台环境搭建傻瓜式说明书.docx_第2页
第2页 / 共32页
大数据平台环境搭建傻瓜式说明书.docx_第3页
第3页 / 共32页
大数据平台环境搭建傻瓜式说明书.docx_第4页
第4页 / 共32页
大数据平台环境搭建傻瓜式说明书.docx_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《大数据平台环境搭建傻瓜式说明书.docx》由会员分享,可在线阅读,更多相关《大数据平台环境搭建傻瓜式说明书.docx(32页珍藏版)》请在三一办公上搜索。

1、Cloudera大数据平台环境搭建(CDH5.13.1版)版本v1.0作者郭维忠发布日期2018-03-10Cloudera大数据平台环境搭建(CDH5.13.1)目录Cloudera大数据平台环境搭建1(CDH5.13.1版)11.基础环境41.1.软件环境41.2.配置规划41.3.所需要的软件资源41.4.修改机器名(所有节点)51.5.设置防火墙(所有节点)51.6.配置免密码登录SSH61.7.关闭SELINUX(所有节点)81.8.修改Linux内核参数(所有节点)81.9.其他安装与配置(所有节点)101.10.配置NTP服务101.11.安装oracle JDK1.8 (所有节

2、点)121.12.Mysql安装(主节点)132.安装CM152.1.传包,解包152.2.创建数据库152.3.创建用户162.4.制作本地YUM源162.5.拷贝jar包172.6.修改cloudera-scm-agent配置172.7.启动CM Server和Agent182.8.访问CM183.安装CDH183.1.登录后界面183.2.选择CM版本193.3.指定主机203.4.选择CDH版本213.4.1.出现 “主机运行状态不良”错误223.5.检查主机正确性233.6.选择安装的服务233.7.角色分配243.8.数据库设置243.8.1.测试连接报错:253.9.群集设置26

3、3.10.开始安装283.11.安装完成293.11.1.警告信息:294.常见错误314.1.初始化数据库错误:314.2.未能连接到 Host Monitor32模板发布部门:技术研发管理部过程与质量管理部第32页/共32页模板编号:SD-TEM-01-2013111. 基础环境1.1. 软件环境本文将介绍Centos7.4 离线安装CDH和Cloudera Manager过程,软件版本如下:NO.软件名称版本1.操作系统Centos7.4 64 位2.JDKjdk-8u151-linux-x643.Clouder Manager5.13.14.CDH5.13.15.数据库Mysql 5.

4、76.JDBCmysql-connector-java-5.1.43.jar1.2. 配置规划本次安装共5台服务器,服务器配置及用途如下:NO.机器名称内网IP配置用途1.node168172.16.3.1688C/32Gb/1TB主,CM,MysqlDB2.node169172.16.3.1698C/32Gb/1TB从3.node170172.16.3.1708C/32Gb/1TB从4.node171172.16.3.1718C/32Gb/1TB从5.node172172.16.3.1728C/32Gb/1TB从1.3. 所需要的软件资源1) JDK环境:JDK版本:1.8.0_151 jd

5、k-8u151-linux-x64.rpm下载地址:2) CM包:CM版本:5.13.1 cloudera-manager-centos7-cm5.13.1_x86_64.tar.gz下载地址:3) CDH包CDH版本:5.13.1,CDH-5.13.1-1.cdh5.13.1.p0.2-el7.parcel; CDH-5.13.1-1.cdh5.13.1.p0.2-el7.parcel.sha1; manifest.json下载地址:4) JDBC连接jar包:jar包版本:5.1.43, mysql-connector-java-5.1.43.jar下载地址: 1.4. 修改机器名(所有节

6、点)1) 修改机器名称# hostnamectl set-hostname xxx /设置机器名#hostname / 查看本机名这种方式,在Centos7中可以永久性改变主机名称。2) 每个节点机器,都要配置hosts# vi /etc/hosts内容都改为:127.0.0.1 localhost /建议保留此行172.16.3.168 node168172.16.3.169 node169172.16.3.170 node170172.16.3.171 node171172.16.3.172 node1721.5. 设置防火墙(所有节点)注:为了简便,可以先关闭防所有节点火墙,安装完成后,

7、再按照下面步骤设置。防火墙常用命令:# firewall-cmd -state(查询防火墙状态) #systemctl stop firewalld.service (关闭防火墙) #systemctl start firewalld.service (开启防火墙)#systemctl disable firewalld.service (禁止firewall开机启动) 设置防火墙策略,在所有节点执行下面脚本(执行前要启动防火墙):/集群机器间可以相互访问firewall-cmd -permanent -add-rich-rule=rule family=ipv4 source address

8、=172.16.3.168 port protocol=tcp port=0-65535 acceptfirewall-cmd -permanent -add-rich-rule=rule family=ipv4 source address=172.16.3.169 port protocol=tcp port=0-65535 acceptfirewall-cmd -permanent -add-rich-rule=rule family=ipv4 source address=172.16.3.170 port protocol=tcp port=0-65535 acceptfirewal

9、l-cmd -permanent -add-rich-rule=rule family=ipv4 source address=172.16.3.171 port protocol=tcp port=0-65535 acceptfirewall-cmd -permanent -add-rich-rule=rule family=ipv4 source address=172.16.3.172 port protocol=tcp port=0-65535 accept /设置可以访问的端口firewall-cmd -permanent -add-port=0-65535/tcpfirewall-

10、cmd -reload注意: 需要在所有的节点上执行,因为涉及到的端口太多了,临时开放所有端口是为了安装起来方便,安装完毕后可以根据需要设置防火墙策略,保证集群安全。1.6. 配置免密码登录SSH将子节点设置为从主节点ssh无密码登陆(主节点访问从节点需要无密码互通,否则后面会出现问题)在主节点上执行:#cd /进入到 根目录# ssh-keygen -t rsa 一路回车,生成无密码的密钥对。把公钥拷贝至node169服务器上: # scp /root/.ssh/id_rsa.pub rootnode169: /输入node169机器上root用户密码拷备成功登录到node169服务器上:然

11、后在node169服务器上,把公钥的内容追加到authorized_keys文件末尾(这个文件也在隐藏文件夹.ssh下,如果没有可以新建):# cat id_rsa.pub /.ssh/authorized_keys如果提示下面信息,则需要创建./ssh目录:-bash: /root/.ssh/authorized_keys: No such directory/创建/.ssh目录,再追加公钥内容# mkdir /.ssh# cat id_rsa.pub /.ssh/authorized_keys并设置authorized_keys的访问权限:# chmod 600 /.ssh/authori

12、zed_keys测试:在node168点上执行ssh node169,正常情况下,不需要密码就能直接登陆进去了。在node168节点出现下面表示成功登录node169节点:以同样的方式将公钥拷贝至其他节点服务器上。 1.7. 关闭SELINUX(所有节点)关闭linux SELINUX安全内核# setenforce 0 (临时生效)修改 /etc/selinux/config 下的 SELINUX=disabled (重启后永久生效)# vi /etc/selinux/config内容增加:SELINUX=disabled 重启后生效:# reboot查看SELINUX 是否关闭:#sest

13、atus(在Centos7中遇到SELINUX无法关闭的问题,重新启动机器恢复正常)1.8. 修改Linux内核参数(所有节点)为避免安装过程中出现的异常问题,首先调整Linux内核参数。1) 设置s,控制换出运行时内存的相对权重,Cloudera 建议将 s 设置为 10:/查看s# cat /proc/sys/vm/s/永久性修改,执行下面两条命令# sysctl -w vm.s# echo vm.s = 10 /etc/sysctl.conf 2) 关闭透明大页面:自CentOS6版本开始引入了Transparent Huge Pages(THP),从CentOS7版本开始,该特性默认就

14、会启用。尽管THP的本意是为提升内存的性能,不过某些数据库厂商还是建议直接关闭THP,否则可能会导致性能出现下降。首先查看透明大页是否启用,always never表示已启用,always never表示已禁用:# cat /sys/kernel/mm/transparent_hugepage/defragalways madvise never# cat /sys/kernel/mm/transparent_hugepage/enabledalways madvise never以上状态就说明是启用的。临时关闭(重启机器会变回默认开启状态):# echo never /sys/kernel/

15、mm/transparent_hugepage/defrag#echo never /sys/kernel/mm/transparent_hugepage/enabled永久关闭:/编辑/etc/rc.d/rc.local# vi /etc/rc.d/rc.local/在文件后添加下面内容:if test -f /sys/kernel/mm/transparent_hugepage/enabled; thenecho never /sys/kernel/mm/transparent_hugepage/enabledfiif test -f /sys/kernel/mm/transparent_

16、hugepage/defrag; thenecho never /sys/kernel/mm/transparent_hugepage/defragfi保存退出,然后赋予rc.local文件执行权限:#chmod +x /etc/rc.d/rc.local重启系统,以后再检查THP状态,显示状态被禁用了。3) 修改文件句柄数:修改系统文件句柄数限制:/查看文件句柄数,显示1024,显然太小# ulimit -n 1024/修改限制#vi /etc/security/limits.conf /在文件后加入下面内容:* soft no* hard no修改后需要重启机器。1.9. 其他安装与配置(

17、所有节点)为避免安装过程中出现异常问题,安装相关依赖包:# yum -y install psmisc MySQL-python at bc bind-libs bind-utils cups-client cups-libs cyrus-sasl-gssapi cyrus-sasl-plain ed fuse fuse-libs httpd httpd-tools keyutils-libs-devel krb5-devel libcom_err-devel libselinux-devel libsepol-devel libverto-devel mailcap noarch mailx

18、 mod_ssl openssl-devel pcre-devel postgresql-libs python-psycopg2 redhat-lsb-core redhat-lsb-submod-security x86_64 spax time zlib-devel#yum install -y python-lxml#yum install krb5-devel cyrus-sasl-gssapi cyrus-sasl-deve libxml2-devel libxslt-devel mysql mysql-devel openldap-devel python-devel pytho

19、n-simplejson sqlite-devel# chmod +x /etc/rc.d/rc.local# yum -y install rpcbind# systemctl start rpcbind# echo systemctl start rpcbind /etc/rc.d/rc.local1.10. 配置NTP服务集群中所有主机必须保持时间同步,如果时间相差较大会引起各种问题。 具体建设过程如下:所有节点安装相关组件:# yuminstallntpntpdate-yNTP服务端(主节点):1) 查找时间同步服务器:打开网址,内容如下:2) 编辑 /etc/ntp.conf:# v

20、i /etc/ntp.conf/在文件中输入上面网页内容:server 0.asia.pool.ntp.orgserver 1.asia.pool.ntp.orgserver 2.asia.pool.ntp.orgserver 3.asia.pool.ntp.org3) 启动ntp服务:# systemctl start ntpd4) 配置开机启动:# systemctlenablentpd.service 注意:如果ntpd 开机启动失效,有可能是因为安装了chronyd并且是开机自启状态,所以导致ntpd开机自启失败。# 查看 chronyd设置状态# systemctl status c

21、hronyd显示如下:以面表明,chronyd显示为开机启动状态。将chronyd设为禁用状态:# systemctl disable chronyd.service此时,NTP的服务开机自启动完成! 5) 检查是否设置成功:# ntpq-p/更新时间#timedatectlNTP客户端(所有从节点):6) 远程客户端时间同步测试# date# ntpdate 172.16.3.168172.16.3.168是NTP服务端IP,显示如下信息,测试成功:7) 客户端设置计划任务,每30分钟同步时间#crontab -e /加入内容:0-59/30 * * * * /usr/sbin/ntpdat

22、e 172.16.3.168 & /sbin/hwclock -w8) 设置定时任务开机启动/设置开机启动# systemctl enable crond.service/查看状态# systemctl status crond1.11. 安装oracle JDK1.8 (所有节点)下载rpm 安装包jdk-8u151-linux-x64.rpm CentOS系统一般自带OpenJdk,需要卸载掉自带的OpenJdk,使用# rpm -qa | grep java查询java相关的包,使用# rpm -e nodeps +包名强制卸载掉,下面安装oralce JDK# rpm -ivh jdk

23、-8u151-linux-x64.rpm配置JAVA_HOME环境变量:修改/etc/profile文件配置环境变量, 执行命令:# vi /etc/profile 在profile文件最后,输入下面内容,保存并退出。export JAVA_HOME=/usr/java/jdk1.8.0_151export PATH=$PATH:$JAVA_HOME/bin 执行下面命令,让配置生效# source /etc/profile /使修改立即生效# echo $PATH /查看PATH值# echo $JAVA_HOME /查看JAVA_HOME值在Centos7中修改/etc/profile文件

24、配置环境变量,机器启动后有时不生效,可以修改/etc/ bashrc文件配置环境变量:# vi /etc/bashrc /在文件最后加入:export JAVA_HOME=/usr/java/jdk1.8.0_151export PATH=$PATH:$JAVA_HOME/bin /使修改立即生效# source /etc/bashrc /查看JAVA_HOME值# echo $JAVA_HOME 1.12. Mysql安装(主节点)到官网选择对应安装包:1) 下载安装包#wget 2) 解压安装包# tar -xvf mysql-5.7.18-1.el7.x86_64.rpm-bundle.

25、tar/解压后文件列表:mysql-community-embedded-devel-5.7.18-1.el7.x86_64.rpmmysql-community-devel-5.7.18-1.el7.x86_64.rpmmysql-community-client-5.7.18-1.el7.x86_64.rpmmysql-community-common-5.7.18-1.el7.x86_64.rpmmysql-community-embedded-5.7.18-1.el7.x86_64.rpmmysql-community-embedded-compat-5.7.18-1.el7.x86_

26、64.rpmmysql-community-libs-5.7.18-1.el7.x86_64.rpmmysql-community-server-minimal-5.7.18-1.el7.x86_64.rpmmysql-community-test-5.7.18-1.el7.x86_64.rpmmysql-community-minimal-debuginfo-5.7.18-1.el7.x86_64.rpmmysql-community-libs-compat-5.7.18-1.el7.x86_64.rpm3) 按次序安装按commonlibsclientserver的顺序安装:# rpm -

27、ivh mysql-community-common-5.7.18-1.el7.x86_64.rpm# rpm -ivh mysql-community-libs-5.7.18-1.el7.x86_64.rpm# rpm -ivh mysql-community-client-5.7.18-1.el7.x86_64.rpm# rpm -ivh mysql-community-server-5.7.18-1.el7.x86_64.rpm# rpm -ivh mysql-community-devel-5.7.18-1.el7.x86_64.rpm /安装下面包,否则Hue安装报连接错误# rpm

28、 -ivh mysql-community-libs-compat-5.7.18-1.el7.x86_64.rpm4) 启动数据库# systemctl start mysqld 查看状态: # systemctl status mysqld5) 修改MySQL初始密码1、先修改配置文件/etc/f令MySQL跳过登录时的权限检验,在mysqld下加入一行:skip-grant-tables2、重启MySQL#service mysqld restart3、免密码登录MySQL。#mysql4、mysql客户端执行如下命令,修改root密码mysql use mysql;mysql UPDAT

29、E user SET authentication_string = password(your-password) WHERE host = localhost AND user = root;mysql select host,user, authentication_string, password_expired from user; mysql update user set password_expired=N where password_expired=Y /密码不过期mysql update user set host=% where user=root and host=l

30、ocalhost; /远程可访问mysql flush privileges; /刷新mysql exit;/退出5、修改配置文件/etc/f删除此前新增那一行skip-grant-tables,并重启MySQL(这一步非常重要,不执行可能导致严重的安全问题)#service mysqld restart /重启 Mysql 2. 安装CM2.1. 传包,解包在主节点上下载相关软件包,这里将软件包下载到/data/ cdh/目录下。#cd /data/cdh下载Mysql JDBC包:#wget 下载CM:#wget 5/cloudera-manager-centos7-cm5.13.1_x8

31、6_64.tar.gz 下载CDH:#wget #wget .sha1#wget 将CM解压到/opt/目录:# tar -zxvf cloudera-manager-centos7-cm5.13.1_x86_64.tar.gz -C /opt/# ls /opt/cloudera cm-5.13.12.2. 创建数据库在主节点上:# mysql -h127.0.0.1 -uroot -p /加参数-h127.0.0.1 指定本机方式,否则可能不允许执行grantEnter password: 输入数据库密码/在MariaDB (none)命令状态输入下面脚本:create database

32、hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;create database monitor DEFAULT CHARSET utf8 COLLATE utf8_general_ci;create database oozie DEFAULT CHARSET utf8 COLLATE

33、 utf8_general_ci;grant all privileges on *.* to rootlocalhost identified by root with grant option;grant all on *.* to root% Identified by root;flush privileges;exit;/复制Mysql JDBC包到/opt/cm-5.13.1/share/cmf/lib/目录#cp mysql-connector-java-5.1.43-bin.jar /opt/cm-5.13.1/share/cmf/lib/初始化CM,执行下面脚本# /opt/

34、cm-5.13.1/share/cmf/schema/scm_prepare_database.sh mysql cm -hnode168 -uroot -proot -scm-host node168 scm scm scm/如果出现下面错误:java.sql.SQLException: Access denied for user rootlocalhost (using password: YES)/解决办法:在/etc/hosts 文件中,加上127.0.0.1 localhost.node168主节点/etc/hosts内容:脚本/scm_prepare_database.sh 执行

35、成功界面:2.3. 创建用户在所有节点上执行:# useradd -system -home=/opt/cm-5.13.1/run/cloudera-scm-server -shell=/bin/false -comment Cloudera SCM User cloudera-scm2.4. 制作本地YUM源在主节点上:/进入软件包目录#cd /data/cdh/拷贝三个文件到/opt/cloudera/parcel-repo/目录#cp CDH-5.13.1-1.cdh5.13.1.p0.2-el7.parcel CDH-5.13.1-1.cdh5.13.1.p0.2-el7.parcel

36、.sha1 manifest.json /opt/cloudera/parcel-repo/进入/opt/cloudera/parcel-repo/目录#cd /opt/cloudera/parcel-repo/修改文件名#mv CDH-5.13.1-1.cdh5.13.1.p0.2-el7.parcel.sha1 CDH-5.13.1-1.cdh5.13.1.p0.2-el7.parcel.sha 此时/opt/cloudera/parcel-repo/目录下文件:2.5. 拷贝jar包在所有节点上:/如果没有/usr/share/java/目录,则创建# cp mysql-connecto

37、r-java-5.1.43-bin.jar /usr/share/java/mysql-connector-java.jar在主节点上:/将mysql JDBC jar 包拷贝到 /opt/cm-5.13.1/share/cmf/lib/ 目录#cp mysql-connector-java-5.1.43-bin.jar /opt/cm-5.13.1/share/cmf/lib/ 2.6. 修改cloudera-scm-agent配置在主节点上,修改/opt/cm-5.13.1/etc/cloudera-scm-agent/config.ini文件:/将config.ini server_ho

38、st=localhost 内容改为server_host=172.16.3.168# sed -i s/server_host=localhost/server_host=172.16.3.168/ /opt/cm-5.13.1/etc/cloudera-scm-agent/config.ini在主节点上:/将cm-5.13.1 打包,并复制到其他节点#cd /opt #tar czf cm-5.13.1.tar.gz cm-5.13.1/复制到其他节点#scp cm-5.13.1.tar.gz node169:/opt/#scp cm-5.13.1.tar.gz node170:/opt/#

39、scp cm-5.13.1.tar.gz node171:/opt/#scp cm-5.13.1.tar.gz node172:/opt/ 在所有从节点上解压:/将cm-5.13.1 包解压#cd opt #tar -xzvf cm-5.13.1.tar.gz /解压后删除#rm -rf cm-5.13.1.tar.gz2.7. 启动CM Server和Agent在主节点上,启动cloudera-scm-server:# /opt/cm-5.13.1/etc/init.d/cloudera-scm-server start启动过程较慢,可通过/opt/cm-5.13.1/log/clouder

40、a-scm-server日志,查看启动过程。在所有节点上,启动cloudera-scm-agent:# /opt/cm-5.13.1/etc/init.d/cloudera-scm-agent start2.8. 访问CM地址:http:/主节点IP:7180用户名、密码:admin 3. 安装CDH3.1. 登录后界面接受协议:3.2. 选择CM版本本文档选择Cloudera Express免费版。3.3. 指定主机在搜索主机名和IP地址框输入node169-172,这里输入的内容支持正则表达式。输入后点【搜索】按钮,出现机器列表:选择“当前管理的主机“选择项卡,点【继续】。3.4. 选择C

41、DH版本这里需要选择制作本地源时的版本,如果选择别的版本的就会去官网下载,那样安装速度会很慢。点【继续】按钮,进入安装界面。3.4.1. 出现 “主机运行状态不良”错误遇到节点“主机运行状态不良”的提示,解决办法是删除故障节点Agent服务cm_guid文件:#rm -rf /opt/cm-5.13.1/lib/cloudera-scm-agent/cm_guid重新启动故障节点Agent服务:#/opt/cm-5.13.1/etc/init.d/cloudera-scm-agent restart重启故障节点Agent服务后,故障消失:注:出现故障原因是,因为我之前在故障节点启动过cloud

42、era-scm-agent服务。3.5. 检查主机正确性确保全部验证通过。3.6. 选择安装的服务本文选择的是安装所有服务。3.7. 角色分配这里应该根据实际需求和服务器的硬件参数自己选择3.8. 数据库设置指定的数据库名称,要与2.2节创建的数据库(hive,monitor,oozie,hue)保持一致,并输入对应的数据库用户名和密码,为了简便这里用的是root账号名和密码。全部输入完,之后【测试连接】:3.8.1. 测试连接报错:测试连接,Hue 测试报错:Unable to verify database connection:原因是缺少Mysql mysql-community-lib

43、s-compat 安装包,安装后,问题解决:/进入安装包所在目标# cd /data/mysql/ # rpm -ivh mysql-community-libs-compat-5.7.18-1.el7.x86_64.rpm测试成功后,点【继续】安装。3.9. 群集设置可以根据自己的实际情况更改设置,本文采用默认配置。这些配置也可以在集群安装完成后再更改。3.10. 开始安装安装过程没有任何错误,显示安装完成。3.11. 安装完成第一次安装完成后,会出现一些配置的警告信息。这些可以根据提示信息更改。3.11.1. 警告信息:发现节点有异常信息,显示所有主机,发现node71节点运行状态不良。按

44、照 主机-所有主机-进入节点查看:选择“配置“页签,拉到页面底部,修改”主机时钟偏差阈值“,设为”从不“,点【保存更改】,异常消失。4. 常见错误4.1. 初始化数据库错误:在这个环节,出现的问题较多,但总的来说,是与数据库参数配置,和帐号权限配置有关。如在执行scm_prepare_database.sh脚本时,出现的错误:java.sql.SQLException: Your password does not satisfy the current policy requirements一般是由密码策略级别问题引发:可以通过 f 配置文件关闭 validate_password 插件。通过修改/etc/f 目录下配置文件,修改设置密码策略的级别,只需要在mysqld下添加一行 validate_password = off如图所示:编辑完配置文件后,重启mysqld服务即可生效。4.2. 未能连接到 Host Monitor后台tail -f /opt/cm-5.13.1/log/cloudera-scm-server/cloudera-scm-serve

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号