安装hadoop之前,必须要先有jdk。所以jdk

在linux环境中配置java全局变量

第一步,下载

下载地址:
Index of /dist/hadoop/common/hadoop-3.1.3

第二步,解压

tar -zxvf  hadoop-3.1.3.tar.gz

第三步,获取文件路径

pwd

结果如下:/mnt/soft/hadoop-3.1.3

第四步,配置/etc/profile文件

vim /etc/profile
#set hadoop environment
export HADOOP_HOME=/mnt/soft/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

第五步,让修改后的文件生效

source /etc/profile

第六步,测试是否安装成功

hadoop version

这只能说安装好了,但是不能用,接下来需要启动hadoop

第七步:修改配置文件

在hadoop目录下的etc/hadoop中修改配置文件

cd /mnt/soft/hadoop-3.1.3/etc/hadoop/

首先:修改hadoop-env.sh

vim  hadoop-env.sh

设置java路径

export JAVA_HOME=/mnt/soft/jdk1.8.0_91

其次:修改 core-site.xml 文件

vim core-site.xml
<configuration>
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://hadoop1:9000</value>
        </property>
        
        <property>
                <name>hadoop.tmp.dir</name>
                <value>/mnt/soft/hadoop-3.1.3/tmp</value>
        </property>
</configuration>

其中hadoop1就是你本地的ip地址

接着:修改 hdfs-site.xml 文件

vim hdfs-site.xml
<configuration>
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>
</configuration>

第八步:初始化文件系统

初始化名称节点名称

hdfs namenode -format

如果出现下图,说明初始化成功。

大数据服务之linux中安装hadoop在linux环境中配置java全局变量_vim

 在sbin目录下,启动hdfs

start-dfs.sh

这个时候可能会出现错误。

大数据服务之linux中安装hadoop在linux环境中配置java全局变量_vim_02

 这个原因是启动时需要设置启动账号。

vim start-dfs.sh

在start-dfs.sh最上面添加如下代码

HDFS_DATANODE_USER=root
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

意思是,需要启动账号,当然,如果stop-dfs.sh也要加上。

这样也不能启动。还会出现如下错误。

大数据服务之linux中安装hadoop在linux环境中配置java全局变量_大数据_03

 报错原因是:

  • 本机未设置ssh免密码登录本机(也就是说,ssh localhost的时候需要密码)此时会报错

  当我们输入ssh localhost 是需要输入密码的

解决方法是:

  • 设置本机登录本机免密码即可(教程参照网上资料,大概逻辑为:服务端生成私钥和公钥,服务器端持有私钥,公钥交由客户端,此后客户端可免密码登录服务器端)
  • 具体代码实施如下(在 ~/.ssh目录下进行如下操作):
ssh-keygen -t rsa
# 在之后跳出的文字交互界面一路回车+yes即可
cat id_rsa.pub >> authorized_keys
# 将公钥追加到authorized_keys文件中去
chmod 600 authorized_keys
# 将authorized_keys文件权限更改为600
# 至此设置免密操作完毕

  当我们输入ssh localhost 是不需要输入密码的

这样再次启动,就成功了。

我们可以通过jsp语言来查看是否启动了。

大数据服务之linux中安装hadoop在linux环境中配置java全局变量_hdfs_04