1. 程式人生 > >hadoop叢集安裝20181016

hadoop叢集安裝20181016

安裝jdk

一、通過ppa源下載:

1.新增ppa元,

sudo add-apt-repository ppa:webupd8team/java

#等待一會兒

sudo apt-get update

2.安裝oracle-java-installer

sudo apt-get install oracle-java8-installer

或者免除點選同意條款安裝方式

echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections

 

二、設定jdk路徑:通過ppa源安裝好像不需要設定

jdk預設位置在/usr/lib/jvm/java-8-oracle

在/etc/profile檔案末尾追加下列程式碼:

export JAVA_HOME=/usr/lib/jvm/java-8-oracle
export JRE_HOME=$JAVA_HOME/jre  
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib :$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH

三、測試

java -version

javac -version

 

增加hadoop使用者

 

sudo adduser hadoop

 

安裝hadoop

 

1.下載hadoop3.1.1到/home/hadoop路徑下

 

2.解壓 tar -zxvf hadoop-3.1.1.tar.gz

將會解壓到:當前路徑下/home/hadoop/hadoop-3.1.1

安裝ssh免密登入

生成金鑰並配置SSH無密碼登入本機,輸入命令:

ssh-keygen -t dsa - P ' ' -f ~/.ssh/id_dsa

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

將檔案拷貝到其他的slave主機相同的資料夾內,輸入命令:

scp: authorized_keys slave1:~.ssh/

檢視是否可以從master主機無密碼登入slave,輸入命令:

ssh slave1

具體流程:

 

生成金鑰並配置SSH無密碼登入本機,輸入命令:

 

ssh-keygen -t dsa - P ' ' -f ~/.ssh/id_dsa

 

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

 

將檔案拷貝到其他的slave主機相同的資料夾內,輸入命令:

 

scp: authorized_keys slave1:~.ssh/

 

檢視是否可以從master主機無密碼登入slave,輸入命令:

ssh slave1

 

在所有主機上分別設定/etc/hosts及/etc/hostname。

hosts這個檔案用於定義主機名與IP地址之間的對應關係。

/etc/hosts:

127.0.0.1localhost

202.202.5.141 master

202.202.5.××× slave1

hosname這個檔案用於定義ubuntu的主機名/

/etc/hostsname:

你的主機名(eg:master,slave等等)

 

配置所有主機的Hadoop檔案:

conf/Hadoop-env.sh:

export JAVA_HOME="安裝java地址"

core-site.xml:

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
<description>HDFS的URI,檔案系統://namenode標識:埠號</description>
</property>
<property>
<name>Hadoop.tmp.dir</name>
<value>/home/hadoop/tmp</value>
<description>hadoop儲存資料快的位置</description>
</property>
</configuration>

hdfs-site.xml:

<configuration>
<property>
<name>dfs.name.dir</name>
<value>/home/hadoop/hdfs/name</value>
<description>namenode上儲存hdfs名字空間元資料</description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hadoop/hdfs/data</value>
<description>datanode上資料塊的物理儲存位置</description>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
<description>副本個數,配置預設是3.應小於datanode機器數量</description>
</property>
</configuration>

mapred-site.xml:

<configuration>
<property>
<name>mapred.job.tracker</name>
<value>master:9001</value>
<description></description>
</property>
</configuration>