1.創(chuàng)建hadoop用戶
在終端輸入
sudo useradd -m hadoop -s /bin/bash
為hadoop用戶設(shè)置密碼,連續(xù)輸入兩次密碼即可
sudo passwd hadoop
為Hadoop用戶增加管理員權(quán)限,避免以后的麻煩
sudo adduser hadoop sudo
這里我們切換到hadoop用戶,進行下一步操作
2.ssh的安裝以及設(shè)置免密登錄
檢測ssh是否安裝,有sshd說明已經(jīng)啟動
ps -ef |grep ssh
這邊我們還需要安裝ssh server,這邊又yes輸入yes就可以
sudo apt-get install openssh-server
登錄ssh,有yes輸入yes
ssh localhost
緊接著退出登錄,設(shè)置無密碼登錄,使用ssh-keygen生成密匙,并將密匙加入到授權(quán)
exit ? ? ? ? ? ? ? ? ? ? ? ? ??
cd ~/.ssh/ ? ? ? ? ? ? ? ? ? ??
ssh-keygen -t rsa ? ? ? ? ? ? ?# 這里三步回車就好了
cat ./id_rsa.pub > ./authorized_keys ?
這邊進行驗證
ssh localhost
出現(xiàn)這個說明免密登錄設(shè)置成功?
3.java環(huán)境的搭建
因為hadoop是由java編寫的,所以hadoop的安裝與驅(qū)動需要jdk,這邊我們需要下載jdk,并且設(shè)置環(huán)境變量。
首先我們先下載所需的jdk
下載網(wǎng)址Java Downloads | Oracle
?下載上圖畫圈的,下載完成之后,連接虛擬機與xftp,由于需要直到虛擬機的ip地址,我們進入虛擬機輸入指令
ifconfig
?目前沒有下載所需的配置,這邊下載一下,如果沒有則不下載
sudo apt install net-tools
再次查看ip,這邊可知ip是192.168.220.132
?打開xftp新建會話
?這邊最好在hadoop的家目錄下創(chuàng)建一個為downloads的目錄
mkdir downloads
將jdk傳輸?shù)絛ownloads目錄下
?在虛擬機上切換到downloads目錄下
cd downloads
接下來我們進行jdk的解壓和安裝,按著代碼來就好了
mkdir downloads
cd downloads
cd /usr/lib
sudo mkdir jvm #創(chuàng)建存放jdk的文件夾
cd /home/hadoop/downloads
ls #展示jdk名稱
sudo tar -zxvf jdk-18_linux-x64_bin.tar.gz -C /usr/lib/jvm #這邊按照你自己下的版本名
給解壓的jdk改名
cd /usr/lib/jvm
ls
sudo mv jdk-18.0.2.1 java
設(shè)置jdk的環(huán)境變量
vim /etc/profile
如果提示沒有vim,則下載安裝vim
sudo apt install vim
再執(zhí)行上述代碼
這邊還要給 /etc/profile 增加可寫權(quán)限
這邊考慮簡單
sudo chmod a+w /etc/profile
在后面添加
export JAVA_HOME=/usr/lib/jvm/java
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
使變量生效
source /etc/profile
檢查環(huán)境變量是否成功
java -version
?4.安裝hadoop
下載hadoop,下載官網(wǎng)Apache Downloads
?繼續(xù)通過xftp上傳到downloads,這邊不贅述
下面進行解壓安裝
sudo tar -zxvf hadoop-3.3.1.tar.gz -C /usr/local
cd /usr/local/
sudo mv hadoop-3.3.1 hadoop #將文件夾名改為hadoop
檢查是否安裝成功
cd hadoop
bin/hadoop version
5. 偽分布式配置
先給兩個文件增加可寫權(quán)限
sudo chmod a+w etc/hadoop/core-site.xml
sudo chmod a+w etc/hadoop/hdfs-site.xml
為xml中的configuration 標(biāo)簽添加如下內(nèi)容:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
修改配置文件 hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
編輯hadoop-env.sh
在Hadoop安裝目錄下找到sbin文件夾
在里面修改四個文件
對于start-dfs.sh和stop-dfs.sh文件,添加下列參數(shù):
#!/usr/bin/env bash
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
對于start-yarn.sh和stop-yarn.sh文件,添加下列參數(shù):
#!/usr/bin/env bash
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
配置完成后,進行NameNode的格式化
cd /usr/local/hadoop
sudo ./bin/hdfs namenode -format
然后開啟 NameNode 和 DataNode 守護進程。
cd /usr/local/hadoop
sudo ./sbin/start-dfs.sh
輸入命令jps
jps
出現(xiàn)這個說明配置成功
?但是一般來說我是沒成功很多次
顯示如下結(jié)果
Hadoop localhost:?frankxulei@localhost: Permission denied (publickey,password)
這時我們該怎么辦呢?
這說明是權(quán)限不夠或者剛才免密登錄根本沒成功
這時我們選擇切換root用戶,但是這時也沒有設(shè)置免密,所以我們重新設(shè)置一次免密
?
配置SSH
1、建議先刪除一下ssh的目錄,重新配置
rm -r ?~/.ssh |
2、使用如下命令來生存公鑰和私鑰,參數(shù)說明:-t為選擇加密算法,-P為設(shè)置密碼,設(shè)置為""就表明不需要密碼,主要P大寫,輸入命令后,一直回車即可
ssh-keygen -t rsa -P "" |
3、進入到ssh目錄,可以看到兩個文件,id_rsa為私鑰,id_rsa.pub為公鑰,只要將本機內(nèi)的id_rsa.pub放入到有對方機器的authorize_keys文件中,就可以ssh登錄對方的機器
cd ~/.ssh |
4、首先設(shè)置免密登錄本機,使用cat命令將公鑰添加到authorize_keys文件中,注意一個“>”表示覆蓋文件,兩個“>”表示在文件尾部追加,添加以后嘗試免密登錄本機可以,第一次連接需要輸入yes確認(rèn)
cat id_rsa.pub >authorized_keys |
5、接下來是免密登錄對方的機器,首先在對方機器做如上的操作,生成公鑰和私鑰,然后使用scp命令將本機的公鑰追加到對方機器的authorize_keys文件中即可實現(xiàn)免密登錄
scp id_rsa.pub 用戶名@ip地址:文件目錄 這里我們用 scp id_rsa.pub root@localhost文章來源:http://www.zghlxwxcb.cn/news/detail-400444.html |
這樣基本就配置完成了,如果還有問題還請大家一起探討。文章來源地址http://www.zghlxwxcb.cn/news/detail-400444.html
到了這里,關(guān)于虛擬機Ubuntu安裝Hadoop(偽分布式安裝)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!