实验环境:虚拟机CentOS 7 + Hadoop2.7.3 +SecureCRT

1,安装完系统后,使用SecureCRT连接虚拟机,在 / 目录下新建目录
mkdir /tools ---->用于存放软件包
mkdir /training ---->用于安装软件
注:SecureCRT连接虚拟机需要ip地址,若虚拟机下ifconfig 这个命令执行不了,是因为没有下载net-tools.x86_64
所以,执行:
yum search ifconfig
出现net-tools.x86_64 的提示后执行:yum install net-tools.x86_64
如果没出现就麻烦了,按以下操作:
( 1, cd /etc/sysconfig/network-scripts/ ,找到以ifcfg-eno开头后面有数字的文件,例如找到:ifcfg-eno16777728
然后编辑该文件,执行:vi ifcfg-eno16777728
2、1步骤打开了ifcfg-eno16777728文件,在该文件中将onboot=no 改成 yes
3、然后重启网卡,执行:systemctl restart network.service 命令即可
4、网卡重启没有问题后,在执行命令:yum search ifconfig 在提示信息中查找以net-tools.x86_64开头的安装包
5、最后执行:yum install net-tools.x86_64,进行安装即可,安装过程中会有提示,你需要在提示信息后面输入y 然后回车即可
)

2,安装java-JDK
在使用SecureCRT上传下载之前需要给服务器安装lrzsz:
yum -y install lrzsz (注:参数-y中"y"的意思是:当安装过程提示选择全部为"yes")
(*) 上传jdk-8u171-linux-x64.tar.gz到tools目录下,然后执行下面的命令进行解压安装
tar -zvxf jdk-8u171-linux-x64.tar.gz -C /training/

(*) 配置环境变量:
cd ~ 进home目录,ll -a 显示隐藏文件,vi .bash_profile,复制这些命令
vi ~/.bash_profile
在.bash_profile文件中添加如下信息:

export JAVA_HOME=/training/jdk1.8.0_171
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin;

() 让环境变量生效
source ~/.bash_profile
(
) 验证jdk是否安装成功
java -version

3、关闭防火墙(CentOS7下)
Systemctl stop firewalld.service
systemctl disable firewalld.service
另外,打开防火墙:sudo systemctl start firewalld
查看防火墙:sudo systemctl status firewalld

4、配置主机名(如何已经设置,此步骤可以不用设置)
hostnamectl --static set-hostname nick01
说明:–static 参数代表永久生效 nick01表达你希望设置的主机名

安装hadoop:
(1)上传hadoop-2.7.3.tar.gz到tools目录下,然后执行下面的命令进行解压安装
tar -zvxf hadoop-2.7.3.tar.gz -C /training/

(2)配置环境变量:
vi ~/.bash_profile
添加如下信息:

export HADOOP_HOME=/training/hadoop-2.7.3
	export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

(3)让环境变量生效:
source ~/.bash_profile

(4)验证是否生效:
执行:hdfs 或者hadopo 有相关信息出现即可

Hadoop的伪分布安装
0、首页配置主机名与IP地址的映射关系
vi /etc/hosts
在文件的末尾添加类似于
192.168.215.152 nick01这样的格式ip和主机名称选择自己的即可
接下来新建一个tmp目录:mkdir /training/hadoop-2.7.3/tmp
(1)配置免密码登录:

第一篇:Hadoop伪分布搭建
执行此步骤需注意,如果前面修改了主机名称,注意看此时的主机名是否已经修改,如若没有,请断开SecureCRT连接重连。

执行如下命令:
)ssh-****** -t rsa #外加三个回车
)cd ~/.ssh/
(*)ssh-copy-id -i id_rsa.pub [email protected]

(2)进入到/training/hadoop-2.7.3/etc/hadoop目录下
cd /training/hadoop-2.7.3/etc/hadoop
需要对五个文件进行配置:
hadoop-env.sh
)hdfs-site.xml
)core-site.xml
)mapper-site.xml
)yarn-site.xml
(3)对(2)中的五个文件进行配置,配置步骤如下:
#设置运行环境
)配置hadoop-env.sh文件即可,修改该文件:
vi /training/hadoop-2.7.3/etc/hadoop/hadoop-env.sh
在hadoop-env.sh 文件中找到JAVA_HOME,并进行如下修改
export JAVA_HOME=/training/jdk1.8.0_171

#设置副本数这个文件是hdfs的配置文件,需要配置如下几项
(*)配置hdfs-site.xml文件:
vi /training/hadoop-2.7.3/etc/hadoop/hdfs-site.xml
在hdfs-site.xml文件的之间添加如下信息:

<property>
	  <name>dfs.replication</name>#block的副本数,不能超过datanode的数目
	   <value>1</value>
	</property>
	<property>
	   <name>dfs.permissions</name>
	   <value>false</value>
</property>

#对nameNode主要设置
(*)配置core-site.xml文件:
vi /training/hadoop-2.7.3/etc/hadoop/core-site.xml
在core-site.xml文件的之间添加如下信息:

<property>
	  <name>fs.defaultFS</name>		# namenode节点名
	<value>hdfs://XX:9000</value>  #namenode域名(或IP)和端口
	</property>              
	<property>
	<name>hadoop.tmp.dir</name>		#文件储存目录
	  <value>/training/hadoop-2.7.3/tmp</value>		#fs的放置位置
</property>

#配置MapReduce执行框架
(*)配置mapper-site.xml文件(这个文件事先是不存在的,需要复制一份)
(1)cp/training/hadoop-2.7.3/etc/hadoop/mapred-site.xml.template /training/hadoop-2.7.3/etc/hadoop/mapred-site.xml
(2)vi /training/hadoop-2.7.3/etc/hadoop/mapred-site.xml
(3)在mapper-site.xml文件的之间添加如下信息:

#MapReduce 执行框架设为 Hadoop YARN.
	<property>                                 
		<name>mapreduce.framework.name</name>
	    <value>yarn</value>
	</property>

#设置ResouceManager 的地址
(*)配置yarn-site.xml文件:
vi /training/hadoop-2.7.3/etc/hadoop/yarn-site.xml
在yarn-site.xml文件的之间添加如下信息:

<property>                           
	<name>yarn.resourcemanager.hostname</name>
	<value>XX</value>
</property>
<property>
	<name>yarn.nodemanager.aux-services</name>
   	<value>mapreduce_shuffle</value>
</property>    

(4)格式化:HDFS(NameNode)
hdfs namenode -format

成功日志:
common.Storage: Storage directory /training/hadoop-2.7.3/tmp/dfs/name has been successfully formatted.

(5)启动hadoop环境
start-all.sh

6)验证:
(1)web界面进行验证
HDFS:http://nick01:50070
Yarn:http://nick01:8088
注:如果http://nick01:50070进不去可能是你的ip地址与主机名称的映射没有做好,尝试换成
http://ip地址:50070 进入查看
第一篇:Hadoop伪分布搭建
(2)执行jps命令,看看是否会有如下进程:
NameNode
DataNode
SecondaryNameNode
ReourceManager
NodeManager

(7)如果需要停止,则执行如下操作:
stop-all.sh

至此,Hadoop的伪分布搭建已完成。

参考:https://blog.csdn.net/sujiangming/article/details/88047006

相关文章: