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

ARTICLE DETAIL

資訊詳情

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

Windows 部署 Hadoop 偽分布式配置與 WordCount 實戰(zhàn)

Windows 部署 Hadoop 偽分布式配置與 WordCount 實戰(zhàn) 1. 先說清楚Windows 上跑 Hadoop 偽分布式到底在解決什么問題我最早接觸 Hadoop 是在一臺只有 Windows 筆記本的環(huán)境下當時手里沒有任何服務(wù)器可用虛擬機跑兩三個節(jié)點又卡得厲害于是只能退而求其次在 Windows 本機搭一套 Hadoop 偽分布式。所謂偽分布式就是把 NameNode、DataNode、ResourceManager、NodeManager 這些角色全部塞在同一臺機器上各自以獨立的 Java 進程運行用本地磁盤模擬出“分布式”的存儲與計算結(jié)構(gòu)。它不算真正的集群但足夠把 HDFS 的讀寫流程、YARN 的資源調(diào)度、MapReduce 的作業(yè)提交鏈路完整走一遍。對于想搞明白 HDFS 副本機制、塊存儲原理、作業(yè)提交流程的人來說偽分布式的性價比極高——一臺電腦、一個 JDK、一個解壓即用的 Hadoop 發(fā)行包就能把整個生態(tài)的骨架跑通。這篇文章記錄的是我基于 Windows 系統(tǒng)從零部署 Hadoop 偽分布式的完整過程包括版本怎么選、目錄怎么規(guī)劃、四個配置文件怎么寫、格式化啟動時踩了哪些坑、YARN 上跑第一個 WordCount 作業(yè)時又卡在哪里。適合的人群很明確剛接觸大數(shù)據(jù)組件但又不想一上來就折騰虛擬機的同學、需要在本地快速復(fù)現(xiàn)某個 HDFS 或 MapReduce 行為的開發(fā)者、以及被 Linux 環(huán)境慣壞想看看 Windows 下到底多難纏的老手。我把每一步的判斷依據(jù)和失敗現(xiàn)場都寫下來了你照著做大概率能少走兩三個晚上的彎路。2. 方案選型Windows 原生、子系統(tǒng)還是容器2.1 偽分布式在 Windows 上的三種落地方式對比在動手之前我先把三條路都試了一遍結(jié)論是它們各有適用場景不存在誰絕對優(yōu)于誰。第一種是 Windows 原生部署直接下載 Hadoop 的二進制壓縮包解壓補上 Windows 平臺缺失的原生庫文件然后跑起來。第二種是裝一個 Linux 子系統(tǒng)在子系統(tǒng)里按標準 Linux 流程部署Windows 只作為宿主。第三種是用容器拉一個現(xiàn)成的 Hadoop 鏡像映射幾個端口就能訪問 Web UI。我當時的判斷依據(jù)是“學習目標”而不是“省事程度”。如果只是想看看 HDFS 的 Web 界面長什么樣、跑一個現(xiàn)成的示例作業(yè)容器方案十分鐘就能搞定。但如果目標是理解 Hadoop 啟動時到底讀了哪些配置、進程之間的通信端口是哪些、日志里的報錯分別指向哪個組件原生部署帶來的“痛感”反而是有價值的——每一個報錯都對應(yīng)一個真實存在的機制。我最終選了原生方案主要原因是它最貼近真實的生產(chǎn)環(huán)境配置方式四個 XML 文件怎么寫、環(huán)境變量怎么傳這些經(jīng)驗換到 Linux 集群上是通用的。方案上手耗時學習價值主要痛點適合人群Windows 原生2 到 4 小時高配置項全部親手寫缺原生庫、路徑空格、權(quán)限問題想吃透配置細節(jié)的人Linux 子系統(tǒng)1 到 2 小時中高接近標準流程文件系統(tǒng)互通、內(nèi)存占用有一定 Linux 基礎(chǔ)的人容器鏡像10 到 30 分鐘低黑盒程度高配置改動需重建鏡像只想驗證功能的人需要說明的是原生方案有一個繞不開的前提Hadoop 的很多腳本和原生庫是按類 Unix 環(huán)境編寫的Windows 上沒有對應(yīng)實現(xiàn)。所以社區(qū)里一直有人維護一套 Windows 平臺的補充二進制文件主要包含winutils.exe和hadoop.dll兩個文件。前者負責模擬文件權(quán)限、創(chuàng)建目錄等操作后者是本地庫的 Windows 編譯版本。缺少它們程序不一定立刻報錯但會在某些節(jié)點突然拋出本地庫加載失敗這個后面會專門講。2.2 為什么偽分布式不需要配置免密登錄很多教程一上來就讓你裝 SSH、配免密那是針對完全分布式多機環(huán)境的。偽分布式下所有進程都在本機Windows 原生部署時啟動腳本本身就不走 SSH 通道Windows 自帶的啟動腳本是.cmd后綴的批處理文件直接start拉起各個 Java 進程。所以如果你看到某篇教程讓你在 Windows 上裝 OpenSSH、生成密鑰對、把公鑰追加到授權(quán)文件里可以直接跳過——那套流程解決的是跨機器啟動的問題偽分布式用不上。我一開始也照做了結(jié)果白白花了一個多小時最后發(fā)現(xiàn)啟動腳本壓根不讀這些。真正需要搞清楚的是啟動腳本的調(diào)用鏈start-dfs.cmd會依次拉起 NameNode 和 DataNodestart-yarn.cmd會拉起 ResourceManager 和 NodeManager每個進程背后都是一個java命令參數(shù)里的內(nèi)存大小、類路徑都由hadoop-env.cmd和四個 XML 配置文件決定。理解了這條鏈路后面排查啟動失敗就有方向了——先看窗口有沒有一閃而過再看日志目錄里對應(yīng)組件的.log文件末尾幾十行。2.3 版本搭配這件事容錯率比想象中低Hadoop 和 JDK 的版本搭配是這套環(huán)境里最容易埋雷的地方。Hadoop 3.x 系列官方明確支持的 JDK 版本是 8 和 11用 JDK 17 及以上會直接撞上模塊訪問限制啟動時報IllegalAccessError或者反射相關(guān)的異常改配置也救不回來。我自己用的是 JDK 8 的一個較新小版本穩(wěn)定跑通。Hadoop 本身選的是 3.3 系列的一個穩(wěn)定小版本這個系列對 Windows 的兼容性資料最多遇到問題容易搜到同類案例。還有一個容易被忽略的點JDK 的安裝路徑。默認安裝到C:\Program Files\Java\...這種帶空格的目錄下Hadoop 的批處理腳本在拼接類路徑時對空格處理得很粗糙容易出現(xiàn)“找不到主類”或者路徑被截斷的情況。我的做法是把 JDK 單獨裝到一個沒有空格、沒有中文的短路徑下比如C:\Java\jdk8后面所有配置都指向這個路徑。同理Hadoop 的解壓目錄我也放在了根目錄下的短路徑里比如D:\hadoop\hadoop-3.3.x。這一步多花兩分鐘后面能省掉一堆莫名其妙的報錯。3. 環(huán)境準備目錄規(guī)劃、環(huán)境變量與 Windows 補充庫3.1 目錄結(jié)構(gòu)怎么規(guī)劃才不給自己挖坑我見過不少人把 Hadoop 解壓到桌面或者下載文件夾里然后一路報錯到最后放棄。問題的根源在于 Hadoop 運行時會往自己所在的目錄寫日志、寫臨時文件如果路徑里有中文、空格或者權(quán)限受限比如系統(tǒng)盤的某些目錄進程就會在某個不起眼的環(huán)節(jié)掛掉。我習慣的目錄規(guī)劃是這樣的D:\hadoop\ ├── hadoop-3.3.x\ 解壓出來的發(fā)行包本體 │ ├── bin\ │ ├── etc\hadoop\ 四個配置文件都在這里 │ ├── logs\ 運行日志排錯第一現(xiàn)場 │ └── sbin\ 啟動停止腳本 └── data\ 所有運行時數(shù)據(jù)獨立于程序目錄 ├── tmp\ 臨時目錄 ├── namenode\ NameNode 元數(shù)據(jù) └── datanode\ DataNode 數(shù)據(jù)塊把數(shù)據(jù)和程序分開是我堅持的一個習慣。原因很實際想升級 Hadoop 版本時直接解壓新版本、改一下環(huán)境變量就行數(shù)據(jù)目錄原封不動想徹底重來一遍時只需要刪掉data目錄重新格式化程序本體不用動。data目錄一定要放在非系統(tǒng)盤因為 HDFS 寫入數(shù)據(jù)塊時會產(chǎn)生大量小文件系統(tǒng)盤容易被塞滿而且 Windows 對系統(tǒng)盤某些位置的寫入有額外限制。目錄建好之后還需要手工把data下的三個子目錄創(chuàng)建出來。雖然 Hadoop 在格式化時會自動創(chuàng)建但提前建好可以避免“父目錄不存在導致創(chuàng)建失敗”這類邊界問題尤其是當磁盤權(quán)限設(shè)置比較嚴格的時候。3.2 環(huán)境變量的三個關(guān)鍵項與實際作用Windows 上需要配置三組環(huán)境變量每一項都有明確用途不是隨便加的。第一項是JAVA_HOME指向 JDK 的根目錄不帶bin。這個變量的作用范圍比想象中大不只是 Hadoop 讀它很多 Java 生態(tài)的工具鏈都依賴它。配置成C:\Java\jdk8這種形式結(jié)尾不要帶反斜杠。第二項是HADOOP_HOME指向 Hadoop 解壓后的根目錄也就是包含bin、etc、sbin的那一層。這個變量是 Windows 批處理腳本定位自身的關(guān)鍵start-dfs.cmd內(nèi)部會用它拼接類路徑。如果沒配雙擊腳本會一閃而過什么提示都沒有。第三項是在Path里追加%HADOOP_HOME%\bin和%HADOOP_HOME%\sbin。加bin是為了能在任意目錄下敲hadoop、hdfs這些命令加sbin是為了能直接敲start-dfs、stop-yarn這類管理腳本。提示環(huán)境變量改完一定要關(guān)掉所有已打開的命令行窗口重新開一個舊的窗口讀的是舊環(huán)境。我吃過這個虧改完變量在當前窗口里敲hadoop version一直提示“不是內(nèi)部或外部命令”折騰半天才發(fā)現(xiàn)是窗口沒刷新。驗證方式很簡單新開一個命令行窗口敲hadoop version能打印出版本號、編譯信息、構(gòu)建時間就說明環(huán)境變量通了。如果這一步就失敗后面的所有操作都不用往下做先把這里解決掉。3.3 winutils.exe 和 hadoop.dllWindows 上繞不開的兩個文件這是 Windows 原生部署 Hadoop 最核心的一道坎。Hadoop 的部分功能依賴本地庫實現(xiàn)比如文件權(quán)限模擬、磁盤空間查詢、符號鏈接處理這些在 Linux 上有系統(tǒng)調(diào)用可以直接用Windows 上需要專門的編譯產(chǎn)物。社區(qū)長期有人維護針對各個 Hadoop 版本的 Windows 二進制包主要就是winutils.exe和hadoop.dll兩個文件。放置位置有講究winutils.exe放到%HADOOP_HOME%\bin目錄下和hadoop.cmd、hdfs.cmd這些批處理文件放在一起。hadoop.dll需要放到兩個地方一是%HADOOP_HOME%\bin二是C:\Windows\System32。放系統(tǒng)目錄這一步看起來粗暴但確實是最省事的做法因為 Java 通過系統(tǒng)路徑加載本地庫放在System32下能被穩(wěn)定找到。版本匹配這件事要特別注意。這些二進制文件需要和 Hadoop 主版本對應(yīng)跨大版本混用可能出現(xiàn)符號解析失敗。我用的 Hadoop 是 3.3 系列配套的 Windows 二進制包也選 3.3 系列的版本。如果你手頭只有 3.2 或 3.1 的包先試試能不能跑如果啟動時拋出UnsatisfiedLinkError或者NativeIO相關(guān)的異常那就說明不匹配得去找對應(yīng)版本。配完這兩個文件還要在hadoop-env.cmd里顯式指定HADOOP_HOME因為 Windows 上批處理腳本有時讀不到系統(tǒng)環(huán)境變量尤其是從快捷方式啟動的時候。我一般會在文件開頭補一行set HADOOP_HOMED:\hadoop\hadoop-3.3.x這一步看起來冗余但它能避免“明明配了環(huán)境變量卻提示找不到 winutils”的詭異情況。4. 四個配置文件逐行拆解每一項都在控制什么4.1 core-site.xml整個集群的入口地址core-site.xml是所有配置里最基礎(chǔ)的一個它定義的是整個 Hadoop 運行時的通用參數(shù)其中最關(guān)鍵的只有兩三項。configuration property namefs.defaultFS/name valuehdfs://localhost:9000/value /property property namehadoop.tmp.dir/name valuefile:///D:/hadoop/data/tmp/value /property property nameio.file.buffer.size/name value131072/value /property /configurationfs.defaultFS決定了所有 HDFS 客戶端默認連接的地址格式是hdfs://主機名:端口。端口我用了 9000這是傳統(tǒng)習慣值也可以改成別的空閑端口但改了之后所有引用這個地址的地方都要同步改。主機名寫localhost是最簡單的做法因為偽分布式只在本機通信不需要解析真實主機名。hadoop.tmp.dir這一項特別重要它是所有臨時文件的根目錄NameNode 的元數(shù)據(jù)、DataNode 的中間數(shù)據(jù)、YARN 容器的工作目錄都可能落在它下面。如果不顯式配置Hadoop 會默認寫到系統(tǒng)的臨時目錄里這個位置在 Windows 上經(jīng)常被清理而且重啟后可能被系統(tǒng)清空導致元數(shù)據(jù)和數(shù)據(jù)不一致下次啟動直接報錯。所以我強烈建議把它指向自己規(guī)劃的數(shù)據(jù)目錄。路徑的寫法需要注意Windows 路徑要用正斜杠并且前面加file:///寫成file:///D:/hadoop/data/tmp這種形式。寫成反斜杠或者漏掉file:///前綴解析時會出錯。這個細節(jié)我在第一次配置時就寫錯了報錯信息非常隱晦只是提示某個路徑不存在看不出是格式問題。io.file.buffer.size是讀寫緩沖區(qū)大小默認值偏小調(diào)到 128KB 能提升一點大文件讀寫效率。這個參數(shù)不是必填項屬于順手優(yōu)化配置不配置都不影響啟動。4.2 hdfs-site.xml副本、目錄與權(quán)限hdfs-site.xml管的是 HDFS 自身的行為偽分布式下最重要的幾項是副本數(shù)、元數(shù)據(jù)和數(shù)據(jù)目錄、權(quán)限開關(guān)。configuration property namedfs.replication/name value1/value /property property namedfs.namenode.name.dir/name valuefile:///D:/hadoop/data/namenode/value /property property namedfs.datanode.data.dir/name valuefile:///D:/hadoop/data/datanode/value /property property namedfs.permissions.enabled/name valuefalse/value /property property namedfs.namenode.http-address/name valuelocalhost:9870/value /property /configurationdfs.replication默認是 3意味著每份數(shù)據(jù)要存三個副本。偽分布式只有一臺機器、一個 DataNode根本湊不出三個副本HDFS 會一直處于“副本不足”狀態(tài)頁面上永遠掛著紅色的警告。改成 1 是必然選擇既符合單節(jié)點的物理現(xiàn)實也避免了后臺反復(fù)做副本復(fù)制帶來的資源浪費。dfs.namenode.name.dir和dfs.datanode.data.dir分別指定元數(shù)據(jù)目錄和數(shù)據(jù)塊目錄。這兩個目錄必須分開絕對不能指向同一個路徑否則格式化時會產(chǎn)生混亂。我把它們放在data下的不同子目錄里互不干擾。這兩個路徑同樣要用file:///前綴加正斜杠的寫法。dfs.permissions.enabled設(shè)為false是 Windows 下的實用妥協(xié)。HDFS 有一套類似 POSIX 的權(quán)限模型但 Windows 的文件系統(tǒng)沒有對應(yīng)的權(quán)限位winutils.exe只是做了模擬很多情況下模擬出來的結(jié)果和預(yù)期不一致容易導致“明明有權(quán)限卻提示拒絕訪問”。學習環(huán)境下關(guān)掉權(quán)限檢查能省掉大量無謂的排查時間。真要做權(quán)限相關(guān)實驗時再打開那時你對機制已經(jīng)有概念了知道該從哪個方向查。dfs.namenode.http-address指定 Web 管理界面的監(jiān)聽地址Hadoop 3.x 的默認端口是 98702.x 時代是 50070。配置成localhost:9870之后啟動成功就能在瀏覽器里打開http://localhost:9870看到 HDFS 的概覽頁、文件瀏覽、DataNode 列表等信息。這個頁面是驗證部署是否成功最直觀的方式。4.3 mapred-site.xml 與 yarn-site.xml計算框架的接線這兩個文件是一對前者告訴 MapReduce 作業(yè)往哪兒提交后者告訴 YARN 怎么接收和運行這些作業(yè)。configuration property namemapreduce.framework.name/name valueyarn/value /property /configurationmapreduce.framework.name設(shè)成yarn表示 MapReduce 作業(yè)跑在 YARN 上。另一個可選值是local本地模式不需要 YARN但那樣就失去了練習資源調(diào)度的意義。偽分布式下選yarn才有完整的作業(yè)提交鏈路客戶端連 ResourceManager、申請容器、NodeManager 拉起任務(wù)進程、任務(wù)跟 HDFS 交換數(shù)據(jù)。yarn-site.xml稍微復(fù)雜一點configuration property nameyarn.nodemanager.aux-services/name valuemapreduce_shuffle/value /property property nameyarn.resourcemanager.hostname/name valuelocalhost/value /property property nameyarn.nodemanager.vmem-check-enabled/name valuefalse/value /property property nameyarn.nodemanager.pmem-check-enabled/name valuefalse/value /property /configurationyarn.nodemanager.aux-services這一項是必須的它注冊了 MapReduce 的 Shuffle 服務(wù)。Map 階段的輸出要經(jīng)過 Shuffle 傳給 Reduce 階段這個輔助服務(wù)負責那部分數(shù)據(jù)傳輸。不配這一項作業(yè)提交上去會一直卡在 map 或者 reduce 階段日志里提示 Shuffle 服務(wù)不可用。yarn.resourcemanager.hostname指定 ResourceManager 所在的主機。偽分布式寫localhost就行。有些教程會寫具體的主機名那樣一旦計算機名變了就要改配置不如直接用localhost省心。后面兩個內(nèi)存檢查開關(guān)我建議一并關(guān)掉。YARN 默認會對每個容器的虛擬內(nèi)存和物理內(nèi)存做檢查超出限制就殺掉容器。Windows 下這個檢查的精度很差經(jīng)常在內(nèi)存完全夠用的情況下誤判把任務(wù)容器直接干掉表現(xiàn)為作業(yè)莫名其妙失敗、日志里寫著“Container killed”。關(guān)掉之后內(nèi)存分配由 Java 堆參數(shù)控制行為更可控。這不是生產(chǎn)環(huán)境該有的做法但在本機學習環(huán)境里能省掉很多干擾。4.4 hadoop-env.cmdJava 路徑與內(nèi)存閾值hadoop-env.cmd在etc\hadoop目錄下它的作用是給所有啟動腳本注入環(huán)境變量。最關(guān)鍵的只有一行set JAVA_HOMEC:\Java\jdk8注意這里用的是set而不是setx作用范圍僅限當前腳本及其子進程不會污染系統(tǒng)環(huán)境變量。這行配置寫錯啟動時會直接報“JAVA_HOME 未正確設(shè)置”。還有幾個可選的內(nèi)存參數(shù)值得順手調(diào)一下。Windows 機器內(nèi)存普遍不小但 Hadoop 默認給 NameNode 分配的內(nèi)存偏保守處理大量小文件時容易觸發(fā)頻繁 GC??梢栽谕晃募锛觭et HADOOP_HEAPSIZE_MAX1024 set HADOOP_NAMENODE_OPTS-Xmx1024m -Xms1024m set HADOOP_DATANODE_OPTS-Xmx512m -Xms512mHADOOP_HEAPSIZE_MAX是全局上限單位和 Linux 上一樣用 MB。NameNode 因為要維護整個文件系統(tǒng)的元數(shù)據(jù)內(nèi)存給大一點DataNode 相對輕量512MB 夠用ResourceManager 和 NodeManager 也用默認值即可。這些值不用給太夸張本機學習環(huán)境把總內(nèi)存控制在 3GB 以內(nèi)比較穩(wěn)妥剩下的留給系統(tǒng)和其他軟件。5. 格式化與啟動第一次跑通的完整過程5.1 格式化 NameNode 的正確姿勢配置寫完第一件事是格式化 NameNode。這一步會在dfs.namenode.name.dir指定的目錄里初始化元數(shù)據(jù)生成current目錄和fsimage文件。命令是hdfs namenode -format執(zhí)行后會輸出一大段日志最后幾行如果有Storage directory ... has been successfully formatted就說明成功了。如果看到Cannot lock storage說明該目錄已經(jīng)被占用可能是之前的進程沒退干凈或者已經(jīng)格式化過。這種情況下不要硬來先把所有 Hadoop 進程確認停止再檢查目錄里有沒有殘留文件。注意格式化只能做一次。重復(fù)格式化會把 NameNode 的集群 ID 重新生成而 DataNode 目錄里存的還是舊的集群 ID兩者對不上DataNode 就起不來日志里會提示ClusterId mismatch。真遇到了解決辦法是刪掉data目錄下的namenode和datanode兩個子目錄重新格式化代價是之前存進 HDFS 的數(shù)據(jù)全部丟失。學習環(huán)境下這不算事但一定要知道這個因果關(guān)系否則會對著報錯猜很久。格式化完成之后namenode目錄下應(yīng)該出現(xiàn)current子目錄里面有VERSION、fsimage_0000000000000000000這類文件。可以去確認一下這也是判斷格式化是否真的生效的依據(jù)。5.2 啟動腳本與進程驗證啟動分兩步。第一步起 HDFSstart-dfs.cmd這個批處理會打開兩個新的命令行窗口一個跑 NameNode一個跑 DataNode。窗口里會滾動大量日志正常情況下最后會停在某個狀態(tài)。這兩個窗口不能關(guān)關(guān)了進程就終止了。我習慣把它們最小化放著。第二步起 YARNstart-yarn.cmd同樣會打開兩個窗口分別是 ResourceManager 和 NodeManager。四個窗口都正常滾動日志、沒有立刻退出說明進程都起來了。如果某個窗口一閃就沒了說明對應(yīng)的進程啟動失敗去logs目錄找對應(yīng)組件的日志文件看末尾的異常堆棧。驗證進程是否真的活著可以用jps命令。這個命令在 JDK 的bin目錄下輸出類似12345 NameNode 12678 DataNode 13021 ResourceManager 13345 NodeManager 14567 Jps五個進程對應(yīng)上HDFS 和 YARN 的關(guān)鍵角色就齊了。如果少了哪個對應(yīng)的窗口一定已經(jīng)關(guān)閉了。這一步是我每次重裝環(huán)境時必做的確認比看窗口滾動日志更直觀。5.3 Web 界面與命令行雙重驗證進程起來之后打開瀏覽器訪問http://localhost:9870能看到 HDFS 的管理界面。重點看兩個地方一是首頁的Summary部分Live Nodes應(yīng)該是 1表示有一個 DataNode 在線二是Utilities菜單下的Browse the file system能列出 HDFS 根目錄的內(nèi)容說明元數(shù)據(jù)服務(wù)正常。YARN 的界面在http://localhost:8088首頁能看到集群的資源總量、已用資源、正在運行的作業(yè)數(shù)量。剛啟動時作業(yè)數(shù)是 0資源占用接近 0這是正常的。命令行這邊先建一個目錄、傳一個文件上去hdfs dfs -mkdir -p /user/test/input hdfs dfs -ls / hdfs dfs -put D:\local\somefile.txt /user/test/input/ hdfs dfs -cat /user/test/input/somefile.txt這幾條命令能跑通說明 HDFS 的讀寫鏈路完全正常。-ls能列出目錄-put能把本地文件寫到 HDFS-cat能把內(nèi)容讀回來三個方向都驗證到了。5.4 跑通第一個 WordCountWordCount 是驗證 MapReduce 鏈路的標準動作。Hadoop 發(fā)行包里自帶示例 JAR路徑一般在share\hadoop\mapreduce\hadoop-mapreduce-examples-版本.jar。先準備輸入數(shù)據(jù)隨便造兩個文本文件里面放一些重復(fù)的單詞傳到 HDFS 的一個目錄里hdfs dfs -mkdir -p /user/test/wc/input hdfs dfs -put D:\local\a.txt /user/test/wc/input/ hdfs dfs -put D:\local\b.txt /user/test/wc/input/然后提交作業(yè)。注意輸出目錄必須是 HDFS 上不存在的路徑否則作業(yè)會直接失敗提示輸出目錄已存在。這是 MapReduce 的設(shè)計約定為的是防止覆蓋已有結(jié)果。hadoop jar %HADOOP_HOME%\share\hadoop\mapreduce\hadoop-mapreduce-examples-3.3.x.jar wordcount /user/test/wc/input /user/test/wc/output提交之后控制臺會不斷打印進度百分比。同時打開 YARN 的 8088 頁面能看到一個應(yīng)用從ACCEPTED變成RUNNING再變成FINISHED。整個過程走完用下面的命令看結(jié)果hdfs dfs -cat /user/test/wc/output/part-r-00000輸出的每行是“單詞 出現(xiàn)次數(shù)”按字母序排列??吹竭@個結(jié)果說明 HDFS、YARN、MapReduce 三層已經(jīng)全部打通。6. 常見問題速查與排查思路實錄6.1 啟動階段的高頻報錯與定位方法啟動階段的問題占了全部問題的一大半我把遇到過的整理成一張表方便對照排查?,F(xiàn)象大概率原因處理方式窗口一閃而過無任何輸出HADOOP_HOME沒配或路徑帶空格在命令行里手動執(zhí)行腳本看報錯提示 JAVA_HOME 未正確設(shè)置hadoop-env.cmd里的路徑寫錯確認路徑存在且不帶引號NameNode 啟動后立刻退出元數(shù)據(jù)目錄被舊數(shù)據(jù)占用清空data目錄重新格式化DataNode 起來但 Live Nodes 為 0ClusterId 不一致清空數(shù)據(jù)目錄重新格式化提示找不到 winutils補充二進制未放到bin目錄補文件并檢查HADOOP_HOMEUnsatisfiedLinkErrorhadoop.dll未放系統(tǒng)目錄復(fù)制到System32后重啟命令行端口被占用9000 或 9870 被其他程序占用換端口或結(jié)束占用進程計算機名含中文導致注冊失敗主機名解析異常改用localhost或修改主機名“窗口一閃而過”這個現(xiàn)象最讓人抓狂因為看不到任何錯誤信息。我的應(yīng)對辦法是不雙擊運行而是先開一個命令行窗口cd到sbin目錄直接敲腳本名回車。這樣報錯信息會留在窗口里一眼就能看到是哪一行出的問題。這個技巧適用于所有.cmd批處理腳本。端口占用也值得一提。9000 是 HDFS 的 RPC 端口如果本機裝了其他用 9000 端口的服務(wù)NameNode 就綁不上。查占用用netstat -ano | findstr :9000能拿到進程號再用任務(wù)管理器找到對應(yīng)程序。9870 是 Web 端口沖突概率低一些但也不是沒有。真沖突了改hdfs-site.xml里的端口配置就行只影響 Web 訪問不影響數(shù)據(jù)讀寫。6.2 運行作業(yè)時才暴露的問題有些問題在啟動階段完全看不出來直到提交作業(yè)才炸出來而且報錯信息往往指向不明顯的地方。最常見的是Container exited with a non-zero exit code 1。這個報錯本身幾乎不提供任何信息只說容器退出碼非零。真正的線索在 NodeManager 的日志里搜這個容器 ID能找到它拉起的具體命令和標準錯誤輸出。我遇到過的原因有三種一是類路徑拼接在 Windows 下用了錯誤的路徑分隔符需要檢查mapreduce.application.classpath配置二是工作目錄權(quán)限不足NodeManager 無法在臨時目錄下創(chuàng)建容器目錄三是hadoop.dll沒被容器進程找到因為容器是新的進程環(huán)境變量繼承可能不完整。另一個是作業(yè)長時間卡在ACCEPTED狀態(tài)一直不進入RUNNING。這說明 ResourceManager 收到了作業(yè)但沒有分配到容器。原因通常是 NodeManager 沒注冊上或者可用資源不足。去 8088 頁面看Cluster Nodes列表如果為空說明 NodeManager 根本沒連上 ResourceManager回去檢查yarn-site.xml里的主機名配置和 NodeManager 窗口的日志。如果列表有節(jié)點但資源顯示為 0那是內(nèi)存參數(shù)配得太極端把這個節(jié)點的可分配內(nèi)存擠沒了。還有一種比較隱蔽作業(yè)能跑完但結(jié)果不對比如輸出文件是空的。這種情況先看 Map 階段的輸入記錄數(shù)是不是 0。如果是 0說明輸入路徑?jīng)]讀到文件可能是路徑寫錯也可能是文件權(quán)限問題。我在關(guān)掉權(quán)限檢查之前遇到過一次本地傳上去的文件所有者是當前 Windows 用戶名但作業(yè)運行時的用戶名解析出了偏差導致讀不到文件。關(guān)掉dfs.permissions.enabled之后就沒再出現(xiàn)過。6.3 停止、重啟與二次啟動的注意事項停止的順序有講究一般是先停 YARN 再停 HDFSstop-yarn.cmd stop-dfs.cmd反過來停也不是不行但 YARN 上如果還有運行中的作業(yè)直接停 HDFS 會讓作業(yè)以很奇怪的方式失敗日志里一堆連接異??雌饋硐袷桥渲脝栴}實際上只是停止順序?qū)е碌?。二次啟動時最容易踩的坑是“沒等上一個進程完全退出就重新啟動”。Windows 上進程退出有時會有延遲端口還沒釋放新進程綁不上報Address already in use。我的做法是停完之后用jps確認四個進程都不在了再執(zhí)行啟動。如果jps顯示還有殘留去任務(wù)管理器里結(jié)束對應(yīng)的java.exe進程。還有一個細節(jié)如果某次啟動失敗data目錄里可能會留下鎖文件或者不完整的臨時文件導致下一次啟動也失敗。判斷方法是看 NameNode 日志里有沒有Cannot lock storage或者Directory is already locked這類關(guān)鍵詞。遇到了把data目錄下的tmp子目錄清空通常就能恢復(fù)不需要動namenode和datanode目錄也就不會丟數(shù)據(jù)。提示養(yǎng)成一個習慣每次改動配置文件之前先備份一份。Windows 上排查問題時經(jīng)常要改配置試錯改來改去就忘了最初是什么樣。我一般在etc\hadoop下建一個bak目錄把改之前的四個 XML 文件復(fù)制進去出問題了一鍵還原比憑記憶回滾靠譜得多。7. 一些只有實際搭過才會有的體會整套環(huán)境搭下來我最深的感受是Windows 上跑 Hadoop 的難點不在 Hadoop 本身而在兩個系統(tǒng)的“接口層”。配置文件怎么寫、參數(shù)是什么意思這些看文檔就能明白真正耗時間的是路徑格式、權(quán)限模擬、本地庫加載這些邊界地帶它們不在任何一份官方文檔里只能靠一次次報錯去試。所以我的建議是第一次搭的時候把每個報錯都記下來包括完整的報錯文本和你最終的解決方式形成自己的排查清單。下次換機器或者換版本時這份清單能讓你在半小時內(nèi)定位問題而不是重新經(jīng)歷一遍摸索。另一個體會是關(guān)于“夠用就好”這個判斷。偽分布式下很多人會照搬生產(chǎn)環(huán)境的參數(shù)副本數(shù)設(shè) 3、內(nèi)存給 8G、各種超時時間拉到很長結(jié)果本機資源被吃光反而跑不動。學習環(huán)境的配置應(yīng)該反過來做減法副本數(shù)降到 1、內(nèi)存控制在小幾百兆、能關(guān)的檢查都關(guān)掉目標是讓鏈路跑通、讓機制看得見而不是追求性能指標。等你把流程走順了再逐項加回去觀察每項參數(shù)帶來的變化這個過程本身就是很好的學習。最后分享一個我在排查時常用的小技巧不確定某個配置項有沒有真正生效時用hdfs getconf -confKey 配置項名稱直接查運行時的實際值。比如hdfs getconf -confKey dfs.replication返回的就是當前生效的副本數(shù)。這個命令比翻配置文件可靠因為它讀的是進程實際加載后的結(jié)果能排除“改了文件但沒重啟”“改錯了文件”這類低級失誤。搭環(huán)境的過程中大部分所謂的“疑難問題”其實都是配置沒生效先用這個命令確認一遍能排除掉一半的可能性。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
六月婷婷开心| 久久作爱| 青青夜夜狠狠夜夜狠狠| www.色五月| 另类小说五月天综合网| 综合另类视频| 婷综合六月| 九九热自拍| 五夜丁香| 怎么样可以看免费的一级av| 激情综合亚洲| 久久伊人9| 色狠狠伊人久久五月丁香| 色五月开心久久网| 亚洲欧美综合7777色亭亭| 狠狠色色综合| 国内自拍1区| 色激情五月| 日本久久爱| 性色人人爽| 婷婷综合婷婷| 图片区 小说区 区 亚洲五月 | 天天日天天爽| 91精品久久久久久综合五月天| 日本三级日本三级99| 久九男女天堂| se99高清无码| 92久久久| 国产av天天插天天操天天爽| 国产69久久久欧美黑人A片| 婷婷五月天亚洲丁香| 爱射综合| 日本一级一级一级一级| 色婷另类| 婷婷综合伊人丁香| 热99这里只有精品视频| 激情五月丁香色婷婷| 色综合久久天天综合网| 爆乳熟妇一区二区三区爆乳照片| 五月婷亚洲精品| 色噜噜狠狠色综合伊人| 五月天另类小说亚洲| 免费人人操| 丁香操逼| 久久九⑨| 人妻激情视频| 色欧美影院| aaa久久久| 99视频在线| 97操碰碰无码视频| 99热在线观看精品| 亚洲AV网站| 这里只有精品1| 色婷丁香91| 激情第四色| 五月综合色| 天天噜日日噜综合无码| 五月婷六月| 激情欧美五月丁香| 99热精品在线| 成人在线二区| www,久久久人人| 1024人妻无码中文字幕| 久久机热/这里只有精品| 亚洲综合五月天| 天天干天天操天天拍| 亚洲五月色| www.ppypp| 婷婷丁香成人网址| 五月六月丁香激情| 四色99久久| 国产精品视频免费看| 狠狠草在线观看| 开心深爱激情网| 亚洲热热视频| 久久久噜噜噜久久人妻| 综合色图婷婷| 91人人操| 五月丁香久久久日婷婷久久婷婷日| 嫩草综合网| 欧美色色色| 五月天,激情四射,婷婷频道| 五月天色综合| 五月天色小说| 五月婷婷久久爱| 九九美女视频| 婷婷丁香五月天婷婷| 色婷婷中文字母五月丁香| 色五月久久成人婷婷| 亚洲色色色色色| 亚洲小视频免费看| 中国激情网| 五月综合婷婷五月| 九九99免费理论| av九九| 色色婷| 香蕉久久av一区二区三区| 人妻丰满精品一区二区A片| 国产亚洲99久久精品熟女| 天堂久久丁香| 久久99综合| 国产色色网址网站| 99热综合网| 久久九九@| www.99视频| 精品亚洲国产成AV人片传媒| 久9免费视频| 99开心五月五月丁香激情| 亚洲色婷婷五月天| 99热在线观看99| www激情网站| 久久久久婷婷| 99视频只有精品| 婷婷欧美| 婷婷性爱网| 五月综合777| α久久| 99热在线观看免费精品| 无码免费人妻A片AAA毛片西瓜| 色婷婷丁香社综合| 青青草日本亚洲| 九热免费视频| 99热日本精品| 国产精品久久久久久五月天加勒比| 丁香五月另类小说| 91碰免费视频| 五月丁香另类网| 九九99九九99九九99视频网| 色五月婷婷激情基地| 婷婷久久免费看| 综合网五月| 1000部毛片A片免费观看| 久热99久热| 五月婷婷五月丁香综合| 亚洲激情五月| 99久热在线精品| www.激情五月天| 伊人五月综合网| 国产探花一片区| 五月丁香美女| 九九亚洲| site:xiongshengzz.com| 深爱开心激情| 色婷婷啪啪| 国产99视频永久免费| 青青草激情网| 99re热精品视频国| 狠狠色丁香| 99资源在线视频| 日韩乱玛久久| 婷婷五月激情小说| 亚洲激情婷婷| 亚洲黄3级片网站欧美| 日本激情五月天‘| 激情五月婷婷丁香综合网| 亚洲视频在线观看99| 五月婷婷激情中文字幕| 亚洲精品视频电影| 久草a片| 92久操视频| 色婷婷a三区麻| 日本精品人妻无码77777| 五月天激情综合网站| 色婷婷在线播放| 99热全是精品| www.9797国产| 九九香蕉网| 中文字幕色色| 亚洲AV无码成人精品区电影网| 这里只有精品免费观看网占| 激情亭亭五月| 成人在线网址| 五月激情综合婷婷| 欧美日韩婷婷五月天| 翔田千里无码| 99视频综合网| 久久人妻精品| 亚洲综合一区二区| 日本狠狠干| 久久视屏这里只有久久| 美女久久婷婷| 五月丁香成人网| 久人操| 狠狠干狠狠干| 精品国产人人爱人人| 亚洲五月天激情| 久久丁香五月婷婷激情综合网| 91超级碰碰碰| 中文字幕在线观看视频www| 国产精品电影网| www.com.色色| 激情亚洲网| 精品九九在线观看视频| 五月天婷婷色播在线网| 影音先锋91在线资源站| 婷婷色正月| ady狠狠入| 五月激情站| 婷婷色狠狠| 五月激情婷婷丁香天堂| 丁香激情网| 99久久婷婷国产综合| 丁香五月婷婷基地| 日本人妻伦在线中文字幕 | 91一起操| 五月香六月婷| 91网站黄| 日本欧美成人片AAAA| ay2区| 色色色99| 99热精品综合| 久久婷中文字幕| 日韩超碰在线| 色五月婷婷在线| 五月天伊人日日噜影片AV| 亚州第一黄网| 五月叮香啪| 五月婷婷亚洲综合网| 97干在线视频| 激情婷婷色五月| 综合色吧| 亚洲亚洲人成综合网络| 五月婷婷啪啪综合网| 狠狠爱激情网| 丰满少妇猛烈A片免费看观看| 欧美VA在线观看| 操日本三片99| 免费无码毛片一区二区A片| 久久婷婷五月草视频| 色综合色婷色基地| 久久996re热这里只有精品无码| 无码人妻丰满熟妇奶水区码| 一区二区免费看| 九九成人精品免费视频| 丁香五月婷综合| 天天干天天干天天操| 色色免费网站| 色都都狠狠色都都色综合色| 热五月婷婷| 色婷婷丁香五月高清在线| 五月天激情站| 日韩久综合| 青青草伊人婷婷| 色九月婷婷丁香| 俺去也在线www色官网| 99色一| 99ri6在线视频| 超碰av在线| 免费播放99性爱视频| 婷婷五月a| 亚洲AV综合在线观看| 人人天堂操| 另类视在线| 99热这里只有精品21| 五月丁香六月婷婷激情四射| 风流少妇A片一区二区蜜桃| 婷婷五月丁香综合激情| 丁香五月激情澎湃一区| 六月丁婷婷| www.99精品视频| 少妇人妻丰满做爰XXX| 日本欧美国产| 蜜桃五月天| 99热99ai| 婷婷伊人綜合中文字幕| 日本人人干| 狠狠噪| 久久99精品久久只有精品| 激情五月色在线播放| 无码地址| 草草视频91| 国产毛片精品一区二区色欲黄A片 欧美交换配乱吟粗大25P | 色婷婷伊人激情在线观看| 视色综合| 99精品在线| 天天摸色吧天天摸色吧| VA色婷婷| 97精品人人A片免费看| 色婷婷先锋| 天天艹夜夜爽| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 乱女乱妇熟女熟妇综合网站| 色婷婷五月天天天天天| 美臀自射自家人妻| 婷婷成人综合免费视频| 欧美噜一噜| 五月天激情小说电影| 丁香六月av| 美妞av| 欧美噜噜久久久XXX| 天天综合五月天| 最新日韩久热免费视频看看| 亚洲视频五区| 人人干AV| 五月天激情网图片| 玖玖无码中文| 熟妇无码乱子成人精品| 丁香婷婷综合影院| www.婷婷亚洲基地| 激情99热| 99久久玖玖| 天天色噜| 九九久久综合| 五月婷av| 丁香六月婷婷一区| 伊人丁香婷婷东京| 激情综合色婷婷啪啪六月天| 久操婷婷| 丁香花五月天婷婷成人社区| 久久99精品久久久久久噜噜| 桃色激情婷婷伊人网| 1010日日无码| 久久亚洲婷婷| 五月丁小婷婷激情四射| 六月丁香六月婷婷欧美| 色婷婷色久综| 色婷婷久久综合| 日日噜噜夜夜狠狠久久丁香五月| 99热色综合| 欧美色色干| 五月天激情影院| 五五月丁香花激情综合网| 婷婷成人综合五月| 狠狠干在线| WwW色婷婷| 98永久精品| 五月天激情小说婷婷| 丁香六月综合激情| 狠狠久久婷| 99亚洲天堂| 色情五月天首页| 天天噜噜| 五月丁香免费看| 婷婷久久五月天| 欧美色激情四射| WWW免费视频碰碰碰碰| www.粉嫩av.com| 中文字幕色色| 九九热最新| 黄网在线免费观| 天天色丁香| 青青草蜜臀| 色色五月天婷婷丁香| 内射干少妇亚洲69XXX| 丁香五月激情月| 色五月激情综合| 激情五月丁香色婷婷| 五月丁香色狠狠干大屄| 类似婷婷激情综合网站| 久久9精品| 超碰人人在线| 九九热视频免费的| 婷婷五月天首页| 五月激情婷婷六月丁香| 热99这就是精品视频| 九九热免费视频| 国产激情av| 丁香六月婷婷久久综合| 六月婷婷毛片| 超碰免费成人| 丁香五月色五月婷婷宗合| 4399在线日本A片| 久久久天堂国产精品女人| 五月丁香久久色| 色五月久久成人婷婷| 丝袜激情网| 久久精品一区二区三区四区| 国产一级视频a| 成人性生活免费观看。| 99热这里都是精品| 亚洲午夜精品久久久久久人妖| 精品人妻久久久久久久| 成人电影AV在线观看| 超碰在线人妻| 99在线资源视频| 久久久999精品| 激情亚洲色图片丁香综合| 婷婷色五月色| 97干在线| 五月婷在线影院| 日韩成人中文| 99久久婷婷| 人人干AV| 色婷婷五月天在线观看| 久久婷婷五月综合色丁香| 五月婷婷真爱激情网| 色五月亚洲| 久久婷婷色色| 97操操| 天天综合网91| 婷婷俺去也| 激情久久久| 99久热这里只有精品| 欧洲综合视频| 色婷婷综合视频| 999热在线视频| 99精品在这里| 操熟女成人网| 色色色欧美| 久久182| 午夜色色色极品视频| 99国产精品久久久久久久久久久| 天天噜| 99噜噜噜在线播放| 亚洲五月六丁香激情| 色色吧综合| 黄色视频网站在线播放| 色噜噜,噜噜色| 亚洲99综合| 天啪天啪天啪天啪| 天天舔日日肏夜夜爽| 婷婷六月丁香五月| 五月天婷婷狂暴白浆| 婷婷成人AV| 五月婷婷co.m| 精品一区二区三区四区五区六区| 色播五月丁香综合| 色综合色色| 婷婷五月天堂网| 99ER热精品视频| 久久这里有精品99| 五月久久婷婷丁香| 国外亚洲成AV人片在线观看| 婷婷丁香激情五月天色色| 91精品啪| 白人荫道BBWBBB大荫道| 碰97久久| 亚洲狠狠操| 婷婷丁香五月天熟女丝袜| 播五月丁香六月| 婷婷涩五月| 青青草视频免费观看| 日韩AAAAAAAAAAA片| 丁香五月激情综合| 成人短视频免费| 婷婷五月天久久久| 天天日,天天插| 国产精品社区| se婷97| 俺去也五月天婷婷| 婷婷丁香五月亚洲| 综合丁香婷婷五月天| 就爱日五月天| 伊人婷婷五月天| 色色色热热热| 日韩限制级大尺度黑料泄密大尺度视频一区二区在线观看 | 97色图片中文字幕视频在线观看| 99热在线播放| 久草天堂| oVV4WIB3vFi8D| 97在线刺激| 99这里有精品视频| 97在线刺激| www.激情五月天com| 91久久| 久操乱| 深爱五月天| 久草热视频在线观看| 日本五月婷婷久久久六月丁香| 久久日韩婷婷五月| 69久久久| 激情五月天.色网| 四色99久久| 日本爆乳片手机在线播放| 日韩精品成人在线| 日韩xx在线| 超碰在线免费观看日韩| 五月婷在线| 日韩九区| 成人在线精品| 婷婷五月天在婷| 永久的网站AAAA | 久久久久久婷| 九九色婷| 亚洲黄网AV| 日本色色色| 精品久久99码| 丁香婷婷综合激情五月色| 六月婷婷视频| 亚洲一色色色色色色色色| 天天操无码| 射久久丁香五月| H亚洲| 日本久久天堂| 91啪啪视频| 久久98| 天天日天天爽| 亚洲成人网在线观看| 丁香五月欧美午夜视频| 五月婷天堂视频| 99综合视频| 99re在线视频精品,这里只有精品18,| 五月婷婷丁香日韩在线| 激情五月天色色网| 99久久大片| 国产亚洲色婷婷久久99精品91| 五夜婷婷| 最新国产AV| 久久综合激情| 婷婷五月伦理网站| 色色狼人综合| 开心五月六月婷婷| 天天做好综合色| 五月激情综| 六月婷婷视频| 狠狠搞狠狠操| 五月天婷久久| 97碰成超视频免费视频| 婷婷伊人| 久久精品视频9| 婷婷五月在线播放| 色狠狠五月天| 操逼视频一区| 综合精品99| 国外亚洲成AV人片在线观看| 九九AV在线| 1010日日无码| 丁香伊人激情| 思思久久99热| 男女99免费视频| 秋霞少妇毛片| 潮汕成人AV片在线| 久久久91精品| 四川女人毛多水多A片| 狠狠操狠狠爱| 五月综合丁香婷婷| 操骚货在线| 四季8848精品成人免费网站| avh片在线观看| 色综合天堂| 激情亚洲色图片丁香综合| 天天射射夜| 婷婷 丁香 精品| 噼里啪啦在线观看免费完整版视频| 67久久| 久久婷婷婷| 丁香六月开心| 婷婷丁香五月91| 综合超碰熟| 精品国婬伦V无码久久久| 99国产在线精品视频| 99热这里只有精品8| XX色综合| 激情五月婷婷综合| 五月丁香大香蕉| 亚洲不卡| 九九免费视频| 五月丁香综合色婷婷| 五月婷婷偷拍| 亚洲综合色色| 色色色色热| 99热这里有精品| 狠狠综合| 五月天婷婷色| 亚洲12p| 久er免费视频| 丁香五月天网友自拍啪啪啪视频| 色一情一乱一伦一区二区三区| 99热最新精品| 草综合14| 99热日本精品| 性生活视频98791| 婷婷丁香六月天| 五月丁香无码| 综合久久高清| 久久综合久色欧美综合狠狠| 色综合久| 99丁香五月| 婷婷六久久| 日韩伊人大香蕉| 色婷婷久久综| 狠狠色噜噜狠狠色噜噜噜999| 丁香午月AV中文字幕| 婷婷五月天视| 亚洲噜色| 亚洲综合在线视频| 五月丁香六月婷婷成人电影| 99热这里只有精品2| www.狠狠| 婷婷五月天丁香久久| 激情国产综合| 久久久人妻不卡| 精品婷婷五月天| 婷婷激情丁五月| 久久精品视频在这里有| 色婷精品91| 色综合色| 色五月婷婷色五月婷婷色五月婷婷| 婷婷丁香成人色综合| 五月婷婷婷自由综合| 欧美三级巜人妻互换| 日本婷婷综合精品| 五月婷婷香蕉| 丁香五月天激情免费在线观看AV777 | 日日天天干| 操操操操操操婷婷五月天| 五月丁香综合激情网| 五月天色丁香| 深爱激情五月网| 久久婷婷五月丁香蜜桃网| 99久操| 亚洲人人96@| Www.狠狠| 久热免费视频| 国产精品美女| 色婷婷在线综合色播网| 天天狠狠六月婷丁香影院| 婷婷深爱五月天| 日韩成人无码片| 99热综合在线| 四月婷婷五月丁香| 亚洲亚洲人成综合网络| 黄色精品五月婷婷| 丁香五月亚洲天堂| 九九色热| 99亚洲视频| 无码激情精品色婷婷久久久久| 久久天堂婷婷五月| 亚洲激情亚洲激情 | 激情综合色| 2015在线中文字幕| www.国产亚洲69ty.久久久久久久久久久久| 丁香美女主播视频在线观看| 久久久久久久人妻| 久久se 综合网| 国产91视频| 热思思| 99色视频| 婷婷九月激情| 丁香六月欧美| 成人AV综合在线| 五月婷婷激情综合| 桃色激情婷婷伊人网| 91精品国产色猫| 五月天激情久久| 色久五月天| 狠狠综合| 激情五月天99色| 九九色热| 久久婷婷网| www.五月丁香av| 天天色丁香| 久久人人添人人爽添人人片αV| www.色婷婷.com| 欧美叉叉叉BBB网站| 久久久久久欧美精品se一二三四| 亚洲熟妇无码乱子AV电影| 超碰操日| 玖玖九九99| 婷婷综合激情| 26uuu视频欧美| 熟女激情网| 五月丁香激情综合啪啪| 几激情五月婷婷色五月色天堂| 久久综合五月| 五月丁香六月婷婷久久肏| www.亭亭五月天| 色色色com| 26uu| 高清资源站日A美A欧亚…| 97视频.干com| 婷婷丁香亚洲色综合91| www.com任你艹| 婷婷午夜天| 美女视频图片久久91| 丁香涩涩五月天| 国产精品a无线| 人人爱干人人爱草| 操一区| 天天插天天插天天日| 五月色亚洲| 五月天亚洲图片婷婷| 狼人久草| 丁香六月 人妻| www,五月天com| 五月婷婷偷拍| 99综合自拍| 日噜噜色| 玖玖九九9999在线观看视频精品| 综合久久狠狠| 丁香六月婷婷激情| 久久网思思| 丁香五月伊人| 丁香成人五月天| 六月激情丁香一道本7777| 这里只有精品1| 国产无人区大片| 六月婷婷av| 亚洲思思热久| 91在线精品一区二区| 国产日批视频| 热日韩欧美| www.天天日| 激情久久肏屄视频| 成人AV在线电影| 逼逼AV| 亲子乱AV-区二区三区| 婷婷久久色| 久久婷婷色综合| 另类激情中文| 午夜无码精品色综合久久| 色婷婷亚洲综合天堂| 99色热| 色婷视频| 99人妻碰碰久久久禁片| 色五婷婷开心缴| 大香蕉久久久久| 9+1视频网址| av在线色五月丁香婷区久| 欧美操综合| 特级西西4444www无码| 人人干人人操人人摸人人做| 五月天久久激情| 99精品在线播放| 四色 爱 婷婷 精品 亚洲 五月天| 一本久久婷婷| 亚洲av免费在线| 六月综和久久| 热久久色| 色情综合网| 五月丁香婷婷激情视频| 久9热在线视频| 成人va视频| 婷婷色基地在线看 | 国产成人综合亚洲| av五月丁香| 91精品国产91久久久久青草| 五月婷婷久久爱| 99A片| 亚洲激情网| 色婷青青| 丁香五月婷婷超碰在线| 色 五月婷婷基地| 久久这里只有精品热在99| 天天插天天插天天插天天插| 丁香六月婷婷操逼网| 国产色网站| 五月丁花色综合网| 久草A片| 丁香五月婷婷免费视频| 99久久www| 丁香婷五月| 大香蕉天堂| 婷久久高清| 久久曰曰| 99热在这里只有精品| 欧美va视频| 99热只有国产在线精品| 亚洲综合成人网| 九九无毛| 2025最新亚洲激情在线| 亚洲婷婷丁香| 二区成人视频| 五月婷婷久久激情 | 色九月婷婷综合| 国产精产国品一二三在观看| 99啪啪视频| 婷婷五月天激情免费在线观看| 婷婷久久五月| 日韩综合天堂| 99久在线精品99re8热| 最近中文字幕2019视频1| 亚洲区视频| 色色色色网站| 大香蕉AV电影在线| 五月丁香综合网色欲| aaa久久| 极品五月天| 五月天激情婷婷五月天久久| 激情六月婷婷| 久久久www| 五月婷婷综合视频| 黄色AAAAAAA| 五月天婷婷开心| 色噜噜狠狠色综无码久久合欧美| 五月婷婷啪啪啪| 婷婷五月天国产在线播放| 日本综合99| 天天插轮理| 婷色五月天| 日日干五月天婷婷| www.婷婷六月天| 人人妻久久妻| 1024成人免费看| 五月婷婷婷婷婷婷艺术| 丁香五月婷婷啪啪| 成人五月天综合网| 九九香蕉网| 97视频.干com| 超碰色综合| 日韩AV在线免费观看| 亚洲婷婷欧美婷婷| 色色色色色综合| 天天插天天插天天插天天插| www.九九婷婷| 真实亲子乱子伦高清在线观看| 丁香婷婷影院| 伊人啪啪网| 国产黄色av| 亚洲九九视频| 色情五月婷| 97色热| 91干| 久久激情综合| 婷婷五月丁香在线观看| 日韩艹比| 婷婷五月激情视频| 色噜久| 噜噜在线| 97婷婷狠狠久久综合9色| 少妇激情五月天| 国产精品丝| 婷婷五月天综合网| 伊人婷婷综合| 色综合婷婷| 婷婷五月天99| 青青久久91| 婷婷五月天天爽| www狠狠| 国产精品99久久久久久久女警| 97久久香草精品视频| 久久综合26p| 五月丁香综合在线| 丁香婷婷基地| 免费看欧美成人A片无码| 五月婷婷啪啪网| 久久99三级在线视频| 色五月婷婷av| 九九热在线视频| 色综合久久天天综合网 | 黄久久久| 久久丁香五月天| 99久久综合网| www.久久爱.c n| 亚洲色夜| 精品视频99看在线视频| 偷拍99在线视频观看| 婷婷色啪| 婷婷天天插天天爱| 婷婷WWW久久| 成人网站在线观看视频| 九九久久99| 9精品视频在线| 五月婷在线| 日婷婷久久开心| 丁香综合婷婷开心激情网| 国产AV一区二区三区日韩| 天天做夜夜爽| 色婷婷五月丁香在线观看| 日本色色影院| 99精品无码| 日本欧美成人片AAAA| 久热这里只有精品在线观看 | 深爱五月网| 亚洲人妻av| 丁香婷婷激情四射五月| 天天综合在线网| 国产玖玖资源| 电影《战争与艾拉》免费观看| av一区二区电影免费在线观看| 欧洲色色| 婷婷六月丁| 日韩淑女人妻luan伦激情精品一区二| 五月婷婷视频ab| 欧美色色色| 日本久久超碰| 色婷婷啪啪| www.99riav99| 最新高清无码专区| 91九色精品熟女内射| 婷婷色基地| 五月天婷婷激情小说| 日本一级特黄大片AAAAA级| 一本色综合色| 丁香五月综合| 九九自拍网| 99热99热在线| 人妻尝试久久久久久久久久久久| 99热碰碰热| 99精品偷拍视频| 亚洲激情四射色| 播播网色播播| www.婷婷五月| 九九大香蕉黄色影院| 夜夜夜叫天天天做| 99热这里只有在线播放| 久综合网| 五月丁香激情四射综合| 伊人玖玖综合| 无码一区二区三区四区五区91c| 大地9中文在线观看免费高清| 五月天涩涩| 婷婷激情五月天小说| 99热在线99| 99re思思热在线视频| 婷婷综合一二三| 在线91日韩| 九九综合九色欧美狠狠| 丁香五月婷婷av影院| 99综合网| 色爱综合网| 午夜丁香| 97天堂| 亚洲亚洲人成综合网络| 大香蕉伊人久久| 99爱在线视频| 99精品综合视频| 玖玖热视频| 99久久99久久综合| 婷婷综合网站| 人妻无码精品一区| 天天插综合| 大香蕉520| 天天综合情| 99色在线视频观看| 玖玖在线视频福利| 丁香亭亭久久| 色六月丁香婷婷狠狠干| 色情五月丁香婷婷网| 91尤物九色在线| 亚洲网视屏| a色色色色色| 99er6| 天天日天天操天天干| 五月丁香激情六月| www激情网| 国产色五月婷婷| 自拍盗摄 另类| 久久久这里有精品| 97在线/亚洲| 五月天激情小说| 色婷婷成人做爰A片免费看网站| 搡BBBB搡BBB搡五十| 亚洲成人综合网在线免费观看| 久久丁香五月| a色色色色色| 五月婷婷在线观看| 99爽视频| 亚洲日韩乱码一区二区三区四区| 琪琪狠狠干| 9久久精品| 六月五月婷婷| 色婷婷97| 久久精品熟女亚洲AV麻豆| 啪啪操超碰| 99热精在线九九久久保| 亚洲视色| 久久xx| 色婷亚洲| 日韩抽插操逼| 天天干天天拍| 欧美成人猛片AAAAAAA| 五月天丁香婷婷社区| 狠狠色丁香久久久婷| 天天操夜夜爱| 色爱亚洲| 一级无码作爱片| 日本的α片xxxwww| 久久综合影院| 热热色色五月天婷婷| 亚洲网视屏| 俺也去在线视频| 成人在线99| 日本3级片一区2区| 久热这里精品免费| 中文字幕永久免费| 免费看片在线观看| 婷色成人| 中文字幕av在线播放| 日本黄色三级片内射| 久久综合五月天| 操逼棍操逼| 亚洲AV免费在线| 中美月韩免费A片| 国产精品婷婷午夜在线观看| 丁香九月激情| 成人在线网址| 成人va在线播放| 亚洲深喉AV| 婷婷色五月激情| 六月色婷婷综合影视| 久久婷婷欧美| 深爱五月婷婷| 久久大香蕉| 婷婷久久免费| 久碰久| 99热这里有精品24| www.婷婷| 俺来也综合网精品一区| 91视频精品99| 六月婷婷综合久久| 五月天婷婷在线播放| 天天插操| 99久久成人| 被强行糟蹋的女人A片| 色婷婷五月开心六月综合| 午夜九九九九九九九九九九九九九| 超碰A V在线| 99热这里只有精品 搜| 亚洲精品久久久无码| 五月婷六月综合在线观看| 激情AV| 97热视频| 操一区| 性爱综合网| 激情五月婷婷网| 任你艹| 99热国产免费| 久久五月天精品视频| 亚洲精品亚洲人成人网| 丁香六月AV| 九九热最新| 狠狠五月丁香色婷| 久久在线视频免费观看| 五月丁香啪啪激情| 少妇人妻人伦A片| 婷婷中文字幕版| 射婷婷中文字幕| 激情婷婷五月基地| 9色免费网| 五月天成人综合| 开心五月婷婷婷美女| 成人五月天丁香婷| 五月天综合网| 久久精品国产一区二区三区四区 | 精品九九网| 丁香五月婷婷五月天| 激情综合在线观看| 色久天| 亚洲 精品 综合 精品| 欧美内射AAAAAAXXXXX| 在线A色| 涩玖玖免费视频| 五月婷婷深深爱| 丁香六月激情综合| 一起草AV| 天天夜夜操| 人人操人人爰人人一天天碰夜夜拍夜夜爽-中国A级毛片天天看天天谢… | 夜夜爽日日躁| 色婷婷丁香AV综合| 色五月婷婷操逼| 九九亚洲视频| 欧美激情综合五月色丁香| 成年人看Va免费视频| av在线中文| 超碰av在线| 丁香五月五月婷婷五月天激情四射| 婷婷久久在线| 婷婷色五月天在线观看| 色婷婷色五月丁香| 综合九九久久| 久久婷婷五月天| 99色热视频| 日亚二欧美| 色色亚洲视频| 99国产小视频| 91干| 超碰操日| 99精品自拍| 九九色99| 99久久精品色老| 最近中文字幕2019视频1| 亚洲精品大片| 涩涩涩,com| 人人超碰99| 六月丁香五月婷婷| 丁香五月综合AV在线| 亚洲区,视频区,视频区免费| 五月婷久久久久综合| 嫩草视频在线观看| 久热视频这里只有精品68| 色色五月天网站| 婷婷91视频| 亚洲综合婷婷| 五月丁香激情婷婷| 五月丁香A片| 天天操精品| 国产欧美日韩综合精品一区二区| 婷婷五月天亚洲五码| 婷婷五月丁香在线观看| 五月天伊人综合| 在线视频区| 97色色综合| 色五婷婷在线视频| 丁香花五月天| 色色五月天婷婷| 久久机热这里只有精品| 亚洲婷婷五月天在线激情综合网| 中文字幕在线人妻| 国产午夜精品一区二区三区四区| 99精品在线观看视频| 99九九精品视频| 丁香五月自拍| A1片久久久| 真实熟女-91九色| 欧美槡BBBB槡BBB少妇| 婷婷伊人久久| 婷婷九月丁香| 六月丁香五月激情婷婷| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 在线不卡的视频| 亚洲情综合五月天| 色五月 五月婷婷| 丁香婷婷五月色成人网站| 九月丁香五月婷婷| 五月综亚洲| 综合97五月| 五月丁香好婷婷A片网| 成人网站高清无码| 五月综合激情啪啪啪啪啪| 9色在线| 日本五月婷婷| 激情啪啪五月| 久草热在线视频| 看国产探花操逼三级片| 久久狠色噜噜狠狠狠狠97| 综合狠狠伊人| 色色五月丁香婷婷| 99亚洲视频| 久久综合色情网站| 人人干人人操外国| 亚洲天堂碰碰婷婷| 亚洲成人精品三区| 丁香五月激情五月| 久久婷五月影院| 2015在线中文字幕| 99热亚洲只有色| 丁香五月天AV在线| 99久久婷婷国产综合精品| 影音先锋91在线资源站| 夜夜操加勒比| 九九99九九精品免费| 免费无码毛片一区二区A片| 蜜臀AV在线观看| 四川BBB搡BBB爽爽视频| 成人免费120分钟啪啪| 激情综合网婷婷久久| 2020久久婷婷五月| 丁香久色| 综合色色婷婷| 色婷视频| 五月丁香中文| 五月99久久| 色九网| 丁香五月六月综合激情| av大香蕉| 乱精品一区字幕二区| 国产在线网| 婷婷五月激情综合网| 97人妻人人| 午夜成人综合| www.99色| 情欲综合网| 五月婷丁香亚洲| 激情五月婷婷色播网| www,天天干| 婷婷五月天综合久久| 激情五月丁香五月| a在线观看| 伊人婷婷大香蕉在线| 婷婷五月天福利| 五月丁香在线观看| 五月婷中文字幕| 激情五月丁香五月| 欧美69久成人做爰视频| 97超碰99热99| 狼人婷婷久久| 激情综合青草| 视色综合| 超碰在线观看9| 五月婷婷开心网| 五月丁香综合精品欧美| 在线观看亚洲AV| 婷婷综合| 五月天婷婷五月| www.五月丁香| 久久婷婷六月综合| 热无码A∨| 可以直接看的AV网站| 丁香五月成人婷婷| 亚洲va成人va成人va在线观看| 91在线操逼视频| 精品人妻在线| 五月天激情网图片 - 百度| 天天做天天摸| 大香蕉av在线| 亚洲日本三级片| 五月色婷| 99免费视频网| 五月香婷婷| 五月 婷 久| 色综合网上班开心婷婷久久| 99热只有这里才是精品| 色丁香五月婷婷| 黄色激情网站在线观看| 九九综合九九| 婷婷五月天欧美图片在线播放电驴| 9热视频在线观看| 久久人人做人人妻人人玩精品va| 99九九在线视频| 99视频在线观看欧| 婷婷精品免费久久| 亚洲精品第一国产综合亚AV| 亚洲激情av| 97色色综合| www.狠狠| 97视频.干com| 五月丁香婷婷三级| 激情六月婷婷| 伊人综合色干| 五月婷婷欲色| 天天爽夜夜操| 丁香婷婷午夜| 亚洲精| 九九無妻| 色青五月天| 26UUU精品一区二区c〇m| 日本一级黄色电影| 欧美一线视频| 婷婷中文字幕版| 色色亚洲视频| 大香蕉中文| 5月丁香六月婷婷| 色色色热| 中文字幕av在线| 天天爽天天干| 97综合视频在线| 五月激情婷婷六月丁香| 色五月六月| 九九人人自拍| 情趣视频66| 91干网站| www,婷婷五月天777me,com| 天天干天天操天天爽| 五月天色色婷婷| 日韩色色视频| 97久久精品视频| 丁香5月啪啪| 日产精品久久久久久久蜜臀| 开心婷婷五月天综合| 99激情网| 五月丁香婷婷综合视频| 热久久99热欧美国产亚洲| 99视频综合| 深爱五月亚洲| 欧美成人AAA片一区国产精品 | 79色色| 亚洲一区二区色图-亚洲精品国产精品乱码-成人AV | 伊人碰碰碰| 五月丁香婷婷久久| 99碰网站| 五月婷婷色综图片| 99玖玖在线视频| 性综合网| 婷婷九月在线| 久久久噜噜噜久久人妻| 婷婷五月a| 久久99网| 99人人精品| 一起草无码| 日韩综合天堂| 亚洲超碰在线| 婷婷开心深爱五月天| 日本一级一级一级一级| 南京搡BBBB搡BBBB| 日韩少妇内射免费播放|