Hadoop单机单实例安装
一、部署规划
1 基础环境
环境信息 | 版本 |
---|---|
Java | 1.8.0_251 |
环境变量 | export JAVA_HOME=/usr/local/jdk1.8.0_251 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib export PATH=$PATH:$JAVA_HOME/bin |
2 安装Hadoop
hadoop信息
信息 | 备注 |
---|---|
官网 | http://hadoop.apache.org/ |
版本 | Hadoop3.0.0 |
下载地址 | https://archive.apache.org/dist/hadoop/common/hadoop-3.0.0/hadoop-3.0.0.tar.gz |
下载
- cd /usr/local
- wget https://archive.apache.org/dist/hadoop/common/hadoop-3.0.0/hadoop-3.0.0.tar.gz
解压
- tar -xzvf hadoop-3.0.0.tar.gz
配置环境变量
-
vim /etc/profile
-
export HADOOP_HOME=/usr/local/hadoop-3.0.0
-
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
-
source /etc/profile
创建ssh免密
- cd ~/.ssh/
- ssh-keygen -t rsa
- cat id_rsa.pub >> authorized_keys
修改配置文件
- vi $HADOOP_HOME/etc/hadoop/core-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/tmp/hadoop</value>
<description>临时目录的根目录需要自己创建</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
- mkdir /tmp/hadoop
- vi $HADOOP_HOME/etc/hadoop/hdfs-site.xml
<configuration>
<!-- hdfs副本数量-->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<!--nameNode目录 根据自己的实际需要指定-->
<value>file:/tmp/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.namenode.data.dir</name>
<!--数据目录 根据自己的实际需要指定-->
<value>file:/tmp/hadoop/dfs/data</value>
</property>
<!-- 开启权限,远程客户端可以通过脚本给hdfs创建目录 -->
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
<property>
<name>dfs.datanode.http.address</name>
<value>0.0.0.0:50070</value>
</property>
</configuration>
-
vim $HADOOP_HOME/hadoop-env.sh JAVA_HOME=/usr/local/java/jdk1.8.0_251
初始化namenode 环境
-
mkdir -p /tmp/hadoop/dfs/data
-
mkdir -p /tmp/hadoop/dfs/namesecondary
-
mkdir -p /tmp/hadoop/dfs/name
-
hadoop namenode -format
启动
start-all.sh
Tips
org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot delete /sort. Name node is in safe mode.
这个异常表示hadoop处于安全状态,而你又对它进行了上传,修改,删除文件的操作。
刚启动完hadoop的时候,hadoop会进入安全模式,此时不能对hdfs进行上传,修改,删除文件的操作。
hadoop dfsadmin -safemode get 命令是用来查看当前hadoop安全模式的开关状态
hadoop dfsadmin -safemode enter 命令是打开安全模式
hadoop dfsadmin -safemode leave 命令是离开安全模式