(转) Hadoop1.2.1安装
环境:ubuntu13
使用的用户为普通用户。如:用户ru
jdk安装略
1、安装ssh
(1)
- sudo apt-get install openssh-server
(2)配置ssh面密码登录
- $ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
- $ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
2、下载安装Hadoop
(1)下载hadoop-1.2.1-bin.tar.gz
(2)修改权限
如果拥有者不是root,使用
- chown root hadoop-1.2.1-bin.tar.gz
(3)解压
root用户下
- tar -zxvf hadoop-1.2.1-bin.tar.gz
(4)将解压后的hadoop拷贝到安装目录
3、配置hadoop
配置文件在$HADOOP_HOME/conf下
(1)配置hadoop-env.sh,指定jdk的安装路径
- 添加jdk路径
-
export JAVA_HOME=/root/jdk1.8.0_131
-
export HADOOP_HOME=/root/hadoop-1.2.1
-
export PATH=.:$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
-
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
(2)修改hadoop的核心配置文件core-site.xml,配置namenode的地址和端口
- <configuration>
- <property>
- <name>fs.default.name</name>
- <value>hdfs://localhost:9000</value>
- </property>
- </configuration>
- 这个还是很必要的,如果不配置临时目录,格式化hdfs是会在/tem目录下创建临时目录但是tmp目录重启系统会清楚下面文件。这样namenode就启动不起来了
- <property>
- <name>hadoop.tmp.dir</name>
- <value>/home/ruge/hadoop/hadooptmpdir</value>
- <description>A base for other temporary directories.</description>
- </property>
(3)修改hadoop的hdfs-site.xml,配置replication,即数据保存份数
- <property>
- <name>dfs.replication</name>
- <value>1</value>
- </property>
(4)修改hadoop的mapred-site.xml,配置jobtracker的地址和端口
- <property>
- <name>mapred.job.tracker</name>
- <value>localhost:9001</value>
- </property>
注:涉及到IP的地方如果是完全分布式集群,需要改成具体的IP
4、格式化hadoop的文件系统HDFS
- bin/hadoop namenode -format
5、启动hadoop
- bin/start-all.sh
6、验证hadoop是否启动成功
- NameNode - http://localhost:50070/
- JobTracker - http://localhost:50030/
7、使用wordcount计算单词数
- (1)新建hdfs目录,不是实际的系统文件目录,只能使用hadoop dfs -ls /XXX查看
- hadoop dfs -mkdir /input
- (2)将文件复制到新建的hdfs目录
- hadoop dfs -put ./*.sh /input/
- (3)使用hadoop的wordcount计算单词数
- hadoop jar hadoop-examples-1.2.1.jar wordcount /input /output
- 注:input 和 output都是hdfs文件目录。不同的是input是需要分析的目录,outpu是存放结果的目录,且自动生成,不能手动创建
第二部分,安装hadoop集群:
1,准备2个服务器,分别为
机器名IP地址作用
hadoop.main192.168.1.102NameNode,JobTracker,DataNode,TaskTracker
hadoop.slave192.168.1.107DataNode,TaskTracker
注:2台主机必须使用相同的用户名运行hadoop
2,分别在这两个主机上,按照单机版的安装方法,安装hadoop
3,在/etc/hostname中修改主机名
在/etc/hosts中配置主机名和IP地址度对应关系
分别在2台主机中,运行以下命令:
ping hadoop.main
ping hadoop.slave
修改/etc/hosts添加master和slave的ip和主机名
4,将hadoop.main节点中的~/.ssh/id_rsa.pub文件拷贝到hadoop.slave节点的~/.ssh目录下,然后在hadoop.slave的~/.ssh/目录下运行:
cat ./id_rsa.pub >> authorized_keys
在hadoop.main节点中运行命令: ssh hadoop.slave
5, 修改2台主机的core-site.xml,配置HDFS的地址和端口号
vi conf/core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop.main:9000</value>
</property>
</configuration>
6,修改2台主机的MapReduce的配置文件,配置的是JobTracker的地址和端口
vi conf/mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>hadoop.main:9001</value>
</property>
</configuration>
7,修改2台主机中的hadoop配置文件masters
hadoop.main
8,修改2台主机中的hadoop配置文件slaves
hadoop.main
hadoop.slave
9,在haddop.main节点运行
bin/hadoop namenode -format
10,启动hadoop
bin/start-all.sh
ps: datanode time configuration
<property>
<name>heartbeat.recheck.interval</name>
<value>15</value>
</property>
参考:
http://blog.csdn.net/hxpjava1/article/details/20214049
http://www.linuxidc.com/Linux/2014-07/104312.htm
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
· Browser-use 详细介绍&使用文档
· 软件产品开发中常见的10个问题及处理方法
· Vite CVE-2025-30208 安全漏洞