您好,登錄后才能下訂單哦!
本篇內容主要講解“hadoop在虛擬機rhl5上的安裝方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“hadoop在虛擬機rhl5上的安裝方法”吧!
#0.前期工作
虛擬機中安裝redhat5,并配置主機名hostname=node1,ip=10.0.0.101,hosts列表等。
#1.使用ssh或ftp上傳
由于本人使用的是mac,自帶了scp命令,此處就使用了更為習慣的scp命令。
scp jdk-6u3-linux-i586-rpm.bin root@node1:/hadoop scp hadoop-1.0.3.tar.gz root@node1:/hadoop scp hive-0.9.0.tar.gz root@node1:/hadoop scp MySQL-* hadoop@node1:/hadoop/mysql #MySQL-*包括以下兩個文件 #MySQL-server-standard-5.0.27-0.rhel3.i386.rpm #MySQL-client-standard-5.0.27-0.rhel3.i386.rpm scp mysql-connector-java-5.1.22-bin.jar root@node1:/hadoop注:上傳之前先建立好相關目錄。并給予hadoop所有權。詳見步驟"#3安裝hadoop"。
#2.安裝jdk#
首先卸載redhat5自帶的jdk1.4。
rpm -qa | grep gcj ? java-1.4.2-gcj-compat-1.4.2.0-40jpp.115? rpm -e java-1.4.2-gcj-compat-1.4.2.0-40jpp.115 --nodeps
然后在文件上傳到的目錄中執行 ./jdk-6u3-linux-i586.rpm 安裝jdk1.6。
安裝jdk后配置環境變量。為了方便,把之后所配置的環境變量都列在下面。
vi /etc/profile #在末尾加上如下環境變量 export JAVA_HOME=/usr/java/jdk1.6.0_03 export CLASSPATH=.:$JAVA_HOME/lib export HADOOP_HOME=/hadoop/hadoop-1.0.3 #去除啟動時的Warning: $HADOOP_HOME is deprecated. 警告 export HADOOP_HOME_WARN_SUPPRESS=1 export HIVE_HOME=/hadoop/hive-0.9.0 export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
保存后執行:
source /etc/profile echo $JAVA_HOME /usr/java/jdk1.6.0_03
#3.安裝hadoop
在root權限下新建hadoop用戶。
useradd hadoop passwd hadoop #設置密碼為hadoop mkdir /hadoop cp /root/day /hadoop #將上傳的文件放到/hadoop目錄下 chown hadoop:hadoop /hadoop -R #將/hadoop目錄及其下所有文件權限給hadoop:hadoop用戶及組 vi /etc/sudoers #找到 root ALL=(ALL) ALL 所在行并在其下方增加如下一行 hadoop ALL=(ALL) ALL #將hadoop增加到sudo列表中 source /etc/sudoers su hadoop #切換到hadoop用戶mark(此時最好建立ssh秘鑰){ cd ~ ssh-keygen -t dsa cat id_dsa.pub >> authorized_keys 如果hadoop用戶ssh登陸到本機依然需要輸入密碼,則可能是秘鑰文件權限有問題: 公鑰文件authorized_keys的所有權必須是hadoop:hadoop,權限必須為644。 }cd /hadoop sudo tar -xvf hadoop-1.0.3.tar.gz #在/hadoop下解壓文件 ##檢查解壓后目錄所有者權限,如果不是屬于hadoop用戶,則將權限給hadoop用戶。 cd /hadoop/hadoop-1.0.3/conf vi hadoop-env.sh 在文件中加上 export JAVA_HOME=/usr/java/jdk1.6.0_03vi core-site.xml #配置如下
<configuration> <property> <name>fs.default.name</name> <value>hdfs://node1:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/hadoop/data/hadoop-${user.name}</value> </property> </configuration>vi hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>vi mapred-site.xml
<configuration> <property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> </configuration>vi master
node1
vi slaves
node1
##此時可以將添加HADOOP_HOME環境變量到/etc/profile中。
hadoop namenode -format #格式化namenode cd $HADOOP_HOME/bin ./start-all.sh[hadoop@node1 bin]$ jps 15109 NameNode 15245 DataNode 15488 JobTracker 15660 Jps 15617 TaskTracker 15397 SecondaryNameNode打開瀏覽器訪問:
http://node1:50030 http://node1:50070如果無法訪問可以關掉防火墻:service iptables stop。【chkconfig iptables off】
此時hadoop搭建成功。如果要集群搭建,只需要建立好ssh、配置好ip,主機名,環境變量,配置好jdk,并將/hadoop復制到節點的機器中即可自動識別。當然如實是虛擬機,只需復制好虛擬機后更改mac地址,并配置好ip,主機名等基本信息即可。
#4.安裝mysql
rpm -ivh MySQL-server-standard-5.0.27-0.rhel3.i386.rpm rpm -ivh MySQL-client-standard-5.0.27-0.rhel3.i386.rpm#檢查服務是否啟動: sudo /sbin/service mysqld status #如果沒有啟動則啟動服務: sudo /sbin/service mysqld start #服務開機自啟動: sudo /sbin/chkconfig mysqld on[hadoop@node1 hadoop]$ mysql #進入mysql
mysql> CREATE USER 'hive' IDENTIFIED BY 'hive'; mysql> GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%' WITH GRANT OPTION; mysql> GRANT ALL PRIVILEGES ON *.* TO 'hive'@'localhost' IDENTIFIED BY 'hive' WITH GRANT OPTION; mysql> flush privileges;為了安裝后續的hive,我們使用hive用戶登入mysql,創建一個hive數據庫:
create database hive;#如果要更改mysql配置:
vi /etc/my.cnf
#如果/etc目錄下沒有my.cnf則可執行以下命令
cp /usr/share/mysql/my-mediu.cnf /etc/my.cnf
#5.安裝hive
cd /hadoop tar -xvf hive-0.9.0.tar.gz cp mysql-connector-java-5.1.22-bin.jar hive-0.9.0/lib cd hive-0.9.0/conf cp hive-env.sh.template hive-env.sh cp hive-default.xml.template hive-site.xml cp hive-log4j.properties.template hive-log4j.propertiesvi hive-log4j.properties
找到參數項 log4j.appender.EventCounter=org.apache.hadoop.metrics.jvm.EventCounter
將這一項的值修改為: org.apache.hadoop.log.metrics.EventCounter。
如此則可以消除Hive警告:WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated。vi hive-site.xml
<property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://192.168.1.100:3306/hive?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>hive</value> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>hive</value> </property>cd /hadoop/hive-0.9.0/bin
./hive
show tables;###如果提示FAILED: Error in metadata: javax.jdo.JDOFatalDataStoreException: Access denied for user 'hive'@'node1' (using password: YES)。則應該是登陸mysql發生錯誤。檢查hive用戶的登陸權限,是否可以在本機登陸。
[hadoop@node1 bin]$mysql mysql> GRANT ALL PRIVILEGES ON *.* TO 'hive'@'node1' IDENTIFIED BY 'hive' WITH GRANT OPTION; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges;###如果顯示:
OK
Time taken: 4.029 second
則hive安裝成功。
## 啟動hive server
hive --service hiveserver 10001 &###測試
[hadoop@node1 bin]$ netstat -nap | grep 10001 tcp 0 0 :::10001 :::* LISTEN 22552/java## 啟動內置的Hive UI
hive --service hwi &###測試
[hadoop@node1 bin]$ netstat -nap | grep 9999 tcp 0 0 :::9999 :::* LISTEN 22908/java
啟動瀏覽器打開地址:http://node1:9999/hwi
下面是一個已在vmware上部署好的虛擬機文件,相關配置及用戶密碼在虛擬機快照簡介里:
http://pan.baidu.com/s/1mg5eJRa
到此,相信大家對“hadoop在虛擬機rhl5上的安裝方法”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。