linux+Hadoop2.7.6环境搭建+ win10+eclipse开发程序

4 篇文章 0 订阅
2 篇文章 0 订阅

开始 linux平台下Hadoop下载、安装、配置

第一步, 下载安装 maven 配置环境 变量

2、下载maven安装包

 wget wget http://mirrors.hust.edu.cn/apache/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz

 

3、解压缩maven

tar -zxvf apache-maven-3.5.4-bin.tar.gz

我这里将maven解压缩之后的路径为:/home/hadmin/apache-maven-3.5.4

4、配置maven环境变量

vi /etc/profile

按照如下样例编辑环境变量。

编辑之后记得使用source /etc/profile命令是改动生效。

export PATH=$PATH:/opt/maven/apache-maven-3.5.4/bin 

 

 

第二步,安装hadoop

下载hadoop

https://archive.apache.org/dist/hadoop/core/hadoop-2.7.6/

本次下载的是: hadoop-2.7.6.tar.gz

 注意安装自己对应的版本号

 

1.上传hadoop包,我这里使用FileZilla上传到 linux下root 目录下

    

2.解压hadoop包

     首先在根目录创建一个/itcast 目录

          mkdir /itcast

          tar -zxvf hadoop-2.7.6.tar.gz -C /itcast

 

3.配置hadoop伪分布式(要修改etc/下的4个文件) 安装hadoop的目录下, etc目录下

export JAVA_HOME=/home/jdk/jdk1.8.0_181

 

第一个:hadoop-env.sh -- 如果里面有配置变量,不用再配置,也要配置JDK环境变量

     vim hadoop-env.sh

     export JAVA_HOME=/home/jdk/jdk1.8.0_181

 

第二个:core-site.xml

<configuration>

          <!-- 用来指定hdfs的老大(NameNode)的地址 -->

        <property>

                <name>fs.defaultFS</name>

                <value>hdfs://itcast01:9000</value>

        </property>

          <!-- 用来指定Hadoop运行时产生文件的存放目录 -->

        <property>

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

                <value>/itcast/hadoop-2.7.6/tmp</value>

        </property>

</configuration>

第三个:hdfs-site.xml

     <configuration>

            <!-- 指定HDFS保存数据副本数量 --> 

          <property>

                <name>dfs.replication</name>

                <value>1</value>

        </property>

</configuration>

 

第四个:mapred-site.xml (需要从此文件复制mapred-site.xml.template)

     <configuration>

          <!-- 告诉hadoop以后MR运行在yarn上 -->

        <property>

                <name>mapreduce.framework.name</name>

                <value>yarn</value>

        </property>

     </configuration>

 

第五个:yarn-site.xml

<configuration>

          <!-- NodeManager获取数据的方式是shuffle-->

        <property>

                <name>yarn.nodemanager.aux-services</name>

                <value>mapreduce_shuffle</value>

        </property>

          <!-- 指定YARN的老大(resourcemanager)的地址 -->

        <property>

                <name>yarn.resourcemanager.hostname</name>

                <value>itcast01</value>

        </property>

</configuration>

4.将Hadoop添加到环境变量中

vim /etc/profile

export JAVA_HOME=/usr/java/jdk1.7.0_60

export HADOOP_HOME=/itcast/hadoop-2.7.6

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

export PATH=$PATH:/itcast/hadoop-2.7.6/bin 直接添加变量

          #刷新配置

          source /etc/profile

5.初始化HDFS(格式化文件系统,此步类似刚买U盘需要格式化)如果失败,可能是环境变量问题

     hdfs namenode -format

 

 6.启动文HDFS和YARN

     ./start-all.sh(过时了) 应该使用 start-dfs.sh and start-yarn.sh

这个两个命令是要一起启动的, 每个命令启动的服务不一样,(坑)start-yarn.sh

Starting namenodes on [it] Starting namenodes on [hadoop01 hadoop02]

坑 启动不成功

start-dfs.sh:command not found

在hadoop sbin目录下可以找到这个文件。但是run不起来。

 .bashrc 是个隐藏文件,一般就在用户的主目录下

1、可以使用命令ls -a查看

2、可以使用命令find -name .bashrc 查找文件在什么地方

解决方法:

1. 打开 $HOME/.bashrc 加入下面一行。

PATH=$PATH:/itcast/hadoop-2.7.6/sbin

这行代码告诉bash应该去这个目录去找这个文件。

$HOME就是在根目录下,

2. source $HOME/.bashrc

     #有个小问题(需要多次输入密码)

Java HotSpot(TM) Server VM warning: You have loaded library /itcast/hadoop-2.7.6/lib/native/libhadoop.so.1.0.0 which might have disabled stack guard. The VM will try to fix the stack guard now.

It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.

hadoop-env.sh中加入以下两行配置

export ##HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native

export HADOOP_OPTS="-Djava.library.path=${HADOOP_HOME}/lib/"

 

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform...

在/itcast/hadoop-2.7.6/etc/hadoop/log4j.properties文件中添加

log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR 

 

/etc/hosts文件作用:

itcast01: ssh: Could not resolve hostname itcast01: Name or service not known

127.0.0.1 itcast01

   接下来,使用jps查看进程情况

     jps(jps 在Linux/unix平台上简单察看当前java进程的一些简单情况),如果有以下进程则表示测试通过

3887 Jps (java进程)

3449 SecondaryNameNode (相当于NameNode的助理)

3263 DataNode (hdfs部门的小弟,负责存放数据)

3138 NameNode (hdfs部门的老大)

3579 ResourceManager (yarn部门的老大,yarn负责资源管理)

3856 NodeManager (yarn部门的小弟,可以一个,集群的话会有很多)

 

 另外,我们也可以在windows平台下,使用浏览器进行查看,是否搭建成功

     http://192.168.1.128:50070 ( hdfs管理界面)

     http://192.168.1.128:8088 (yarn管理界面)

 如果客户端无法连接,请关闭防火墙 systemctl stop firewalld.service 我用的虚拟机

     在这个文件中添加linux主机名和IP的映射关系

     c:\Windows\System32\drivers\etc

     在末尾,添加

     192.168.11.233     itcast01

(坑) yarn管理界面 无法登录

,最开始在hosts文件里,127.0.0.1  itcast01这样配置有些问题

必须还是要 192.168.11.233     itcast01 不会被站用端口。

另外,两个启动命令经常失效,配置.bashrc 文件后要经常保存才行,后面有添加变量解决

输入地址   http://192.168.1.128:50070

输入地址,http://192.168.1.128:8088/

四、测试hdfs(主要存储数据,存储海量数据)

     1.上传文件

我在终端这么操作

hadoop fs -put Testhadoop.doc hdfs://itcast01:9000/user/words

新建一个doc文件,上传到后面的地址,words是重命名了文件。上传可以在hadoop WEB界面下载,在Utilities 选项查看, 文件是在终端当前目录

      hadoop fs -put /mnt/hgfs/share/jdk-7u60-linux-i586.tar.gz hdfs://itcast01:9000/jdk

 

     2.下载文件

     hadoop fs -get hdfs://itcast01:9000/jdk /home/jdk1.7

 

五、测试MapReduce和Yarn

     官方提供了一个Jar包

     /itcast/hadoop-2.2.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.2.0.jar

 

     在这里,我们测试一下单词统计(输入与输出,都存放在hdfs,因为可能文件很大)

     我们新建一个words文件

          hello tom

hello jerry

hello kitty

hello world

hello tom

 

     将此文件words上传到hdfs上,接着我们使用mapreduce统计单词,同时输出也存放到hdfs上

          hadoop jar hadoop-mapreduce-examples-2.2.0.jar wordcount hdfs://itcast01:9000/words hdfs://itcast01:9000/wcount

 

     这一个是hdfs://itcast01:9000/wcount 上是MapReduce统计结果

          hello    5

jerry    1

kitty    1

tom    2

world    1

 

六、配置SSH免密码登录(/root/.ssh)

     #SSH协议(让linux不同机器,启动起来。hadoop老大为了让小弟听话,使用SSH进行控制)

     ssh-keygen -t rsa

     执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)

 

     将公钥拷贝成authorized_keys 文件上

     cp id_rsa.pub authorized_keys

     

     接下来,我们将公钥发送给想要登录的linux机器(实质是拷贝authorized_keys )

     ssh-copy-id 192.168.8.89

     这样,我们以后使用192.168.8.88(NameNode主机)免密登录192.168.8.89

 

(坑) 修改  ~/.bashrc 文件

添加以下这些行到 ~/.bashrc 文件的末尾,内容如下所示:

#Set HADOOP_HOME

export HADOOP_HOME=/itcast/hadoop-2.7.6

#Set JAVA_HOME

export JAVA_HOME=/home/jdk/jdk1.8.0_181

# Add bin/ directory of Hadoop to PATH

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

环境变量PATH里也可能要加上这个sbin 目录

 

 

第二部分开始,用win在eclipse上开发程序

参考下面连接, 这位博友写的非常详细

https://www.cnblogs.com/supiaopiao/p/7240308.html

 

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值