免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

三臺虛擬機(jī)實(shí)戰(zhàn)Hadoop:從WordCount跑通到故障調(diào)試

三臺虛擬機(jī)實(shí)戰(zhàn)Hadoop:從WordCount跑通到故障調(diào)試 1. 這不是“分布式”概念課而是我親手搭起三臺虛擬機(jī)跑通WordCount的真實(shí)記錄很多人第一次看到“分布式計(jì)算”四個(gè)字下意識會想到教科書里那張畫著幾臺服務(wù)器、中間連著閃電符號的示意圖——看起來很酷但離手能摸到的代碼差了整整一個(gè)調(diào)試器的距離。我也不例外。去年接手模擬項(xiàng)目X的后端數(shù)據(jù)清洗模塊時(shí)原方案用單機(jī)Python腳本處理20GB日志跑一次要47分鐘而業(yè)務(wù)方要求“T0實(shí)時(shí)反饋”。那天晚上我盯著任務(wù)監(jiān)控面板上緩慢爬升的CPU曲線突然意識到所謂“分布式”從來不是PPT里的架構(gòu)圖而是當(dāng)你按下回車鍵后三臺機(jī)器同時(shí)亮起、日志滾動(dòng)、結(jié)果秒出的那一聲“叮”。這本學(xué)習(xí)筆記就是從那個(gè)“?!甭曢_始的。它不講CAP定理的哲學(xué)思辨不列Hadoop生態(tài)的全家桶清單只記錄我如何從零配置三臺CentOS虛擬機(jī)讓它們真正協(xié)作完成一個(gè)可驗(yàn)證、可打斷、可重跑的WordCount任務(wù)——包括在第二臺節(jié)點(diǎn)意外斷電后如何不重啟整個(gè)集群就恢復(fù)計(jì)算。關(guān)鍵詞不是“高可用”或“彈性伸縮”而是可觸摸的進(jìn)程、可復(fù)現(xiàn)的日志路徑、可修改的配置行號。如果你正卡在“看了十篇教程還是不會啟動(dòng)NameNode”的階段或者想確認(rèn)“YARN的ApplicationMaster到底在哪個(gè)容器里跑”這篇筆記就是為你寫的。它適合兩類人一類是剛接觸分布式系統(tǒng)、需要把抽象概念錨定到具體文件和命令的初學(xué)者另一類是已有開發(fā)經(jīng)驗(yàn)、但缺乏真實(shí)集群運(yùn)維手感的工程師——畢竟所有分布式框架的“靈魂”都藏在/etc/hadoop/conf/core-site.xml第17行那個(gè)fs.defaultFS的值里。2. 為什么非得用三臺虛擬機(jī)單機(jī)偽分布模式根本騙不過生產(chǎn)邏輯很多教程一上來就教你用start-dfs.sh啟動(dòng)偽分布式模式理由很充分“省資源”“快上手”“適合學(xué)習(xí)”。我試過三次每次都在第三天崩潰。不是因?yàn)榧夹g(shù)難度而是因?yàn)閭畏植紡氐籽谏w了分布式系統(tǒng)最本質(zhì)的“故障面”——網(wǎng)絡(luò)分區(qū)、節(jié)點(diǎn)失聯(lián)、時(shí)鐘漂移。在單機(jī)上NameNode和DataNode共享同一塊內(nèi)存hdfs dfs -ls /永遠(yuǎn)返回成功但當(dāng)真實(shí)集群中某臺DataNode因磁盤滿而心跳超時(shí)NameNode的/var/log/hadoop-hdfs/hadoop-hdfs-namenode-*.log里會出現(xiàn)連續(xù)37行BLOCK* processReport: node X.X.X.X:9866 is not in the list of live nodes而偽分布環(huán)境里你永遠(yuǎn)看不到這37行。所以這次我堅(jiān)持用三臺獨(dú)立虛擬機(jī)1主2從全部基于CentOS 7.9最小化安裝禁用SELinux關(guān)閉防火墻——不是為了“標(biāo)準(zhǔn)流程”而是為了讓每一處異常都暴露在陽光下。主節(jié)點(diǎn)node1承擔(dān)NameNode和ResourceManager角色從節(jié)點(diǎn)node2、node3各運(yùn)行DataNode和NodeManager。關(guān)鍵決策點(diǎn)在于網(wǎng)絡(luò)配置三臺機(jī)器必須在同一子網(wǎng)我設(shè)為192.168.56.0/24且禁用DHCP全部手動(dòng)指定靜態(tài)IP。原因很簡單YARN的Container日志默認(rèn)通過HTTP服務(wù)暴露其URL由NodeManager上報(bào)的主機(jī)名解析而來。如果某臺機(jī)器用DHCP獲取IP重啟后主機(jī)名解析可能指向錯(cuò)誤地址導(dǎo)致ResourceManager頁面顯示“UNHEALTHY”卻查不到具體原因。提示不要用localhost或127.0.0.1作為任何節(jié)點(diǎn)的host配置。我在node2的/etc/hosts里曾寫過127.0.0.1 node2結(jié)果DataNode啟動(dòng)后向NameNode注冊的地址是127.0.0.1:9866NameNode在/var/log/hadoop-hdfs/hadoop-hdfs-namenode-node1.log里瘋狂報(bào)錯(cuò)Invalid datanode name: 127.0.0.1:9866。修正方法是刪除該行改為192.168.56.102 node2對應(yīng)實(shí)際IP。更隱蔽的坑在SSH免密登錄。Hadoop腳本依賴ssh node2直接執(zhí)行命令但OpenSSH 8.8默認(rèn)禁用ssh-rsa簽名算法。如果你用新版本OpenSSH生成密鑰ssh-copy-id會失敗start-dfs.sh執(zhí)行到starting datanodes時(shí)卡住。解決方案不是降級OpenSSH而是生成密鑰時(shí)明確指定算法ssh-keygen -t ecdsa -b 256 -f ~/.ssh/id_ecdsa再用ssh-copy-id -i ~/.ssh/id_ecdsa.pub node2。這個(gè)細(xì)節(jié)在官方文檔里藏得很深但它是你能否看到第一行DataNode日志的關(guān)鍵。3. HDFS核心配置的七處“魔鬼細(xì)節(jié)”從fs.defaultFS到dfs.namenode.name.dirHDFS的配置文件看似只有core-site.xml和hdfs-site.xml兩份但真正決定集群生死的是其中七處參數(shù)的精確取值。我逐行對比了三版配置官方默認(rèn)、某高校實(shí)驗(yàn)手冊、某云廠商模板發(fā)現(xiàn)它們在以下位置存在致命差異3.1 fs.defaultFS協(xié)議頭必須帶端口且與NameNode綁定端口嚴(yán)格一致在core-site.xml中property namefs.defaultFS/name valuehdfs://node1:9000/value /property注意9000不是隨意寫的。它必須等于hdfs-site.xml中dfs.namenode.rpc-address的端口值默認(rèn)9000。如果這里寫成hdfs://node1缺端口hadoop fs -ls /會報(bào)錯(cuò)Call From node1/192.168.56.101 to node1:8020 failed on connection exception——因?yàn)榭蛻舳四J(rèn)嘗試8020端口而NameNode監(jiān)聽的是9000。這個(gè)錯(cuò)誤信息極具迷惑性它把問題指向了“連接異?!睂?shí)則根源是配置不匹配。3.2 dfs.namenode.name.dir絕對路徑必須屬主為hdfs且磁盤剩余空間≥10GBproperty namedfs.namenode.name.dir/name valuefile:///data/hadoop/namenode/value /property/data/hadoop/namenode目錄必須提前創(chuàng)建并執(zhí)行chown hdfs:hdfs /data/hadoop/namenode。更重要的是該目錄所在磁盤的剩余空間不能低于10GB。NameNode啟動(dòng)時(shí)會在該目錄下生成fsimage_0000000000000000000等元數(shù)據(jù)文件首次格式化后約占用200MB但隨著文件數(shù)量增長EditLog會持續(xù)追加。我曾在一塊僅剩3GB空間的磁盤上部署集群運(yùn)行兩周后NameNode自動(dòng)退出日志顯示No space left on device而df -h卻顯示還有1.2GB——這是因?yàn)長inux ext4文件系統(tǒng)保留了5%的root空間普通用戶hdfs無法使用。解決方案是sudo tune2fs -m 1 /dev/sdb1將保留空間降至1%或直接換更大磁盤。3.3 dfs.datanode.data.dir多路徑配置必須用逗號分隔且各路徑權(quán)限獨(dú)立校驗(yàn)property namedfs.datanode.data.dir/name valuefile:///data/hadoop/datanode1,file:///data/hadoop/datanode2/value /propertyDataNode會輪詢寫入這兩個(gè)路徑。但每個(gè)路徑都必須單獨(dú)執(zhí)行chown hdfs:hdfs且/data/hadoop/datanode1和/data/hadoop/datanode2不能是同一磁盤的軟鏈接——HDFS會檢測inode發(fā)現(xiàn)相同則拒絕啟動(dòng)。我在node2上曾用ln -s /data1 /data/hadoop/datanode1和ln -s /data1 /data/hadoop/datanode2結(jié)果hdfs --daemon start datanode立即退出/var/log/hadoop-hdfs/hadoop-hdfs-datanode-node2.log里只有一行ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: Invalid configuration: multiple directories point to the same filesystem。3.4 dfs.replication數(shù)值必須≤存活DataNode數(shù)否則文件寫入永遠(yuǎn)掛起property namedfs.replication/name value3/value /property這個(gè)值常被誤解為“理想副本數(shù)”。實(shí)際上它是HDFS客戶端發(fā)起寫請求時(shí)的強(qiáng)制要求。當(dāng)集群只有2臺DataNodenode2、node3時(shí)若設(shè)為3執(zhí)行hadoop fs -put test.txt /input/后命令會卡住不動(dòng)jps顯示Client進(jìn)程仍在運(yùn)行/var/log/hadoop-hdfs/hadoop-hdfs-datanode-node2.log里反復(fù)出現(xiàn)Waiting for 1 more nodes to join。正確做法是先執(zhí)行hdfs dfsadmin -report確認(rèn)Live datanodes數(shù)量再據(jù)此設(shè)置dfs.replication。生產(chǎn)環(huán)境通常設(shè)為3但學(xué)習(xí)環(huán)境建議從2起步。3.5 dfs.namenode.handler.count線程數(shù)不足會導(dǎo)致RPC隊(duì)列積壓表現(xiàn)為主節(jié)點(diǎn)假死property namedfs.namenode.handler.count/name value10/value /propertyNameNode處理客戶端RPC請求的線程池大小。默認(rèn)值10在單機(jī)偽分布夠用但在三節(jié)點(diǎn)集群中當(dāng)同時(shí)運(yùn)行MapReduce作業(yè)和hdfs dfs -ls命令時(shí)線程池會迅速耗盡?,F(xiàn)象是hdfs dfs -ls /返回超時(shí)但jps顯示NameNode進(jìn)程正常netstat -tuln | grep 9000顯示端口監(jiān)聽中。此時(shí)查看/proc/$(pgrep -f NameNode)/status中的Threads:字段若長期10基本可判定此參數(shù)過小。我最終設(shè)為25公式是max(20, 2 × DataNode數(shù)量)。3.6 dfs.client.use.datanode.hostname跨網(wǎng)絡(luò)調(diào)試時(shí)必須設(shè)為trueproperty namedfs.client.use.datanode.hostname/name valuetrue/value /property此參數(shù)控制客戶端連接DataNode時(shí)使用主機(jī)名true還是IPfalse。在虛擬機(jī)環(huán)境中若設(shè)為false默認(rèn)客戶端會嘗試用DataNode上報(bào)的IP如192.168.56.102直連這通常沒問題但當(dāng)節(jié)點(diǎn)間存在NAT或端口映射時(shí)該IP可能不可達(dá)。設(shè)為true后客戶端通過DNS解析主機(jī)名再經(jīng)/etc/hosts映射到正確IP。這是解決“DataNode已啟動(dòng)但NameNode報(bào)告‘no live nodes’”的關(guān)鍵開關(guān)。3.7 dfs.permissions.enabled學(xué)習(xí)階段務(wù)必設(shè)為falseproperty namedfs.permissions.enabled/name valuefalse/value /propertyHDFS的權(quán)限檢查默認(rèn)開啟。在學(xué)習(xí)環(huán)境中它會引發(fā)大量Permission denied: userxxx, accessWRITE, inode/input:hdfs:hdfs:drwxr-xr-x錯(cuò)誤。關(guān)閉后所有操作均繞過權(quán)限校驗(yàn)讓你聚焦于數(shù)據(jù)流而非ACL配置。生產(chǎn)環(huán)境必須開啟但學(xué)習(xí)筆記的第一周請勇敢地把它設(shè)為false。4. YARN資源調(diào)度的“心跳陷阱”從yarn.resourcemanager.hostname到container-executor.cfg如果說HDFS是分布式存儲的骨架YARN就是讓計(jì)算在骨架上奔跑的肌肉。但YARN的配置比HDFS更易踩坑因?yàn)樗墓收贤槐憩F(xiàn)為“服務(wù)啟動(dòng)失敗”而是“作業(yè)提交成功卻永不運(yùn)行”。我花了兩天時(shí)間才定位到問題根源YARN的資源調(diào)度依賴一套精密的“心跳-響應(yīng)”機(jī)制而其中三個(gè)配置項(xiàng)的微小偏差足以讓ApplicationMaster在啟動(dòng)瞬間就崩潰。4.1 yarn.resourcemanager.hostname必須指向主節(jié)點(diǎn)且與/etc/hosts解析一致在yarn-site.xml中property nameyarn.resourcemanager.hostname/name valuenode1/value /property這個(gè)值不是隨便寫的主機(jī)名。ResourceManager會將其拼接為http://node1:8088作為Web UI地址更重要的是NodeManager向其注冊時(shí)會用此主機(jī)名構(gòu)造回調(diào)URL。如果/etc/hosts里沒有192.168.56.101 node1這一行NodeManager注冊時(shí)會解析node1為127.0.0.1導(dǎo)致ResourceManager收到的注冊地址是http://127.0.0.1:8042后續(xù)所有Container日志都無法通過該地址訪問?,F(xiàn)象是yarn node -list顯示RUNNING但點(diǎn)擊Web UI的節(jié)點(diǎn)鏈接跳轉(zhuǎn)到http://127.0.0.1:8042/node并報(bào)404。解決方案是確保/etc/hosts中node1解析到主節(jié)點(diǎn)真實(shí)IP192.168.56.101且yarn.resourcemanager.hostname值與之完全一致。4.2 yarn.nodemanager.resource.memory-mb數(shù)值必須≤物理內(nèi)存的80%且為1024整數(shù)倍property nameyarn.nodemanager.resource.memory-mb/name value4096/value /propertyNodeManager向ResourceManager上報(bào)的“可用內(nèi)存”。若設(shè)為5000MB而物理內(nèi)存僅4GBNodeManager啟動(dòng)時(shí)會因Cannot allocate memory失敗。更隱蔽的問題是該值必須是1024的整數(shù)倍。我曾設(shè)為4000yarn-daemon.sh start nodemanager無報(bào)錯(cuò)但yarn node -list顯示UNHEALTHY日志里有Invalid resource request: memory4000, must be multiple of 1024。計(jì)算公式是min(物理內(nèi)存×0.8, 1024×n)其中n為整數(shù)。對于4GB內(nèi)存虛擬機(jī)推薦值為30723GB或40964GB。4.3 yarn.nodemanager.env-whitelistJava環(huán)境變量必須顯式聲明property nameyarn.nodemanager.env-whitelist/name valueJAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME/value /property這是YARN最反直覺的配置。Container啟動(dòng)時(shí)NodeManager會清空所有環(huán)境變量僅保留env-whitelist中列出的變量。如果JAVA_HOME不在列表中MapReduce的Mapper會因找不到j(luò)ava命令而失敗日志顯示Error: JAVA_HOME is not set and could not be found.。即使你在~/.bashrc里設(shè)置了export JAVA_HOME/usr/lib/jvm/java-1.8.0-openjdk也必須在此處顯式添加。我曾漏掉HADOOP_CONF_DIR導(dǎo)致Container讀取不到core-site.xml報(bào)錯(cuò)java.net.UnknownHostException: node1。4.4 container-executor.cfg安全配置的“最后一道門”YARN默認(rèn)使用DefaultContainerExecutor但生產(chǎn)環(huán)境要求LinuxContainerExecutor以實(shí)現(xiàn)資源隔離。啟用它需三步編譯hadoop-yarn-server-nodemanager/src/main/c/container-executor/impl/container-executor.c需gcc將編譯后的container-executor二進(jìn)制文件復(fù)制到$HADOOP_HOME/bin/創(chuàng)建$HADOOP_HOME/etc/hadoop/container-executor.cfg內(nèi)容為yarn.nodemanager.linux-container-executor.groupyarn banned.usershbase,yarn,mapred,bin min.user.id1000關(guān)鍵點(diǎn)在于yarn.nodemanager.linux-container-executor.group必須與NodeManager進(jìn)程的組名一致。執(zhí)行id -gn確認(rèn)當(dāng)前用戶組若為hadoop則此處必須寫hadoop。否則yarn-daemon.sh start nodemanager會報(bào)錯(cuò)Failed to initialize container executor: java.io.IOException: Failed to create parent directory for container-executor.cfg。這個(gè)錯(cuò)誤信息完全誤導(dǎo)人實(shí)際是組權(quán)限校驗(yàn)失敗。4.5 yarn.scheduler.maximum-allocation-mb影響MapReduce并行度的核心閾值property nameyarn.scheduler.maximum-allocation-mb/name value4096/value /propertyResourceManager允許單個(gè)Container申請的最大內(nèi)存。MapReduce的Mapper/Reducer內(nèi)存由mapreduce.map.memory.mb和mapreduce.reduce.memory.mb控制但這兩個(gè)值不能超過maximum-allocation-mb。如果設(shè)為2048而mapreduce.map.memory.mb設(shè)為3072則Mapper永遠(yuǎn)無法啟動(dòng)日志顯示Requested container memory 3072 exceeds maximum allowed 2048。計(jì)算原則是maximum-allocation-mb ≥ max(map.memory.mb, reduce.memory.mb)。我設(shè)為4096以便后續(xù)測試不同內(nèi)存配置。4.6 yarn.log-aggregation-enable開啟后日志不再散落各節(jié)點(diǎn)property nameyarn.log-aggregation-enable/name valuetrue/value /property默認(rèn)false意味著每個(gè)Container的日志都保存在對應(yīng)NodeManager的本地磁盤$YARN_LOG_DIR/userlogs。作業(yè)結(jié)束后日志隨Container銷毀而消失。設(shè)為true后日志自動(dòng)上傳至HDFS的/tmp/logs目錄可通過yarn logs -applicationId application_1234567890123_0001集中查看。這是調(diào)試MapReduce作業(yè)的必備開關(guān)否則你只能SSH到每臺從節(jié)點(diǎn)去翻/var/log/hadoop-yarn/。4.7 yarn.nodemanager.pmem-check-enabled與yarn.nodemanager.vmem-check-enabled學(xué)習(xí)階段必須關(guān)閉property nameyarn.nodemanager.pmem-check-enabled/name valuefalse/value /property property nameyarn.nodemanager.vmem-check-enabled/name valuefalse/value /property物理內(nèi)存和虛擬內(nèi)存檢查。開啟后NodeManager會監(jiān)控Container內(nèi)存使用超限則殺進(jìn)程。但在虛擬機(jī)環(huán)境下內(nèi)存統(tǒng)計(jì)常有偏差導(dǎo)致正常作業(yè)被誤殺。關(guān)閉后YARN僅依賴memory-mb配置進(jìn)行資源分配行為更可預(yù)測。生產(chǎn)環(huán)境應(yīng)開啟并調(diào)優(yōu)閾值但學(xué)習(xí)筆記的前五次作業(yè)請堅(jiān)定地設(shè)為false。5. WordCount實(shí)戰(zhàn)從hadoop jar到日志追蹤的完整鏈路拆解現(xiàn)在所有配置就緒我們來運(yùn)行那個(gè)經(jīng)典的WordCount。但這次我們不滿足于“看到結(jié)果”而是要跟蹤每一個(gè)字節(jié)從輸入到輸出的完整旅程——包括NameNode如何分配Block、NodeManager如何拉起JVM、ApplicationMaster如何協(xié)調(diào)Mapper。5.1 準(zhǔn)備輸入數(shù)據(jù)用shell命令生成可驗(yàn)證的文本避免使用網(wǎng)上下載的隨機(jī)文本自己生成可控?cái)?shù)據(jù)# 在node1上執(zhí)行 mkdir -p /tmp/wordcount-input for i in {1..10}; do echo hello world hello hadoop /tmp/wordcount-input/input$i.txt echo hadoop mapreduce yarn /tmp/wordcount-input/input$i.txt done hadoop fs -mkdir -p /input hadoop fs -put /tmp/wordcount-input/* /input/執(zhí)行后hadoop fs -ls /input/應(yīng)顯示10個(gè)文件hadoop fs -du -s /input/顯示總大小約2KB。小數(shù)據(jù)量便于快速驗(yàn)證且能清晰看到HDFS的Block分配邏輯。5.2 提交作業(yè)理解hadoop jar命令背后的三次握手hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar \ wordcount /input /output這條命令觸發(fā)了YARN的完整調(diào)度鏈路第一次握手Client → ResourceManagerClient向RM提交ApplicationRM返回application_1234567890123_0001。此時(shí)yarn application -list可見狀態(tài)為ACCEPTED。第二次握手RM → NodeManagerRM為ApplicationMaster分配Container在node1上啟動(dòng)AM進(jìn)程。jps在node1上會新增ApplicationMaster進(jìn)程。第三次握手AM → NodeManagerAM向RM申請Mapper ContainerRM分配后AM通知node2和node3的NodeManager啟動(dòng)Mapper。jps在node2/node3上出現(xiàn)YarnChild進(jìn)程。5.3 追蹤Mapper執(zhí)行從Container日志定位代碼行作業(yè)運(yùn)行時(shí)打開http://node1:8088/cluster/app/application_1234567890123_0001點(diǎn)擊Logs鏈接。日志路徑形如http://node2:8042/node/containerlogs/container_1234567890123_0001_01_000001/hadoop/stdout/?start0。stdout里會打印INFO mapreduce.Job: Running job: job_1234567890123_0001 INFO mapreduce.Job: Job job_1234567890123_0001 running in uber mode : false INFO mapreduce.Job: map 0% reduce 0% INFO mapreduce.Job: map 100% reduce 0% INFO mapreduce.Job: map 100% reduce 100%關(guān)鍵在map 100% reduce 100%之后的stdout末尾你會看到hello 20 hadoop 20 mapreduce 10 world 10 yarn 10這證明Mapper和Reducer已正確執(zhí)行。若此處為空說明Mapper未輸出需檢查WordCountMapper.java中context.write()是否被調(diào)用。5.4 驗(yàn)證HDFS寫入用hdfs fsck確認(rèn)Block健康度作業(yè)完成后執(zhí)行hadoop fs -ls /output/ hadoop fs -cat /output/part-r-00000 hdfs fsck /output -files -blocks -locationsfsck命令會顯示/output/part-r-00000對應(yīng)的Block ID、大小、存放位置如192.168.56.102:9866。若某臺DataNode宕機(jī)fsck會顯示MISSING塊此時(shí)hadoop fs -cat會報(bào)錯(cuò)Could not obtain block。這是驗(yàn)證HDFS容錯(cuò)能力的黃金命令。5.5 清理與重跑為什么rm -rf /output不夠hadoop fs -rm -r /output是標(biāo)準(zhǔn)清理方式。但若作業(yè)異常終止如kill -9 ApplicationMasterHDFS中可能殘留臨時(shí)文件/output/_temporary/0/_attempt_...。這些文件不會被-rm -r刪除且會占用NameNode內(nèi)存。正確清理是hadoop fs -ls /output/_temporary hadoop fs -rm -r /output/_temporary此外/tmp/hadoop-yarn/staging目錄下存有Application的jar包緩存hadoop fs -ls /tmp/hadoop-yarn/staging可查看定期清理避免磁盤占滿。5.6 調(diào)試技巧用jstack抓取ApplicationMaster線程快照當(dāng)作業(yè)卡在map 0%時(shí)可能是AM死鎖。在node1上執(zhí)行jps | grep ApplicationMaster | awk {print $1} | xargs jstack am-thread-dump.txt打開am-thread-dump.txt搜索BLOCKED或WAITING線程。我曾發(fā)現(xiàn)AM卡在org.apache.hadoop.yarn.client.api.impl.YarnClientImpl.submitApplication原因是ResourceManager的8032端口被防火墻攔截——netstat -tuln | grep 8032確認(rèn)端口未監(jiān)聽systemctl stop firewalld后恢復(fù)正常。這種底層網(wǎng)絡(luò)問題只有線程快照能暴露。6. 從“跑通”到“掌控”三個(gè)必須親手驗(yàn)證的故障場景分布式系統(tǒng)的價(jià)值不在它正常工作時(shí)而在它出問題時(shí)你能否快速定位。以下三個(gè)場景我要求自己必須親手觸發(fā)、觀察、修復(fù)因?yàn)樗鼈兏采w了90%的線上故障模式6.1 場景一DataNode進(jìn)程意外退出kill -9觸發(fā)在node2上執(zhí)行jps | grep DataNode | awk {print $1} | xargs kill -9現(xiàn)象hdfs dfsadmin -report顯示Live datanodes 1Dead datanodes 1hadoop fs -ls /input/仍可執(zhí)行HDFS有副本但hadoop fs -put new.txt /input/會變慢NameNode需等待第二副本驗(yàn)證tail -f /var/log/hadoop-hdfs/hadoop-hdfs-namenode-node1.log會看到BLOCK* processReport: node2:9866 is not in the list of live nodes約10分鐘后出現(xiàn)BLOCK* Removing dead datanode node2:9866隨后啟動(dòng)副本復(fù)制修復(fù)hdfs --daemon start datanodehdfs dfsadmin -report確認(rèn)Live datanodes 26.2 場景二NameNode元數(shù)據(jù)損壞模擬磁盤故障觸發(fā)停止NameNoderm -f /data/hadoop/namenode/current/fsimage_*現(xiàn)象hdfs --daemon start namenode失敗日志報(bào)java.io.FileNotFoundException: /data/hadoop/namenode/current/fsimage_0000000000000000000 (No such file or directory)驗(yàn)證hdfs namenode -format會重建fsimage但所有HDFS文件將丟失因此必須有SecondaryNameNode或CheckPoint機(jī)制修復(fù)正確啟動(dòng)SecondaryNameNode需配置dfs.namenode.secondary.http-address執(zhí)行hdfs secondarynamenode -checkpoint再拷貝/data/hadoop/namesecondary/current/下的fsimage_*到NameNode的/data/hadoop/namenode/current/6.3 場景三YARN Container內(nèi)存溢出OOM Killer介入觸發(fā)在mapred-site.xml中設(shè)mapreduce.map.memory.mb8192而yarn.nodemanager.resource.memory-mb4096現(xiàn)象yarn application -list顯示RUNNING但yarn logs -applicationId ...中Mapper日志為空dmesg | grep -i killed process顯示Killed process 12345 (java) total-vm:8592128kB, anon-rss:4212345kB驗(yàn)證Linux OOM Killer因Container申請內(nèi)存超限8GB NodeManager上報(bào)的4GB而殺死了JVM進(jìn)程修復(fù)降低mapreduce.map.memory.mb至≤4096或提高yarn.nodemanager.resource.memory-mb這三個(gè)場景的共同啟示是分布式系統(tǒng)沒有“黑盒”。每一次kill、每一次rm、每一次dmesg都是對系統(tǒng)邊界的主動(dòng)探測。真正的掌控感來自你知道hdfs dfsadmin -report的輸出里哪一行代表心跳超時(shí)哪一行代表副本缺失哪一行代表正在修復(fù)。7. 我的配置文件管理心得用git diff代替記憶用ansible腳本代替重復(fù)最后分享一個(gè)血淚教訓(xùn)別信自己的記憶力。我曾因記錯(cuò)core-site.xml里fs.defaultFS的端口在三臺機(jī)器上手動(dòng)改了六次配置每次改完都要stop-dfs.sh start-dfs.sh耗時(shí)42分鐘。后來我建立了嚴(yán)格的配置管理流程7.1 所有配置文件納入Git版本控制在node1上初始化倉庫mkdir ~/hadoop-config cd ~/hadoop-config git init cp $HADOOP_HOME/etc/hadoop/*.xml . git add . git commit -m init config每次修改前先git status確認(rèn)無未提交變更修改后git diff清晰顯示改動(dòng)行如- valuehdfs://node1:8020/value→ valuehdfs://node1:9000/value提交時(shí)寫明原因git commit -m fix port mismatch: core-site.xml fs.defaultFS now matches dfs.namenode.rpc-address。這樣任何配置漂移都能在5秒內(nèi)定位。7.2 用Ansible批量同步配置編寫deploy.yml- hosts: hadoop_nodes become: yes tasks: - name: Copy core-site.xml copy: src: ./core-site.xml dest: /opt/hadoop/etc/hadoop/core-site.xml owner: hdfs group: hdfs mode: 0644 - name: Restart HDFS shell: /opt/hadoop/sbin/stop-dfs.sh /opt/hadoop/sbin/start-dfs.sh args: executable: /bin/bash when: inventory_hostname node1執(zhí)行ansible-playbook -i inventory deploy.yml三臺機(jī)器配置秒級同步。Inventory文件定義節(jié)點(diǎn)分組[hadoop_master] node1 ansible_host192.168.56.101 [hadoop_slaves] node2 ansible_host192.168.56.102 node3 ansible_host192.168.56.103 [hadoop_nodes:children] hadoop_master hadoop_slaves7.3 日志歸檔策略用logrotate防止磁盤爆滿/var/log/hadoop-*日志不壓縮會迅速占滿磁盤。在/etc/logrotate.d/hadoop中配置/var/log/hadoop-*/hadoop-*.log { daily missingok rotate 30 compress delaycompress notifempty create 644 hdfs hdfs sharedscripts postrotate if [ -f /var/run/hadoop-hdfs-namenode.pid ]; then kill -USR1 cat /var/run/hadoop-hdfs-namenode.pid fi endscript }postrotate段向NameNode發(fā)送USR1信號使其重新打開日志文件避免重啟服務(wù)。這些工具不是炫技而是把“分布式”從玄學(xué)拉回工程——當(dāng)你能用git blame查到某行配置是誰在何時(shí)為何修改當(dāng)你能用ansible --check預(yù)演配置變更的影響當(dāng)你能用logrotate -d /etc/logrotate.d/hadoop調(diào)試日志輪轉(zhuǎn)邏輯你就真正擁有了對這個(gè)系統(tǒng)的掌控權(quán)。它不再是一堆神秘的服務(wù)而是一套可審計(jì)、可預(yù)測、可修復(fù)的工程產(chǎn)物。我在實(shí)際使用中發(fā)現(xiàn)最有效的學(xué)習(xí)方式不是讀完所有文檔而是選定一個(gè)最小可行目標(biāo)比如讓W(xué)ordCount在三臺機(jī)器上跑通然后主動(dòng)制造故障、閱讀日志、修改配置、驗(yàn)證結(jié)果。每一次tail -f的等待每一次jps的確認(rèn)每一次hdfs fsck的掃描都在把抽象的“分布式”概念鍛造成指尖可觸的操作肌肉。這本筆記里沒有終極答案只有我親手踩過的坑、填過的坑、以及坑邊上插的警示牌——愿你在自己的集群里也能聽到那聲清脆的“?!?。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
成人视频婷婷| 五月天婷婷AV| 91婷婷丁香| 99热啪啪| 亚洲AV免费在线| 99视频精品8 | 97碰碰九九视频| WWW.17C亚洲精品| 国产精品久久久99视频| 日本99久久| 亚洲狠狠丁香婷婷香蕉| 蜜桃成语时李时珍 免费| 丁香五月婷婷基地| 日韩视频99| 另类色视频| 久久综合综合综合| 天天日P天天射P| 激情综合五月丁香| 全亚洲最大的婷婷五月天网站COM| 偷偷与邻居做爰完整视频| 9有码中文| 婷婷涩涩网| 97操在线视频| 激情婷婷丁香五月天小说| 婷婷狠狠香蕉综合| 国产操逼网站| 日韩高清久久| 日韩在线99| 丁香五月天AV在线 | 这里只有精品免费视频| 五月婷婷久久综合| 天天爽天天爽| 丁香五月五月婷婷欧美大香蕉| 在线播放中文字幕| 五月婷婷色播| 国外亚洲成AV人片在线观看| 香蕉AV777XXX色综合一区| 五月婷婷av| 26uuu欧美| 人人草开心五月天| 91九色欧美| 婷婷综合精品视频97| 五月天婷婷开心| WWW丁香五月| 超碰人人色| 五月天婷婷綜合院| 欧美噜噜噜草| 五月婷婷丁香五月亚洲色| 狠狠香婷婷五月| 99久在线精品99re8| 欧美激情中文字幕| 激情q青青草在线婷婷| 天天综合情| 国产激情视频在线观看| 日本在线免费中文com.| www久久久久久久| 99久久国产宗和精品1上映| 五月丁香啪啪网| 五月天偷拍| 四川BBB搡BBB爽爽视频| 96色婷婷| 婷婷伊人网| 日韩精品999| 99视频在线播放大全| 色色九九五月天 | 日韩ac不卡无码| 色综合久久天天综合网| 欧美激情Va| 亚色网站小视频| 五月综合婷婷开心网| 五月丁香婷中文| 青草激情在线| 九九精品99| 久久538| 五月丁香综合| 综久久久| 六月激情婷婷色| 亚洲色色精品| 91久久久久久久| 超碰人人色| 超碰在线日夜| 丁香五月婷婷基地| 草逼大片| 99ri在线视频| 人妻aV在线| 六月色婷婷| 久久婷五月综合| 色五月 五月婷婷| 五月日韩中文字幕| 丁香激情久久| 啪啪小说五月天| 五月婷婷与六月丁香图片激情| 99A片| 在线中文AV| 色五月婷婷激情基地| 玖玖在线视频| 天天综合精品| 丁香色婷婷色手机免费在线| 婷婷丁香视频在线观看免费 | 99热这里只有精品一区| 五月丁香色情| 日本色道视频网站| 九九热免费视频| 婷婷久久综合久| 一本到不卡高清DVD| 99精品97| 亚洲成人在线五月天| 99久久综合网| 97色天堂| 亚洲激情综合| 久热精品在看| 六月五月婷婷| 亚洲乱码日产精品BD| 高清成人综合| 色停停影院五月天| 久久996re热这里只有精品无码| 思思热在线观看| 99爱爱| 激情五月天第四色| www.丁香五月| 在线看片h站| 五月天激情久久| 人人色AV| 亚洲爆乳无码精品AAA片蜜桃| 亚洲AV无码成人精品区电影网| 狠狠色激情在线| 综合AV在线| 一级黄色片看看| 久久精彩综合视频| 色综合天天综合成人网| AA丁香综合激情| 亚洲婷婷五月天激情| 日韩少妇内射免费播放| 玖操97| 欧洲亚洲精品| 婷婷五月黄色激情在线| 色婷婷激情| 91精品国产99久久久久久天美| 人人做人人看人人摸| 色爱五月天| 综合久久高清| 婷婷色色网| 色婷婷色九月| av网址在线| 在线不卡中文字幕| 新97人人上人人| 婷婷综合九月| 五月天激情图片| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 五月大香蕉| 99热都是精品| 夜夜爱网站| 丁香婷婷五月六月久久| 色色色色网站| 夜夜做天天爽| 任我干视频在线观看| 色色色色av777| 久久精品99国产精品日本| 成人片久久网站| 操99| 日本在线噜噜| 黄色99热| 深爱激情丁香| 国产99视频永久免费| 久久er99热精品一区二区| 天天做天天爱天天爽夜夜揉| ..真实国产乱子伦对白在线_欧 | 丁香五月久久综合| 婷婷五月a| 五月婷婷在线视频| 色五月丁香五月| 91狠狠色丁香婷婷综合久久精品| 婷婷五月天激情综合| 青草视频在线观看视频| 综合图片色色| 天天舔天天插天天爱| 六月丁香五月婷婷| 亚洲aV写真天天综合网久久| 国产免费AV网站| 婷婷五月天色| 激情五月天伊人av| 免费九九热| 99精品久久| www.五月天婷婷| 久久小视频免费| 专区无日本视频高清8| 五月天婷婷高清无码| 欧美三级大片AA在线看| 久久激情五月婷婷| 天天色色天天| 99久久免费性爱视频`| 欧美日韩中文国产一区发布| 99精彩视频| 國語久久婷| 一本道在线电影| 色五月激情五月天| 五月丁香啪啪激情| AA久久| 久99视频| 色域五月婷婷丁香| 国产裸舞表演WWWW| 激情播丁香| 日日操夜夜操中国无码| 国产精品久久久久久久久久久久| 人人人操| 五月丁香六月激情视频| 五月的丁香六月的婷婷| 在线观看熟女少妇| 天天插天天射天天干| 免费观看欧美成人AA片爱我多深| 久久久18| 很很干天天干| 99性爱精品| 99操视频| 六月丁香色色| 色在线视频网2025| 九玖欧洲亚洲| 色婷婷视频| 六月丁香开心婷婷欧美| 成人αV视频免费观看| 日韩久久色| 一级操逼内射在线视频| 激情五月天网页| 午夜色婷婷| 99久久天堂婷婷| 色色色综合| 九九99香蕉在线视频播放| 日本五月天激情| 五月天另类小说久久小说网| 五月天综合缴情网网站0| 人妻aV在线| 久久五月婷婷综合网| 婷婷综合色| 婷婷五月深深爱| 开心深爱五月天| 激情AV在线| www.色色com| 又大又粗九一在线| 久久全意婷婷| 色婷婷激情视频| 大地9中文在线观看免费高清| 91成人视频| 开心五月网| 色五月激情基地| 久久久久久xxxxx| 五月天婷婷免费| 丁香六月天婷婷| 搡BBBB搡BBB搡18 | 色综合综合综合| 日本欧美成人片AAAA| 亚洲色碰| 日本人妻A片成人免费看片| 五月婷婷9| 97成人操| 一级黄色操B| 黄色片avv| 激情五月四色| 丁香六月欧美| 操人久久| 婷婷八月激情| 九九在线免费观看| 色 色 色综合com| 可似看的AV| 五月婷婷六月少妇激情| 123草逼网| 97丁香五月| 久久精典| 国产美女无遮挡裸体毛片A片 | 五月丁香婷婷爱| 五月天狠狠网| 色综合婷婷| 99re久久| 欧美成人AAA片一区国产精品| 少妇AB又爽又紧无码网站| 禁欲电影完整版在线播放| 激情小说五月天| 国产亚洲精品AAAAAAA片| 国产亚洲精品久久久久久郑州| 极品少妇高潮啪啪AV无码| 色婷婷影院| A片试看50分钟做受视频| 亚洲电影在线观看| 久久宗合影| 激情另类综合| 久热最新视频| 色五月婷婷综合| 思思热这里只有精品| 婷婷五月天色| 91人人操| 亚洲色五月天是什么| 丁香五月婷婷成人网| 婷婷日日夜夜| 丁香婷婷色五月| 大香蕉伊人久久| 91无码色色| 丁香花婷婷五月天| 天天色天天爱天天舔| 五月天激情.com| 五月天婷婷丁香基地在线观看| 99re视频在线播放| 久综合4| 丁香婷婷五月人体| 色婷婷视频| 亚洲第79页| 人妻综合网| 大战熟女丰满人妻AV| 牛牛色av| 天天更新天天亚洲| 午夜免费试看| 成人人操| 天天天日天天天干| 男女啪啪做爰高潮无遮挡| 一级无码作爱片| 全亚洲最大的婷婷五月天网站COM| 丁香五月宝贝激情网| 99这里有精品| 婷婷在线中文字幕| 5月婷婷视频网站综合| 五月婷天天搞视频| av在线播放网站| 爽极品色| 天堂综合久久| 毛v一区二区视频| 99在线观看这里都是精品| 五月婷婷综合网| 香蕉婷婷五月| 狠狠干2007| 外国碰视频网站97| 日本黄色在线观看| 激情五月开心五月丁香五月| 色色欧美色色色| 激情五月天婷婷图| 亚洲中文字幕AV| 欧美日本97| www,色中色| 色情成人五月天| 91综合在线观看首页| caopeng97日韩| 另类小说色婷婷| 天堂五月婷婷| 丁香五月天综合| 丁香五月影| 久久99这里只有精品| 色情五月婷婷| 日本操片| 能看的av| 色五婷婷| 色婷婷综合久久久久| 狠狠色婷婷丁香五月| 操逼在线视频| 九九九九热99超碰| 婷婷丁香色无五月 | 激情精品久久| 丁香婷婷色| 丁香五月婷婷国产av| 玖玖资源部在线播放| 久久综合五月| 激情五月婷婷在线区| 亚洲第一综合| 五月天自拍视频| 99网| 亚洲色 视频| 国产毛片操B| 国精产品一区二区三区| 丁香九色不卡aaa| 色五月婷婷五月丁香五月| 操操操B| 丁香六月亚洲综合 | 99网址在线看| 婷婷丁香六月| 九九免费在线视频| 国产黄色大片| 久久香蕉丁香| wwW天天干| 激情五月综合网| 熟女婷婷网站一婷婷五月一丁香婷婷一婷婷激情网 | 国产操肏网站| 五月丁香啪啪| 激情宗合网激情五月天| 久久综合色五月| 大香蕉中文| 婷婷久草| 丁香久久在线| 婷婷成人五月天| 九九五月天| 婷婷五月天小说| 五月丁香婷婷激情久久| 艹天天射| 国产精品18久久久| 九九热只有精品| 熟女91九色| 97AV在线视频| 五月婷在线视频免费播放| 碰碰碰碰碰99| 天天爽天天爽| 色综合天天综合成人网| 伍月婷丁香婷| 亚洲AV永久无码影院黑人| 五月婷婷六月天| 色色亚洲无码| 午夜婷婷久久 | 91一起操| 狠色狠色综合久久| 亚洲AV成人在线| 国产AV一区二区三区日韩| 天天操夜夜爱| 伊人五月婷婷| AV色婷婷| 欧州婷婷五月天综合| 色五月丁香婷婷久草| 人人色人人摸人人看| 欧美97超碰| 五月伊人网| 亚洲99在线视频| 婷婷九九| 久久99免费视频| 午夜丁香婷婷| 97视频久久| www.五月丁香av| www狠狠| 一区二区无码视频| 色色五月天婷婷| 天天日,天天干,天天操| 天天摸夜夜爽天天做| 色综合中文色综合网| 亚洲亚洲人成综合网络| 性色五月天| 五月丁香色| 日本精品。999| 婷婷爱爱蜜臀天天操| 香蕉婷婷五月| 色婷婷丁香五月| 99热主页日本| 激情五月天偷拍综合网| 婷婷五月天第三页| 毛片毛片毛片毛片| 五月天婷婷影院影院| 午夜天堂啪啪| 99在线观看精品| 综合久久综合五月天婷婷| 婷婷金品综合视频| 免费黄色片子| 97干欧美| 九九aV| 婷婷色导航| 99热这里只有在线| 久久性爱视频久久性爱视频| 天天操,夜夜骑| 五月天婷婷自拍图片在线观看| 9999久久久久| 婷婷五月丁香av网站| 97热这里精品在线视频| 国产avapp 网| 大香蕉久久久久| 色蜜婷婷| 91久久精品无码一区二区三区| 日本色超碰| AAA级久久久精品| 欧美日本日韩| 丁香久久在线| 99热九九九九| 在线99精品| 啪啪东京热| 伊人久热91网| 激情文学第四色婷婷丁香五月| 狠狠综合色网| 性视频久久| 日本不卡中文字幕| 都市激情久久| 丁香婷停五月激情综合深爱| 一级二级香港秋霞欧美欧美秋霞| 天天谢天天操| 99人妻碰碰碰久久久久视| 五月天成人在线播放| 亚洲丁香婷婷丁香五月天激情| 激情综合网五月激情网| 色婷婷婷婷| 久久XX| 久热大香蕉| 欧美 日韩 人妻 高清 中文| 我淫我色婷婷五月天激情四射| 香蕉久日夜| 成人va在线| 97超级碰碰碰| 成人色五月天婷婷| 色婷婷影音| 婷婷五月丁香综合激情| 人人人操| 无码激情AAAAA片-区区| 国产黄色av| 99九无网码| 五月丁香啪啪啪免费看| 九九热精品6| 色色色热热热| 九九热精品| 影音先锋 萱萱| CAoub青青超碰| 国产成人AV在线| 再次出发二| 国精产品久久| 五月婷中文字幕| 粉嫩AV久久一区二区三区| 操B无码视频国语| 97碰碰电影| 第2色五月婷| 久久五月婷天天干| 色婷婷99| 少妇婷婷五月天| 久久只有精| 婷婷六月花| 日韩高清成人| 高清免费在线视频| 九九视频免费| 成人va视频| 五月天伊人| 五月情涩综合婷婷| 激情综合网激情五月网| 大香蕉婷婷久久| 亚洲精品一区中文字幕乱码| 99热在线精品观看| 天天干天天操| 五月婷丁香| 色婷婷操逼网| 丁香丝袜五月| 99久久综合| www.99精品视频| WWW.桔色成人.COM入口| 99热自拍| 成人在线综合| 深情五月天| 九九色色| 天天做天天爱高潮片| 色亚洲激情| 嫩BBB搡BBBB榛BBBB| 日本婷久久| 亚洲综合色棒| 色国产五月| 99精品视频在线观看| 国产精产国品一二三在观看| 色色精品色| 91九色欧美| 青青久久91| 亚洲激情丁香五月基地| 五月天社区| 五月婷婷激情| 国产在线黄色| 久久丝袜婷婷| 色噜噜狠狠色综无码久久合欧美 | 六月丁香av| 任你干线上免费视频有3吗| 五月色无码| 色五月欧美| AV在线免费播放| 播五月开心婷婷欧美综合| 9热超碰| 97久久香草精品视频| 亚洲色网址| 91婷婷丁香| 色五月婷婷影院| www.五月婷| 99在线视频。| 深爱五月日韩| 日本大逼91| 亚洲欧州色情在线观看| 日本久久久97| 深爱婷婷丁香五月激情| 婷婷激情综合色五月久久91| 99热在线这里| 99久久五月丁香野外| 婷婷丁香激情综合色情| 97久久超视频| 天天操夜夜操| 婷婷五月色情天| 六月婷婷色综合| 狠狠色婷婷7777久| 久热久| 色五月久久成人婷婷| 亚洲色色色| ...婷婷国产成人亚洲日韩| 色色热| 操逼在线视频| 超碰自拍天堂| 九九色欲网| 久久久精品视频79| 欧美内射AAAAAAXXXXX| 狠色狠色狠色狠色狠色网| 黄色三级毛片中字| 色五月天成人| 久操大香蕉| 激情五月丁香五月| 欧美日本一区二区三区| 狠狠久久婷婷| 99热国产免费| 天堂AV在线看| 2017狠狠干| 五月天激情图片| 伊人久久婷婷五月天激情四射| 六月婷婷综合网2| 俺去也五月| 色婷婷成人网| 91久久精品国产91性色TV| 婷婷十月激情综合网| 婷婷久久丁香五月| 无遮羞AV| 9l视频自拍9l九色9l成人| 激情五月婷黄版| www.色五月| 丁香五月婷婷五月天| 91中文在线| 亚洲天堂婷婷| 色婷婷久久| 久色五月婷婷综合| 91超碰在线观看| 激情文学综合婷婷五月天丁香花| 丁香婷婷色色| 99re26视频| 激情图片婷婷| 人妻激情久久| 99热在线只有精品| 五月天久久婷婷| 日本怕怕视频| 九九热在线99| 色色色五月天婷婷| 天天色视频| 天天色综网| 影音先锋女人av鲁色资源网小说免费| 9久久精品视频| 五月丁香六月婷| 超碰a女人的天堂| 色婷綜合网| 五月丁香六月婷婷啪啪| 色婷婷狠狠18yy| 五月亭亭开心网| 丁香五月天综合| 天天做天天要天天爽| 性高潮久久久久久-九九九九九九九九九九热-成人AV | 五月天激情婷婷五月天久久| 丁香九月激情| 久久久久久久8| 蜜乳久AV| 亚洲人妻av| 九九久久99精品免费观看www| 懂色AⅤ| 久er7久热| 综激情网| 91精品人妻少妇无码影院| 激情都市另类| 亚洲精品久久久久AV无码| 五月丁香无码| 蜜桃人妻无码AV天堂三区| 五月天婷婷青青草| 国产精品噜噜在线视频| 婷婷丁香六月五月天| 久久99久久99精品免观看粉嫩| www狠狠爱com| 在线播放 精品| 成人亚洲精品久久久久 | 9久国产精品| 婷婷五月六| 99热这里只有精品在线播放| 久久草婷婷丁香网站| 婷婷丁香五月视频| 九九色中文| 亚洲人人96@| 99在线精品视频| 五月婷婷啪啪啪啪| 色噜噜婷婷| 五月久久亚洲| www夜夜操wwwcon| 五月丁香六月婷婷玖玖| 国产成人va在线| 国产黄色在线| 婷婷色5月激情网| 超碰京东热av男人的天堂| 五月婷婷香| 大香线蕉伊人| 五月激情六月丁香| 五月花婷婷最新| 五月天婷婷色综合| 激情综合99| 久久丝丝热| 少妇人妻人伦A片| 欧洲亚洲激情五月天在线| 婷婷丁香综合在线| 久久婷婷综| 久久欧洲久久| 激情五月四色| 久久婷婷丁香| 日本人妻伦在线中文字幕| 国产精品久久久60086| 91av色色乱视频| 日本色图综合| 69堂午夜视频最新地址| 婷婷综合国产| 亚洲精品亚洲人成人网| 亚洲瑟瑟精品在线| 国产精品国产| www.色五月| 天天摸色吧天天摸色吧| www狠狠| 日日鲁鲁鲁夜夜爽爽狠狠视频97| 亚洲免费婷婷| 天堂AV三级| 久久99草五月婷婷| 五月丁香六月成人| 99色最新在线视频网站| 91婷婷在线| 激情网 久久| 久99久精品视频| 婷婷综合五月激情| 操逼三区| http://www.com久久久精品一区| 国产精品电影网| 天天 日综合| 4399伦理午夜| 91.www综合| 亚洲旡码| 色五月亚洲开心网| 五月天激情综合在线| 综合另类激情| 99热精品在线| 碰97久久| 天天日天天日天天搞| www久| 日本A片一区| www.操.com| 日婷婷久久开心| 五月婷婷久久开心网| 六月婷欧美| 91综合视频丁香| 婷婷五月婷婷| 欧美性爱中文字幕| 婷婷丁香色五月久久88| 日本色噜| 五月婷婷中文字幕| 另类图片五月天激情| www.夜夜操| www.久久久.com| 九九久久网| 深爱五月天 开心网| 99操碰| 欧美月久久| 婷婷丁香日韩五月| 五月开心网| 国产 码在线成人网站| 五月婷婷激情综合av| wwwC0maV五月花| 天天日夜夜高潮| 大香蕉婷婷丁香天堂AV| 2016日日夜夜操| 情色五月天 网站| 国产成人精品一区二三区熟女在线| www婷婷| 五月激情综合网| 丁香婷婷婷五月| 丁香婷五月| 秋霞学生妹一二级| 97色色-99久久| 噜噜干日本| 美女黄频aⅴ视频| 日韩一级网站| 丁香五月激情月| 奇米四色五月天| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 五月婷婷久久综合| 91蜜桃婷婷狠狠久久综合9色| 五月丁香色婷婷色| 婷婷五月免费视频| 99热97| 天天草天天摸| 色播播五月| 久久精热| 久久99网| 丁香婷婷激情五月天无毒不卡蜜桃| 天天爽天天摸人妻综合网| 中文字幕性爱丰满| 人妻VideOssS人妻| 亚洲夜夜操| 深爱五月日韩| 色中色综合| 五月天亚洲色| 99热这里| 超碰九九热| 亚洲超碰在线| 99亚洲精品视频| 狠狠穞A片一區二區三區| 天天干,天天日| 狠狠干天天日| 亚洲精品色| A片试看120分钟做受视频红杏| 97碰碰碰免费公开在线视频| 国产黄大片在线观看画质优化| 爱爱网址9| 成人免费超碰| 精品亚洲日韩99欧美片| 五月丁香啪啪综合网| 九九色图| 这里只精品| 深爱开心激情网| 久久九九大香蕉电院| 99热精品在线播放| 国产精品爽爽久久久久久| 天天射美女| 综合激情五月丁香| 三级黄色大片视频| 亚洲99一级无嗎特制在线| 婷婷终合色图| 久久丁香五月婷婷| 情情五月天色| 综合激情站| 色播婷婷大香蕉| 色婷婷综合视频| 天天干人人奸97| 久久综合网桃花| 91精品久久久久久| 激情五月综合色婷婷| 婷婷五月激情视频| 色欲av伊人久久大香线蕉影院| 久久9视频| 精品一区久热| 国产avapp 网| 视频免费精品免费精品免费精品免费精品免费精品免费精品免费99 | 久久综合热17c| 久久精品66| 超碰在线中文字幕| 五月丁香综合网| 日日操夜夜操中国无码| 成人 在线 日韩| 丁香五月激情六月综合| 五月天色综合| www.婷婷| 五月天AV大香蕉| 激情综合婷婷五月| 人妻VideOssS人妻高清| 色狠狠综合| wwwav大香蕉| 五月婷啪啪| 色综合久久天天综合网| 久9视频免费播放| 国外亚洲成AV人片在线观看| 玖玖爱导航| 熟女乱论网| 欧美五月婷婷| 99免费视频| 婷婷综合色网| 啪啪啪五月天| 婷婷激情综合网| 九九99精品免费播放| 激情综合五| 激情五月婷婷在线| 97在线视频观看| 黄色短视频在线观看| 激情六月下句是什么| 综合色播| 江苏少妇性BBB搡BBB爽爽爽| 超碰男人色| 丁香网五月天激情| 色丁香五月婷婷| 一二区成人电影| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 色综合视频在线| 26UUU一区二区| 五月天婷婷小说| 尤物一区二区| 秋霞电影一级黄| 九九综合| 五月天婷婷色综合| 五月丁香六月婷婷综合免| 亚洲无码成人| 婷婷基地成人五月天| 婷婷五月天,影院| 五月丁香激情综合| 色综合色婷色基地| 这里只有精品69| 国产亚洲精品AAAAAAA片| 中文精品在| 久久久天天啊| 婷色综合| 中出内射的人妻视频| 人人操AV| 色丁香久久| 狠狠爱五月婷婷| 国产AV网页| 另类国产综合| 免费看欧美成人A片无码| 操碰91| 玖玖爱资源站| 免费97碰碰| 26uuu成人网| 免费V片在线| 色欲资源网| 1024在线一区| 色狠狠六月| 噜噜噜狠狠色综合| 中海油常州环保涂料有限公司| 另类专区在线| 99久在线观看| 97视频91| 天天操加勒比| 五月婷婷深深爱| 五月婷婷激情日本| 思思精品视频| 亚洲综合成人网站| 九九热最新地址| 成人免费视频一区| 一级黄色尤物综合视频手机在线观看| 四色五月婷婷| 六月 丁香 视频| 99热九九九九| 丁香桃色网| 99免费在线视频| 色色婷婷丁香五月天| 久一网站| 九九九九国产| 婷婷色影院| 99色色网| 天天婷婷天天| 久久激情中文| 色婷婷五月天小说| 丁香伊人五月色婷婷五十路| 五月丁香六月在线| 99久久精品国产色欲| 狠狠干综合网| a在线观看| 欧洲色色| 人人色AV| 天啪天啪天啪天啪| AVDV久久| 天堂久久精品| 噜噜在线| 日日射天天射| AⅤ在线播放网| 六月婷婷八月丁香| 99操逼视频| 天天爱天天做天天操| 激情99。| 99精品久久久久久| 久久久久人妻精品| 五月丁香婷婷色色| 欧亚成人A片一区二区| 亚洲久热无码| a在线免费v| 色情五月婷婷| 99久久思思| 精品无码片| 玖玖爱综合网| 婷婷五月丁香狠狠| 日本道久久91| 超碰免费99| 婷婷爱综合| 色播激情| 激情伊人| 天天噪夜夜爽| 97超碰欧美中文字幕| 五月丁香综合激情| 五月丁香色狠狠干大屄| 成人在线视频一区| 色婷婷丁香| 久久久五月四色| 9久久久久久久久久久| 欧美日韩欧美| 婷婷五月丁香在线视频| 久久久久9999| 婷婷五月色播天| 99在线视频资源| 激情六月五月婷婷综合网| 六月丁香啪| 激情五月天综合网| 九九色综合视频| 色婷婷狠狠爱| 天堂在线伊久| 91久热| 99国产性感视频| 丁香婷婷啪啪| 欧美久久久中文字幕| 大香蕉九九| 五月宗合激情网| 激情婷婷| 91热久| 99婷婷| 中文字幕成人影视| 婷婷五月天伦理| 色色五月天丁香婷婷| 九九9久九9国产视频| 六月丁香av| 国产日日操夜夜操的肉棒视频| 日本3级片偷拍网站| 99九九这里有免费视频| 九九99在线免费在线观看视频| 99久久er| 色丁香五月天射婷婷爱婷婷| 六月婷婷最新网址| 精品无码久久久久久久久| 九月婷婷激情| 亚州性爱99| www.99热日韩.com| 亚洲一区二区无遮挡A片| 久久精品国产AV一区二区三区 | 成人av中文字幕| 色J香五月天| AV美美午夜| 亚洲超碰在线| 九九99男女视频在线观看| 亚洲亚洲人成综合网络| 色色操| 天天插天天日| 日本 @ va 免费| 色五月久久成人婷婷| 婷婷中文无码| 亚洲爱婷婷| 日本三级第一页| 中国丰满熟女A片免费观| 五月婷婷色色色| 欧美25p| 青草激情在线| 天天狠狠插| 六月99天天婷婷激情综合| 玖玖婷婷色五月| 超碰永久在线| 九九操屄| 国产又爽又猛又粗的视频A片| 97天堂| Av九九| 激情无码网| 人妻久久久久久久| 四月婷婷丁香| 久久机热这里只有| 99久久这里只有精品免费官网| 久久五月综合| 91热久久| 亚洲成人高清在线| 99九九视频| 狠狠色大香蕉| 丁香 亚洲 久久| 久久日韩婷婷五月| 婷婷五月欧美| 色婷婷丁香AV综合| 色五月综合网站| 综合色七七| 九九99精品免费播放| 亚洲网综合在线| 任你躁XXXXX麻豆精品| 亚洲欧洲中文日韩久久AV乱码| 久久五月天婷婷| 可以免费观看的AV| 97五月天| 操91| 国外亚洲成AV人片在线观看| 国产伦亲子伦亲子视频观看| 成人精品视频99在线观看免费| 欧美日韩成人在线| 婷婷五月丁香五月| 极品人妻VIDEOSSS人妻| 亚洲国产精品二二三三区| 精品夜夜澡人妻无码AV| 中文字幕免费高清电视剧| 欧美三9久九观看| 九九综合九| 欧美日韩成人h| 久久综合综合综合| 9热在线视频| 二级黄色毛片| 99ri久久| 深爱婷婷基地| 人人色性网| 激情都市五月天| 久久免费婷婷视频| 色婷狠狠| 99色中文| 久久久久久人妻| 伊人综合网站| 校园春色亚洲色| 色婷婷最新域名 | 色八月婷婷| 五月婷婷丁香大陆免费| 丁香九月婷婷色| 九九这里有精品| 超碰成人电影| 激情综合五月| 狠狠插.com| 久草五月婷| 狠狠久久婷五月| 伊人青草成人| 五月六月激情| 女人被男人吃奶到高潮| 美女五月天| 成人 在线观看国产| 超级碰碰视频无码| AV在线免费播放| 婷婷五月天国产手机在线视频观看| 91精品国产综合久久密臀| 色5月丁香婷婷| 色婷婷五月综合| 成人综合视频网址| 成人在线日韩欧美| 九九视频网| 婷婷五月天BBw| www..999热久| 风流少妇A片一区二区蜜桃| 91美女艹逼网站| 日韩aaaaa| 97碰碰叉| 99久在线精品| 五月永久激情| 思思热在线观看| 久久伊人大香蕉| 98热精品| 伊人婷婷青青cao| 五月丁香婷婷俺| 97色婷婷| 啪啪五月婷婷| 丁香色情五月综合激情| 六月婷婷九月丁香亚洲综合| 91九色精品女同系列| 日曰躁夜夜躁2026| 99精品人人| 色五月天成人在线| 在线观看亚洲视频影院| 欧洲电影在线观看免费版英语版| 密臀av无码人妻精品| 玖玖在线资源视频| 五月丁香成人网| 年轻的妺妺伦理HD中文| 99久操| 天天狠狠色噜噜| 激情综合五月天| 在线超碰免费| 思思99热热热99| 中文av网| αv中文字幕在线观| 丁香五月香蕉| 色永久| 久久久久久久人妻| 丁香五月网| 欧洲亚洲激情五月天在线| 色噜噜婷婷| 国产亚洲色婷婷久久99精品9j| 久草久青福利| 久久久久亚洲AV成人无码电影| 激情色五月天| 欧美狠狠一在草| 啪啪黄页网| 丁香婷婷浪潮AV久久综合| 色激情综合狠狠婷婷| www.91在线观看| 99热伊人综合| 99爱免费在线观看| 亚洲激情视频在线观看| 日韩精品无码AV| 婷婷五月天激情小说网站| 开心激情网五月天| 人人操女人| 五月婷婷久草在线视频综合| 这里只有精品久久| 成人精品在线| 激情六月天| 亚洲色区17| 色 五月婷婷基地| 色五月丁香激情视频| 五月婷婷无码| 99热亚洲精品| 五月天激情小说欧美激情| 影音先锋美国A| 亚洲综合激情五月天婷婷| 中文字幕不卡+婷婷五月| 九九九午夜视频| 华人在线免费| 影音先锋日本三级资源| 波多婷婷久久| 日本不卡高字幕在线2019| 丁香婷婷激情综合五月激情 | 人妻丰满精品一区二区A片| 无码四色色色| 亚洲天堂热| 婷婷综合亚洲| 激情中文在线| 久久久A级视频| 色中色综合| 色播色丁香五月| 五月婷婷丁香色播网| 激情AV网| 亚洲另类婷婷五月综合| EEUSS鲁片一区二区三区| 婷婷欧美激情综合| 久久五月天婷婷| 在线播放中文字幕| 色色色99| 日韩另类| 亚洲九九夜夜| 综合网色| 色色色9| 伊人干综合| 九九99在线免费在线观看视频| 丁香五月天黄色片| 五月婷婷久久综合| 九九色图| 亚洲无码色色| 丁香五月天天哦| 久久婷婷视频| 久久这有这里精品| 色婷婷成人做爰A片免费看网站 | 四月婷婷五月丁香| 色婷婷色九月| 91avse| 人妻AV在线| 97色色色| 婷婷丁香五月天欧美| 99精彩视频网站在线| 婷婷伊人久久综合| 狠狠色婷婷丁香五月| 天天插天天日| 一区视频网站| 可以看的av网站| 色色综合日韩| 五月美女婷婷风骚| 婷婷金品综合视频| 91超级碰在线| 99热精品在线观看| 丁香五月在线伊人| 九九九九精品精| 婷婷六月五月| 91碰超| 婷婷五月天伊人| 婷婷五月天深爱| 色婷婷AV久久| 色婷婷AV在线| 久久五月婷婷电影| 色狠狠色噜噜AV天堂五区| 欧美成人精品一区二区| 五月婷婷九| 五月丁香| 久久这里只有精品网| 午夜福利成人AV91| 色五月91| 亚洲色欲欧美一区二区三区| 久久五月热| 亚洲AV网址| 99热20| 色级婷婷| 在线不卡视频| 伊人五月久久| 97在线视频 欧美| 日韩一级片| 这里只有精品99www| 99啪在线| 九九热视频这里只有精品| 婷婷五月天激情综合网| 日韩视频女神99| 99热网站| www.狠狠艹| 婷婷五月丁香基地在线视频官网| 五月天丁香婷婷网| 久超超碰| 久久这里只有精品网| 婷婷丁香五月天影院| 九九色综合| 色偷偷五月天| 成人精品一区二区三区四区五区 | 九九综合伊人| 日本二级毛片二级毛片| 丁香五月情| 日日干干天天干| 97婷婷狠狠| 九九热9| 五月天色丁香| 色色色色网|