Hadoop初体验--Hadoop伪分布式搭建

Hadoop的安装(Linux需要有jdk环境,这里就不加啰嗦了)

1.下载Hadoop

官网下载地址:https://www.apache.org/dist/hadoop/common/

这里推荐使用的版本不用太高,本人使用的是2.7.6

用xftp复制到Linux中,然后通过tar   -zxvf  文件名.tar.gz 解压。

2.配置环境变量

在/etc/profile文件中添加如下语句:

    export HADOOP_HOME=hadoop的安装目录

    export PATH=$PATH:$JAVA_HOME:$HADOOP_HOME/bin

    

    配置完后,重启配置使其生效。source /etc/profile。

    运行 hadoop输出一长串信息,说明hadoop环境变量配置成功。

3.修改hadoop的配置文件

    1.修改hadoop中etc/hadoop目录下hadoop-env.sh文件 ,将其中的JAVA_HOME改为jdk安装目录,我们的jdk安装目录               为/home/cc/jdk1.8.0_151。修改后如下图所示:

    

2.修改hadoop中etc/hadoop/目录下的core-site.xml文件。这个文件的详解可以查看官网http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/core-default.xml   上的说明。我们先看看io.seqfile.local.dir配置项,这个是用来指定序列文件在合并期间存储中间数据文件的本地目录,而它的值是 ${hadoop.tmp.dir}/io/local。我们再看看这里面引用的临时文件目录配置项 hadoop.tmp.dir,它的值为 /tmp/hadoop-${user.name}。也就是说,默认情况下,文件合并期间产生的中间数据文件存放在临时目录/tmp/hadoop下。大家都知道这是一个临时文件目录,当我们再次启动服务器的时候,该目录下的文件就会清空,所以,为了更久的保存数据,我们可以重新指定一个目录,用来存储这些数据文件。

我们在当前用户目录下创建tmp(mkdir tmp)目录,路径为/home/cc/tmp。打开core-site.xml文件,添加内容如下:

在<configuration>中添加如下配置

(1)添加指定中间数据文件存放目录的配置。

<property>

<name>hadoop.tmp.dir</name>

   <value>/home/cc/tmp</value>

</property>

(2)添加指定默认文件系统名称的配置。即,请求这个hdfs的URL地址。

<property>

<name>fs.defaultFS</name>

   <value>hdfs://localhost:9000</value>

</property>

其中第一个property标签为添加指定中间数据文件存放目录的配置,我这里填写的目录为hadoop的同级目录下,在之后格式化文件系统的时候会生成这个路径;
第二个property标签为添加指定默认文件系统名称的配置,即,请求这个hdfs的URL地址,ip为linux的内网ip。

3.修改hadoop中etc/hadoop目录下的hdfs-site.xml文件。这个文件的详解可以查看官网 http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml 上的说明。我们先看这个配置文件中的 dfs.replication 配置项,这个是用来指定hdfs的副本数的,默认值为3。现在我们用的是伪分布式,没有那么多副本节点,所以我们将其改为1

打开hdfs-site.xml文件,在<configuration></configuration>标签中添加如下代码:

<property>

<name>dfs.replication</name>

     <value>1</value>

</property> 

修改完后,如下图所示:

4.设置ssh无密码登录

现在当我们每次使用ssh localhost访问的时候,都需要输入密码。此时我们可以改成无密码登录。首先退出root用户,到普通用户(使用root用户也可以)。然后执行 ssh-keygen 命令生成密钥。

输入了  ssh-keygen 后   ,一直按回车就好了(圈起来的地方)

这里只要出现上图的图案,则表示修改成功

修改成功后,输入密码的时候直接按回车键就OK了

执行后会在用户登录目录下生成.ssh目录,.shh里面会有id_rsa、id_rsa.pub个文件,如下图所示:

注意.ssh目录是隐藏的,使用ls -a命令可以看到。

将生成的公钥加入到许可文件中,即将公钥复制到 .ssh/authorized_keys中,这样登录就不需要密码了。执行命令 cp id_rsa.pub authorized_keys,完成后.ssh目录中的文件如下:

5.格式化系统文件

执行hadoop中bin目录下的hdfs namenode -format 指令即可。(这里注意一下,尤其是像我一样的新手,切换到普通用户后环境变量可能是没有生效的,因此不能直接使用hdfs命令,需要使用 source /etc/profile 命令使环境变量生效)

6.开启节点守护进程

执行hadoop 中sbin 目录下的start-dfs.sh 指令即可

使用jps查看进程启动情况,如下图所示(刚搭建完成的时候只有打勾的四个)

7.关闭防火墙(用我们老师的话来说,看防火墙的状态就可以知道这个人是不是搞编程的)

查看防火墙状态:sudo ufw status 关闭防火墙:sudo ufw disable 开启防火墙:sudo ufw enable    sudo ufw default deny。

systemctl stop firewalled

systemctl disable firewalled

systemctl status firewalled

当前禁用不会立即改变防火墙的状态,需要重启才行,所以需要我们手动的关闭一次。

8.访问页面

在浏览器中输入http://<hadoop服务器IP地址>:50070,能看到启动进程页面,说明搭建成功。页面如下:

如果不知道ip地址的,在终端输入:ifconfig即可

这样就ok了~



 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值