CDH大数据平台搭建
Hadoop是apache旗下的一套开源软件平台, 主要对海量数据进行分布式处理。
本次部署,计划使用5台服务器,服务器磁盘规划如下:
分区挂载完成以后,使用root用户执行对目录/data授权。每台服务器都执行此命令。
chmod 777 -R /data
一、基础运行平台部署包说明
平台大数据部署包共提供cm5,cdh,Redhat三个程序部署包。其中cm5为管理控制台,是必装包;cdh为基础运行平台的主程序包,是 必装包;Redhat为linux系统操作精装版。
二、创建组与用户(每台服务器都需要操作)
1、创建hadoop用户,并将hadoop用户添加到root组。在root用户下执行。useradd -g root hadoop[如果已存在用户更改用户属组:usermod -g root hadoop]passwd hadoop2、验证hadoop用户是否成功,输入命令后,用户变成了hadoop表示成功su hadoop3、使用hadoop用户创建目录su hadoopmkdir -p /home/hadoop/hadoop-2.3.0-cdh5.1.2/lib/native/mkdir -p /home/hadoop/hadoop-2.3.0-cdh5.1.2/video-analysis-alg/4、使用hadoop用户登陆各系统节点,执行如下命令查看上图创建目录是否成功cd /home/hadoop/hadoop-2.3.0-cdh5.1.2/lib/native/5、执行完上句执行下面语句,确定进入的路径正确pwd6、使用hadoop用户登陆各系统节点,执行如下命令查看上图创建目录是否成功cd /home/hadoop/hadoop-2.3.0-cdh5.1.2/video-analysis-alg/7、执行完上句执行下面语句,确定进入的路径正确pwd8、使用root用户为目录赋权chmod o+rx -R /home/hadoop
三、服务器hostname配置
1、每一台服务器均需使用root用户执行下列命令,根据不同节点分配不同机器名,修改机器名相关配置。hostnamectl set-hostname master1-vsp.com2、Hostname配置完成之后,在每台机器使用root用户执行如下命令检查配置是否成功(以子节点2为例)hostname3、每一台服务器均需执行下列操作,修改系统的IP地址ifconfig4、使用root用户编辑enovi /etc/sysconfig/network-scripts/ifcfg-enp0s35、将下面的内容编辑到ifcfg-enp0s3文件中,原文件中有的则更改,没有的则添加,其中IP地址、子网掩码以及网关则需要更改实际情况编写。NETMASK=255.255.255.0IPADDR=172.16.100.4GATEWAY=172.16.100.254ONBOOT=yes(修改系统文件里面已有的)BOOTPROTO=static(网卡内容存在此变量,将=号右边的内容改为此内容即可)6、重启网卡/etc/rc.d/init.d/network restart 7、每一台服务器均需执行下列5条操作命令,将服务器的IP与服务器名称进行关联。echo 192.168.43.36 master1-vsp.com>> /etc/hostsecho 192.168.43.34 slave1-vsp.com>> /etc/hostsecho 192.168.43.35 slave2-vsp.com>> /etc/hosts8、执行完成之后通过cat /etc/hosts命令查看是否执行成功。cat /etc/hosts9、重新启动计算机reboot
四、配置系统参数(每台服务器都需要操作)
1、修改swappiness,建议将/proc/sys/vm/swappiness设置为0,默认值为60sysctl vm.swappiness=0echo vm.swappiness=0 >> /etc/sysctl.conf2、执行如下命令以在重启后保存上条命令设置结果,该设置重启后不会丢失,执行如下命令:cat >> /etc/sysctl.conf <<EOFvm.swappiness = 10EOF3、修改transparent_hugepage,使用root用户执行以下命令可立即生效echo never >/sys/kernel/mm/transparent_hugepage/defrag4、使用root用户执行如下命令可永久生效echo "echo never > /sys/kernel/mm/transparent_hugepage/defrag" >>/etc/rc.local 5、执行下面命令验证上面的永久生效命令是否执行成功,cat /etc/rc.local6、关闭防火墙#停止firewallsystemctl stop firewalld.service#禁止firewall开机启动systemctl disable firewalld.service #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)firewall-cmd --state7、关闭selinux 使用root用户执行如下命令:setenforce 0sed -i.bak 's/SELINUX=enforcing/SELINUX=disabled/' /etc/sysconfig/selinuxsed -i.bak 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
五、安装软件源服务
1、上传文件(只在master1-vsp.com服务器上执行该操作)使用root用户登录到master1-vsp.com服务器上,并通过xftp工具将redhat(将系统镜像文件解压后里面的所有文件都拷贝到这里面)、CDH、cm5、mysql-package以及jdk文件夹上传到master1-vsp.com服务器的/var/www/html/目录下。 2、有可能/var/www/html/目录不存在,如果不存在请先创建该文件夹,创建文件件命令如下:mkdir -p /var/www/html3、建立临时web服务(只在master1-vsp.com服务器上执行该操作)使用root用户执行service httpd status命令,如果出现Loaded: not-found (Reason: No such file or directory)相关字样则表示该操作系统没有http服务service httpd status4、以root用户执行以下命令cd /var/www/html/python -m SimpleHTTPServer 80 &5、通过浏览器访问 http://192.168.43.36/地址,如果显示下面的界面,则表示已经建立了一个临时的web服务器。6、配置yum地址(该步骤需要在每台机器上执行)使用root用户执行ll /etc/yum.repos.d/命令,查看系统原有的软件源配置文件,ll /etc/yum.repos.d/7、通过mv命令将原有的配置文件进行重命名mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backmv /etc/yum.repos.d/CentOS-Debuginfo.repo /etc/yum.repos.d/CentOS-Debuginfo.repo.backmv /etc/yum.repos.d/CentOS-Media.repo /etc/yum.repos.d/CentOS-Media.repo.backmv /etc/yum.repos.d/CentOS-Vault.repo /etc/yum.repos.d/CentOS-Vault.repo.back8、再次执行ll /etc/yum.repos.d/命令查看一下原有的配置文件是否都已经更名了,如果没有则文件再次更名。9、配置软件源(该步骤需要在每台机器上执行)使用root用户执行echo命令,在/etc/yum.repos.d/目录创建名称为os.repo文件。echo [base] >> /etc/yum.repos.d/os.repoecho name=redhat-7.2 Base >> /etc/yum.repos.d/os.repoecho baseurl = http://master1-vsp.com/redhat/>> /etc/yum.repos.d/os.repoecho gpgcheck = 0 >> /etc/yum.repos.d/os.repo10、通过cat /etc/yum.repos.d/os.repo命令查看文件是否正确创建并且正确写入了对应的文字cat /etc/yum.repos.d/os.repo使用root用户执行yum clean all命令清理软件源yum clean all11、安装Web服务器(只在master1-vsp.com服务器上执行该操作)使用root用户执行yum install httpd命令安装http服务yum install httpd12、启动http服务(只在master1-vsp.com服务器上执行该操作)ps -ef|grep python chkconfig httpd on13、执行上面的命令后找到端口号为80,进程名称为SimpleHTTPServer的进程号,并执行kill命令,杀死该进程kill -9 1228014、使用root用户执行下面命令启动web服务器,并将之设置为自动启动。systemctl start httpd systemctl enable httpd.service
六、安装基础服务
1、建立root用户之间的互信,创建密钥(每台服务器都需要操作)cd ~ssh-keygen -t rsa2、创建共享文件(只在master1-vsp.com服务器上执行该操作)cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keyschmod 600 ~/.ssh/authorized_keys 3、将共享文件复制到其他4台机器上scp ~/.ssh/authorized_keys root@slave1-vsp.com:~/.ssh/scp ~/.ssh/authorized_keys root@slave2-vsp.com:~/.ssh/ 4、确认能够互相免密码登录(master1-vsp.com服务器上执行该操作)使用root用户,通过ssh命令直接登录到其他4台服务器上。ssh slave1-vsp.comssh slave2-vsp.com 5、配置服务器之间的时钟同步使用root用户通过date命令查询该服务器的时区date如果不含CST字符,则将时区更改为正常的中国时区,用root用户执行ln命令ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime6、安装ntp服务(每台服务器都需要操作) 用root用户执行下面的命令,安装ntp服务。yum install ntp7、配置ntp服务(只在master1-vsp.com服务器上执行该操作)使用root用户编辑/etc/ntp.conf文件vi /etc/ntp.conf8、注释掉网络服务器地址,并在其后添加server 127.127.1.0 iburst local clock;并且在#restrict的下一行添加restrict 0.0.0.0 mask 0.0.0.0 nomodify。9、使用root用户执行下面的命令,因为chronyd与ntpd冲突systemctl disable chronyd10、使用root用户执行下面的命令,启动ntp服务。systemctl start ntpd.service systemctl enable ntpd 11、使用root用户执行ntpdc -np命令,检查ntp状态ntpdc -np12、配置ntp客户机(在其他4台[非master1-vsp.com]服务器上执行该操作)使用root用户编辑/etc/ntp.conf文件vi /etc/ntp.conf13、注释掉网络服务器地址,并在其后添加server 192.168.43.36 iburst。注192.168.0.36 为ntp服务器的ip地址。14、使用root用户执行下面的命令,因为chronyd与ntpd冲突systemctl disable chronyd15、使用root用户执行下面的命令,启动ntp服务systemctl start ntpd.service systemctl enable ntpd16、使用root用户执行ntpdc -np命令,检查ntp状态ntpdc -np使用命令手动同步一次时间ntpdate -u master1-vsp.com
七、安装Mysql
1、检查mariadb数据,(只在master1-vsp.com服务器上执行该操作)rpm -qa | grep mariadb2、如果查询到数据,即下图所示,则通过rpm -e --nodeps mariadb-libs-5.5.44-2.el7.x86_64 命令卸载该数据库rpm -e --nodeps mariadb-libs-5.5.44-2.el7.x86_643、安装MySql数据库使用root用户通过tar -zxvf MySQL-5.5.44-1.linux2.6.x86_64.rpm-bundle.tar命令解压MySQL-5.5.44-1.linux2.6.x86_64.rpm-bundle.tar文件cd /var/www/html/mysql-packagetar -xvf MySQL-5.5.44-1.linux2.6.x86_64.rpm-bundle.tar4、使用root用户执行下面的命令安装MySql-server数据库rpm -ivh MySQL-server-5.5.44-1.linux2.6.x86_64.rpm5、启动MySql-server服务service mysql start6、使用root用户执行下面的命令安装MySql-client数据库rpm -ivh MySQL-client-5.5.44-1.linux2.6.x86_64.rpm7、使用root用户执行下面的命令检查MySql数据库的运行状态service mysql status使用root用户执行下面的命令设置MySql自启动chkconfig mysql on使用root用户执行下面的命令查看MySql服务,结果中2、3、4、5必须为开chkconfig --list |grep mysql8、修改root用户的密码,2条命令一起执行/usr/bin/mysqladmin -u root password 'vsp@admin'/usr/bin/mysqladmin -u root -h master1-vsp.com password 'vsp@admin'9、使用root用户登录mysql -u root -pvsp@admin10、创建mysql数据库执行下面的sql语句,创建4个数据库hive、scm和oozie 、sentry,创建用户hadoop并授权。密码默认为vsp@admincreate database hive default charset utf8 collate utf8_general_ci;create database scm default charset utf8 collate utf8_general_ci;create database sentry default charset utf8 collate utf8_general_ci;create database oozie default charset utf8 collate utf8_general_ci;CREATE USER 'hadoop'@'%' IDENTIFIED BY 'vsp@admin';CREATE USER 'hadoop'@'localhost' IDENTIFIED BY 'vsp@admin';GRANT ALL PRIVILEGES ON *.* TO 'hadoop'@'%' IDENTIFIED BY 'vsp@admin'; GRANT ALL PRIVILEGES ON *.* TO 'hadoop'@'localhost' IDENTIFIED BY 'vsp@admin';GRANT ALL PRIVILEGES ON *.* TO 'hadoop'@'master1-vsp.com' IDENTIFIED BY 'vsp@admin';grant all privileges on *.* to 'root'@'master1-vsp.com' identified by 'vsp@admin' with grant option;flush privileges;11、执行下面的sql语句,检查用户是否创建成功select user,host,password from mysql.user;
八、安装cm服务
1、卸载openjdk(每台服务器都需要操作)redhat操作系统可能会自带openjdk,在安装CM服务之前需要将其卸载。使用rpm -qa | grep java命令查看系统是否安装了openjdk。rpm -qa | grep java2、系统中安装了其他版本的jdk,此时通过命令rpm -e --nodeps packageName,将其他的jdk卸载。rpm -e --nodeps python-javapackages-3.4.1-11.el7.noarch java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64 java-1.7.0-openjdk-1.7.0.91-2.6.2.3.el7.x86_64 java-1.7.0-openjdk-headless-1.7.0.91-2.6.2.3.el7.x86_64 tzdata-java-2015g-1.el7.noarch javapackages-tools-3.4.1-11.el7.noarch java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64 3、安装oracle jdk1.7(每台服务器都需要操作)使用root用户创建softs目录mkdir /softs4、使用root用户将基础软件\jdk\下面的jdk-7u80-linux-x64.rpm文件上传到redhat操作系统/softs目录下,然后执行rpm -ivh jdk-7u80-linux-x64.rpm命令安装jdk。rpm -ivh /softs/jdk-7u80-linux-x64.rpm5、使用下面的命令查看刚刚安装的jdk目录cd /usr/java/ll6、配置java系统环境变量,使用vi编辑器编辑/etc/profile文件,在该文件末尾添加下列表格内容export JAVA_HOME=/usr/java/jdk1.7.0_80export JRE_HOME=/usr/java/jdk1.7.0_80/jreexport LD_LIBRARY_PATH=/usr/local/bin:/usr/local/lib:/usr/lib:/home/hadoop/hadoop-2.3.0-cdh5.1.2/lib/nativeexport CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATHexport PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$LD_LIBRARY_PATH:$PATH 7、使用source /etc/profile命令使得环境变量立即生效source /etc/profile8、使用java -version命令查询java版本java -version9、安装cm服务(只在master1-vsp.com服务器上执行该操作)使用tar命令将文件进行解压 ,命令中的文件名是正确的,不要更改。tar -zxvf /var/www/html/cm5/cloudera-manager-centos7-cm5.7.0_x86_64.tar.gz -C /opt/chmod 777 -R /opt/cm-5.7.0 10、使用cp命令将mysql-connector-java-5.1.40-bin.jar文件复制到/opt/cm-5.7.0/share/cmf/lib/cp /var/www/html/cm5/mysql-connector-java-5.1.40-bin.jar /opt/cm-5.7.0/share/cmf/lib/chmod 777 /opt/cm-5.7.0/share/cmf/lib/mysql-connector-java-5.1.40-bin.jar 11、使用命令配置cm使用的元数据库,如果机器名、用户名密码不是按照本文前面部分规划,请根据实际情况修改/opt/cm-5.7.0/share/cmf/schema/scm_prepare_database.sh mysql cm -hmaster1-vsp.com -uroot -pvsp@admin --scm-host master1-vsp.com scm scm scm12、通过vi命令修改/opt/cm-5.7.0/etc/cloudera-scm-agent/config.ini中的server_host为主节点的主机名master1-vsp.com。vi /opt/cm-5.7.0/etc/cloudera-scm-agent/config.ini13、一条一条执行如下命令,即可以将agent同步到其他4台服务器上。scp -r /opt/cm-5.7.0 root@slave1-vsp.com:/opt/scp -r /opt/cm-5.7.0 root@slave2-vsp.com:/opt/14、在master1-vsp.com服务器上为server创建cloudera-scm用户useradd --system --home=/opt/cm-5.7.0/run/cloudera-scm-server/ --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scmchown cloudera-scm:cloudera-scm -R /opt/cm-5.7.0 15、在所有服务器上为agent创建cloudera-scm用户,不创建起不来agent,报unable to create the pidfile;useradd --system --home=/opt/cm-5.7.0/run/cloudera-scm-agent/ --create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scmchown cloudera-scm:cloudera-scm -R /opt/cm-5.7.0 16、使用root在所有节点机器上执行下面这条命令 !!!chmod 777 -R /opt/cm-5.7.017、在master1-vsp.com服务器上执行命令启动server以及agent服务/opt/cm-5.7.0/etc/init.d/cloudera-scm-server start/opt/cm-5.7.0/etc/init.d/cloudera-scm-agent start 18、在其他4台服务器上执行命令启动agent服务/opt/cm-5.7.0/etc/init.d/cloudera-scm-agent start
九、安装CDH5
1、打开浏览器并输入Cloudera Manager控制台地址,(如:http://master1-vsp.com:7180/)默认账号密码admin/admin1、
2、选择免费版本(cloudera express),继续
3、点击当前管理的主机,勾选集群中的所有的机器,选择继续
会弹出如下界面,点击使用parcel,再点击更多选项:
会弹出如下对话框:
点击右边的减号,全部删除
点击加号,添加parcel库,把以下一个库全部加入parcel,http://master1-vsp.com/CDH/5.7.0,如下图:
点击保存,会弹出如下界面,继续
4、选择自定义服务
选择HBase、HDFS、YARN(MR2 Included)以及ZooKeeper服务后点击继续
继续
Datanode目录,一般是根据子节点的分区情况填写;
Namenode目录一般是根据主节点的分区情况填写
继续
完成
CDH大数据平台搭建相关推荐
- CDH大数据平台搭建之SPARK集群搭建
CDH大数据平台搭建之SPARK集群搭建 一.安装规划 二.下载 三.安装及配置 1.解压 2.修改配置文件 四.启动 五.JPS检查节点 一.安装规划 参考CHD大数据平台搭建之集群规划 二.下载 ...
- CDH大数据平台搭建之虚拟环境配置
CDH大数据平台搭建之虚拟环境配置 前言 一.虚拟机网络配置 1.配置ip地址 2.验证配置是否成功 二.关闭防火墙 1.防火墙命令 2.禁用防火墙 三.虚拟机主机名配置 1.临时配置主机名 2.永久 ...
- CDH大数据平台搭建之KAFKA集群搭建
CDH大数据平台搭建之KAFKA集群搭建 一.安装规划 二.下载KAFKA 三.安装及配置 1.先安装zookeeper 2.解压 3.新建文件夹 4.修改config目录server.propert ...
- CDH大数据平台搭建之VMware及虚拟机安装
CDH大数据平台搭建-VMware及虚拟机安装 前言 一.下载所需框架 二.安装(略) 三.安装虚拟机 1.新建虚拟机(按照操作即可) 总结 前言 搭建大数据平台需要服务器,这里通过VMware +C ...
- CDH大数据平台搭建之FLUME安装
CDH大数据平台搭建之FLUME安装 一.下载 二.安装及配置 1.解压 2.重命名文件夹 3.修改配置文件 一.下载 1.官网下载 2.网盘下载 提取码:cdh5 备注:官网下载的是apache版本 ...
- CDH大数据平台搭建之集群规划
CDH大数据平台搭建之集群规划 前言 一.集群规模 二.集群规划 总结 前言 话说无规矩不成方圆,搭建CDH大数据平台之前需要的工作很多,首先,你需要计算公司每日的数据量,来确定需要多少服务器,确定好 ...
- CDH大数据平台搭建之JDK安装
CHD大数据平台搭建之JDK安装 一.安装JDK 1.下载JDK 2.安装JDK 3.检查是否安装成功 一.安装JDK 1.下载JDK 1.JDK8官网下载 2.提供百度网盘供大家下载,提取码:cdh ...
- 大数据平台搭建及集群规划
CDH大数据平台搭建之集群规划_码上_成功的博客-CSDN博客_cdh集群规划 大数据Hadoop分布式集群部署(详细版)_arnoldmp的博客-CSDN博客_分布式集群部署 大数据平台的硬件规划. ...
- 大数据基础——Hadoop大数据平台搭建
文章目录 前言 Hadoop大数据平台搭建 一.Hadoop原理和功能介绍 二.Hadoop安装部署 三.Hadoop常用操作 总结 前言 分布式机器学习为什么需求大数据呢?随着海量用户数据的积累,单 ...
- 基于Ambari的大数据平台搭建
同CDH部署类似,步骤分为ambari的部署和hdp的部署,先以1台为例(内存>6G,磁盘划分/至少40G,/data/10G),后续节点可以通过扩容方式加入集群,可参考:https://blo ...
最新文章
- 马斯克说到做到!特斯拉牌呼吸机“交货”,用Model 3零部件打造;网友:我滴神啊...
- hadoop 1.0.1集群安装及配置
- 堆栈 cookie 检测代码检测到基于堆栈的缓冲区溢出_WhatsApp缓冲区漏洞曝光 攻击者可通过MP4文件执行远程代码...
- mongodb-$type、limit、skip、sort方法、索引、聚合
- 开发者必备Docker命令
- iOS 使用Touch ID 校验[新增 iOS9 三种错误]
- linux进程的管理,显示及杀死
- 最短路径——Floyd算法及优化(蓝桥杯试题集)
- python反转排列_生成列表元素对的每个排列,而不重复或反转对
- Android:新建一个Activity(隐式/显式),并携带数据
- 使用redis保存验证码
- 腾讯社交广告大赛 —— 特征与模型介绍
- 这本书非常值得一读!《微习惯》读后感
- Shell按关键字删除重复行
- 启动springboot报错:程序包org.springframework.boot不存在
- BigWorld文件夹结构
- win10应用已被java安全阻止,win10系统不能运行java提示“应用程序已被安全设置被阻止”的图文方法...
- java createfile,Java Filer.createSourceFile方法代碼示例
- 敏捷与结构性模块化(二)
- C语言数字图像处理---1.2 彩色图像灰度化和二值化
热门文章
- NUC980开源项目9-官方Kernel编译
- 推荐一些学习SEO的优秀书籍附pdf电子书下载地址
- ASP.NET-动软代码生成器的使用
- 【Virtualbox虚拟机Ubuntu系统安装VBoxGuestAdditions.iso增强包解决办法】
- JavaWeb实现视频在线播放
- 有关坐标系常见问题的问与答(转自ESRI中国社区)
- 软件测试常用的黑盒测试方法有哪些,简述什么是黑盒测试方法(最常用的黑盒测试方法)...
- 数据库课程设计实验报告--图书管理系统
- 分享五款可以大幅度提升办公效率的实用软件
- 磁力计的基本工作原理