1. 程式人生 > >Hadoop + HBase + Hive 完全分散式部署筆記

Hadoop + HBase + Hive 完全分散式部署筆記

完全分散式Hadoop + HBase + Hive 部署過程的的一些問題。

NameNode: 192.168.229.132

DataNode: 192.168.229.133/192.168.229.134

--------------------------------------------------------------------------------

配置 Hadoop

無密碼SSH

首先是NameNode需要通過ssh來訪問DataNode,配置一個無密碼的ssh

NameNode上生成公鑰私鑰

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

把公鑰放到tmp目錄,並且scp到每一個DataNode

$cp ~/.ssh/id_dsa.pub /tmp

在NameNode和DataNode都執行這個,完成配置

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

配置檔案 (其中涉及到的目錄會自動建立)

conf/hadoop-env.sh

# The java implementation to use.  Required.
export JAVA_HOME=/usr/jdk1.6.0_25

conf/core-site.xml  (如果要使用HIVE,就需要把紅色的IP改成主機名,否則會有Wrong FS錯誤)

<configuration>
  <property>
    <!-- 用於dfs命令模組中指定預設的檔案系統協議 -->
    <name>fs.default.name</name>
    <value>hdfs://192.168.229.132

:9000</value>
  </property>
   <!-- 設定一個比較小的日誌尺寸 -->
  <property>
    <name>hadoop.logfile.size</name>
    <value>10</value>
  </property> 
</configuration>

conf/hdfs-site.xml

<configuration>
  <property>
    <!-- DFS中儲存檔案名稱空間資訊的目錄 -->
    <name>dfs.name.dir</name>
    <value>/u01/app/data/dfs.name.dir</value>
  </property>
  <property>
    <!-- DFS中儲存檔案資料的目錄 -->
    <name>dfs.data.dir</name>
    <value>/u01/app/data/dfs.data.dir</value>
  </property>
</configuration>

conf/mapred-site.xml

<configuration>
  <property>
    <!-- 用來作JobTracker的節點的(一般與NameNode保持一致) -->
    <name>mapred.job.tracker</name>
    <value>192.168.229.132:9001</value>
  </property>
  <property>
    <!-- map/reduce的系統目錄(使用的HDFS的路徑) -->
    <name>mapred.system.dir</name>
    <value>/u01/app/data/mapred.system.dir</value>
  </property>
  <property>
    <!-- map/reduce的臨時目錄(可使用“,”隔開,設定多重路徑來分攤磁碟IO) -->
    <name>mapred.local.dir</name>
    <value>/u01/app/data/mapred.local.dir</value>
  </property>
</configuration>

主從配置

conf/masters

192.168.229.132

conf/slaves

192.168.229.133

192.168.229.134

在NameNode進行了所有的配置之後,通過scp把hadoop安裝目錄同步到DataNode。然後在NameNode進行格式化和啟動。

--------------------------------------------------------------------------------

配置 HBase

$vi /etc/hosts (HBase使用機器名稱,在hosts裡面必須配置叢集裡面的機器)
127.0.0.1    localhost
192.168.229.132    ubuntu02
192.168.229.133    ubuntu03
192.168.229.134    ubuntu04

conf/hbase-env.sh (這裡)

# The java implementation to use.  Java 1.6 required.
export JAVA_HOME=/usr/jdk1.6.0_25

# Extra Java CLASSPATH elements.  Optional.
export HBASE_CLASSPATH=/u01/app/hadoop/conf

# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=true

conf/hbase-site.xml (紅色部分必須使用主機名稱,其他部分可以使用IP)

<configuration>
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://ubuntu02:9000/u01/app/data/hbase</value>
  </property>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
  <property> 
    <name>hbase.master</name> 
    <value>hdfs://192.168.229.132:60000</value> 
  </property> 
  <property>
    <name>hbase.zookeeper.quorum</name>
    <value>192.168.229.132, 192.168.229.133, 192.168.229.134</value>
  </property>
</configuration>

conf/regionservers (和Hadoop的slaves檔案一致)
192.168.229.133
192.168.229.134

通過scp把hbase安裝目錄同步到DataNode

----------------------------------------------------------------------------------------------

配置 Hive

MySQL儲存元資料 (安裝過程見這裡

建立資料庫的時候,必須使用latin1作為字符集,否則會有錯誤資訊Specified key was too long; max key length is 767 bytes

mysql> create database hivedb default character set latin1;
mysql> create user 'hive'@'localhost' identified by 'hive';
mysql> grant all on hivedb.* to 'hive'@'localhost';

Hive 配置資訊 (Hive僅需要在Master節點安裝配置即可)

bin/hive-config.sh (可以設定 .profile 檔案來略過這步)
export JAVA_HOME=/usr/jdk1.6.0_25
export HIVE_HOME=/u01/app/hive
export HADOOP_HOME=/u01/app/hadoop

conf/hive-site.xml
<property>
  <name>javax.jdo.option.ConnectionURL</name> 
  <value>jdbc:mysql://localhost:3306/hivedb?createDatabaseIfNotExist=true</value>
  <description>JDBC connect string FOR a JDBC metastore</description>
</property>
<property> 
  <name>javax.jdo.option.ConnectionDriverName</name> 
  <value>com.mysql.jdbc.Driver</value>
  <description>Driver class name FOR a JDBC metastore</description> </property>
<property> 
  <name>javax.jdo.option.ConnectionUserName</name> 
  <value>hive</value>
  <description>username TOUSE against metastore database</description>
</property>
<property>
  <name>javax.jdo.option.ConnectionPassword</name> 
  <value>hive</value>
  <description>password TOUSE against metastore database</description>
</property>

MySQL 驅動包

下載mysql-connector-java-5.1.18-bin.jar檔案,並放到$HIVE_HOME/lib目錄下

測試

[email protected]:/u01/app/hive$ bin/hive
Logging initialized using configuration in jar:file:/u01/app/hive-0.8.1-bin/lib/hive-common-0.8.1.jar!/hive-log4j.properties
Hive history file=/tmp/hadoop/hive_job_log_hadoop_201203201733_2122821776.txt
hive> show tables;
OK
tb
Time taken: 2.458 seconds
hive>


相關推薦

Hadoop + HBase + Hive 完全分散式部署筆記

完全分散式Hadoop + HBase + Hive 部署過程的的一些問題。 NameNode: 192.168.229.132 DataNode: 192.168.229.133/192.168.229.134 ----------------------------

最詳細的Hadoop+Hbase+Hive完全分散式環境搭建教程(二)

繼續上次的教程,這次安裝hbase與hive 一、hbase2.1.1安裝 在master節點: $ tar -zxvf hbase-2.1.1-bin.tar.gz -C /opt $ cd /opt/hbase-2.1.1/conf/ $ vi hbase-

搭建3個節點的hadoop叢集(完全分散式部署)--2安裝mysql及hive

網上下載mysql安裝包檔案,我下載的是:mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz,tar解壓後mv到mysql資料夾,啟動mysql服務service mysqld start登入mysqlmysql -u root -p輸入密碼

搭建3個節點的hadoop叢集(完全分散式部署)--1 安裝虛擬機器及hadoop元件

昨晚搞到晚上11.30,終於把hadoop元件安裝好了,執行試了下,正常...這裡記錄下完全分散式hadoop叢集的搭建步驟。1.VWMare平臺安裝之前已經安裝好了,這裡不詳細說明。2.安裝CentOS虛擬機器1)下載好centos ISO安裝檔案,我安裝的是centos6

hive完全分散式部署

前言 關於hadoop完全分散式部署,我在https://blog.csdn.net/zisefeizhu/article/details/84317520已經有詳細步驟 接https://blog.csdn.net/zisefeizhu/article/details/84317520

cdh版本的hue安裝配置部署以及集成hadoop hbase hive mysql等權威指南

service sources ces 兩個 配置 語句 基金會 pan 創建 hue下載地址:https://github.com/cloudera/hue hue學習文檔地址:http://archive.cloudera.com/cdh5/cdh/5/hue-3.7

Hadoop執行模式之完全分散式部署Hadoop

Hadoop執行模式之完全分散式部署Hadoop 1 完全分散式部署Hadoop 分析: 1)準備3臺客戶機(關閉防火牆、靜態ip、主機名稱) 2)安裝jdk 3)配置環境變數 4)安裝hadoop 5)配置環境變數 6)安裝ssh

大資料技術學習筆記Hadoop框架基礎1-Hadoop介紹及偽分散式部署

一、學習建議     -》學習思想         -》設計思想:分散式             -》資料採集

完全分散式部署Hadoop叢集準備(一)

配置三臺虛擬機器 分別設定名稱為testnote01,testnote02,testnote03 分別配置三臺虛擬機器的ip 192.168.18.50 192.168.18.51 192.168.18

三十、完全分散式部署Hadoop

      完全分散式部署Hadoop 文章步驟:     1)準備3臺客戶機(關閉防火牆、靜態ip、主機名稱、每臺虛擬機器互聯互通)     2)安裝jdk     3)配置jdk環境變數     4)安裝hadoop     5)配置hadoop環境變數     6)安

完全分散式部署 Hadoop

分析: 1) 準備 3 臺客戶機(關閉防火牆、 靜態 ip、主機名稱) 2) 安裝 jdk 3) 配置環境變數 4) 安裝 hadoop 5) 配置環境變數 6) 安裝 ssh 7) 配置叢集 8) 啟動測試叢集 1 虛擬機器準備 複製3份備

Hadoop完全分散式部署

一、概述 概念: 是一個可靠的、可伸縮的、分散式計算的開源軟體。 是一個框架,允許跨越計算機叢集的大資料及分散式處理,使用簡單的程式設計模型(mapreduce) 可從單臺伺服器擴充套件至幾千臺主機,每個節點提供了計算和儲存功能。 不依賴於硬體處理HA,在應

完全分散式部署Hadoop叢集(三)完成基本搭建

叢集規劃 注意:真實叢集搭建 NameNode獨佔一個資源 不和datanode一起 SecondaryNameNode 也一樣 每一個datanode配置一個nodemanager,Resource

maven hadoop ,hbase,hive依賴

ins xsd exec ase hba utf ado aps aging <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema

Hadoop之搭建完全分散式執行模式

一、過程分析   1、準備3臺客戶機(關閉防火牆、修改靜態ip、主機名稱)   2、安裝JDK   3、配置環境變數   4、安裝Hadoop   5、配置叢集   6、單點啟動   7、配置ssh免密登入   8、群起並測試叢集   二、編寫叢集分發指令碼 xsync 1、s

搭建hadoop+Hbase+Zookeeper偽分散式完整過程

安裝前準備:centos7   linux jdk1.8  hadoop ,Hbase ,zookeeper 發現ens33 沒有inet 這個屬性,那麼就沒法通過IP地址連線虛擬機器。 接著來檢視ens33網絡卡的配置:vi /etc/sysconfig/network

SpringCloud從入門到進階(四)——生產環境下Eureka的完全分散式部署

內容   由於前兩節的內容我們知道,開啟了preferIpAddress後,Eureka的偽分散式部署會提示replica不可用。這一節我們講解如何在生產環境下部署完全分散式的Eureka叢集,確保開啟了preferIpAddress後replica的可用性。 版本   IDE:IDEA 2017.2.

hadoop搭建(完全分散式

連結:https://pan.baidu.com/s/1F7Ke7RHBjYCz3ISKuGPRTQ 提取碼:y7t2 本教程由centos7加hadoop2.7.5加jdk1.7構成:一、網路檔案設定 (涉及ifcfg-ens33、hostname、hosts)   克隆三個虛擬機器分別命

Hadoop系列之完全分散式環境搭建及測試驗證

前置條件: 已製作好CentOS 虛擬機器模板。 該模板安裝好Oracle JDK,且 JAVA_HOME 值為/usr/java/jdk1.8.0_171-amd64/jre。 準備三臺虛擬機器 搭建完全 Hadoop 分散式最少需要三臺伺服器,假設三臺伺服器

hadoop +hbase +zookeeper 完全分佈搭建 (版本一)

hadoop2.0已經發布了穩定版本了,增加了很多特性,比如HDFS HA、YARN等。最新的hadoop-2.6.0又增加了YARN HA 注意:apache提供的hadoop-2.6.0的安裝包是在32位作業系統編譯的,因為hadoop依賴一些C++的本地庫