linux下安装hadoop
⑴ 如何在linux下搭建hadoop集群环境 小残's Blog
前期准备
l 两台linux虚拟机(本文使用redhat5,IP分别为 IP1、IP2)
l JDK环境(本文使用jdk1.6,网上很多配置方法,本文省略)
l Hadoop安装包(本文使用Hadoop1.0.4)
搭建目标
210作为主机和节点机,211作为节点机。
搭建步骤
1修改hosts文件
在/etc/hosts中增加:
IP1 hadoop1
IP2 hadoop2
2 实现ssh无密码登陆
2.1 主机(master)无密码本机登陆
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
直接回车,完成后会在 ~/.ssh/ 生成两个文件: id_dsa 和 id_dsa.pub 。
这两个是成对出现,类似钥匙和锁。
再把 id_dsa.pub 追加到授权 key 里面 ( 当前并没有 authorized_key s文件 ) :
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
ssh localhost hostname
还是要输入密码,一般这种情况都是因为目录或文件的权限问题,看看系统日志,确实是权限问题
.ssh下的authorized_keys权限为600,其父目录和祖父目录应为755
2.2 无密码登陆节点机(slave)
slave上执行:
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
生成.ssh目录。
将master上的authorized_keys复制到slave上:
scp authorized_keys hadoop2:~/.ssh/
实验:在master上执行
ssh hadoop2
实现无密码登陆。
3 配置Hadoop
3.1拷贝hadoop
将hadoop-1.0.4.tar.gz ,拷贝到usr/local 文件夹下,然后解压。
解压命令:
tar –zxvf hadoop-1.0.4.tar.gz
3.2查看 cat /etc/hosts
IP1 hadoop1
IP2 hadoop2
3.3 配置 conf/masters 和 conf/slaves
conf/masters:
1
IP1
conf/slaves:
1
2
IP2
IP2
3.4 配置 conf/hadoop-env.sh
加入
1
export java_HOME=/home/elvis/soft/jdk1.7.0_17
3.5 配置 conf/core-site.xml
1
2
3
4
<property>
<name>fs.default.name</name>
<value>hdfs://IP1:9000</value>
</property>
3.6 配置 conf/hdfs-site.xml
加入
<property>
<name>dfs.http.address</name>
<value>IP1:50070</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/usr/local/hadoop/namenode</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/local/hadoop/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
3.7 配置conf/mapred-site.xml
加入
<property>
<name>mapred.job.tracker</name>
<value>192.168.1.50:8012</value>
</property>
3.8 建立相关的目录
1
/usr/local/hadoop/ //hadoop数据和namenode目录
【注意】只创建到hadoop目录即可,不要手动创建data和namenode目录。
其他节点机也同样建立该目录。
3.9 拷贝hadoop文件到其他节点机
将hadoop文件远程到其他节点(这样前面的配置就都映射到了其他节点上),
命令:
1
scp -r hadoop-1.0.4 IP2:/usr/local/
3.10 格式化Active master
命令:
bin/hadoop namenode -format
3.11 启动集群 ./start-all.sh
现在集群启动起来了,看一下,命令:
1
bin/hadoop dfsadmin -report
2个datanode,打开web看一下
浏览器输入:IP1:50070
打完收工,集群安装完成!
⑵ 阿里云云服务器linux可以部署hadoop么
通过命令行下载Hadoop ,我下载的版本是1.2.1,版本稳定且方便学习。
[plain] view plain
wget http://mirror.bit.e.cn/apache/hadoop/common/hadoop-1.2.1/hadoop-1.2.1.tar.gz
下载完成后,将hadoop安装包转移至要安装的目录
[plain] view plain
mv hadoop-1.2.1.tar.gz /usr/hadoop/
cd /usr/hadoop/
解压
[plain] view plain
tar -zxvf hadoop-1.2.1.tar.gz
配置Hadoop
配置文件在 hadoop的conf文件夹下
首先修改 hadoop-env.sh 文件
[plain] view plain
vim hadoop-env.sh
找到 # export JAVA_HOME=…..
修改为 export JAVA_HOME=/usr/Java/java8
注意 // 如果忘记java的路径,可以通过命令 echo $JAVA_HOME查看
其次修改 core-site.xml 文件
其实 修改 hadoop-env.sh
[plain] view plain
vim hadoop-env.sh
修改内容为
[html] view plain
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/hadoop</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/hadoop/name</value>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://canghong:9000</value>
</property>
</configuration>
然后修改 hdfs-site.xml
[html] view plain
<configuration>
<property>
<name>dfs.data.dir</name>
<value>/hadoop/data</value>
</property>
</configuration>
最后修改 mapred-site.xml
[html] view plain
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>canghong:9001</value>
</property>
</configuration>
配置完成后,告诉系统hadoop的安装目录
[plain] view plain
vim ~/.bashrc
export HADOOP_HOME=/usr/hadoop/hadoop-1.2.1
在 export PATH 中 加入 HADOOP_HOME
export PATH=${JAVA_HOME}/bin:$HADOOP_HOME/bin:$PATH
测试
在命令行输入 hadoop
出现
10015 JobTracker
9670 TaskTracker
9485 DataNode
10380 Jps
9574 SecondaryNameNode
9843 NameNode
则表示成功
格式化文件系统
[plain] view plain
cd /usr/hadoop/hadoop-1.2.1/bin
hadoop namenode -formate
启动
启动 bin下的 start-all.sh
start-all.sh
测试
在命令行 输入 jps 查看hadoop是否正常运行
⑶ 使用root用户完成相关配置,安装hadoop需要配置前置环境
可以使用 root 用户来完成 Hadoop 的相关配置和安装,但在此之前,需要确保系统安装了一些必要的前置环境和软件。以下是配置 Hadoop 环境的基本步骤:
安装 Java 运行环境(JRE)或 Java 开发工具包(JDK)。Hadoop 是使用 Java 语言开发的,因此需要安装 Java 运行环境才能运行。
配置 Java 环境变量。在 Linux 系统中,可以使用 export 命令设置 PATH 和或明戚 JAVA_HOME 环境变量,以便系统能够识别 Java 运行环境。
下载 Hadoop 的最新版本,例如 Apache Hadoop 2.9.2。
解压 Hadoop 压缩包,并将其槐枯放置在某个有读写权限的目录下。
配置 Hadoop 的环境变量衫陵,以便系统可以找到 Hadoop 的二进制文件。在 Linux 系统中,可以在 .bashrc 文件中添加以下语句:
Copy code
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
配置 Hadoop 的相关文件,如 core-site.xml, hdfs-site.xml, mapred-site.xml, yarn-site.xml,这些文件记录了 Hadoop 的基本配置信息,例如 NameNode 的地址、DataNode 的地址等等。
格式化 Hadoop 的文件系统。在 Hadoop 安装目录中运行以下命令:
Copy code
$HADOOP_HOME/bin/hdfs namenode -format
完成以上步骤后,Hadoop 环境就可以正常运行了,您可以使用 Hadoop 开发应用程序或处理大数据了。需要注意的是,Hadoop 配置和部署比较复杂,需要一定的经验和技能,建议在操作前先了解相关资料或请有经验的人进行指导。
⑷ 如何在Linux上安装与配置Hadoop
在Linux上安装Hadoop之前,需要先安装两个程序:
1. JDK 1.6或更高版本;
2. SSH(安全外壳协议),推荐安装OpenSSH。
下面简述一下安装这两个程序的原因:
1. Hadoop是用Java开发的,Hadoop的编译及MapRece的运行都需要使用JDK。
2. Hadoop需要通过SSH来启动salve列表中各台主机的守护进程,因此SSH也是必须安装的,即使是安装伪分布式版本(因为Hadoop并没有区分集群式和伪分布式)。对于伪分布式,Hadoop会采用与集群相同的处理方式,即依次序启动文件conf/slaves中记载的主机上的进程,只不过伪分布式中salve为localhost(即为自身),所以对于伪分布式Hadoop,SSH一样是必须的。
(2)配置环境变量
输入命令:
sudo gedit /etc/profile
输入密码,打开profile文件。
在文件的最下面输入如下内容:
#set Java Environment
export JAVA_HOME= (你的JDK安装位置,一般为/usr/lib/jvm/java-6-sun)
export CLASSPATH=".:$JAVA_HOME/lib:$CLASSPATH"
export PATH="$JAVA_HOME/:$PATH"
这一步的意义是配置环境变量,使你的系统可以找到JDK。
(3)验证JDK是否安装成功
输入命令:
java -version
查看信息:
java version "1.6.0_14"
Java(TM) SE Runtime Environment (build 1.6.0_14-b08)
Java HotSpot(TM) Server VM (build 14.0-b16, mixed mode)
⑸ Linux中用idea如何安装Hadoop jar包
(1)准备工作
1) 安装JDK 6或者JDK 7
2) 安装scala 2.10.x (注意版本)
2)下载Intellij IDEA最新版(本文以IntelliJ IDEA Community Edition 13.1.1为例说明,不同版本,界面布局可能不同):
3)将下载的Intellij IDEA解压后,安装scala插件,流程如下:
依次选择“Configure”–> “Plugins”–> “Browse repositories”,输入scala,然后安装即可
(2)搭建Spark源码阅读环境(需要联网)
一种方法是直接依次选择“import project”–> 选择spark所在目录 –> “SBT”,之后intellij会自动识别SBT文件,并下载依赖的外部jar包,整个流程用时非常长,取决于机器的网络环境(不建议在windows下操作,可能遇到各种问题),一般需花费几十分钟到几个小时。注意,下载过程会用到git,因此应该事先安装了git。
第二种方法是首先在linux操作系统上生成intellij项目文件,然后在intellij IDEA中直接通过“Open Project”打开项目即可。在linux上生成intellij项目文件的方法(需要安装git,不需要安装scala,sbt会自动下载)是:在spark源代码根目录下,输入sbt/sbt gen-idea
注:如果你在windows下阅读源代码,建议先在linux下生成项目文件,然后导入到windows中的intellij IDEA中。