1. 程式人生 > >用虛擬機器簡單搭建一個hadoop叢集(Linux)

用虛擬機器簡單搭建一個hadoop叢集(Linux)

一,前提

  • 1. 安裝好一臺Linux的虛擬機器(我用的純粹的黑框框)
  • 2.  修改好IP地址並安裝jdk  (我這裡安裝的是1.8版本的)
    •  vi /etc/sysconfig/network-scripts/ifcfg-eth0
    • 重啟網路生效
          service network restart
    • jdk的安裝參考網上 記得改環境配置
    • vi /etc/profile
          export JAVA_HOME=/usr/local/jdkxxx...
          export PATH=$PATH:$JAVA_HOME/bin
  • 3.  克隆2--3臺虛擬機器 
  • 4.修改虛擬機器的名字 以及ip 地址
    •  ip地址 vi /etc/sysconfig/network-scripts/ifcfg-eth0
    • 以及  vi /etc/udev/rules.d/70----n
    •    刪除eth0  將eth1修改為eth0 
    • 虛擬機器名字:永久的修改   vi /etc/hosts/(reboot後才有效)
  • 5.ssh

    • ssh客戶端 yum install openssh-clients

      ssh登陸,scp傳送檔案
      scp -r /etc/hosts bigdata3803:/etc/

    • (不懂請上網查ssh)

二,正式安裝

  • 1.關閉防火牆    

  • 2hosts對映

    windows和linux都4需要做

     Windows:  C/windows/system32/drvers/etc

        Linux :vi/etc/hosts

鵬哥寫的ssh的指令碼

安裝hadoop

  • 上傳HADOOP安裝包
  • 規劃安裝目錄  /usr/local/hadoop-2.8.3
  • 解壓安裝包
  • 修改配置檔案  $HADOOP_HOME/etc/hadoop/

最簡化配置如下:()

注意下面的路徑和虛擬機器名稱是否與正式一直  (一定要多檢查)

vi  hadoop-env.sh

# The java implementation to use.

export JAVA_HOME=/usr/local/jdk1.8.0_102

vi  core-site.xml

Namenode在哪裡 ,臨時檔案儲存在哪裡

<configuration>

<property>

<name>fs.defaultFS</name>

<value>hdfs://hadoop3801:9000</value>

</property>

<property>

<name>hadoop.tmp.dir</name>

<value>/usr/local/hadoop-2.7.3/tmp</value>

</property>

</configuration>

vi  hdfs-site.xml

<configuration>

<property>

<name>dfs.namenode.name.dir</name>

<value>/usr/local/hadoop-2.7.3/data/name</value>

</property>

<property>

<name>dfs.datanode.data.dir</name>

<value>/usr/local/hadoop-2.7.3/data/data</value>

</property>

<property>

<name>dfs.replication</name>

<value>3</value>

</property>

<property>

<name>dfs.secondary.http.address</name>

<value>hadoop3801:50090</value>

</property>

</configuration>

cp mapred-site.xml.tmp* mapred-site.xml

mapred-site.xml.template

vi  mapred-site.xml

<configuration>

<property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

</property>

</configuration>

vi  yarn-site.xml

<configuration>

<property>

<name>yarn.resourcemanager.hostname</name>

<value>hadoop3801</value>

</property>

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

</property>

</configuration>

vi  slaves ( 把原來的localhost刪掉小心翻車)

Hadoop02

Hadoop03

Hadoop的path(hadoop的環境變數)(注意sbin的配置)

export JAVA_HOME=/usr/local/jdk1.8.0_102
export PATH=$PATH:$JAVA_HOME/bin
export HADOOP_HOME=/usr/local/hadoop-2.7.3
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

把第一臺安裝好的jdk和hadoop以及配置檔案傳送給另外兩臺

hosts檔案

jdk安裝後的資料夾

Hadoop安裝後的資料夾

/etc/profile 檔案

eg:scp -r /usr/local/jdk1.8.0_102 hadoop02:/usr/local/

初始化HDFS(在hadoop01進行操作)(操作一次就ok)

bin/hadoop  namenode  -format

啟動HDFS

sbin/start-dfs.sh

啟動YARN

sbin/start-yarn.sh

三 .通過網路檢視