1. 程式人生 > >hadoop-1 hive配置文件

hadoop-1 hive配置文件

** 安裝JDK 
$ su -                  # tom在/opt內無建立目錄的許可權
# mkdir /opt/modules    # 用於軟體安裝目錄
# mkdir /opt/softwares    # 用於軟體下載目錄

# chown tom:tom /opt/modules/  # 授權使用者:組
# chown tom:tom /opt/softwares/

# su - tom
$ tar zxvf jdk-7u67-linux-x64.tar.gz -C /opt/modules/    --選項-C 表示解壓的目標路徑

# 設定JAVA_HOME和PATH
# vi /etc/profile    (root使用者)
export JAVA_HOME=/opt/modules/jdk1.7.0_67
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile  生效檔案
PS:
***解除安裝其他軟體捆綁安裝的JDK,若是沒有則無需解除安裝
# rpm -qa  #檢視所有已安裝的rpm包
# rpm -qa | grep -i java    --'-i':忽略大小寫
# 解除安裝rpm軟體包
# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.9-2.3.4.1.el6_3.x86_64
Hadoop偽分散式環境部署-Hadoop部分
-------------------------------------------------------------------------------------------------------------
    1.     解壓Hadoop到指定目錄下
        tar -zxvf hadoop-2.5.0.tar.gz -C /opt/modules/
    
    
    2.     修改hadoop/etc/hadoop/hadoop-env.sh檔案
        修改hadoop/etc/hadoop/mapred-env.sh檔案
        修改hadoop/etc/hadoop/yarn-env.sh檔案
        指定Java安裝路徑
        export JAVA_HOME=/opt/modules/jdk1.7.0_67

    3.    注意:hadoop中的四個核心模組對應四個預設配置檔案
        指定預設的檔案系統為HDFS,檔案系統的訪問入口,namenode所在的機器
        9000埠是早期Hadoop 1.x使用的,現在Hadoop 2.x使用的是8020
        埠號用於節點直接內部通訊,使用RPC通訊機制

    4.    修改hadoop/etc/hadoop/core-site.xml檔案
    
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://hostname:8020</value>
        </property>
    
        <property>
              <name>hadoop.tmp.dir</name>
              <value>/opt/modules/hadoop-2.7.3/data/tmp</value>
        </property>
        

        
    5.    修改hadoop/etc/hadoop/hdfs-site.xml檔案
        
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>

    6.    修改hadoop/etc/hadoop/slaves檔案
        
        hostname 比如:bd1.ibeifeng.com

    7.    格式化namenode
        bin/hdfs namenode -format

    8.    啟動命令
        sbin/hadoop-daemon.sh start namenode
        sbin/hadoop-daemon.sh start datanode
    yarn的配置
-------------------------------------------------------------------------------------------------------------
    1.    首先找到hadoop/etc/hadoop/mapred-site.xml.template檔案,重名為mapred-site.xml
        修改hadoop/etc/hadoop/mapred-site.xml檔案
        
        
        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>

    2.    修改hadoop/etc/hadoop/yarn-site.xml檔案
    
        
        <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
        </property>

    3.    
        <property>
            <name>yarn.resourcemanager.hostname</name>
            <value>hostname</value>
        </property> 

    4.    啟動yarn
        sbin/yarn-daemon.sh start resourcemanager
        sbin/yarn-daemon.sh start nodemanager
------------------------------------------------------------------------------------------------------
安裝mysql
    $ su - 
    # yum -y install mysql         --安裝mysql客戶端、常用命令
    # yum -y install mysql-server  --mysql服務
    # yum -y install mysql-devel   --mysql develop擴充套件包
    ***以上可以合併為一句,-y表示所有提問回答都為yes
    # yum -y install mysql mysql-server mysql-devel
    
    # rpm -qa|grep mysql                          --檢視安裝的mysql
    # rpm -ql mysql-server-5.1.73-7.el6.x86_64    --檢視安裝位置
    # rpm -e --nodeps mysql-server-5.1.73-7.el6.x86_64    --解除安裝,nodeps:不檢查依賴
    
    # service mysqld start    --啟動mysql服務
    # chkconfig mysqld on     --設定開機啟動
    # /usr/bin/mysqladmin -uroot password 'root'    --初始化密碼,只能執行一次
    給使用者授權:
    # mysql -uroot -proot
    *** grant 許可權 on 資料庫物件(資料庫.表) to 使用者
    mysql> grant all on *.* to [email protected]'blue01.mydomain' identified by 'root';
    mysql> flush privileges;  #重新整理授權表,可以不執行
    mysql> set password for [email protected] = password('root');  --修改密碼
    mysql> show databases;
    
    ** mysql資料庫預設只允許root使用者通過localhost(127.0.0.1)來登入使用
    ** 想要使用Windows上的Navicat登入,需要授權
    ** mysql> grant all on *.* to [email protected]'192.168.122.1' identified by 'root';        
------------------------------------------------------------------------------------------------------
安裝Hive
    
    $ tar zxf /opt/softwares/apache-hive-0.13.1-bin.tar.gz
    
    ** 在conf/目錄:
    $ cp -a hive-env.sh.template  hive-env.sh         --重新命名,-a連同原來屬性一起復制
    $ cp -a hive-default.xml.template  hive-site.xml

    5、修改hive-env.sh
    JAVA_HOME=/opt/modules/jdk1.7.0_67
    HADOOP_HOME=/opt/modules/hadoop-2.5.0
    export HIVE_CONF_DIR=/opt/modules/apache-hive-0.13.1-bin/conf

    6、配置hive-site.xml,注意:使用者名稱和密碼不可以有空格
        <property>
          <name>javax.jdo.option.ConnectionURL</name>
          <value>jdbc:mysql://blue01.mydomain:3306/metastore?createDatabaseIfNotExist=true</value>
        </property>
        <property>
          <name>javax.jdo.option.ConnectionDriverName</name>
          <value>com.mysql.jdbc.Driver</value>
        </property>
        <property>
          <name>javax.jdo.option.ConnectionUserName</name>
          <value>root</value>
        </property>
        <property>
          <name>javax.jdo.option.ConnectionPassword</name>
          <value>root</value>
        </property>

    7、拷貝mysql驅動到lib/
    ** 若是jar已解壓,則不必執行這步:$ tar zxf mysql-connector-java-5.1.27.tar.gz
    $ cp mysql-connector-java-5.1.27-bin.jar /opt/modules/apache-hive-0.13.1-bin/lib/

    8、進入Hadoop目錄,修改目錄許可權
    ** /tmp存放臨時檔案
    $ bin/hadoop fs -chmod g+w /tmp   #給使用者組加上寫的許可權
    
    ** /user/hive/warehouse為Hive存放資料的目錄
    $ bin/hdfs dfs -mkdir -p /user/hive/warehouse
    $ bin/hadoop fs -chmod g+w /user/hive/warehouse
    
    9、啟動客戶端使用Hive
    $ bin/hive