安装和配置多节点 Hadoop 集群

Installing and configuring a multi-node Hadoop cluster

我是大数据系统的新手,已经完成了一些 Coursera 认证。我计划使用 4 台商品级 PC 拥有自己的个人 Hadoop 集群。目前所有 运行 Windows,但我可以在它们上安装 Linux。我在 Internet 上搜索了很多设置过程,但发现 none(发现很多在 AWS 上旋转)。此时,我不局限于任何平台,而是希望所有技术都是免费的\开源的。使用 4 台 PC,我可以拥有 1 个主节点和其他 3 个数据节点。希望了解有关如何旋转此裸机 Hadoop 集群的详细步骤(至少是粗略的轮廓)。

所以你想在 4 节点集群上安装 hadoop 安装程序!

要求:1主3从(多节点集群安装hadoop设置)


第 1 步:删除 windows。目前 Hadoop 可用于 Linux 台机器。您可以拥有 ubuntu 14.04 或更高版本(或 CentOS、Redhat 等)

第 2 步:安装和设置 Java $ sudo apt-get install python-软件属性 $ sudo add-apt-repository ppa:ferramroberto/java $ sudo apt-get 更新 $ sudo apt-get install sun-java6-jdk

# Select Sun's Java as the default on your machine.
# See 'sudo update-alternatives --config java' for more information.    
#
$ sudo update-java-alternatives -s java-6-sun

第 3 步:在 .bashrc 文件中设置路径(使用文本编辑器打开此文件(vi/nano)并附加以下文本)

export JAVA_HOME=/usr/local/jdk1.7.0_71
export PATH=PATH:$JAVA_HOME/bin

第 4 步:添加专用用户(虽然这不是必需的,但建议这样做)

# useradd hadoop 
# passwd hadoop

第 5 步:编辑所有节点上 /etc/ 文件夹中的主机文件,指定每个系统的 IP 地址及其主机名。(使用 vi /etc/hosts 打开文件并附加以下文本 - -

<ip address of master node> hadoop-master 
<ip address of slave node 1> hadoop-slave-1 
<ip address of slave node 2> hadoop-slave-2
<ip address of slave node 3> hadoop-slave-3

第 6 步:在每个节点中设置 ssh,这样它们就可以在没有任何密码提示的情况下相互通信。

$ su hadoop
$ ssh-keygen -t rsa 
$ ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop@hadoop-master 
$ ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop_tp1@hadoop-slave-1 
$ ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop_tp2@hadoop-slave-2
$ ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop_tp3@hadoop-slave-3
$ chmod 0600 ~/.ssh/authorized_keys 
$ exit

有关 SSH 的更多信息,请访问:[https://www.ssh.com/ssh/][1]

第 7 步:在主服务器中下载并安装 Hadoop。

# mkdir /opt/hadoop 
# cd /opt/hadoop/ 
# wget http://apache.mesi.com.ar/hadoop/common/hadoop-1.2.1/hadoop-
  1.2.0.tar.gz 
# tar -xzf hadoop-1.2.0.tar.gz 
# mv hadoop-1.2.0 hadoop
# chown -R hadoop /opt/hadoop 
# cd /opt/hadoop/hadoop/

到此安装完成!

下一步是:配置 Hadoop

第 1 步:打开 core-site.xml 并编辑如下:

<configuration>
<property> 
  <name>fs.default.name</name> 
  <value>hdfs://hadoop-master:9000/</value> 
</property> 
<property> 
  <name>dfs.permissions</name> 
  <value>false</value> 
</property> 
</configuration>

第 2 步:打开 hdfs-site.xml 并编辑如下:

<configuration>
<property> 
  <name>dfs.data.dir</name> 
  <value>/opt/hadoop/hadoop/dfs/name/data</value> 
  <final>true</final> 
</property> 

<property> 
  <name>dfs.name.dir</name> 
  <value>/opt/hadoop/hadoop/dfs/name</value> 
  <final>true</final> 
</property> 
 <property> 
  <name>dfs.name.dir</name> 
  <value>/opt/hadoop/hadoop/dfs/name</value> 
  <final>true</final> 
</property> 

<property> 
  <name>dfs.replication</name> 
  <value>3</value> 
</property> 
</configuration>

第 3 步:打开 mapred-site.xml 并编辑 --

<configuration>
<property> 
  <name>mapred.job.tracker</name> 
  <value>hadoop-master:9001</value> 
</property> 
</configuration>

第 4 步:在 hadoop 中追加以下文本-env.sh

export JAVA_HOME=/opt/jdk1.7.0_17 export 
HADOOP_OPTS=Djava.net.preferIPv4Stack=true export 
HADOOP_CONF_DIR=/opt/hadoop/hadoop/conf

第 5 步:配置主机 --

$ vi etc/hadoop/masters 
hadoop-master

第五步:同样安装在slave节点上--

# su hadoop 
$ cd /opt/hadoop 
$ scp -r hadoop hadoop-slave-1:/opt/hadoop 
$ scp -r hadoop hadoop-slave-2:/opt/hadoop
$ scp -r hadoop hadoop-slave-3:/opt/hadoop

第 6 步:配置从站 --

$ vi etc/hadoop/slaves
hadoop-slave-1 
hadoop-slave-2
hadoop-slave-3

第 7 步:格式化节点(仅一次,否则所有数据将永久丢失)

# su hadoop 
$ cd /opt/hadoop/hadoop 
$ bin/hadoop namenode –format

大功告成!!

您可以按如下方式启动服务--

$ cd $HADOOP_HOME/sbin
$ start-all.sh