溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Hadoop之遠程debug調(diào)試的示例分析

發(fā)布時間:2021-09-03 09:31:43 來源:億速云 閱讀:141 作者:小新 欄目:開發(fā)技術

小編給大家分享一下Hadoop之遠程debug調(diào)試的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

1、 hadoop遠程debug

hadoop啟動服務的時候最終都是通過java命令來啟動的,其本質(zhì)是一個java程序。在研究源碼的時候debug是一種很重要的工具,但是hadoop是編譯好了的代碼,直接在liunx中運行的,無法象普通的程序一樣可以直接在eclipse之類的工具中直接debug運行。
對于上述情況java提供了一種遠程debug的方式。

這種方式需要在java程序啟動的時候添加以下參數(shù):

-agentlib:jdwp=transport=dt_socket,server=y,address=6603,suspend=y

其中transport是指定雙方的數(shù)據(jù)傳輸方式,server表示是否監(jiān)聽debuger的調(diào)試請求,address是監(jiān)聽端口,suspend是表示是否等待啟動。

所以為了能遠程debug hadoop,需要修改hadoop的啟動腳本。

推薦修改bin目錄下的hdfs文件進行修改

修改方式如下圖:

Hadoop之遠程debug調(diào)試的示例分析

如上圖所示,被注釋掉的語句是包含遠程調(diào)試的參數(shù),未被注釋的是其正常的啟動參數(shù)。在這里修改還有一個好處是可以針對指定的服務進行遠程debug設置。上圖是針對namenode進行遠程debug設置。若要對其他的服務進行遠程debug,那么只需修改對應節(jié)點的hdfs文件中與該服務名稱對應的參數(shù)便可。
修改完成后,使用sbin目錄下的腳本啟動便可。

啟動成功后,便可以使用eclipse等工具進行遠程調(diào)試。

下面以eclipse為例

首先在eclipse的代碼框中點擊右鍵,在彈出的選項框中選擇debug as,在其彈出的選項框中選擇debug configurations。

打開debug的配置頁面

如下圖:

Hadoop之遠程debug調(diào)試的示例分析

然后雙擊remote java application(或者點擊右鍵,然后選擇new configuration)

界面如下:

Hadoop之遠程debug調(diào)試的示例分析

其中,name可以自定義,host需要寫啟動遠程debug服務器的地址,prot需要寫上述參數(shù)中的端口。若無誤便可點擊下方的debug按鈕,開始debug。

以上是“Hadoop之遠程debug調(diào)試的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI