大數據Hadoop環境安裝與配置(原生)

大數據安裝與配置(手動配置版)

準備工作


準備至少三臺同等環境和操作系統的虛擬機

配置好網絡、分配好虛擬資源

主機名的修改和查看

$ hostnamectl    或 hostnamectl status    //查看主機名
$ vim /etc/hostname     //修改主機名

添加Hosts映射關係

$ vim /etc/hosts     //添加如下內容

10.51.36.104 mt01
10.51.36.105 ct01
10.51.36.106 ct02

關閉防火牆

 $ systemctl status firewalld.service      //查看防火牆狀態
 $ systemctl start firewalld.service       //啓動防火牆
 $ systemctl stop firewalld.service       //關閉防火牆
 $ systemctl disable firewalld.service       // 禁止開機啓動

啓動ssh並且免密碼登錄(按照命令順序執行)

 $ cd ~   
 $ mkdir .ssh  
 $ chmod 744 .ssh  
 $ ssh-keygen -t rsa   -P ''     //ENTER

 $ ssh-keygen -t rsa -f ~/.ssh/id_rsa  //ENTER
 $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys   
 $ chmod 700 ~/.ssh && chmod 600 ~/.ssh/*    

 $ vim /etc/ssh/sshd_config      //修改內容

 把下面的字段全部去掉前面的# 

 RSAAuthentication yes 
 PubkeyAuthentication yes 
 AuthorizedKeysFile .ssh/authorized_keys
  • 測試,第一次登錄可能需要yes確認,之後就可以直接登錄了

    $ ssh localhost
    Last login: Sat Jul 18 22:57:44 2015 from localhost

  • 重啓sshd服務

    systemctlrestartsshd.service systemctl enable sshd.service // 開機自動啓動

  • 設置主機->從機的無密碼登錄(有幾臺從機執行幾次)

    $ cat ~/.ssh/id_rsa.pub | ssh [email protected] ‘cat - >> ~/.ssh/authorized_keys’

    測試是否成功:
    $ ssh 10.52.36.105
    Last login: Sat Jul 18 23:25:41 2015 from master

  • 設置從機->主機的無密碼登錄

    $ cat ~/.ssh/id_rsa.pub | ssh [email protected] ‘cat - >> ~/.ssh/authorized_keys’

    測試是否成功:
    $ ssh 10.52.36.104

關閉SELinux

$vim /etc/selinux/config    //修改內容(重啓後永久生效)
SELINUX=disabled  

安裝JDK

  • 查看是否安裝JDK

    $ rpm -qa | grep java
    javapackages-tools-3.4.1-6.el7_0.noarch
    python-javapackages-3.4.1-6.el7_0.noarch
    java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64
    tzdata-java-2015a-1.el7.noarch
    java-1.7.0-openjdk-headless-1.7.0.75-2.5.4.2.el7_0.x86_64

  • 卸載jdk

    $ yum -y remove java ..

  • 下載jdk

    在官網下載最新的jdk ,在根目錄下新建文件夾program

  • 安裝jdk

    cd/program// tar -zxvf jdk-8u51-linux-x64.gz //解壓
    $ mv jdk-8u51-linux-x64 jdk1.8 //重命名

  • 修改環境變量

    $ vim /etc/profile //添加如下內容

    export JAVA_HOME=/program/jdk1.8
    export PATH=JAVAHOME/bin: PATH
    export CLASSPATH=.:JAVAHOME/lib/dt.jar: JAVA_HOME/lib/tools.jar

  • 使配置文件生效

    $ source /etc/profile

大數據環境配置


Hadoop環境安裝

  • Hadoop 官方版本下載地址

http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.7.4/hadoop-2.7.4.tar.gz
- 解壓安裝Hadoop

$ cd /program    //進入文件夾
$ mkdir hadoop   //新建文件夾hadoop
$ cd hadoop      //進入文件夾
$ tar -zxvf hadoop-2.7.4.tar.gz      //進行解壓縮
  • 修改環境變量

    $ vim /etc/profile //添加如下內容

    export HADOOP_HOME = /program/hadoop/hadoop-2.7.4
    export PATH= .:HADOOPHOME/bin: JAVA_HOME/bin:$PATH

  • 使配置文件生效

    $ source /etc/profile

  • 修改hadoop的配置文件

    1. core-site.xml

    $ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/core-site.xml //修改成如下內容

    <configuration>
        <property>
            <name>fs.default.name</name>
            <value>hdfs://10.51.36.104:9000</value>
        </property>
    </configuration>
  1. hdfs-site.xml

    $ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/hdfs-site.xml //修改成如下內容

    <configuration>
        <property>
            <name>dfs.name.dir</name>
            <value>/program/hadoop/hadoop-2.7.4/name</value>
        </property>
        <property>
            <name>dfs.data.dir</name>
            <value>/program/hadoop/hadoop-2.7.4/data</value>
        </property>
        <property>
            <name>dfs.replication</name>
            <value>3</value>
        </property>
    </configuration>
  1. mapred-site.xml

    $ mv /program/hadoop/hadoop-2.7.4/etc/hadoop/mapred-site.xml.template /program/hadoop/hadoop-2.7.4/etc/hadoop/mapred-site.xml //重命名

    $ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/hmapred-site.xml //修改成如下內容

    <configuration>
        <property>
            <name>mapred.job.tracker</name>
            <value>10.51.36.104:9001</value>
        </property>
    </configuration>
  1. yarn-site.xml

    $ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/yarn-site.xml //修改成如下內容

<configuration>
    <property>
       <name>yarn.resourcemanager.hostname</name>
            <value>mt01</value>
    </property>
    <property>
       <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
    </property>
</configuration>
  1. hadoop-env.sh

    $ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/hadoop-env.sh //修改成如下內容

export JAVA_HOME=$JAVA_HOME             //錯誤,不能這麼改
export JAVA_HOME=/program/jdk1.8        //正確,應該這麼改
  1. yarn-env.sh

    $ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/yarn-env.sh //修改成如下內容

export JAVA_HOME=/program/jdk1.8  
  • 修改slaves文件

    $ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/slaves //修改成如下內容
    ct01
    ct02

分發配置(使用scp命令進行從本地到遠程的文件傳輸操作)

注意:三臺機器上都進行相同的配置,都放在相同的路徑下。

$ scp -r /program/hadoop/hadoop-2.7.4    10.51.36.105:/program/hadoop  
$ scp -r /program/hadoop/hadoop-2.7.4    10.51.36.106:/program/hadoop  

格式化磁盤

/program/hadoop/hadoop-2.7.4/bin/hdfs namenode  -format 

成功的話,會看到 “successfully formatted” 和 “Exitting with status 0” 的提示,若爲 “Exitting with status 1” 則是出錯。

至此,單機安裝had###p成功!

啓動hadoop yarn 及其他所有服務

$  /program/hadoop/hadoop-2.7.4/sbin/start-all.sh   (關閉把start改成stop即可)

hadoop 的訪問地址

http://10.51.36.10:50070/

使用jps 查看進程

jps 

運行一個wordcount示例(mapreduce 的helloword示例)

  • 創建文件夾

    cd /
    mkdir project
    cd project
    mkdir input
    cd input
    echo “hello world” > test1.txt
    echo “hello hadoop” > test2.txt
    cd ..

  • 將文件上傳到hadoop HDFS文件系統

    $ /program/hadoop/hadoop-2.7.4/bin/hdfs dfs -put /project/input/ /in/input

  • 查看文件

    $ /program/hadoop/hadoop-2.7.4/bin/hdfs dfs -ls /in/input

  • 運行程序

    $ /program/hadoop/hadoop-2.7.4/bin/hadoop jar /program/hadoop/hadoop-2.7.4/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.4.jar wordcount /in/input /out

  • 查看結果

    $ /program/hadoop/hadoop-2.7.4/bin/hdfs dfs -cat /out/*

如果要再次執行上面的程序,需要把生成的目錄刪除
$ /program/hadoop/hadoop-2.7.4/bin/hdfs dfs -rm -r /out

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章