tar -zxvf jdk-8u201-linux-x64.tar.gz
先创建文件夹java
mkdir -p /usr/java
移动文件到/usr/java
下
mv -v jdk1.8.0_201 /usr/java
vi /etc/profile
找到java安装路径
export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
更新环境变量
source /etc/profile
java -version
下载地址:https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-2.9.2/hadoop-2.9.2.tar.gz
下好后,将压缩包解压到目录/usr/local
下,并修改文件名,当然要在root权限下操作
tar -zxvf hadoop-2.9.2.tar.gz -C /usr/local
mv -v hadoop-2.9.2 hadoop
hadoop配置涉及的文件有7个:core-site.xml
、hadoop-env.sh
、yarn-env.sh
、mapred-site.xml
、yarn-site.xml
、slaves
、hdfs-site.xml
,这些文件都在/usr/local/hadoop/etc/hadoop/目录
下
配置之前先在/usr/local/hadoop
下创建所需的文件
mkdir -p /usr/local/hadoop/hdfs/tmp
mkdir -p /usr/local/hadoop/hdfs/data
mkdir -p /usr/local/hadoop/hdfs/name
这个是Hadoop的核心配置文件,需要配置两个属性:
fs.default.name
配置来Hadoop的HDFS系统的命名,位置为主机的9000端口hadoop.tmp.dir
配置了Hadoop的临时文件的位置添加以下代码:
<configuration>
<property>
<name>fs.default.namename>
<value>hdfs://master:9000value>
property>
<property>
<name>hadoop.tmp.dirname>
<value>/usr/local/hadoop/hdfs/tmpvalue>
configuration>
该文件是Hadoop运行基本环境的配置,需要修改JDK的实际位置。。故在该文件中修改为JAVA_HOME值为本季安装位置:
export JAVA_HOME=/usr/java/jdk1.8.0_201
# export JAVA_HOME=/home/y/libexec/jdk1.6.0/
export JAVA_HOME=/usr/java/jdk1.8.0_201
这个是MapReduce的相关配置,Hadoop2.x中没有mapred-site.xml文件,需要由mapred-site.xml.template复制的到
cp -v mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
添加以下代码:
<configuration>
<property>
<name>mapreduce.framework.namename>
<value>yarnvalue>
property>
configuration>
<configuration>
<property>
<name>yarn.nodemanager.aux-servicesname>
<value>mapreduce_shufflevalue>
property>
<property>
<name>yarn.resourcemanager.hostnamename>
<value>mastervalue>
property>
configuration>
注意:master为自己主机名
<configuration>
<property>
<name>dfs.namenode.name.dirname>
<value>/usr/local/hadoop/hdfs/namevalue> # namenode临时文件所存放的目录
property>
<property>
<name>dfs.datanode.data.dirname>
<value>/usr/local/hadoop/hdfs/datavalue> # datanode临时文件所存放的目录
property>
<property>
<name>dfs.replicationname>
<value>3value> #默认3
property>
configuration>
该文件里面保存有slave节点的信息,在slave文件里添加以下代码:
slave #有几个子节点,就添加几个,我这创了一个
该文件配置的是主机名与IP地址的映射。
192.168.144.143 master
192.168.144.144 slave
vim /etc/profile
export HADOOP_HOME=/usr/local/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
更新变量:source /etc/profile
hadoop version
主节点master和子节点slave都要配置
systemctl disable firewalld #关闭防火墙
reboot #重启
输入命令ssh-keygen -t rsa
,连续按三次Enter健
ssh-copy-id -i /root/.ssh/id_rsa.pub master #依次输入yes,root用户密码
ssh-copy-id -i /root/.ssh/id_rsa.pub slave
ifconfig -a # 查看当前ip地址
修改/etc/sysconfig/network-scripts/ifcfg-ens33
复制master上java文件到slave
scp -r /usr/java root@slave:/usr
复制master上hadoop文件到slave
scp -r /usr/local/hadoop root@slave:/usr/local
vim /etc/profile
添加以下代码:
export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export HADOOP_HOME=/usr/local/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
更新环境变量
source /etc/profile
NTP是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源做同步化,提供高精准度的时间校正。Hadoop集群对时间要求很高,主节点和各从节点的时间都必须要同步。配置时间同步服务主要是为了进行集群间的时间同步。
在各节点安装NTP服务,执行命令:
yum install -y ntp
最终出现complete!,安装完成
vi /etc/ntp.conf
注释掉以server
开头掉行,并添加以下代码:
restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap
server 127.127.1.0
fudge 127.127.1.0 stratum 10
在slave节点中也同样配置ntp服务,修改slave节点中的ntp.conf
,注释掉以server开头的行,添加以下代码:
server master
1.在master节点执行命令:
service ntpd start & chkconfig ntpd on
2. 在slave上执行命令ntpdate master
3. 在slave上执行命令:
service ntpd start & chkconfig ntpd on
永久开启时间同步
启动之前需要先格式化一下,在master上执行命令:
hdfs namenode -format
在master上直接进入Hadoop安装目录
cd $HADOOP_HOME # 进入hadoop安装目录
sbin/start-dfs.sh # 启动HDFS相关服务
sbin/start-yarn.sh # 启动YARN相关服务
sbin/mr-jobhistory-daemon.sh start historyserver # 启动日志相关服务
或者直接执行命令:
start-all.sh
在主节点master和子节点slave上分别执行jps
命令
### 关闭集群命令
cd $HADOOP_HOME
sbin/stop-dfs.sh # 启动HDFS相关服务
sbin/stop-yarn.sh # 启动YARN相关服务
sbin/mr-jobhistory-daemon.sh stop historyserver # 启动日志相关服务
在自己电脑浏览器上输入网址:http://192.168.144.143:50070
,回车,便可看到HDFS的监控界面
1.Overview记录了NameNode的启动时间、版本号编译版本等一些基本信息
2.Summary是集群信息,提供了当前集群环境的一些有用信息,从图中可知所有DataNode节点的基本存储信息。
选择"Utilities"->"Browse the file system"菜单命令可以查看HDFS上的文件信息。