虛擬機器時間問題引起的hadoop叢集時間問題
阿新 • • 發佈:2019-01-22
之前沒有關注過虛擬機器的時間問題,但是用了hadoop集群后,發現分析的資料與實際資料不符。才發現虛擬機器用的是newYork 時區的時間,比正常時間慢了12個小時;所以必須修改虛擬機器時間;
然後用了很多修改時間的命令,修改時區等,最後,使用linux 命令 date -R 顯示的是 +08000東八區的時間;
但是,hive中和hadoop中的時間 永遠都是比實際慢12個小時;
最後用了此方法,重新設定虛擬機器時區
>dpkg-reconfigure tzdata >hwclock -w
>hwclock --systohc 選擇自己需要的時區,國內的就選 asia shanghai 然後執行後面兩句,時區設定完成 手動增加環境變數: etc/profile 檔案 增加 export TZ="GMT+8" hadoop 叢集也得重啟。 hive測試時間 select from_unixtime(unix_timestamp(),'yyyy-MM-dd HH:mm:ss'); 檢視結果是不是當前時間 通過 ip:50070/jmx 看 user.timezone 看是否是自己選的時區 通過網hdfs上傳檔案,看看是否顯示的是當前時間 若全部正確。更改成功
>hwclock --systohc 選擇自己需要的時區,國內的就選 asia shanghai 然後執行後面兩句,時區設定完成 手動增加環境變數: etc/profile 檔案 增加 export TZ="GMT+8" hadoop 叢集也得重啟。 hive測試時間 select from_unixtime(unix_timestamp(),'yyyy-MM-dd HH:mm:ss'); 檢視結果是不是當前時間 通過 ip:50070/jmx 看 user.timezone 看是否是自己選的時區 通過網hdfs上傳檔案,看看是否顯示的是當前時間 若全部正確。更改成功