怎么在ubantu里面安装伪分布式Hadoop?
Hadoop的安装方式分为三种模式:单机模式,伪分布式模式,分布式模式。
1.单机模式:Hadoop 默认模式为非分布式模式(本地模式),无需进行其他配置即可运行。非分布式即单 Java 进程,方便进行调试。
2.伪分布式模式:Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。
3.分布式模式:使用多个节点构成集群环境来运行Hadoop。
接下来我为大家介绍一下伪分布式的安装方法
操作方法
- 01
第一步,创建Hadoop用户。 sudo useradd -m hadoop -s /bin/bash # 创建hadoop用户 $sudo passwd hadoop # 修改密码 $sudo adduser hadoop sudo # 增加管理员权限 $# 注销并使用 Hadoop 用户登录
- 02
第二步,注销并使用 Hadoop 用户登录,接下来更新 apt 并且安装 vim。 $sudo apt-get update # 更新apt $sudo apt-get install vim # 安装vim $sudo apt-get install openssh-server # 安装ssh $sudo apt-get install openjdk-7-jre openjdk-7-jdk # 安装Java $vim ~/.bashrc # 设置JAVA_HOME
- 03
安装上ssh,配置为无密码登录 $ cd ~/.ssh $ssh-keygen -t rsa # 一直按回车就可以 $cat ~/id_rsa.pub >> ~/authorized_keys $scp ~/.ssh/id_rsa.pub hadoop@Slave1:/home/hadoop/ # 传输公钥 到Slave1
- 04
安装java的环境。 sudo apt-get install openjdk-7-jre openjdk-7-jdk vim ~/.bashrc # 设置JAVA_HOME 在配资文件中添加。 export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64 JAVA_HOME 变量生效: source ~/.bashrc
- 05
安装 Hadoop : cd ~/下载 $sudo tar -zxvf ./hadoop-2.6.0.tar.gz -C /usr/local # 解压到/usr/local中 cd /usr/local/ sudo mv ./hadoop-2.6.0/ ./hadoop # 将文件夹名改为hadoop sudo chown -R hadoop ./hadoop 修改配置文件 core-site.xml : vim /usr/local/hadoop/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.xm <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>
- 06
启动好Hadoop。 cd /usr/local/hadoop $bin/hdfs namenode -format # namenode 格式化 $sbin/start-dfs.sh # 开启守护进程 $jps 若成功启动则会列出如下进程: NameNode、DataNode和SecondaryNameNode。
- 07
运行 WordCount 实例。测试一下。 bin/hdfs dfs -mkdir -p /user/hadoop # 创建HDFS目录 $bin/hdfs dfs -mkdir input $bin/hdfs dfs -put etc/hadoop/*.xml input # 将配置文件作为输入 $bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep input output 'dfs[a-z.]+' $bin/hdfs dfs -cat output/* # 查看输出