Ubuntu-16.10 hadoop-2.7.3 hive-1.2.1搭建

Ubuntu hadoop 僞分佈模式搭建

2017年3月9日

11:10

》安裝VMware

》安裝ubuntu,虛擬機用戶名和密碼全部改爲hadoop,其他的一路默認,設置的處理器如下:

防止虛擬機花屏和很卡,就關掉3D加速

 

 

》安裝vmtools

如果按鈕是灰色的,就將CD/DVD(其中一個即可)指向VMware下的linux.iso,然後點擊確定退出,再點擊虛擬機下面的可移動設備連接這個CD/DVD

 

安裝好了之後,安裝vim

命令:sudo apt-getinstall vim

報錯:

出現這個問題可能是有另外一個程序正在運行,導致資源被鎖不可用。而導致資源被鎖的原因可能是上次運行安裝或更新時沒有正常完成。

 

輸入以下兩條命令:

sudo rm/var/cache/apt/archives/lock

sudo rm/var/lib/dpkg/lock

 

再進行vim的安裝就OK了

 

》Java的安裝

Hive依賴於Hadoop,而Hadoop依賴於Java。所以需要配置JDK

首先下載好JDK,再複製到虛擬機中,放在/home/download文件夾下,然後解壓到主文件夾下(/usr/local)

首先在/hone/download文件夾下運行命令:

sudo tar zxvfjdk-8u121-linux-x64.tar.gz -C /usr/local

 

切換到/usr/local查看文件。已經有解壓的文件了:
 

 

接下來配置環境變量了,打開/etc/profile文件。命令如下:

sudo gedit /etc/profile

在最後添加:

exportJAVA_HOME=/usr/local/jdk1.8.0_121 

 

exportJRE_HOME=/usr/local/jdk1.8.0_121/jre 

 

exportCLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH 

 

exportPATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH

如圖:然後點擊右上角的save即可,然後點擊左上角關閉。

 

然後重啓虛擬機,輸入:

命令:java -version

檢查是否配置成功

安裝成功。

 

》安裝SSH

安裝

sudo apt-get installopenssh-server

啓動

sudo /etc/init.d/sshstart

設置免密碼登錄

$ ssh-keygen -t dsa -P '' -f~/.ssh/id_dsa

$ cat~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

$ exportHADOOP\_PREFIX=/usr/local/hadoop

 

由於這樣安裝後,還是無法面密碼登錄,需要輸入localhost的密碼,所以 嘗試過很多種方法,最終得以解決。詳見《SSH安裝的N次失敗》。

 

 

 

》安裝hadoop

下載hadoop(hadoop-2.7.3.tar.gz),複製到虛擬機/home/download目錄下:然後解壓到/usr/local中,並改名hadoop

然後運行以下命令修改hadoop權限,確保所有的操作都是在用戶hadoop下完成的:

命令:sudo chown -R hadoop:hadoop /usr/local/hadoop

 

配置.bashrc文件:

在文末添加,這樣可以直接使用hadoop命令:

#HADOOPVARIABLES START

 

export JAVA_HOME=/usr/jdk1.8.0_121

 

exportHADOOP_INSTALL=/usr/local/hadoop

 

exportPATH=$PATH:$HADOOP_INSTALL/bin

 

exportPATH=$PATH:$HADOOP_INSTALL/sbin

 

exportHADOOP_MAPRED_HOME=$HADOOP_INSTALL

 

exportHADOOP_COMMON_HOME=$HADOOP_INSTALL

 

exportHADOOP_HDFS_HOME=$HADOOP_INSTALL

 

exportYARN_HOME=$HADOOP_INSTALL

 

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native

 

export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"

 

#HADOOPVARIABLES END

 

 

使用命令source ~/.bashrc,使文件生效。

測試:

 

 

打開hadoop目錄下的etc/hadoop目錄,配置一下幾個文件:

 

配置hadoop-env.sh,添加:

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

exportHADOOP=/usr/local/hadoop

exportPATH=$PATH:/usr/local/hadoop/bin

 

配置yarn-env.sh,添加:

 

 

core-site.xml 配置(僞分佈模式):

由於此處新建了hadoop_tmp文件夾,則要在對應的目錄下新建一個這個文件夾。

建立文件

 

 

配置hdfs-site.xml,配置:

<configuration>

<!-- 指定HDFS副本的數量 -->

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

</configuration>

 

配置yarn-site.xml

<configuration>

  <property>

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

    <value>mapreduce_shuffle</value>

  </property>

<property>

<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>

<value>org.apache.hadoop.mapred.ShuffleHandler</value>

</property>

  <property>

    <name>yarn.resourcemanager.address</name>

    <value>127.0.0.1:8032</value>

  </property>

  <property>

    <name>yarn.resourcemanager.scheduler.address</name>

    <value>127.0.0.1:8030</value>

  </property>

  <property>

    <name>yarn.resourcemanager.resource-tracker.address</name>

    <value>127.0.0.1:8031</value>

  </property>

</configuration>

 

配置結束。

 

格式化namenode

命令:hdfs namenode-format

啓動集羣:start-dfs.sh

 

再啓動集羣后,測試jps的時候,java進程只有jps一個,顯然,集羣啓動失敗。

首先查看日誌發現,是無法創建/usr/local/hadoop/hadoop_tmp/dfs..文件,其實在用命令“hdfs namenode -format”格式化 也有報錯,並且明確說明了 namenode啓動失敗。然後就全部指向文件問題。首先檢查是否存在hadoop_tmp這個文件,顯然前面已經新建了。其次檢查core-site.xml的配置有沒有把文件地址寫錯,也沒有錯的話,就是權限問題了。

 

更改hadoop_tmp的權限,把hadoop用戶添加進去。

sudo chmod a+rwx /usr/local/hadoop/hadoop_tmp

這樣再次格式化nodename就沒問題了。問題解決。

 

 

 

 

 

 

 

 

 

 

 

 

解壓:

- zxvf

-z 是配合解壓.GZ

-x 解開一個包文件

-v 顯示詳細信息

-f 必須,表示使用歸檔文件

 

 

來自 <http://blog.csdn.net/shiqidide/article/details/7582572

    1. chown username: /home/username/.ssh  
    2. chown username: /home/username/.ssh/*  
    3. chmod 700 /home/username/.ssh  
    4. chmod 600 /home/username/.ssh/*  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章