精华内容
下载资源
问答
  • hadoop 单机安装

    2018-01-25 22:06:18
    hadoop 单机安装 对于初学者应该是很有用,简单易懂实用
  • hadoop单机

    2013-08-10 17:03:54
    hadoop单机
  • hadoop单机版安装教程

    2017-05-07 14:11:30
    hadoop单机版安装教程
  • 2_1 hadoop单机版安装
  • Hadoop单机模式

    千次阅读 2019-05-20 20:40:33
    Hadoop单机模式的部署与搭建 准备 Centos 7 64位操作系统(运行于VM虚拟机上) Hadoop开源文件 JDK(java的核心JDK) 开始部署与搭建Hadoop 1.VM虚拟机上打开centos 7(64位) 2.将下载好的hadoop压缩文件从...

    Hadoop单机模式的部署与搭建

    准备

    Centos 7 64位操作系统(运行于VM虚拟机上)https://mp.csdn.net/mdeditor/88190423#
    Hadoop-2.5.1开源文件 http://hadoop.apache.org/
    JDK(java的核心JDK,jdk-8u201-windows-x64) https://www.oracle.com/technetwork/java/javase/downloads/index.html

    开始部署与搭建Hadoop

    1.VM虚拟机上打开centos 7(64位)
    在这里插入图片描述

    2.将下载好的hadoop压缩文件从windows移动到centos的桌面,并解压

    在这里插入图片描述
    3.将Hadoop解压后的文件移动到用户目录HOME下。
    在这里插入图片描述
    4.配置hadoop的环境变量,打开命令行界面,vim打开/etc/profile文件,写入如下配置变量,wq退出保存!
    在这里插入图片描述
    5.可以选择重启虚拟机永久生效坏境变量,也可以命令行输入 source /etc/profile在当前命令行窗口暂时生效
    在这里插入图片描述
    6.下一步,命令行输入hadoop,回车,检查是否出现java_home错误提示,若出现,环境变量配置成功,若出现command not found,就重新再来一遍
    在这里插入图片描述
    7.配置java JDK环境,查看linux是否安装了jdk,输入java -version,可以看到linux已经默认安装了jdk(若无jdk,第八步可跳过)
    在这里插入图片描述
    8.输入命令 rpm -e --nodeps rpm -qa | grep java 删除linux默认安装的jdk,并再次查看,jdk已全部删除
    在这里插入图片描述
    9.创建文件夹目录
    在这里插入图片描述
    10.移动jdk压缩包 jdk-8u201-linux-x64.tar.gz到centos的桌面
    在这里插入图片描述
    11.通过命令行来到桌面,解压 jdk-8u201-linux-x64.tar.gz到桌面
    在这里插入图片描述
    12.将桌面jdk jdk-8u201-linux-x64.tar.gz解压文件jdk1.8.0_201移动到/usr/java/jdk下
    在这里插入图片描述
    13.vim打开/etc/profile文件,配置jdk环境变量
    在这里插入图片描述
    14.配置完成后,wq保存退出,可以选择重启虚拟机永久生效坏境变量,也可以命令行输入 source /etc/profile在当前命令行窗口暂时生效

    在这里插入图片描述
    15.输入java -version查看jdk安装情况,如图所示,jdk安装完成
    在这里插入图片描述
    16.再次输入hadoop,看到如下结果,表示hadoop安装配置完成
    在这里插入图片描述

    展开全文
  • hadoop单机安装

    2012-07-10 08:50:57
    Hadoop单机安装配置过程 1. 首先安装JDK,必须是sun公司的jdk,最好1.6版本以上 2. 安装ssh,免密码登陆。
  • 之前是在docker中配置的hadoop单机伪分布式[Hadoop:Hadoop单机伪分布式的安装和配置 ],并且在docker只有root用户,所有没有权限问题存在。官方安装文档[Hadoop: Setting up a Single Node Cluster] ...

    http://blog.csdn.net/pipisorry/article/details/51623195

            之前是在docker中配置的hadoop单机伪分布式[Hadoop:Hadoop单机伪分布式的安装和配置 ],并且在docker只有root用户,所有没有权限问题存在。官方安装文档[Hadoop: Setting up a Single Node Cluster]

            这里直接在linux/macos下配置,主要是为了能用netbeans ide/python-charm调试hadoop程序,并且使用的用户就是开机时登录的用户。

    本教程配置环境:

    ubuntu14.04 / macos(Ubuntu 12.04 /32位、64位都ok! )

    hadoop 2.6 / hadoop3.0 (原生 Hadoop 2、3都ok!)

    jdk1.7.0_101 / jdk 1.8 (1.7+都ok!)

    皮blog

     

    基本环境配置

    安装和配置Java环境

    在主机上从Oracle官方网站下载对应版本的JDK安装包

    $ sudo vim ~/.bashrc 或者/etc/profile
    第一行“...”的path末尾加上:${JAVA_HOME}/bin,后面export路径

    PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

    export JAVA_HOME=/opt/jdk1.8.0_73
    export JRE_HOME=${JAVA_HOME}/jre
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

    export PATH=$PATH:${JAVA_HOME}/bin

    $ sudo update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_73/bin/java 300;

    sudo update-alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_73/bin/javac 300;
    sudo update-alternatives --install /usr/bin/javah javah /opt/jdk1.8.0_73/bin/javah 300;
    sudo update-alternatives --install /usr/bin/jar jar /opt/jdk1.8.0_73/bin/jar 300

    . ~/.bashrc 或者/etc/profile
    测试java是否安装成功
    root@f26f7d459863:/#java -version

    [java环境配置:安装jdk、eclipse]

     

    安装SSH、配置SSH无密码登陆

    单节点模式可能不需要用到 SSH,但是伪分布式和分布式肯定需要 (ssh must be installed and sshd must be running to use the Hadoop scripts that manage remote Hadoop daemons,运行hadoop不需要ssh localhost登录,只要安装并运行了sshd就可以了)。

    安装 SSH client和SSH server

    (如果默认安装就不用了,查看安装which ssh, which sshd)
    $sudo apt-get install -y openssh-server

    编辑sshd的配置文件pika:~$sudo vim /etc/ssh/sshd_config,将其中大概88行,UsePAM参数设置成“no”
    启动sshd服务~$sudo /etc/init.d/ssh start

    #每次重启都要重新启动,所以要加入到profile中开机自启

    $sudo vim /etc/profile

    其中加入一行/etc/init.d/ssh start

    查看ssh服务状态 pika:~$ps -e | grep ssh

    15358 ??         0:00.07 sshd: youzipi [priv] 

    15364 ??         0:00.03 /usr/bin/ssh-agent -l

    查看是否可以免密登录

    $ ssh localhost

    Note: 如果非免密或者出错的解决方案

    1 免密:

      $ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
      $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
      $ chmod 0600 ~/.ssh/authorized_keys

    2 Mac OS中输入命令ssh localhost得到ssh: connect to host localhost port 22: Connection refused,解决方法是选择系统偏好设置->选择共享->点击远程登录。

    皮blog

     

     

     

    Hadoop的安装和配置

            Hadoop 可以通过 http://mirror.bit.edu.cn/apache/hadoop/common/ 或者 http://mirrors.cnnic.cn/apache/hadoop/common/ 下载,一般选择下载最新的稳定版本,即下载 “stable” 下的 hadoop-....x.y.tar.gz 这个格式的文件,这是编译好的。

            lz在linux中测试使用hadoop 2.6.4,后来在macos中测试使用的hadoop 3.2.0,都ok。

    安装Hadoop 至 /usr/local/ 中

    下载hadoop到/usr/local并解压

    ~$sudo wget http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-.../hadoop-....tar.gz -P /usr/local

    ~$cd /usr/local/

    /usr/local$sudo tar -zxf hadoop-....tar.gz
    /usr/local$sudo ln -s /usr/local/hadoop-... /usr/local/hadoop        #设置软链接(必须是完整路径非相对路径)
    /usr/local$ls /usr/local/hadoop
    bin  etc  include  lib  libexec  LICENSE.txt  NOTICE.txt  README.txt  sbin  share

    sudo chown -R hadoop ./hadoop       # -R递归修改文件所有者为hadoop

    检查 Hadoop 是否可用

    /usr/local$hadoop/bin/hadoop version

    Hadoop执行命令目录加入到path中

    ~$sudo vim ~/.bashrc (for linux)  或者 sudo vim ~/.bash_profiel (for macos)  或者 /etc/profile
    export JAVA_HOME=/opt/jdk1.8.0_73
    export JRE_HOME=${JAVA_HOME}/jre

    export HADOOP_HOME=/usr/local/hadoop

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

    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/

    export CLASSPATH=$CLASSPATH:/usr/local/hadoop-2.6.4/etc/hadoop:/usr/local/hadoop-2.6.4/share/hadoop/common/lib/*:/usr/local/hadoop-2.6.4/share/hadoop/common/*:/usr/local/hadoop-2.6.4/share/hadoop/hdfs:/usr/local/hadoop-2.6.4/share/hadoop/hdfs/lib/*:/usr/local/hadoop-2.6.4/share/hadoop/hdfs/*:/usr/local/hadoop-2.6.4/share/hadoop/yarn/lib/*:/usr/local/hadoop-2.6.4/share/hadoop/yarn/*:/usr/local/hadoop-2.6.4/share/hadoop/mapreduce/lib/*:/usr/local/hadoop-2.6.4/share/hadoop/mapreduce/*:/usr/local/hadoop-2.6.4/contrib/capacity-scheduler/*.jar

    ~$ . ~/.bashrc  或者~/.bash_profiel  或者/etc/profile    或者重新登录terminal

    ~$echo $PATH    #查看生效否

    hadoop中配置JAVA_HOME

    搜索和设置 export JAVA_HOME=“java最新位置”。

    hadoop2:

    ~$sudo vim /usr/local/hadoop/libexec/hadoop-config.sh

    hadoop3:

    ~$vi /usr/local/hadoop/etc/hadoop/hadoop-env.sh

    皮blog

     

    Hadoop单机伪分布式配置

            Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。
            Hadoop 的配置文件位于 /usr/local/hadoop/etc/hadoop/ 中,伪分布式需要修改2个配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现。

    修改配置文件 core-site.xml和hdfs-site.xml

    ~$cd /usr/local/hadoop

    /usr/local/hadoop$sudo vim etc/hadoop/core-site.xml

    将当中的<configuration></configuration>修改成:

    <configuration>
        <property>
            <name>fs.defaultFS</name>
            <value>hdfs://localhost:9000</value>
        </property>
    </configuration>

    同样修改配置文件 hdfs-site.xml:

    pika:/usr/local/hadoop$sudo vim etc/hadoop/hdfs-site.xml

    <configuration>
        <property>
            <name>dfs.replication</name>
            <value>1</value>
        </property>
    </configuration>

    Hadoop配置文件说明

            Hadoop 的运行方式是由配置文件决定的(运行 Hadoop 时会读取配置文件),因此如果需要从伪分布式模式切换回非分布式模式,需要删除 core-site.xml 中的配置项。
            此外,伪分布式虽然只需要配置 fs.defaultFS 和 dfs.replication 就可以运行,不过若没有配置 hadoop.tmp.dir 参数,则默认使用的临时目录为 /tmp/hadoo-hadoop,而这个目录在重启时有可能被系统清理掉,导致必须重新执行 format 才行。

            同时也指定 dfs.namenode.name.dir 和 dfs.datanode.data.dir,否则在接下来的步骤中可能会出错。

    配置完成后,执行 NameNode 的格式化

    /usr/local/hadoop$sudo bin/hdfs namenode -format
    成功的话,会看到有个提示“successfully formatted” 。

    开启 NameNode 和 DataNode 守护进程

    对hadoop安装目录执行命令对文件敞开权限,否则会出错Starting namenodes on [localhost] localhost: mkdir: cannot create directory ‘/usr/soft/hadoop-2.6.3/logs’: Permission denied

    $sudo chown -R pika:pika /usr/local/hadoop
    $sudo chmod u+w -R /usr/local/hadoop

    Note: lz将hadoop目录所有权修改成了当前用户pika及用户组pika,并给目录递归加上的当前用户pika的写权限。当然也可以直接给所有用户都加上w权限:$sudo chmod a+w -R /usr/local/hadoop/,不过lz觉得这样可能会有安全隐患。

    pika:~$start-dfs.sh
    Note: 若出现SSH提示,输入yes即可;要通过下面的jps查看hadoop是否运行正确了。

    如果运行上面的start-dfs.sh出错,再次运行可能会出错,要先通过stop-dfs.sh关闭,再次运行。

    通过jps查看启动的Hadoop进程

    启动完成后,可以通过命令 jps 来判断是否成功启动,若成功启动则会列出如下进程: “NameNode”、”DataNode” 和 “SecondaryNameNode”(如果 SecondaryNameNode 没有启动,请运行 sbin/stop-dfs.sh 关闭进程,然后再次尝试启动尝试)。如果没有 NameNode 或 DataNode ,那就是配置不成功,请仔细检查之前步骤,或通过查看启动日志排查原因。

    pika:~$jps

    通过web界面访问

    如果是linux或者虚拟机配置的hadoop,成功启动后,可以访问 Web 界面http://localhost:9870(for hadoop3.x) http://localhost:50070(for hadoop2.x) 查看 NameNode 和 Datanode 信息,还可以在线查看 HDFS 中的文件。

    Note: 如果两个地址都打不开,可能是namenode初始化默认端口失效,需手动修改配置文件设置默认端口 hdfs-site.xml 添加dfs.http.address,将绑定IP改为0.0.0.0,而不是本地回环IP,这样就能够实现外网访问本机的50070端口了。 

    <property>
      <name>dfs.http.address</name>
      <value>0.0.0.0:50070</value>
    </property>

    ,然后stop-dfs.sh,stop-yarn.sh,重新格式化,jps查看,再访问。

    启动Hadoop可能的错误及解决

    Hadoop namenode无法正常启动,jps中查看不到namenode
    一般可以查看启动日志来排查原因,注意几点:
    starting namenode,启动日志信息是记录在/usr/local/hadoop/logs/hadoop-`用户名`-namenode-`机器名`.log”。
    每一次的启动日志都是追加在日志文件之后,一般出错的提示在最后面,通常是写着 Fatal、Error、Warning 或者 Java Exception 的地方。可以在网上搜索一下出错信息,看能否找到一些相关的解决方法。

    如:$ tail -20 /usr/local/hadoop/logs/hadoop-youzipi-namenode-youzipideMacBook-Pro.local.log 

    。。。Exiting with status 1: org.apache.hadoop.hdfs.server.common.InconsistentFSStateException: Directory /private/tmp/hadoop-youzipi/dfs/name is in an inconsistent state: storage directory does not exist or is not accessible.。。。

    SHUTDOWN_MSG: Shutting down NameNode at youzipideMacBook-Pro.local/30.6.200.194。。。

    这个错误可能的原因有:

    1 namenode没有如上格式化 或者 格式化多次后再格式化失败,这时可以使用强制格式化hadoop namenode -format -force

    2 没有目录就加个目录mkdir /private/tmp/hadoop-youzipi/dfs/name

    3 没有如上sudo vim etc/hadoop/hdfs-site.xml配置

    4 没有如上修改当前用户write目录的权限。

    错误1:

    启动时可能会出现如下 WARN 提示:WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable。该 WARN 提示可以忽略,并不会影响正常使用(该 WARN 可以通过

    编译 Hadoop 源码解决)。

    错误2:

    出错:Starting namenodes on [localhost]
    localhost: Error: JAVA_HOME is not set and could not be found.

    明明已经设置了,并且$ echo $JAVA_HOME
    /opt/jdk1.8.0_91成功输出!

    解决方案:

    如上提到的,要在hadoop中配置JAVA_HOME

    pika:~$sudo vim /usr/local/hadoop-2.6.4/libexec/hadoop-config.sh

    在大概161行位置加上export JAVA_HOME=/opt/jdk1.8.0_73

    错误3:

    启动 Hadoop 时提示 Could not resolve hostname
    如果启动 Hadoop 时遇到输出非常多“ssh: Could not resolve hostname xxx”的异常情况
    这个并不是 ssh 的问题,可通过设置 Hadoop 环境变量来解决。首先按键盘的 ctrl + c 中断启动,然后在 ~/.bashrc 中,增加如下两行内容(设置过程与 JAVA_HOME 变量一样,其中 HADOOP_HOME 为 Hadoop 的安装目录):
    export HADOOP_HOME=/usr/local/hadoop
    export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
    执行 source ~/.bashrc 使变量设置生效,然后再次执行 ./sbin/start-dfs.sh 启动 Hadoop。

    错误4:DataNode 没有启动

    一般情况下,若是 DataNode 没有启动,可尝试如下的方法(注意这会删除 HDFS 中原有的所有数据,如果原有的数据很重要请不要这样做):
    ./sbin/stop-dfs.sh   # 关闭
    rm -r ./tmp 删除 tmp 文件,注意这会删除 HDFS 中原有的所有数据
    ./bin/hdfs namenode -format 重新格式化 NameNode
    ./sbin/start-dfs.sh  # 重启

    皮皮blog

     

     

    Hadoop单机伪分布式运行实例

    单机模式grep 例子读取的是本地数据,伪分布式读取的则是 HDFS 上的数据。

    Hadoop运行java mapred程序

    这里我们还要自己写java代码,并在java代码中引入hadoop packages。

    添加hadoop classpath

    这一步已经在上面的path环境配置中配置过了

    $hadoop classpath

    /usr/local/hadoop-2.6.4/etc/hadoop:/usr/local/hadoop-2.6.4/share/hadoop/common/lib/*:/usr/local/hadoop-2.6.4/share/hadoop/common/*:/usr/local/hadoop-2.6.4/share/hadoop/hdfs:/usr/local/hadoop-2.6.4/share/hadoop/hdfs/lib/*:/usr/local/hadoop-2.6.4/share/hadoop/hdfs/*:/usr/local/hadoop-2.6.4/share/hadoop/yarn/lib/*:/usr/local/hadoop-2.6.4/share/hadoop/yarn/*:/usr/local/hadoop-2.6.4/share/hadoop/mapreduce/lib/*:/usr/local/hadoop-2.6.4/share/hadoop/mapreduce/*:/usr/local/hadoop-2.6.4/contrib/capacity-scheduler/*.jar

    Note:要将hadoop classpath输出加入到CLASSPATH中,Hadoop provides a convenient utility to get the CLASSPATH information you need. Run "hadoop classpath" This should give you the information you need set your classpath for compiling your code.否则java代码中import package org.apache.hadoop.*会出错:javac .java error: package org.apache.hadoop.conf does not exist...[package org.apache.hadoop.fs does not exist]

    #启动hadoop并将input文件copy到hdfs中

    首先需要在 HDFS 中创建用户目录,接着将文件复制到分布式文件系统中。[hadoop HDFS常用文件操作命令]

    $hdfs dfs -mkdir -p /pika/input   Note: hdfs dfs命令应该和hadoop fs等价
    $hdfs dfs -ls /

    drwxr-xr-x   - pika supergroup          0 2016-06-10 19:22 /pika

    将输入文件copy到hadoop hdfs文件系统中供其使用(.java文件是可以不用copy进去的)

    $hdfs dfs -put .../*input* /pika/input

    $hdfs dfs -ls /pika/input

    -rw-r--r--   1 pika supergroup        165 2016-06-10 19:28 /pika/input/example-input.txt
    drwxr-xr-x   - pika supergroup          0 2016-06-10 19:28 /pika/input/part1-input

    Note: 示例input文件下载[avg-time hadoop程序]

    #编译执行java的hadoop程序

    $cd 本地java文件目录
    $rm -f *.class *.jar#移除已有的java编译文件

    $javac AvgTime.java
    $jar cfm AvgTime.jar AvgTime-manifest.txt AvgTime*.class
    $hdfs dfs -rm -f -r /pika/output             #移除已有的output文件夹目录

    $hadoop jar ./AvgTime.jar /pika/input/example-input.txt /pika/output             #执行hadoop程序
    $hdfs dfs -cat '/pika/output/part-*' #查看输出
    1.2.3.4 18811001100    2 28.500
    alpha 1.2.3.4    2 20.200
    beta alpha    2 4.100

    Note: 运行 Hadoop 程序时,为了防止覆盖结果,程序指定的输出目录(如 output)不能存在,否则会提示错误 “org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory hdfs://localhost:9000/user/hadoop/output already exists” ,因此运行前需要先删除输出目录 ./bin/hdfs dfs -rm -r output。在实际开发应用程序时,可考虑在程序中加上如下代码,能在每次运行时自动删除输出目录,避免繁琐的命令行操作:
    Configuration conf = new Configuration();
    Job job = new Job(conf);
    /* 删除输出目录 */
    Path outputPath = new Path(args[1]);
    outputPath.getFileSystem(conf).delete(outputPath, true);

    [Hadoop计算平均值【转】]

    Hadoop运行python mapred程序

    Hadoop Streaming 原理

            Hadoop 本身是用 Java 开发的,程序也需要用 Java 编写,但是通过 Hadoop Streaming,我们可以使用任意语言来编写程序,让 Hadoop 运行。Hadoop Streaming 就是通过将其他语言编写的 mapper 和 reducer 通过参数传给一个事先写好的 Java 程序(Hadoop 自带的 hadoop-streaming-*.jar),这个 Java 程序会负责创建 MR 作业,另开一个进程来运行 mapper,将得到的输入通过 stdin 传给它,再将 mapper 处理后输出到 stdout 的数据交给 Hadoop,经过 partition 和 sort 之后,再另开进程运行 reducer,同样通过 stdin/stdout 得到最终结果。

    Python的MapReduce代码 

            因此,使用Python编写MapReduce代码的技巧就在于我们使用了 HadoopStreaming 来帮助我们在Map 和 Reduce间传递数据通过STDIN (标准输入)和STDOUT (标准输出)。我们仅仅使用Python的sys.stdin来输入数据,使用sys.stdout输出数据,这样做是因为HadoopStreaming会帮我们办好其他事。

            编写python的mapred代码:如分布式的fpgrowth代码 [pfpgrowth]。所有的脚本执行之前都需要修改权限,否则没有执行权限:chmod +x mapper.py, chmod +x reducer.py。

    reducer中的参数设置:

    MIN_SUPPORT = 2

    input.txt:(只有这个需要上传到hdfs中,hdfs dfs -put ...) 

    u1	a	b	c
    u2	c	d	b	a
    u3	d	e	a
    u4	b	a

    group.txt:

    123	a:4
    25345	b:3
    323	c:2
    123	d:2	e:1

    Note: 需要明确一点,hadoop框架会自动的将相同的key分配到同一个reducer上,这个key,默认的就是上一个mapper输出数据的以\t,或者\001分割后的第一部分。

            运行python mapred的shell脚本

    #!/bin/bash/
     
    hadoop fs -rm -r -f /user/youzipi/output/co-purchase
     
    hadoop jar /usr/local/hadoop/share/hadoop/tools/lib/hadoop-streaming-3.2.0.jar -files mapper.py,reducer.py,group.txt -mapper "python mapper.py" -reducer "python reducer.py" -input /user/youzipi/input/input.txt -output /user/youzipi/output/co-purchase

    执行命令时候需要注意:上面的shell是在mapper.py文件所在文件夹下执行的,其它路径下需要注意-files的路径。同时也要注意hadoop-streaming-3.2.0.jar的路径,hadoop3.x是在hadoop解压包中share/hadoop/tools/lib/下,否则出错:Error opening job jar: /usr/local/hadoop/bin/hadoop 或者出错:java.util.zip.ZipException: error in opening zip file。

    shell脚本解析:-output规定了输出,而fs -rm则是删除文件,不然第二次运行的时候,由于文件存在会终止运行;

    hadoop jar *hadoop-streaming*.jar,具体的位置,要根据你自己机器上的位置而定;

    -files 指定了要分发到集群上的文件;

    -maper -reducer 指定了mapper和reduce 要运行的程序;

    -input 指定了输入文件,相当于mapper最开始的sys.stdin读入的内容。

            查看运行结果

    $hdfs dfs -cat '/user/youzipi/output/co-purchase/part-*'      #同java

    _ {"support": 2, "artists": ["a", "d"]}

    _ {"support": 3, "artists": ["a", "b"]}

    _ {"support": 2, "artists": ["a", "b"]}

    _ {"support": 2, "artists": ["a", "c"]}

    _ {"support": 2, "artists": ["c", "b"]}

    _ {"support": 2, "artists": ["a", "c", "b"]}

    从hdfs拷贝至本地:$ hdfs dfs -get output/* ./

    [用python 写mapreduce程序]

    [让python在hadoop上跑起来]

    [使用python编写hadoop的mapper 和reducer]

    from: http://blog.csdn.net/pipisorry/article/details/51623195

    ref:

     

    展开全文
  • Ubuntu配置hadoop单机环境1)修改配置文件hadoop的配置文件位于“HADOOP_HOME/etc/hadoop”中。 需要配置的文件为“core-site.xml”和“hdfs-site.xml”。 打开文件“core-site.xml”, $gedit /etc/hadoop/core-...

    Ubuntu配置hadoop单机环境


    Ubuntu在安装完hadoop之后,配置hadoop伪分布式环境只需修改配置文件即可。

    快速入口链接:
    Ubuntu安装hadoop准备工作
    Ubuntu配置hadoop伪分布式环境
    Ubuntu配置hadoop+eclipse

    1)修改配置文件

    为便于运行,可配置hadoop的环境变量,这样可在命令行直接运行hadoop命令,打开文件
    $sudo gedit ~/.bashrc
    添加语句

    export PATH=$PATH:/usr/local/hadoop/sbin:/usr/local/hadoop/bin

    hadoop的配置文件位于“HADOOP_HOME/etc/hadoop”中。
    需要配置的文件为“core-site.xml”和“hdfs-site.xml”。
    进入“HADOOP_HOME”目录,打开文件“core-site.xml”,
    $gedit /etc/hadoop/core-site.xml
    将文件修改为

    <configuration>
            <property>
                 <name>hadoop.tmp.dir</name>
                 <value>file:/usr/local/hadoop/tmp</value>
                 <description>Abase for other temporary directories.</description>
            </property>
            <property>
                 <name>fs.defaultFS</name>
                 <value>hdfs://localhost:9000</value>
            </property>
    </configuration>

    打开文件“hdfs-site.xml”,
    $gedit /etc/hadoop/hdfs-site.xml
    将文件修改为

    <configuration>
            <property>
                 <name>dfs.replication</name>
                 <value>1</value>
            </property>
            <property>
                 <name>dfs.namenode.name.dir</name>
                 <value>file:/usr/local/hadoop/tmp/dfs/name</value>
            </property>
            <property>
                 <name>dfs.datanode.data.dir</name>
                 <value>file:/usr/local/hadoop/tmp/dfs/data</value>
            </property>
    </configuration>

    配置完成后格式化namenode,
    $hdfs namenode -format
    下图所示format成功且退出状态为0。
    格式化namenode
    接下来启动hadoop,
    $start-dfs.sh
    出现错误,如下图所示
    hadoop启动错误
    需修改配置文件“HADOOP_HOME/etc/hadoop/hadoop-env.sh”,
    将语句

    export JAVA_HOME=$JAVA_HOME

    修改为语句

    export JAVA_HOME=/usr/local/java

    再次启动hadoop,
    $start-dfs.sh
    输入“yes”
    启动hadoop
    输入
    $jps
    查看活动结点
    jps查看活动结点

    在浏览器输入“http://localhost:50070”可以查看namenode和datanode的信息,
    查看结点信息


    下一篇介绍伪分布式环境的配置。
    Ubuntu配置hadoop单机+伪分布式环境+eclipse(三)

    展开全文
  • hadoop单机配置方法

    2013-08-27 21:24:07
    详细的hadoop单机配置步骤,非常好的一个文档。
  • Hadoop,分布式的大数据存储和计算, 免费开源,本文介绍Hadoop单机版、集群安装步骤。
  • PAGE4 / NUMPAGES4 hadoop单机安装手册 目录 TOC \o "1-3" \h \z \u 一搭建java环境 2 1安装jdk 2 2配置JAVA环境变量 2 3设权 2 4测试java 2 二安装SSH免登陆 2 1设置不用登陆密码 2 2完成后登录不用输入密码第一次...
  • 搭建hadoop单机版+hbase单机版+pinpoint整合springboot
  • 本文主要介绍了在Ubuntu系统上Hadoop单机版测试环境的搭建过程。
  • Hadoop单机部署文档

    2016-09-04 12:24:43
    Hadoop单机部署文档点击这里查看
    展开全文
  • hadoop单机版配置

    千次阅读 2018-11-29 22:19:49
    hadoop单机版配置必要前置软件安装HADOOP纯单机版和伪分布式 必要前置软件 首先是jdk,因为hadoop是基于java编写的。 然后是ssh,因为需要使用远程启动hadoop的守护进程——是的,即使是单机版,也会在本机使用...
  • EasyHadoop Hadoop 单机系统 安装配置 本文档是Hadoop部署文档,提供了Hadoop单机安装和Hadoop集群安装的方法和步骤,本文档希望让Hadoop安装部署更简单
  • 这是本人精心整理和编写的Hadoop单机版配置。详细描述了每一个步骤
  • title: Hadoop单机模式/伪分布式搭建 date: 2020-03-18 23:34:17 tags: Hadoop Hadoop单机模式/伪分布式搭建 准备 Hadoop三种安装模式简介 Hadoop共有三种安装模式可以使用:单机模式、伪分布式、完全分布式 1....
  • 搭建Hadoop单机伪分布式环境 本次试用的是ubuntu 16.04作为系统环境 使用的是VMware Workstation 12作为虚拟机 本次不介绍CentOS和RedHat搭建Hadoop单机伪分布式环境 hadoop使用的Hadoop 2.6.4 好的,现在开始...
  • Linux下Hadoop单机配置,供大家参考学习!
  • Hadoop单机版环境搭建

    2020-06-25 18:59:42
    Hadoop单机版环境搭建 一、前置条件 Hadoop 的运行依赖 JDK,需要预先安装,安装步骤见: Linux 下 JDK 的安装 二、创建hadoop账号 ####1、使用root账号登录,通过useradd增加用户: useradd -m hadoop -s /bin/...
  • Linux配置Hadoop单机模式 一、准备工作 一台装有CentOS 7 的虚拟机并且要能远程连接 JDK和Hadoop的安装包 两个软件 Xshell 和Xftp(或filezilla) 1.首先,将JDK和Hadoop的安装包通过Xftp传入虚拟机 当然也...
  • 大数据安装教程(Virtual&ubuntu&hadoop单机),包含虚拟机、镜像文件下载指导,手把手带你进入大数据领域,轻松掌握大数据框架结构及底层组件原理,课程分阶段提供,由入门到精通。
  • &...Hadoop Standalone Operation(Hadoop单机模式) 1、单机模式之grep案例 官方案例地址: http://hadoop.apache.org/docs/r2.7.2/hadoop-project-dist/hadoop-common/SingleCluster.html...
  • 单机安装主要用于程序逻辑调试。安装步骤基本通分布式安装,包括环境变量,主要Hadoop配置文件,SSH配置等,需要的朋友可以参考下
  • 搁置挺长时间的HBase API学习终于提上日程,打开原来创建的虚拟机,发现竟然崩掉了,于是就干脆重新创一个加上Hadoop单机版安装一个单机HBase,以下为过程记录。 准备 NAT模式的虚拟机一个(Vmware创建),具体...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 41,258
精华内容 16,503
关键字:

hadoop单机