配置hadoop叢集時,ssh無密碼登陸設定(各個主機的使用者名稱需要一樣)
目標:
在配置hadoop分散式安裝過程中,需要配置ssh的無密碼登入。在組建hadoop叢集的時候,需要多臺實體機進行通訊(傳送或者讀取資料,namenode和datanode之間)就是藉助ssh,在通訊過程中如果需要操作人員頻繁輸入密碼是不切實際的,所以需要ssh的無密碼登入。
環境:
- 主機hadoop0,namenode,centos6.4 作業系統,使用者名稱hadoop
- 從機hadoop1,datanode,centos6.4 作業系統,使用者名稱hadoop
- JDK1.7
- Hadoop 2.2.0
- HBase 0.90.5
配置:
首先請確保防火牆都處於關閉狀態,具體命令是ufs disable。並確保安裝ssh spenssh-server。
在主機hadoop0中執行以下命令:
- cd ~/.ssh (進入使用者目錄下的隱藏檔案.ssh)
- ssh-keygen -t rsa (用rsa生成金鑰)
- cp id_rsa.pub authorized_keys (把公鑰複製一份,並改名為authorized_keys,這步執行完,應該ssh localhost可以無密碼登入本機了,可能第一次要密碼)
- scp authorized_keys[email protected]:/home/hadoop/.ssh (把重新命名後的公鑰通過ssh提供的遠端複製檔案複製到從機qiuchenl1上面)
- chmod 600 authorized_keys
- ssh hadoop1 (可以遠端無密碼登入qiuchenl1這臺機子了,注意是ssh不是sudo ssh。第一次需要密碼,以後不再需要密碼)
注意:
在安裝分散式hadoop過程中,需要將所有機子的使用者名稱改為一樣,如我的例子:hadoop。在linux下,有“主機名”和“使用者名稱”之分。“主機名”相當與機子的IP,是該機子的唯一標識(可以用命令hostname來檢視本機主機名),而一個作業系統可以有多個使用者,每個使用者都有使用者名稱,如我的hadoop(root也是一個使用者,只不過許可權比較大)。
我們如果要訪問其他主機,都是通過對方的ip來訪問,比如ping 192.168.137.101.既然主機名也是標識,為什麼不能ping hadoop1呢。因為當前機子步識別這個主機名,需要修改/etc/profile檔案如下:
下面迴歸正題,ssh遠端登入其他機子,是登入那個機子的某個使用者,所以在上面的第四步 我是把公鑰檔案拷貝到hadoop1主機下的hadoop使用者,所以我只能遠端控制該使用者。再看上面第6步,要登入hadoop1的hadoop使用者,命令應該是ssh hadoop@hadoop1,為什麼是ssh hadoop1就可以呢。因為ssh hadoop1會預設以當前主機的使用者名稱(也就是hadoop0的hadoop)來遠端登入。因為hadoop0和hadoop1兩個機子的使用者名稱都是hadoop,所以可以用ssh hadoop1代替 ssh hadoop@hadoop1.如果hadoop1這臺主機沒有hadoop這個使用者,那麼ssh hadoop1就無法使用。
最後:
既然可以用ssh hadoop@hadoop1代替ssh hadoop1,就沒有必要讓hadoop每臺自己的使用者名稱一樣。這樣想是不對的。因為ssh遠端無密碼登入可以用ssh hadoop@hadoop1。但是hadoop內部是不會這樣智慧處理的。所以在配置hadoop叢集時,要把所有機子的使用者名稱設定一樣。
相關推薦
配置hadoop叢集時,ssh無密碼登陸設定(各個主機的使用者名稱需要一樣)
目標: 在配置hadoop分散式安裝過程中,需要配置ssh的無密碼登入。在組建hadoop叢集的時候,需要多臺實體機進行通訊(傳送或者讀取資料,namenode和datanode之間)就是藉助ssh,在通訊過程中如果需要操作人員頻繁輸入密碼是不切實際的,所以需要ssh的
【完全分散式Hadoop】(三)叢集設定SSH無密碼登陸
之前的文章已經有SSH免密部分,這裡單獨列出來只是為了方便查詢 打通SSH,設定ssh無密碼登陸(所有節點) 組建了三個節點的叢集hadoop000、hadoop001、hadoop002 在所有節點上執行 ssh-keygen -t rsa 一路回車,生成無密碼的金鑰對。 將各個節點的公鑰
2.修改/etc/hosts檔案 /安裝SSH、配置SSH無密碼登陸(全程切換到hadoop使用者下操作)
修改/etc/hosts檔案 sudo gedit /etc/hosts 127.0.0.1 localhost 192.168.222.129 master 下面分別對應三個機器的IP地址,用ifconfig檢視 192.168.222.
hadoop-13-root ssh無密碼登陸
服務 bsp tar == rest zed gin root conf hadoop-13-root ssh無密碼登陸 生產機器禁止ROOT遠程SSH登錄: vi /etc/ssh/sshd_config 把 PermitRootLogin yes 改為 PermitRo
配置ssh無密碼登陸Linux
zed art 名稱 請求 需要 pre use 基於 lin Windows下面的話需要安裝git,或者其他能執行shell命令的軟件 1、首先要先修改SSH的配置文件 vi /etc/ssh/sshd_config#修改配置文件 #如果被#註釋了,就取消#號,改為
叢集中配置多臺計算機之間ssh無密碼登入的一種簡便方法
當我們在配置多臺計算,使之可以相互使用無密碼登入-ssh,之前都是一臺一臺的配置,現在一臺A上新增B,然後在另一臺B上再次新增A,這樣使得authorized_keys中的內容相同,但時並不是完全相同,比如新增順序。如果超過2臺,這種配置就相當複雜了,而且容易出錯。後來,在
淺談遠程登錄時,ssh的加密原理
回車 直接 phrase 允許 輸入密碼 tar continue 兩種 left 登錄方式主要有兩種: 1、基於用戶密碼的登錄方式: 加密原理: 當服務器知道用戶請求登錄時,服務器會把自己的公鑰發給用戶,ssh會將服務器的公鑰存放在客戶端的~/.ssh/
配置hadoop叢集常見問題和概念聯絡
1)防火牆沒關閉、或者沒有啟動yarn(如果namenode和yarn的resourcemanager在同一臺伺服器上,就只需要配置該臺伺服器的ssh,然後把公鑰分發到其他節點,如果namenode和resourcemanager在不同伺服器上,那麼這兩臺伺服器都必須配置ssh,把各自的公鑰
關於Hadoop叢集中使用SSH免密登入的詳細操作!
很多時候,在我們操作不同的虛擬機器時,常常因為一些需要密碼的操作,因此,各虛擬機器之間的免密設定必不可少。那麼這篇我們就來介紹關於虛擬機器之間配置SSH免密操作的詳細流程! 準備條件:兩臺以上的虛擬機器,因為想要給大家介紹關於Hadoop叢集的搭建,所以我這邊準備了三臺虛擬機器,分別為: h
docker 安裝centos7配置hadoop叢集
$ docker pull centos ##檢視下載映象##檢視下載映象 $ doker image ls -a ##啟動容器載入映象,同時進入啟動的容器 $ docker run -it --name centos-1 centos /bin/bash
vmware centOS7.0環境下配置hadoop叢集+spark叢集
從開始玩linux,配置hadoop和spark叢集的過程用了二十多個小時,後面也是進行得越來越順利。 在安裝和配置過程中學習和用到的一些網站和部落格,在此分享一下。 一、vmware centOS7.0 hadoop jdk hadoop scala spark 安裝包百度網盤分享
阿里雲搭建hadoop叢集伺服器,內網、外網訪問問題(詳解。。。)
這個問題花費了我將近兩天的時間,經過多次是錯和嘗試,現在想分享給大家來解決此問題避免大家入坑,以前都是在區域網上搭建的hadoop叢集,並且是區域網訪問的,沒遇見此問題。 因為阿里雲上搭建的hadoop叢集,需要配置對映叢集經過內網訪問,也就是區域網的ip地址。 如果配置為公網IP地址,就會出現叢
Hadoop叢集搭建中ssh免密登入
參考: 大資料系列(3) Hadoop中的ssh無密碼登入配置 解決 Agent admitted failure to sign using the key 問題 with ssh
密碼正確,SSH無法登陸Received disconnect from ***: Too many /Permission denied, please try again.
下午嘗試**把本地windows系統檔案上傳到多個linux伺服器**, 因為windows系統本身不支援ssh協議,所以,要想上面的命令成功執行,必須在windows客戶端安裝ssh for windows的客戶端軟體, 於是在本地win10上安裝ssh客
Ubuntu 搭建hadoop叢集成功,但MobaXterm無法遠端連線叢集各個節點
由於我是在VMware上 使用的ubuntu系統,因此解決這個問題需要先了解一下VMware三種網路工作模式: 我們可以看到有VMnet0(橋接模式)、VMnet1(僅主機模式)、VMnet8(NAT模式)其中: VMnet0表示的是:用於橋接模式下的虛擬交換機;
搭建hadoop叢集時的一些問題
1、在做格式化時,/bin/hdfs namenode -format出錯:ERROR namenode.NameNode: Failed to start namenode.java.lang.IllegalArgumentException: URI has an authority componenta
redis叢集時,出現的幾個異常問題
1、in `call’: ERR Slot 8579 is already busy (Redis::CommandError) 在 /my_soft/Redis安裝包及jar包/redis-3.0.4/src 目錄下 執行redis 叢集安裝命令: [sql] view plain copy pri
配置Hadoop叢集:java.net.NoRouteToHostException: No route to host問題的解決
datanode連線不上namenode,導致datanode無法啟動。[[email protected] bin]# ./hdfs dfsadmin -report report: No
裝完jdk後配置環境變數時,不小心把path裡的內容刪了,怎麼辦?
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\ATI Te
Struts2的web.xml中的url-pattern路徑配置為/*.action時,Tomcat一啟動執行就報錯(嚴重: A child container failed during star)
Struts2中web.xml中的url-pattern路徑配置錯誤導致Tomcat一起動就報錯。 如上圖url-pattern配置為/*.action (錯誤) 修改成: