HADOOP叢集在Linux平臺的搭建
環境說明
Red Hat Enterprise Linux Server release 6.3 (Maipo) (64位)
IP:10.1.23.200
主機名: bigdata
--這裡搭建的是偽分散式叢集,namenode與datanode都在同一個機器上。
--如果使用32位Linux系統安裝hadoop-2.x.x那麼在開啟hadoop的過程中會報無法載入本地庫的錯誤,所以最好用64位的系統。
--如果使用32位Linux系統安裝hadoop-2.x.x那麼在開啟hadoop的過程中會報無法載入本地庫的錯誤,所以最好用64位的系統。
準備
所需安裝包:
jdk-8u111-linux-x64.rpm
hadoop-2.7.2.tar.gz
1.安裝jdk
執行:rpm -ivh jdk-8u111-linux-x64.rpm
檢查: java -version
新增/etc/profile新增環境變數: JAVA_HOME=/usr/java/jdk1.8.0_111
使其生效: source /etc/profile
驗證: echo $JAVA_HOME
2.設定ssh免密碼登入
執行:ssh-keygen -t rsa
在/root/.ssh下會生成私鑰檔案 id_rsa 以及 公鑰檔案 id_rsa.pub
建立authorized_keys :cat /root/.ssh/id_rsa.pub >> authorized_keys
修改authorized_keys 許可權: chmod 644 authorized_keys
驗證: ssh IP/hostname (第一次還是需要輸入root使用者密碼,之後將不再需要)
3.安裝hadoop
解壓:tar zxf hadoop-2.7.2.tar.gz
配置環境變數:在/etc/profile 中新增 $HADOOP_HOME 以及 $PATH
JAVA_HOME=/usr/java/jdk1.8.0_111
HADOOP_HOME=/opt/hadoop-2.7.2
PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
使其生效: source /etc/profile
驗證: echo $HADOOP_HOME
echo $PATH
echo $PATH
4.配置hadoop
配置檔案所在目錄:/opt/hadoop-2.7.2/etc/hadoop
需要修改的配置檔案如下:
core-site.xml
hdfs-site.xml
yarn-site.xml
mapred-site.xml
slaves
(1)core-site.xml --顧名思義,這是比較核心的檔案
<property>
<name>fs.default.name</name>
<value>hdfs://bigdata:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop-2.7.2/current/tmp</value>
</property>
<property>
<name>fs.trash.interval</name>
<value>4320</value>
</property>
其中,fs.default.name設定hdfs的訪問地址;
hadoop.tmp.dir設定hdfs的臨時目錄,注意,在配置完之後要先建立該目錄;fs.trash.interval設定hdfs的垃圾箱檢查的間隔時間,在fs.trash.interval回收週期內,檔案實際上是被移動到trash這個目錄下,並沒有被馬上刪除,只有當間隔週期到了,hdfs才會真正刪除這些資料。單位是分鐘,4320=60*24*3剛好是3天。
(2)hdfs-site.xml --配置hdfs分散式檔案系統的一些細節
<property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hadoop-2.7.2/current/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/opt/hadoop-2.7.2/current/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.permissions.superusergroup</name>
<value>staff</value>
</property>
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
dfs.namenode.name.dir 設定namenode的存放路徑;
dfs.datanode.data.dir設定datanode的存放路徑;
(因為現在搭建的是偽分散式的hadoop,所以在這裡同時配置了namenode與datanode配置項)
dfs.replication指定hdfs中每一個塊有幾個副本;
dfs.webhdfs.enabled指定是否啟用hdfs的web,設定為true啟用,讓後續的管理更便捷;
dfs.permissions.superusergroup指定hdfs的使用者組;
dfs.permissions.enabled是否開啟hdfs的許可權,這裡暫時不開啟。
(3)yarn-site.xml
<property>
<name>yarn.resourcemanager.hostname</name>
<value>bigdata</value>
</property>
<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>bigdata:18040</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>bigdata:18030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>bigdata:18025</value>
</property> <property>
<name>yarn.resourcemanager.admin.address</name>
<value>bigdata:18141</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>bigdata:18088</value>
</property>
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>86400</value>
</property>
<property>
<name>yarn.log-aggregation.retain-check-interval-seconds</name>
<value>86400</value>
</property>
<property>
<name>yarn.nodemanager.remote-app-log-dir</name>
<value>/tmp/logs</value>
</property>
<property>
<name>yarn.nodemanager.remote-app-log-dir-suffix</name>
<value>logs</value>
</property>
yarn.resourcemanager.hostname指定執行resourcemaanger那臺伺服器的hostname;
yarn.nodemanager.aux-services配置nodemanager的附屬服務;
yarn.resourcemanager.address配置resourcemanager的埠;
yarn.resourcemanager.scheduler.address配置resourcemanager排程器的埠;
yarn.resourcemanager.resource-tracker.address配置resourcemanager 的resource-tracke的埠;
yarn.resourcemanager.admin.address配置resourcemanager 的admin埠;
yarn.resourcemanager.webapp.address配置resourcemanager web埠;
yarn.log-aggregation-enable指定是否啟動聚合日誌;
yarn.log-aggregation.retain-seconds指定聚合日誌保留時間;
yarn.log-aggregation.retain-check-interval-seconds指定聚合日誌保留的檢查時間間隔;
yarn.nodemanager.remote-app-log-dir 指定nodemanager遠端日誌儲存路徑;
yarn.nodemanager.remote-app-log-dir-suffix指定字首。
(4) mapred-site.xml
cp mapred-site.xml.template mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobtracker.http.address</name>
<value>bigdata:50030</value>
</property>
<property>
<name>mapreduce.jobhisotry.address</name>
<value>bigdata:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>bigdata:19888</value>
</property>
<property>
<name>mapreduce.jobhistory.done-dir</name>
<value>/jobhistory/done</value>
</property>
<property>
<name>mapreduce.intermediate-done-dir</name>
<value>/jobhisotry/done_intermediate</value>
</property>
<property>
<name>mapreduce.job.ubertask.enable</name>
<value>true</value>
</property>
mapreduce.framework.name指定mapreduce基於的框架是yarn;
mapreduce.jobtracker.http.address指定jobtracker伺服器的埠;
mapreduce.jobhisotry.address指定jobhistory server的埠;
mapreduce.jobhistory.webapp.address指定jobhistory的web埠;
mapreduce.jobhistory.done-dir指定jobhistory已完成日誌路徑;
mapreduce.intermediate-done-dir指定jobhistory中間完成日誌路徑;
mapreduce.job.ubertask.enable如果啟用該功能,會將一個application中的所有子task 在同一個jvm裡執行,達到jvm重用的目的。
(5)slaves --指定namenode的datanode在哪個伺服器上執行
bigdata
5.格式化hdfs
/opt/hadoop-2.7.2/etc/hadoop/hadoop-env.sh中配置JAVA_HOME:
JAVA_HOME=/usr/java/jdk1.8.0_111
指定格式化命令:
hdfs namenode -format
格式化成功標誌:INFO common.Storage: Storage directory /opt/hadoop-2.7.2/current/dfs/name has been successfully formatted
6.啟動hadoop叢集
/opt/hadoop-2.7.2/sbin/start-all.sh
7.驗證hadoop叢集
方式1:jps
NodeManagerSecondaryNameNode
ResourceManager
NameNode
DataNode
方式2:通過埠檢視
http://10.1.23.200:50070 --檢視hdfs使用情況
http://10.1.23.200:18088 --檢視yarn使用情況
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29800581/viewspace-2145076/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 大資料平臺Hadoop叢集搭建大資料Hadoop
- 高可用Hadoop平臺-HBase叢集搭建Hadoop
- Hadoop叢集搭建Hadoop
- Hadoop搭建叢集Hadoop
- 4.4 Hadoop叢集搭建Hadoop
- Hadoop叢集搭建(一)Hadoop
- Linux 下 Hadoop 2.6.0 叢集環境的搭建LinuxHadoop
- hadoop叢集篇--從0到1搭建hadoop叢集Hadoop
- hadoop分散式叢集搭建Hadoop分散式
- Hadoop叢集搭建文件Hadoop
- hadoop叢集環境搭建Hadoop
- hadoop2.2.0叢集搭建Hadoop
- Linux下Hadoop2.6.0叢集環境的搭建LinuxHadoop
- Linux平臺上搭建apache+tomcat負載均衡叢集LinuxApacheTomcat負載
- Hadoop HA叢集簡單搭建Hadoop
- HADOOP SPARK 叢集環境搭建HadoopSpark
- Hadoop-2.7.4 叢集快速搭建Hadoop
- Hadoop分散式叢集搭建_1Hadoop分散式
- uWSGI叢集平臺
- Linux 環境下搭建Hadoop叢集(全分佈)LinuxHadoop
- 基於kerberos的hadoop安全叢集搭建ROSHadoop
- linux下搭建ZooKeeper叢集(偽叢集)Linux
- hadoop-2.5.0-cdh5.3.6叢集搭建HadoopH5
- 大資料7.1 - hadoop叢集搭建大資料Hadoop
- 從零自學Hadoop(06):叢集搭建Hadoop
- Centos mini系統下的Hadoop叢集搭建CentOSHadoop
- (一)hadoop叢集搭建——1.4hdfs的操作Hadoop
- 國內 Linux 伺服器叢集管理的平臺Linux伺服器
- Linux中Mysql的叢集搭建LinuxMySql
- mongodb 3.4 叢集搭建升級版 五臺叢集MongoDB
- 基於 ZooKeeper 搭建 Hadoop 高可用叢集Hadoop
- 搭建hadoop2/CDH4叢集Hadoop
- Ubuntu上搭建Hadoop叢集環境的步驟UbuntuHadoop
- CentOS7.2下Hadoop2.7.2的叢集搭建CentOSHadoop
- 【MongoDB】windows平臺搭建Mongo資料庫複製集(相似叢集)(一)MongoDBWindows資料庫
- Linux部署hadoop2.7.7叢集LinuxHadoop
- Linux下搭建ZooKeeper叢集Linux
- 虛擬機器Hadoop叢集搭建5安裝Hadoop虛擬機Hadoop