前言

笔者目前是在做Android开发,又是在一个信息安全的公司。公司的主要是做在虚拟机上运行的产品,又涉猎云计算,心想是要去搞一下云计算。自我感觉移动互联网 + 云计算 + 信息安全会是一个很好的方向,于是投身其中。因为是Java出身,所以自然而然选择了Hadoop。

笔者系统环境

Linux:  CentOS release 6.5 (Final)
JDK:    java version "1.7.0_75"
        OpenJDK Runtime Environment (rhel-2.5.4.0.el6_6-x86_64 u75-b13)
        OpenJDK 64-Bit Server VM (build 24.75-b04, mixed mode)
SSH:    OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013

Hadoop: hadoop-1.2.1

环境搭建

1.安装JDK

关于JDK的安装,不是本博客的讨论范围,大家可以自行百度或是Google进行安装。

2.配置SSH免密码登录

在你的机器可以联网的前提下进行如下操作

(1) # yum install openssh-server # 安装SSH

(2) # yum -y install openssh-clients

# 如果你安装SSh完成之后,运行ssh出现系统无法识别ssh的话,需要另外安装openssh-clients

(3) # mkdir -p ~/.ssh # 如果你在安装完SSH后,这些目录都未自动生成,请自行创建

(4) # ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

ssh-keygen 表示生成密钥

-t 表示指定生成的密钥类型

dsa 是dsa密钥认证的意思,即密钥类型

-P 提供密语

-f 指定生成的密钥文件

(5) # cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

# 将公钥加到用于认证的公钥文件中,authorized_keys是用于认证的公钥文件

(6) # ssh -version

# 验证SSH是否安装完成,正确安装会有类似如下的结果:

(7)至此基本的配置已经差不多了,不过还是不能够进行免密码登录。最后一步就是要配置两个东西的权限属性:

$ chmod 700 ~/.ssh
     $ chmod 600 ~/.ssh/authorized_keys

这两步是必要的,不然你可能就不能免密码登录了。

(8)$ ssh localhost # 验证

3.安装并运行Hadoop

(1)下载hadoop-x.x.x

解压到指定目录,例如/home/u

(2)修改配置文件的配置信息

# vim ~/hadoop-1.2.1/conf/core-site.xml

# vim ~/hadoop-1.2.1/conf/hdfs-site.xml

# vim ~/hadoop-1.2.1/conf/mapred-site.xml

(3) # ~/hadoop-1.2.1/bin/hadoop namenode -format # 格式化文件系统

(4) # ~/hadoop-1.2.1/bin/start-all.sh # 启动所有进程

(5)验证Hadoop是否安装成功

进入浏览器,分别输入以下网址进行验证:

http://localhost:50030 (MapReduce的Web页面)

http://localhost:50070 (HDFS的Web页面)

验证示例:

MapReduce的Web页面

HDFS的Web页面

遇到的问题

1.启动Hadoop时,总是说JAVA_HOME未配置

当我使用教程中的shell命令在hadoop文件夹中执行bin/start-all.sh时,老是报JAVA_HOME is not set.

可是我在shell里也设置了JAVA_HOME了啊,而且我去查看系统中的JAVA_HOME也是OK的,如下:

这一点让我很是奇怪,如是我找到一篇论坛,里面的情况和我的有一些类似,不过他的一句话让我察觉到自己的搞错了一个地方,那就是上面提示的JAVA_HOME其实是要在配置文件中去设置的。

运行vim ~/hadoop-1.2.1/conf/hadoop-env.sh,这个目录请根据自己你的路径来写,修改如下:

2.-bash: bin/hadoop: Permission denied

这里如果你是在Linux下直接从网络上下载的话,应该会没什么事情。不过,如果你跟笔者一样,是使用WinSCP上传到Linux上的话,这里可以会有一个小地方需要修改。不然会报这样一个错误:

可以看到这个错误是在我们执行hadoop这个可执行文件时报的错误,那我们就只要对这个文件进行权限的修改就可以了。因为后面的还会用到一些其他的可执行文件,那么这里我就对所有的文件都做了一个可执行权限的修改(当然,这里是因为我们是在学习和测试阶段,为了避免麻烦,偷了个懒。如果要从安全的角度来考虑,这里我们是不能这样做的)。

3.Hadoop SafeMode: ON - HDFS unavailable

当然我们把之前的一些配置信息都搞了的时候,这时可能还会有一个问题,就是我们HDFS的Web页面无法访问。

这个问题其实是我们之前的一些错误配置遗留下来的问题。我们之前说过一个执行文件的权限问题,我们在操作格式化HDFS时,这个正是这个权限的问题在干扰。如是我把之前启动的进程都stop掉。然后重新format就OK了。

格式化HDFS正确时的提示信息如下:

Hadoop的学习前奏(一)——在Linux上安装与配置Hadoop相关推荐

  1. 【BI学习笔记】在Linux上安装Wyn Enterprise商业智能报表服务器

    [BI学习笔记]在Linux上安装Wyn Enterprise商业智能报表服务器 在百度文库上找来的,放到这里,避免以后丢了. 葡萄城出品的Wyn Enterprise商业智能软件的设计器和查看视图是 ...

  2. 阿里云linux上安装与配置Mysql

    记录下在阿里云linux上安装与配置Mysql 环境:阿里云ECS服务器,系统为centos7.2 用户:root 文章目录 删除原来的数据库: 下载与安装MySQL: 关于登录MySQL: 配置远程 ...

  3. 如何在Red Hat Linux上安装和配置FreeIPA

    目的 我们的目标是在Red Hat Enterprise Linux上安装和配置独立的FreeIPA服务器. 操作系统和软件版本 操作系统: Red Hat Enterprise Linux 7.5 ...

  4. linux系统管理与服务器配置高志君_如何在 Linux 上安装、配置 NTP 服务器和客户端?...

    你也许听说过这个词很多次或者你可能已经在使用它了.在这篇文章中我将会清晰的告诉你 NTP 服务器和客户端的安装. -- Magesh Maruthamuthu 你也许听说过这个词很多次或者你可能已经在 ...

  5. 装linux服务器进去配置界面,在CentOS 8 Linux上安装和配置SuiteCRM的步骤

    本文介绍在CentOS 8 Linux服务器上安装和配置SuiteCRM的详细步骤:更新系统.安装PHP.安装MariaDB和Nginx Web服务器.安装SuiteCRM.配置SuiteCRM We ...

  6. 阿里云debian mysql_记录下在阿里云linux上安装与配置Mysql

    环境:阿里云ECS服务器,系统为centos7.2 用户:root 参考博客:https://blog.csdn.net/kunzai6/article/details/81938613 师兄的哈哈哈 ...

  7. supermap iserver java 6r许可_SuperMap iserver Java 6R 在 linux 上安装和配置 | 学步园

    一.安装JDK 1.进入到放置JDK目录下 输入命令:./jdk-6u14-linux-i586.bin 开始安装jdk ,安装的时候会让你输入yes (如果提示你权限不够的话 可以输入命令:chmo ...

  8. supermap iserver java 6r许可_SuperMap iServer Java 6R 在 linux 上安装和配置

    一.安装JDK 1.进入到放置JDK目录下 输入命令:./jdk-6u14-linux-i586.bin 开始安装jdk ,安装的时候会让你输入yes (如果提示你权限不够的话 可以输入命令:chmo ...

  9. Hadoop的学习前奏(二)——Hadoop集群的配置

    前言: Hadoop集群的配置即完全分布式Hadoop配置. 笔者的环境: Linux:  CentOS 6.6(Final) x64   JDK:    java version "1.7 ...

最新文章

  1. 图灵奖得主LeCun亲授,深度学习课程在线发布|资源
  2. 手游 android 分辨率 适配,安卓不得不玩的神作,十大超高画质手游(安卓)
  3. 传统存储方式_分布式存储 vs 传统SAN、NAS 的优缺点分析
  4. 乐观锁与悲观锁深入学习
  5. [包计划] node-fs-extra
  6. 告别.net ! 2年多了,舍不得!
  7. java 冒泡算法_关于java中的冒泡算法
  8. Intellij Idea 创建maven WebAPP项目
  9. _stdcall函数调用约定详解
  10. hawk物联网组态工具_有哪些开源html5的组态软件
  11. linux应用项目(一)数码相框(2)数码相框之字符编码与字符的点阵显示
  12. qt 取消按钮点击效果_Qt 对话框里添加确定取消按钮
  13. MySQL实战45讲读后感:一条SQL查询语句是如何执行的?
  14. Android常用第三方支付
  15. 谷歌浏览器加载不了js_优化谷歌排名的必备技巧
  16. 燕麦云何洋开讲丨真假海盗?黑客杠上好莱坞,还要把电影变成现实
  17. 图文详解:K8S太火了!花10分钟玩转它不香么
  18. VS2013写智能电子钢琴
  19. 2020年如何通过GitHub学生包认证Azure学生认证
  20. 2019联想小新pro13.3 Intel i7 10710U+MX250 liinux双系统安装及美化修改(ubuntu19.10 / ubuntu18.04.4 / ubuntu20.04)

热门文章

  1. python_面向对象进阶之slots
  2. [ARM异常]-ARM Core中与中断相关的寄存器
  3. 博客阅读学习笔记-目录
  4. 修改数据,如何将原数据带到输入框
  5. Git常见报错及解决方法
  6. sp烘焙流程_3分钟带你快速入门substance painter 贴图制作
  7. 进程线程004 Windows线程切换的三种方式
  8. 25、HTML 文本格式化
  9. 164. 可达性统计【拓扑排序 / bitset】
  10. Markdown的一些常用的语法