Windows安装hadoop

首先安装cygwin 见同一目录下的“下载安装Cygwin.mht”,或者上谷歌搜索关键字“下载安装Cygwin.mht”。然后安装hadoop-0.21.0,步骤如下10步:
 1. 打开cygwin
 进入D盘目录下的Hadoop文件夹:cd D:/Hadoop
 2. 安装hadoop:  tar -zvxf hadoop-0.20.1.tar.gz
 3. 解压完成后进入hadoop-0.20.1的配置目录,打开core-site.xml,加入以下内容。这里是定义namenode运行地址和端口

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


 4. 打开hdfs-site.xml,加入以下内容

   <property>
  <name>dfs.replication</name>
  <value>1</value>
   </property>
   
   <property>
  <name>dfs.name.dir</name>
  <value>/Hadoop/namenode</value>
   </property>
   <property>
  <name>dfs.data.dir</name>
  <value>/Hadoop/datanode</value>
   </property>


 5. 最后修改hadoop-env.sh,把下面注释的这行打开,并设置为你的jdk路径。
  如果你的java在Program Files下,则整个jdk路径加引号,最好是把jdk目录设置到如下:D:\Java\jdk1.6.0_26
  但是你可以这么做:
   在Hadoop的配置文件,hadoop-env.sh中,需要添加Java SDK的路径。
   要知道,Cygwin中并没有安装Java,那么只能使用Windows下安装的JDK。
   看了网上的文章,只是提到说export后面的路径需要用双引号括起来,
   因为一般JDK都是安装在“Program Files”下的。但是我这么添加以后,就是不行,
   报错“JAVA_HOME is not set”还是“…Program cannot found”来着,不太记得了,
   反正就是启动Hadoop的时候报错。经过研究后知道,首先Cygwin下不能使用windows的路径直接访问,
   需要是Linux风格的目录,如果是访问C盘下安装的JDK的话,不能使用“C:/Program Files/Java/jdk1.6.0_22”,
   而需要使用这样“/cygdrive/c/Program Files/Java/jdk1.6.0_22”;其次是hadoop好像不能识别带空格的目录路径,
   那怎么办呢,想到了符号链接,通过在Cygwin下创建一个符号链接,指向我的JDK安装目录,
   使用这样的命令:ln “C:/Program Files/Java/jdk1.6.0_22” /usr/local/jdk1.6.0_22. 
   这样就在/usr/local/下创建了一个Windows下JDK目录的符号链接,如果使用:cd /usr/local/jdk1.6.0_22, 
   然后ls下,就会发现已经在jdk的安装目录下了。然后在hadoop-env.sh中export JAVA_HOME=/usr/local/jdk1.6.0_22,
   这样就OK了
  因为我安装的时候,在Program Files中没有安装成功。修改为如下内容:
  # The java implementation to use.  Required.
  export JAVA_HOME=/cygdrive/d/Java/jdk1.6.0_26
 6. 在cygwin下进入bin目录,首先需要格式化namenode
  cd D:\Hadoop\hadoop-0.21.0\bin
  ./hadoop namenode -format
  这里会报这个错:

  java.lang.NoClassDefFoundError: org/apache/hadoop/util/PlatformName
  Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.util.PlatformName
   
     at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
     at java.security.AccessController.doPrivileged(Native Method)
     at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
     at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
     at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
  Could not find the main class: org.apache.hadoop.util.PlatformName.  Program will exit.


  解决办法如下:
  只需要将${HADOOP_HOME}/bin/hadoop-config.sh文件中的第190行的一下的内容 

  JAVA_PLATFORM=`CLASSPATH=${CLASSPATH} ${JAVA} -Xmx32m ${HADOOP_JAVA_PLATFORM_OPTS} org.apache.hadoop.util.PlatformName | sed -e "s/ /_/g"` 


  改成 

  JAVA_PLATFORM=`CLASSPATH=${CLASSPATH} ${JAVA} -Xmx32m -classpath ${HADOOP_COMMON_HOME}/hadoop-common-0.21.0.jar org.apache.hadoop.util.PlatformName | sed -e "s/ /_/g"` 


 7. 启动namenode: ./hadoop namenode
 8. 启动datanode: ./hadoop datanode
 9. 尝试上传文件:./hadoop fs -put d:/download/test.rar /tt/vm.rar  然后list一下:  ./hadoop fs -lsr /tt
  结果如下:

  -rw-r--r--   1 Administrator supergroup   20793970 2010-01-18 15:52 /tt/vm.rar

  可以在本地文件中(记得这个配置吧/Hadoop/datanode?数据文件存放地)
  D:\Hadoop\datanode\current\finalized中看到拷贝的文件,但是文件名是blk_6098310948767462040这种,可以看大小啦。。。
 10. 结束,祝大家成功。

 

安装HadoopWindows上通常需要一些额外步骤,因为Hadoop设计之初是为了在Linux集群环境下运行,而不是作为桌面操作系统的一部分。以下是安装HadoopWindows上的一般指导: 1. **选择发行版**: Hadoop有多种发行版,如Apache Hadoop、Cloudera Hadoop等。确保先下载适合Windows环境的Hadoop发行版,例如CDH (Cloudera Distribution for Hadoop)。 2. **安装Java**: Hadoop依赖于Java,所以你需要在Windows安装Java Development Kit (JDK)。可以访问Oracle官网下载安装最新版本的JDK。 3. **配置环境变量**: 需要在系统环境变量中添加Java的bin目录路径,以便系统能识别Java命令。 4. **解压并配置**: - 解压缩下载Hadoop文件到一个指定的文件夹,比如`C:\hadoop`. - 进入Hadoop目录,找到`conf`文件夹,修改`core-site.xml`, `hdfs-site.xml`, 和 `mapred-site.xml` 文件,配置Hadoop的相关参数。 5. **安装Hadoop服务**: 使用Hadoop安装脚本(如Cloudera的`cdh-service.cmd`) 创建和管理Hadoop的服务实例。 6. **启动服务**: 运行Hadoop的服务脚本来启动NameNode, DataNode, SecondaryNameNode, TaskTracker等核心服务。 7. **验证安装**: 可通过命令行工具(如`hadoop fs -ls` 或者 `jps` 来检查服务是否正在运行,并测试HDFS和MapReduce的功能。 8. **安全设置(可选)**: 如果需要,还需设置Hadoop的安全模式,如Kerberos认证。 注意:由于Windows不是Hadoop的主要平台,可能会遇到兼容性和稳定性问题。因此,很多开发者更倾向于在Linux虚拟机(如VMware或Docker)中安装Hadoop
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小小哭包

创作不易,给作者加个鸡腿吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值