1. 程式人生 > >執行stop-dfs.sh後無法停止namenodes、datanodes和secondary namenodes

執行stop-dfs.sh後無法停止namenodes、datanodes和secondary namenodes

1. 環境

本文使用Hadoop 2.7.3版本

2. 錯誤資訊

執行stop-dfs.sh後顯示以下資訊:

Stopping namenodes on [master]
master: no namenode to stop
slave1: no datanode to stop
slave2: no datanode to stop
slave3: no datanode to stop
Stopping secondary namenodes [x.x.x.x]
x.x.x.x: no secondarynamenode to stop

3. 原因分析

執行stop-dfs.sh後,會依次執行hadoop-daemons.sh > hadoop-daemon.sh指令碼,然後定位到“no $command to stop”發現指令碼會在$HADOOP_PID_DIR目錄裡面查詢hadoop-$HADOOP_IDENT_STRING-$command.pid檔案,$HADOOP_PID_DIR目錄預設是/tmp目錄,$HADOOP_IDENT_STRING預設是啟動Hadoop的使用者名稱$USER,$command是你要停止的節點型別,例如namenode、datanode或secondarynamenode。所以本例的pid檔名是:hadoop-hdfs-namenode.pid、hadoop-hdfs-secondarynamenode.pid、hadoop-hdfs-datanode.pid。

因為根據linux的tmpwatch,預設在30天內檔案不被訪問的情況下就會被清理,所以導致找不到上述的pid檔案,因此無法停止namenodes、datanodes和secondary namenodes。

4. 解決方法

使用ps命令查詢正在執行的namenodes、datanodes和secondary namenodes的pid,然後在/tmp目錄建立對應的pid檔案,重新執行stop-dfs.sh指令碼,一切正常!或者可以直接執行kill -9命令把對應的pid程序殺掉。下次重新啟動hdfs之前建議修改$HADOOP_PID_DIR目錄,否則的話那些pid檔案還是會被tmpwatch清理。

相關推薦

執行stop-dfs.sh無法停止namenodesdatanodessecondary namenodes

1. 環境 本文使用Hadoop 2.7.3版本 2. 錯誤資訊 執行stop-dfs.sh後顯示以下資訊:Stopping namenodes on [master] master: no namenode to stop slave1: no datanode to s

執行stop-dfs.sh無法停止hadoop叢集【hadoop】

錯誤情況: Stopping namenodes on [master] master: no namenode to stop slave1: no datanode to stop slave2: no datanode to stop slave3: no datanode t

VUE打包釋出無法訪問jscss資源

  在vue開發中,本地測試以及測試環境中都沒有遇到問題,當釋出生產,有虛擬路徑時,便出現js、css均報錯404;   首先在config的index.js檔案中,將assetsPublicPath修改為'./',如下圖;      然而打包釋出後發現放在assets資料夾中的圖片資源又報404,觀察

文件綴名   linux windows 互傳文件 文件綴名

文件後綴名 、linux 和windows 互傳文件 文件後綴名文件後綴名 、linux 和windows 互傳文件文件後綴名在linux 下面 命令 文件 都區分大小寫大寫的 LS 就識別不了 ls 這個命令LANG=en 就顯示成英文linux 和windows 互傳文件首相只能使用遠程工具xs

vue打包如何區分開發測試生產等不同的開發環境

看過vue和webpack api的同學都知道,使用npm run dev可以執行開發環境的程式碼,使用npm run build就是打包生產環境的程式碼。但是如果我還有測試環境和預釋出環境,執行npm run build命令只能在生成環境也就是線上環境執行,那我的測試和預釋

3 Linux 下的 .sh 檔案在 windows 下修改無法執行

問題描述 原因 解決方法 問題描述 在 Windows 下寫的 shell 指令碼,在 Linux 下無法執行,錯誤一般都是:bad interpreter: No such file or directory 或者 unexpected e

Mac 安裝 MySQL 5.7 登入無法執行命令【You must reset your password using ALTER USER statement before executing this statement.】

question 服務 com flow alter ima 5.7 use sql 今天在 Mac 上安裝了 MySQL 5.7 ,啟動服務後,輸入 mysql -u root -p 後,輸入初始密碼程,嘗試執行 show databases; 報了一個 You mu

Response.End方法 在try...catch語句中執行Response.End()如何停止執行catch語句中的內容

  文章:在try...catch語句中執行Response.End()後如何停止執行catch語句中的內容 呼叫Response.End()方法能保證,只輸出End方法之前的內容。 呼叫Context.ApplicationInstance.CompleteRequest();方法,會輸出方

今天遇到一個開心事,在eclipse編寫的程式碼在命令視窗中編譯無法執行,提示 “錯誤: 找不到或無法載入主類”

java中帶package和不帶package的編譯執行方式是不同的。 首先來了解一下package的概念:簡單定義為,package是一個為了方便管理組織java檔案的目錄結構,並防止不同java檔案之間發生命名衝突而存在的一個java特性。不同package中的類的名字可以相同,只是在使用時要帶上pac

laravel框架學習(四)執行建立中介軟體,提示無法找到該中介軟體的解決方法

按照官方提供的文件:http://laravelacademy.org/post/7812.html 1.建立中介軟體:先宣告中介軟體, php artisan make:middleware AdminMiddleware 會自動在app/Http/Middlewar

VS code 進行 flutter 除錯時啟動停止無法除錯的問題

      在編寫flutter時,更新需要按 r 或著 R,這就有點麻煩,當然強大的VS code給我們提供了自動更新的功能,那就是除錯功能。 在VS code的左邊圖示中有一個小蟲子的圖示,點選即可進行除錯,如果我們直接點選除錯的綠色開始按鈕,除錯會啟動幾秒就自動停止

VS code 進行 flutter 調試時啟動停止無法調試的問題

art 彈出 有一個 自己的 添加 彈框 狀態欄 文件夾 按鈕 在編寫flutter時,更新需要按 r 或著 R,這就有點麻煩,當然強大的VS code給我們提供了自動更新的功能,那就是調試功能。 在VS code的左邊圖標中有一個小蟲子的圖標,點擊即可進行調試

解決Linux關閉終端(關閉SSH等)執行的程式或者服務自動停止【後臺執行程式】

 問題描述:當SSH遠端連線到伺服器上,然後執行一個服務 ./catalina.sh start,然後把終端開閉(切斷SSH連線)之後,發現該服務中斷,導致網頁無法訪問。 解決方法:使用nohup命令讓程式在關閉視窗(切換SSH連線)的時候程式還能繼續在後臺執行。

ubuntu重啟無法進入桌面且所有命令無法執行的問題

現象 在登入介面輸入密碼後,桌面出現黑屏終端後又快速回到登入介面,按ctrl+alt+f1進入tty後只能執行cd、pwd命令,其他命令(如ls,sudo)均無法執行,提示資訊是找不到命令(並且我裝的中文系統,在tty的提示資訊還是一堆亂碼,問題解決後果斷改為

MFC生成的exe檔案在別人電腦無法正常執行無法啟動此程式停止工作無法定位程式輸入點

MFC生成的exe檔案在別人電腦無法正常執行,出現問題一個接一個 已在MFC中設定為:release版本設定:靜態庫中使用MFC+MT 這個問題檢視問題詳細資訊的話,是軟體編寫問題,記憶體洩露; 簡單總結下出現的問題和解決方法: 這個問題是我的電腦是64bit

pyinstaller打包exe--requests模組打包無法執行

歡迎加入學習交流QQ群:657341423 python程式中使用到requests,在開發環境中可以正常執行,但用pyinstaller 打包成單個exe檔案後,卻無法執行,提示 requests 中的urllib3依賴的一個six.py模組出現執行錯誤。以

MySQL5.7版本無法啟動服務【啟動自動停止】的解決方法

如果使用的安裝包方式安裝出現這種情況,建議改用ZIP方式安裝     5.7版本在解壓後是沒有data這個資料夾的,不要手動建立一個空的data資料夾,而是進入cmd,輸入mysqld --initi

labview 在事件結構中嵌套了while迴圈,內部while迴圈無法停止的問題的解決

如圖 ,程式執行後發現內部while迴圈內的停止按鈕點選不動,內部迴圈無法結束。 解決方法:完全可以在事件結構裡巢狀while結構,原因在於沒有將事件視窗下面的選項“鎖定前面板直到分支結構事件結束”的對號去掉,所以他在等待你while迴圈的結束,而while迴圈的結束依賴

phpStudy apache無法啟動 apache啟動停止

phpStudy啟動失敗,原因一、是防火牆攔截,二、是80埠已經被別的程式佔用,如IIS,迅雷等;三、是沒有安裝VC9執行庫,php和apache都是VC9編譯。四、虛擬機器配置路徑中有中文五、在檢測埠

linux(ubuntu 14.04 lubuntu14.04)下 搜狗拼音法安裝無法執行的解決方法

症狀 通過.deb檔案安裝之後fcitx執行正常,但是無法切換到 解決方案 首先 im-config 在裡邊選擇fcitx 然後進入fcitx-config-gtk3,如果和我一樣,就會是隻有一個english-us 但是沒有搜狗的輸入法。