我是大数据系统的新手,完成了一些Coursera认证。我计划使用4种商品级PC拥有自己的个人Hadoop集群。目前所有运行Windows,但我可以安装Linux。我在互联网上搜索了很多设置过程,但没有找到(在AWS上发现很多东西)。在这个时候,我不限于任何平台,但希望所有技术都是免费的\开源。使用4台PC,我可以拥有1个主节点和3个数据节点。将了解如何旋转这个裸机Hadoop集群的详细步骤(至少是大致的轮廓)。
答案 0 :(得分:1)
所以你想在4节点集群上安装hadoop设置!
要求:1个主3个从属设备(在多个节点集群上安装hadoop设置)
第1步:摆脱窗户。目前Hadoop可用于Linux机器。您可以使用ubuntu 14.04或更高版本(或CentOS,Redhat等)
第2步:安装和设置Java $ sudo apt-get install python-software-properties $ sudo add-apt-repository ppa:ferramroberto / java $ sudo apt-get update $ 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 /文件夹中编辑hosts文件,指定每个系统的IP地址,后跟其主机名。(使用vi /etc/hosts
打开文件并附加下面的文本 - < / p>
<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
步骤5:也将它安装在从属节点上 -
# 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