Hadoop运行环境搭建
Hadoop运行环境搭建
更改为阿里的Centos7的yum源
#下载wget
yum -y install wget
#echo 下载阿里云的yum源配置 Centos-7.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache
环境配置
关闭防火墙
关闭防火墙:systemctl stop firewalld.service
禁用防火墙:systemctl disable firewalld.service
查看防火墙:systemctl status firewalld.service
关闭Selinux:vi /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
修改IP
善用Tab键
vi /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.X.51
GATEWAY=192.168.X.2
DNS1=8.8.8.8
NETMASK=255.255.255.0
vi /etc/resolv.conf
nameserver 8.8.8.8
重启网卡:servie network restart Centos7
重启网卡:iptable service restart Centos6
注:如果出现失败的情况,执行如下命令
systemctl stop NetworkManager
systemctl disable NetworkManager
然后重启网卡。servie network restart
修改主机名
hostnamectl set-hostname 主机名 ==> Centos 7
IP和主机名关系映射
vi /etc/hosts
192.168.1.51 master
192.168.1.52 slave1
192.168.1.53 slave2
在windows的C:\Windows\System32\drivers\etc路径下找到hosts并添加
192.168.1.51 master
192.168.1.52 slave1
192.168.1.53 slave2
连接Xshell
输入IP、用户名和密码
在opt目录下创建文件(此步可选)
创建chenchuan用户
adduser chenchuan
passwd chenchuan
设置chenchuan用户具有root权限
vi /etc/sudoers 92行 找到root ALL=(ALL) ALL
复制一行:chenchuan ALL=(ALL) ALL
安装jdk
卸载现有jdk
(1) 查询是否安装java软件:
rpm -qa|grep java
(2) 如果安装的版本低于1.7,卸载该jdk:
rpm -e 软件包名字
在/opt目录下创建两个子文件
mkdir /opt/module /opt/software
解压jdk到/opt/module目录下
tar -zxvf jdk-8u144-linux-x64.tar.gz -C /opt/module/
配置jdk环境变量
vi /etc/profile
export JAVA_HOME=/opt/module/jdk1.8.0_144
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile
测试jdk安装成功
java -version
java version "1.8.0_144"
Hadoop运行模式
伪/完全分布式部署Hadoop
SSH无密码登录
生成公钥和私钥:ssh-keygen -t rsa
然后敲(三个回车),就会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
将公钥拷贝到要免密登录的目标机器上
ssh-copy-id 主机名1
ssh-copy-id 主机名2
ssh-copy-id 主机名3
注:在另外两台机器上分别执行,共执行9遍
.ssh文件夹下的文件功能解释
(1)~/.ssh/known_hosts :记录ssh访问过计算机的公钥(public key)
(2)id_rsa :生成的私钥
(3)id_rsa.pub :生成的公钥
(4)authorized_keys :存放授权过得无秘登录服务器公钥
配置集群(表格版)
1) 集群部署规划:
|
bigdata111 |
bigdata112 |
bigdata113 |
|
|
HDFS |
NameNode SecondaryNameNode DataNode |
DataNode |
DataNode |
|
YARN |
ResourceManager NodeManager |
NodeManager |
NodeManager |
2) 配置文件:
|
文件 |
配置 |
|
core-site.xml |
<!-- 指定HDFS中NameNode的地址 --> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> </property> <!-- 指定hadoop运行时产生文件的存储目录 --> <property> <name>hadoop.tmp.dir</name> <value>/opt/module/hadoop-2.8.4/data/tmp</value> </property> |
|
hdfs-site.xml |
<!--数据冗余数--> <property> <name>dfs.replication</name> <value>3</value> </property> <!--secondary的地址--> <property> <name>dfs.namenode.secondary.http-address</name> <value>slave1:50090</value> </property> <!--关闭权限--> <property> <name>dfs.permissions</name> <value>false</value> </property> |
|
yarn-site.xml |
<!-- reducer获取数据的方式 --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <!-- 指定YARN的ResourceManager的地址 --> <property> <name>yarn.resourcemanager.hostname</name> <value>slave1</value> </property> <!-- 日志聚集功能使能 --> <property> <name>yarn.log-aggregation-enable</name> <value>true</value> </property> <!-- 日志保留时间设置7天(秒) --> <property> <name>yarn.log-aggregation.retain-seconds</name> <value>604800</value> </property> |
|
mapred-site.xml |
<!-- 指定mr运行在yarn上--> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <!--历史服务器的地址--> <property> <name>mapreduce.jobhistory.address</name> <value>slave1:10020</value> </property> <!--历史服务器页面的地址--> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>slave1:19888</value> </property> |
|
hadoop-env.sh、yarn-env.sh、mapred-env.sh(分别在这些的文件中添加下面的路径) export JAVA_HOME=/opt/module/jdk1.8.0_144(注:是自己安装的路径) |
|
|
slaves |
master、slave1、slave2(自己设置的主机名) |
格式化Namenode:
hdfs namenode -format
为什么要格式化?
NameNode主要被用来管理整个分布式文件系统的命名空间(实际上就是目录和文件)的元数据信息,同时为了保证数据的可靠性,还加入了操作日志,所以,NameNode会持久化这些数据(保存到本地的文件系统中)。对于第一次使用HDFS,在启动NameNode时,需要先执行-format命令,然后才能正常启动NameNode节点的服务。
格式化做了哪些事情?
在NameNode节点上,有两个最重要的路径,分别被用来存储元数据信息和操作日志,而这两个路径来自于配置文件,它们对应的属性分别是dfs.name.dir和dfs.name.edits.dir,同时,它们默认的路径均是/tmp/hadoop/dfs/name。格式化时,NameNode会清空两个目录下的所有文件,之后,会在目录dfs.name.dir下创建文件
hadoop.tmp.dir 这个配置,会让dfs.name.dir和dfs.name.edits.dir会让两个目录的文件生成在一个目录里
启动集群的命令:
Namenode的主节点:sbin/start-dfs.sh
Yarn的主节点:sbin/stop-yarn.sh
注意:Namenode和ResourceManger如果不是同一台机器,不能在NameNode上启动 yarn,应该在ResouceManager所在的机器上启动yarn。
scp文件传输
实现两台远程机器之间的文件传输(master主机文件拷贝到slave1主机上)
scp -r [文件] 用户@主机名:绝对路径
注:伪分布式是一台、完全分布是三台
完全分布式
步骤:
1)克隆2台客户机(关闭防火墙、静态ip、主机名称)
2)安装jdk
3)配置环境变量
4)安装hadoop
5)配置环境变量
6)安装ssh
7)配置集群
8)启动测试集群
注:此配置直接使用虚拟机克隆伪分布式两台即可
自带官方wordcount案例
随意上传一个文本文件
上传命令:hadoop fs -put 文件名 /
执行命令:
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.X.X.jar wordcount /入 /出
命令解析:
hadoop jar 路径的jar包 全类名 输入路径 输出路径
查看结果:
hadoop fs -cat 路径
Hadoop启动和停止命令:
以下命令都在$HADOOP_HOME/sbin下,如果直接使用,记得配置环境变量
|
启动/停止历史服务器 |
mr-jobhistory-daemon.sh start|stop historyserver |
|
启动/停止总资源管理器 |
yarn-daemon.sh start|stop resourcemanager |
|
启动/停止节点管理器 |
yarn-daemon.sh start|stop nodemanager |
|
启动/停止 NN 和 DN |
start|stop-dfs.sh |
|
启动/停止 RN 和 NM |
start|stop-yarn.sh |
|
启动/停止 NN、DN、RN、NM |
start|stop-all.sh |
|
启动/停止 NN |
hadoop-daemon.sh start|stop namenode |
|
启动/停止 DN |
hadoop-daemon.sh start|stop datanode |
Hadoop运行环境搭建的更多相关文章
- CentOS下Hadoop运行环境搭建
1.安装ssh免密登录 命令:ssh-keygen overwrite(覆盖写入)输入y 一路回车 将生成的密钥发送到本机地址 ssh-copy-id localhost (若报错命令无法找到则需要安 ...
- 啃掉Hadoop系列笔记(02)-Hadoop运行环境搭建
一.新增一个普通用户bigdata
- Hadoop系列003-Hadoop运行环境搭建
本人微信公众号,欢迎扫码关注! Hadoop运行环境搭建 1.虚拟机网络模式设置为NAT 2.克隆虚拟机 3.修改为静态ip 4. 修改主机名 5.关闭防火墙 1)查看防火墙开机启动状态 chkcon ...
- Hadoop基础教程-运行环境搭建
一.Hadoop是什么 一个分布式系统基础架构,由Apache基金会所开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力进行高速运算和存储. Hadoop实现了一个分布式 ...
- Hadoop之环境搭建
初学Hadoop之环境搭建 阅读目录 1.安装CentOS7 2.安装JDK1.7.0 3.安装Hadoop2.6.0 4.SSH无密码登陆 本文仅作为学习笔记,供大家初学Hadoop时学习参考. ...
- 【HADOOP】| 环境搭建:从零开始搭建hadoop大数据平台(单机/伪分布式)-下
因篇幅过长,故分为两节,上节主要说明hadoop运行环境和必须的基础软件,包括VMware虚拟机软件的说明安装.Xmanager5管理软件以及CentOS操作系统的安装和基本网络配置.具体请参看: [ ...
- 分享知识-快乐自己:大数据(hadoop)环境搭建
大数据 hadoop 环境搭建: 一):大数据(hadoop)初始化环境搭建 二):大数据(hadoop)环境搭建 三):运行wordcount案例 四):揭秘HDFS 五):揭秘MapReduce ...
- Hadoop分布环境搭建步骤,及自带MapReduce单词计数程序实现
Hadoop分布环境搭建步骤: 1.软硬件环境 CentOS 7.2 64 位 JDK- 1.8 Hadoo p- 2.7.4 2.安装SSH sudo yum install openssh-cli ...
- Hadoop —— 单机环境搭建
一.前置条件 Hadoop的运行依赖JDK,需要预先安装,安装步骤见: Linux下JDK的安装 二.配置免密登录 Hadoop组件之间需要基于SSH进行通讯. 2.1 配置映射 配置ip地址和主机名 ...
随机推荐
- GIL全局解释锁
目录 一 介绍 二 GIL介绍 三 GIL与多线程 四 多线程性能测试 一 介绍 ''' 定义: In CPython, the global interpreter lock, or GIL, is ...
- 洛谷p1902刺杀大使题解
题目传送门 方法:二分答案+dfs 二分一个mid,此次刺杀的最大伤害,作为判断条件来dfs,二分,更新. 我们二分一个答案mid来表示一个界限,如果当前这个格子的伤害代价比mid小则可以走否则就不走 ...
- GOOD BYE OI
大米饼正式退役了,OI给我带来很多东西 我会的数学知识基本都在下面了 博客园的评论区问题如果我看到了应该是会尽力回答的... 这也是我作为一个OIer最后一次讲课的讲稿 20190731 多项式乘法 ...
- 【BZOJ3508】开灯
[BZOJ3508]开灯 题面 bzoj 题解 其实变为目标操作和从目标操作变回来没有区别,我们考虑从目标操作变回来. 区间整体翻转(\(\text{Xor}\;1\))有点难受,我们考虑将这个操作放 ...
- 2013(1)需求工程, 需求开发, 需求分析, 面向对象需求分析, UML,需求建模
案例一 某软件公司拟为物流企业开发一套库存管理系统,该系统的部分需求陈述如下: (1) 库存管理系统主要包括货物入库管理.货物出库管理.仓库管理.统计报表和系统管理等功能. (2) 库存管理系统的用户 ...
- 基于web公交查询系统----数据库设计
要求:公交查询系统,管理员可以新增线路,修改车辆参数,发车时间表,删除车次,站名等. 用户可以按线路查询,按站点查询相关信息,也可查询两站点之间的换乘信息等. 数据库应包含管理员表,车站表,线路表,车 ...
- js 校验手机号码格式
手机号码格式简单校验 原理:判断手机号是否以已经发行的手机号码段开头,而且判断其余9位是否是数字. 方式一: var phone = $('#phone').val(); var regex = ...
- 二维码解析(编译zxing-cpp)
二维码解析使用的类库是zxing(官网 https://github.com/zxing/zxing). 这个类库是谷歌的,原来有c++版本,后来的更新去掉了,zxing介绍了目前基于zxing的其他 ...
- otl odbc小计
1. 使用odbc的时候,要注意数据库的编码与odbc配置的编码一致,不然有乱码.所以建议,表中字符编码,数据库的编码,odbc等connector的编码都是utf8,避免乱码问题 2. 安装odbc ...
- mac系统中怎么打开rar/zip等压缩文件?
平常使用mac的同学们,可能经常要接受下别人发过来的rar文件,可惜的时mac os x系统默认是不能打开rar文件(不知道以后苹果会支持rar不?),那么我们该如何去解圧rar文件,接下来我将介绍. ...