摘要:如果長(zhǎng)時(shí)間之后,集群的數(shù)據(jù)量還是不均衡,可以在集群管理頁(yè)面提交數(shù)據(jù)均衡請(qǐng)求,如下圖數(shù)據(jù)均衡數(shù)據(jù)均衡也可以在節(jié)點(diǎn)提交均衡命令是判斷集群是否平衡的目標(biāo)參數(shù)。
由于在UHadoop中Master配置是HA的,故NameNode也有2個(gè),同一時(shí)刻一個(gè)節(jié)點(diǎn)為Active,另一個(gè)為Standby,一般內(nèi)存跑高或者網(wǎng)絡(luò)波動(dòng)都可能會(huì)導(dǎo)致主從切換,不建議客戶(hù)端使用Master節(jié)點(diǎn)IP訪問(wèn)HDFS數(shù)據(jù)。
正確使用方法: 如果所在機(jī)器已經(jīng)部署好UHadoop客戶(hù)端(部署方法請(qǐng)參考hadoopdev#在UHost上安裝Hadoop客戶(hù)端),可直接通過(guò)hadoop fs -ls / 或者h(yuǎn)adoop fs -ls hdfs://Ucluster/訪問(wèn)
如果是客戶(hù)端代碼,可以將集群/home/hadoop/conf/hdfs-site.xml和/home/hadoop/conf/core-site.xml拷貝到本地程序中,通過(guò)conf.addResource加載2個(gè)文件,即可通過(guò)hdfs://Ucluster/訪問(wèn)HDFS數(shù)據(jù)
core節(jié)點(diǎn)由于要啟動(dòng)node-manager 服務(wù),會(huì)存一部分本地?cái)?shù)據(jù)。所以,會(huì)用到額外的空間。core1節(jié)點(diǎn)會(huì)被zookeeper和 jornal-node占用一部分空間。所以,會(huì)更少一點(diǎn)。標(biāo)準(zhǔn)是配置90%空間給HDFS。
slaves相當(dāng)于一份白名單機(jī)制,如果不配置此文件,默認(rèn)新加core節(jié)點(diǎn)可以直接加入集群;新加節(jié)點(diǎn)是通過(guò)讀取hdfs-site.xml文件中的namenode相關(guān)信息找到并正確加入集群的,其他用戶(hù)節(jié)點(diǎn)或者網(wǎng)絡(luò)不通的節(jié)點(diǎn)是無(wú)法加入本集群的。
hbase的regionservers文件配置同理。
".Trash" 的文件默認(rèn)配置是按5天check一次的,如果 ".Trash" 目錄下的文件超過(guò)5天就會(huì)刪除,如果沒(méi)超過(guò)5天,這個(gè)文件會(huì)放到類(lèi)似 "/.Trash/yyMMddHHmm" 命名的文件中,然后等待5天做下一次檢查,這些文件才會(huì)被刪除,因此 ".Trash" 文件會(huì)保存5-10天。
可以更改以下2個(gè)參數(shù)更改保存與check時(shí)間:
fs.trash.interval文件保存時(shí)間fs.trash.checkpoint.interval文件check時(shí)間,默認(rèn)等于"fs.trash.interval"- 錯(cuò)誤1:Could not load native gpl library
確認(rèn)當(dāng)前客戶(hù)端配置和集群一樣的環(huán)境變量 “LD_LIBRARY_PATH”
- 錯(cuò)誤2:java.lang.RuntimeException: native-lzo library not available
這個(gè)錯(cuò)誤是執(zhí)行任務(wù)的機(jī)器沒(méi)有安裝lzo-devel,程序找不到liblzo2.so.2導(dǎo)致的,在該機(jī)器上執(zhí)行如下命令安裝即可:
yum install lzo lzo-devel
為了便于管理,目前task節(jié)點(diǎn)必須保持統(tǒng)一的配置。
所以需要調(diào)整task節(jié)點(diǎn)配置的時(shí)候,只能通過(guò)刪除現(xiàn)有的task節(jié)點(diǎn)后,選擇新的類(lèi)型。
注意: 1.刪除task節(jié)點(diǎn)時(shí),會(huì)影響到當(dāng)前正在運(yùn)行中的任務(wù); 2.需要用戶(hù)自行備份的刪除節(jié)點(diǎn)上的數(shù)據(jù)。
為了易于管理資源和調(diào)度資源,Yarn內(nèi)置了資源規(guī)整化算法,它規(guī)定了最小可申請(qǐng)資源量、最大可申請(qǐng)資源量和資源規(guī)整化因子,如果應(yīng)用程序申請(qǐng)的資源量小于最小可申請(qǐng)資源量,則Yarn會(huì)將其大小改為最小可申請(qǐng)量,也就是說(shuō),應(yīng)用程序獲得資源不會(huì)小于自己申請(qǐng)的資源,但也不一定相等;如果應(yīng)用程序申請(qǐng)的資源量大于最大可申請(qǐng)資源量,則會(huì)拋出異常,無(wú)法申請(qǐng)成功;規(guī)整化因子是用來(lái)規(guī)整化應(yīng)用程序資源的,應(yīng)用程序申請(qǐng)的資源如果不是該因子的整數(shù)倍,則將被修改為最小的整數(shù)倍對(duì)應(yīng)的值,公式為ceil(a/b)*b,其中a是應(yīng)用程序申請(qǐng)的資源,b為規(guī)整化因子。
以上介紹的參數(shù)需在yarn-site.xml中設(shè)置,相關(guān)參數(shù)如下:
- yarn.scheduler.minimum-allocation-mb:最小可申請(qǐng)內(nèi)存量,默認(rèn)是1024
- yarn.scheduler.minimum-allocation-vcores:最小可申請(qǐng)CPU數(shù),默認(rèn)是1
- yarn.scheduler.maximum-allocation-mb:最大可申請(qǐng)內(nèi)存量,默認(rèn)是8096
- yarn.scheduler.maximum-allocation-vcores:最大可申請(qǐng)CPU數(shù),默認(rèn)是4
對(duì)于規(guī)整化因子,不同調(diào)度器不同,具體如下:
- FIFO和Capacity Scheduler:規(guī)整化因子等于最小可申請(qǐng)資源量,不可多帶帶配置。
- Fair Scheduler:規(guī)整化因子通過(guò)參數(shù)yarn.scheduler.increment-allocation-mb和yarn.scheduler.increment-allocation-vcores設(shè)置,默認(rèn)是1024和1。
通過(guò)以上介紹可知,應(yīng)用程序申請(qǐng)到資源量可能大于資源申請(qǐng)的資源量,比如YARN的最小可申請(qǐng)資源內(nèi)存量為1024,規(guī)整因子是1024,如果一個(gè)應(yīng)用程序申請(qǐng)1500內(nèi)存,則會(huì)得到2048內(nèi)存,如果規(guī)整因子是512,則得到1536內(nèi)存。
如果上傳的文件使用了壓縮,并且有破損的時(shí)候,會(huì)導(dǎo)致執(zhí)行的任務(wù)失敗??梢酝ㄟ^(guò)查看任務(wù)的日志文件定位損壞的文件。
- 從web-yarn的界面找到出錯(cuò)的任務(wù);
- 點(diǎn)擊查看任務(wù)的詳細(xì)信息;
- 打開(kāi)任務(wù)的History鏈接,找到失敗的Mapper;
- 查看具體失敗的mapper處理的是哪一個(gè)文件。
有兩種方法可以避免這個(gè)問(wèn)題:
- 如果這個(gè)文件對(duì)結(jié)果影響不大, 那么可以跳過(guò)這個(gè)錯(cuò)誤。 可以通過(guò)交任務(wù)時(shí)指定mapreduce.map.skip.maxrecords來(lái)跳過(guò)這個(gè)錯(cuò)誤,讓任務(wù)可以繼續(xù)下去;
- 使用其他的壓縮格式。因?yàn)間zip壓縮需要保持整個(gè)文件完整才能解壓,推薦使用lzo格式,即使文件部分損壞,也可以保證任務(wù)繼續(xù)運(yùn)行。
添加節(jié)點(diǎn)成功后,后臺(tái)會(huì)自動(dòng)進(jìn)行數(shù)據(jù)均衡。如果長(zhǎng)時(shí)間之后,集群的數(shù)據(jù)量還是不均衡,可以在“集群管理”頁(yè)面提交數(shù)據(jù)均衡請(qǐng)求,如下圖:
也可以在master節(jié)點(diǎn)提交均衡命令:
/home/hadoop/sbin/start-balancer.sh -threshold 10
threshold是判斷集群是否平衡的目標(biāo)參數(shù)。默認(rèn)值為10。表示當(dāng)集群中所有core節(jié)點(diǎn)的可用磁盤(pán)容量百分比的差距小于10時(shí),退出數(shù)據(jù)均衡。
因?yàn)樵跀?shù)據(jù)均衡的同時(shí),也會(huì)有數(shù)據(jù)寫(xiě)入,可以在/home/hadoop/conf/hdfs-site.xml中修改數(shù)據(jù)均衡時(shí)可以占用的帶寬:
<property>
<name>dfs.balance.bandwidthPerSecname>
<value>10485760value>
property>
這面是設(shè)置傳輸速率為20M/S。
注意: 該值如果設(shè)置過(guò)大,可能會(huì)影響正常的hdfs讀寫(xiě)和yarn任務(wù)執(zhí)行。
如果發(fā)現(xiàn)hdfs讀數(shù)據(jù)響應(yīng)慢,出現(xiàn)
WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Slow BlockReceiver write data to disk cost
可以從以下幾個(gè)方面查找問(wèn)題:
- 檢查磁盤(pán)IO;
- 檢查對(duì)于節(jié)點(diǎn)的GC情況;
- 檢查網(wǎng)絡(luò)帶寬;
HDFS 支持并發(fā)讀、讀寫(xiě),但寫(xiě)入不能并發(fā)。有且僅有一個(gè)客戶(hù)端時(shí)可同一時(shí)刻寫(xiě)某個(gè)文件,但多個(gè)客戶(hù)端不能同時(shí)對(duì)HDFS寫(xiě)文件。這是由于當(dāng)一個(gè)客戶(hù)端獲得NameNode的允許去寫(xiě)DataNode上的一個(gè)塊時(shí),這個(gè)塊會(huì)被鎖住,直到操作完成。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/126740.html
摘要:也可以將托管集群設(shè)置為快捷方式,通過(guò)左側(cè)快捷方式菜單欄點(diǎn)擊進(jìn)入??蚣芗褐袃H部署。用于做存儲(chǔ)集群,有專(zhuān)屬的節(jié)點(diǎn)機(jī)型。節(jié)點(diǎn)管理節(jié)點(diǎn),負(fù)責(zé)協(xié)調(diào)整個(gè)集群服務(wù)。目前僅節(jié)點(diǎn)支持綁定。通過(guò)云主機(jī)內(nèi)網(wǎng)進(jìn)行登錄。登錄密碼為集群創(chuàng)建時(shí)設(shè)置的密碼。 快速上手本篇目錄創(chuàng)建集群提交任務(wù)本文檔將帶領(lǐng)您如何創(chuàng)建UHadoop集群,并使用UHadoop集群完成數(shù)據(jù)處理任務(wù)。創(chuàng)建集群本章簡(jiǎn)單介紹了用戶(hù)使用UHadoop服務(wù)...
摘要:查看上的歷史日志查看上的歷史日志任務(wù)的日志在任務(wù)運(yùn)行結(jié)束之后會(huì)上傳到上,當(dāng)日志文件過(guò)大無(wú)法通過(guò)來(lái)查看時(shí),可以通過(guò)將日志文件從上下載下來(lái)查看。掛載在允許的主機(jī)上執(zhí)行 常用操作本篇目錄應(yīng)用的Web接口查看日志配置NFS掛載hdfs到本地應(yīng)用的Web接口Hadoop 提供了基于 Web 的用戶(hù)界面,可通過(guò)它查看您的 Hadoop 集群。Web 服務(wù)會(huì)在主節(jié)點(diǎn)上運(yùn)行(Active NameNode或...
摘要:架構(gòu)架構(gòu)元數(shù)據(jù)管理元數(shù)據(jù)管理元數(shù)據(jù)管理創(chuàng)建集群時(shí)可在控制臺(tái)開(kāi)啟元數(shù)據(jù)獨(dú)立管理。若項(xiàng)目中已開(kāi)啟過(guò)元數(shù)據(jù)獨(dú)立管理,則新集群開(kāi)啟該功能時(shí),不再創(chuàng)建新的,而是將新集群的元數(shù)據(jù)存儲(chǔ)于已有的中。 元數(shù)據(jù)管理本篇目錄介紹產(chǎn)品架構(gòu)元數(shù)據(jù)管理介紹UHadoop 支持將 Hive-Metastore 的數(shù)據(jù)庫(kù)獨(dú)立于 Hadoop 集群部署,也支持多個(gè)集群訪問(wèn)同一個(gè) Hive 元數(shù)據(jù)庫(kù),可在控制臺(tái)對(duì)其做管理。產(chǎn)品...
摘要:創(chuàng)建任務(wù)創(chuàng)建任務(wù)選擇這個(gè)標(biāo)簽拖動(dòng)到中。頁(yè)面權(quán)限控制頁(yè)面權(quán)限控制頁(yè)面權(quán)限控制點(diǎn)擊管理用戶(hù)組選擇要修改的組名稱(chēng),設(shè)置相應(yīng)權(quán)限并保存 Hue開(kāi)發(fā)指南本篇目錄1. 配置工作流2. Hue頁(yè)面權(quán)限控制Hue是面向 Hadoop 的開(kāi)源用戶(hù)界面,可以讓您更輕松地運(yùn)行和開(kāi)發(fā) Hive 查詢(xún)、管理 HDFS 中的文件、運(yùn)行和開(kāi)發(fā) Pig 腳本以及管理表。服務(wù)默認(rèn)已經(jīng)啟動(dòng),用戶(hù)只需要配置外網(wǎng)IP,在防火墻中配...
摘要:執(zhí)行語(yǔ)句時(shí),任務(wù)內(nèi)存不足怎么辦執(zhí)行語(yǔ)句時(shí),任務(wù)內(nèi)存不足怎么辦執(zhí)行語(yǔ)句時(shí),任務(wù)內(nèi)存不足怎么辦如果在日志文件中看到出現(xiàn)錯(cuò)誤,可以通過(guò)等來(lái)增大或可以使用的內(nèi)存數(shù)。 Hive本篇目錄Hive執(zhí)行sql任務(wù)太慢,是否可以支持hive on spark?執(zhí)行SQL語(yǔ)句時(shí),map/reduce任務(wù)內(nèi)存不足怎么辦?hive-server2 通過(guò)jdbc提交任務(wù)的時(shí)候報(bào)文件權(quán)限不足執(zhí)行sql時(shí)速度很慢怎么辦?...
閱讀 836·2025-02-07 13:29
閱讀 644·2024-11-07 18:25
閱讀 131094·2024-02-01 10:43
閱讀 1060·2024-01-31 14:58
閱讀 1022·2024-01-31 14:54
閱讀 83215·2024-01-29 17:11
閱讀 3497·2024-01-25 14:55
閱讀 2217·2023-06-02 13:36