溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Hadoop的三種安裝模式

發(fā)布時間:2021-08-27 17:38:13 來源:億速云 閱讀:338 作者:chen 欄目:云計算

本篇內(nèi)容主要講解“Hadoop的三種安裝模式”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學(xué)習(xí)“Hadoop的三種安裝模式”吧!

Hadoop三種安裝模式:單機模式,偽分布式,真正分布式


一 單機模式standalone
單機模式是Hadoop的默認(rèn)模式。當(dāng)首次解壓Hadoop的源碼包時,Hadoop無法了解硬件安裝環(huán)境,便保守地選擇了最小配置。在這種默認(rèn)模式下所有3個XML文件均為空。當(dāng)配置文件為空時,Hadoop會完全運行在本地。因為不需要與其他節(jié)點交互,單機模式就不使用HDFS,也不加載任何Hadoop的守護進程。該模式主要用于開發(fā)調(diào)試MapReduce程序的應(yīng)用邏輯。


二 偽分布模式安裝
tar xzvf hadoop-0.20.2.tar.gz
Hadoop的配置文件:
conf/hadoop-env.sh  配置JAVA_HOME
core-site.xml  配置HDFS節(jié)點名稱和地址
hdfs-site.xml  配置HDFS存儲目錄,復(fù)制數(shù)量
mapred-site.xml    配置mapreduce的jobtracker地址


配置ssh,生成密匙,使到ssh可以免密碼連接
(RSA算法,基于因數(shù)不對稱加密:公鑰加密私鑰才能解密,私鑰加密公鑰才能解密)
cd /root
ssh -keygen -t rsa
cd .ssh
cp id_rsa.pub authorized_keys覆蓋公鑰,就能免密碼連接


啟動Hadoop bin/start-all.sh
停止Hadoop bin/stop-all.sh




二 完全分布式模式
1. 配置etc/hosts文件,使主機名解析為IP  或者使用DNS服務(wù)解析主機名
2. 建立hadoop運行用戶: useradd grid>passwd grid
3. 配置ssh密碼連入: 每個節(jié)點用grid登錄,進入主工作目錄,ssh -keygen -t rsa生產(chǎn)公鑰,然后將每個節(jié)點的公鑰復(fù)制到同一個文件中,再將這個包含所有節(jié)點公鑰的文件復(fù)制到每個節(jié)點authorized_keys目錄,這個每個節(jié)點之間彼此可以免密碼連接
4. 下載并解壓hadoop安裝包
5. 配置namenode,修改site文件
6. 配置hadoop-env.sh
7. 配置masters和slaves文件
8. 向各個節(jié)點復(fù)制hadoop
9. 格式化namenode
10.啟動hadoop
11.用jps檢驗各后臺進程是否成功啟動






vim /etc/hosts
vim /etc/sysconfig/network
vim /etc/sysconfig/network-scripts/ifcfg-eth0 
service network restart 


service NetworkManager stop
chkconfig NetworkManager off
service iptables stop
chkconfig iptables off
service ip6tables stop 
chkconfig ip6tables off
vim /etc/sysconfig/selinux enforce-->disabled
setenforce 0
getenforce 


useradd hadoop
passwd hadoop   


secureCRT生產(chǎn)公鑰,將公鑰拷貝到/home/hadoop/.ssh下:
chmod 700 .ssh
ssh-keygen -i -f PubKey_Master_Hadoop.pub >> authorized_key
chmod 600 authorized_keys
vim /etc/ssh/sshd-config 如下:
RSAAuthentication yes # 啟用 RSA 認(rèn)證
PubkeyAuthentication yes # 啟用公鑰私鑰配對認(rèn)證方式
AuthorizedKeysFile .ssh/authorized_keys # 公鑰文件路徑(和上面生成的文件同)
PasswordAuthentication no # 禁止密碼驗證登陸(根據(jù)需要,不過一般啟用了密鑰,就不用密碼了)
service sshd restart
secureCRT使用PublicKey(PubKey_Master_Hadoop.pub)連接測試


Master 使用ssh公鑰連接Slave:
掛載光盤,創(chuàng)建yum源:
vim /etc/fstab
vim /etc/yum.repos.d/rhel-source.repo
yum -y install ssh
yum -y install rsync


Master host:
mkdir .ssh
ssh-keygen –t rsa –P ''
cat id_rsa.pub >> authorized_keys
chmod 700 .ssh
chmod 600 authorized_keys
ssh localhost
scp id_rsa.pub hadoop@192.168.175.12:~/,ssh
ssh 192.168.175.12


Slave host:
mkdir .ssh
cat id_rsa.pub >> authorized_keys
chmod 700 .ssh
chmod 600 authorized_keys
vim /etc/ssh/sshd-config 如上
service sshd restart


安裝java:拷貝到/usr/hava
chmod +x jdk-6u37-linux-x64.bin
vim /etc/profile 添加JAVA_HOME
source /etc profile
=================================
安裝hadoop-1.2.0:拷貝到/usr/hadoop-1.2.0,所以者和組修改為hadoop 
vim /etc/profile: 
export JAVA_HOME=/usr/java/jdk1.6.0_37
export HADOOP_HOME=/usr/hadoop-1.2.0
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile


配置hadoop-env.sh: 目錄:/usr/hadoop/conf
#export HADOOP_ROOT_LOGGER=DEBUG,console
export JAVA_HOME=/usr/java/jdk1.6.0_37
export HADOOP_HOME_WARN_SUPPRESS=1
 
配置core-site.xml文件:
         <property>
                <name>hadoop.tmp.dir</name>
                <value>/usr/hadoop-1.2.0/tmp</value>
                <description>A base for other temporary directories.</description>
        </property>
<!-- file system properties -->
        <property>
                <name>fs.default.name</name>
                <value>hdfs://192.168.175.11:9000</value>
        </property>


配置hdfs-site.xml文件:
         <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>
        <property>                 
                <name>dfs.datanode.max.xcievers</name>   //同時處理文件上限,hbase并發(fā)比較大,至少要4096
                <value>4096</value>
        </property>
        <property>
                <name>dfs.support.append</name>    //如不指定,在使用HDFS存儲的時候,HBase可能會遺失數(shù)據(jù)
                <value>true</value>
        </property>


配置mapred-site.xml文件:
        <property>
                <name>mapred.job.tracker</name>
                <value>http://192.168.175.11:9001</value>
        </property>


配置masters文件:
master.hadoop或者192.168.175.11
配置slave文件:
slave1.hadoop或者192.168.175.12
slave2.hadoop或者192.168.175.13
slave3.hadoop或者192.168.175.14


=================================
安裝hadoop-2.0.5:拷貝到/usr
tar -zxvf hadoop-2.0.5-alpha.tar.gz
mv hadoop-2.0.5-alpha /usr/hadoop
chown -R hadoop:hadoop hadoop
vim /etc/profile:
# set hadoop path
export HADOOP_HOME=/usr/hadoop
export PATH=$PATH:$HADOOP_HOME:$HADOOP_HOME/bin
source /etc/profile


配置hadoop-env.sh: 目錄:/usr/hadoop/etc/hadoop
在末尾添加:export JAVA_HOME=/usr/java/jdk1.6.0_37
配置yarn-env.sh和 .bash_profile:
export HADOOP_PREFIX=/usr/hadoop
export PATH=$PATH:$HADOOP_PREFIX/bin
export PATH=$PATH:$HADOOP_PREFIX/sbin
export HADOOP_MAPRED_HOME=${HADOOP_PREFIX}
export HADOOP_COMMON_HOME=${HADOOP_PREFIX}
export HADOOP_HDFS_HOME=${HADOOP_PREFIX}
export YARN_HOME=${HADOOP_PREFIX}
export HADOOP_CONF_DIR=${HADOOP_FREFIX}/etc/hadoop
export YARN_CONF_DIR=${HADOOP_FREFIX}/etc/hadoop


配置core-site.xml文件:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/tmp</value>        (備注:請先在 /usr/hadoop 目錄下建立 tmp 文件夾)
<description>A base for other temporary directories.</description>
</property>
<!-- file system properties -->
<property>
<name>fs.default.name</name>
<value>hdfs://192.168.175.11:9000</value>
</property>
</configuration>
配置hdfs-site.xml文件:修改Hadoop中HDFS的配置,配置的備份方式默認(rèn)為3。
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>        (備注:replication 是數(shù)據(jù)副本數(shù)量,默認(rèn)為3,salve少于3臺就會報錯)
</property>
        <property>
                <name>dfs.namenode.name.dir</name>
                <value>file:/home/hadoop/dfs/name</value> 
                <final>true</final>
        </property> 
        <property>
                <name>dfs.datanode.data.dir</name>
                <value>file:/home/hadoop/dfs/data</value> 
                <final>true</final>
        </property>
<configuration>
配置mapred-site.xml文件:修改Hadoop中MapReduce的配置文件,配置的是JobTracker的地址和端口。
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>hdfs://192.168.175.11:9001</value>
</property>
<property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
        </property>
        <property>
                <name>mapred.system.dir</name>
                <value>file:/home/hadoop/mapred/system</value>
                <final>true</final>
        </property>
        <property>
                <name>mapred.local.dir</name>
                <value>file:/home/hadoop/mapred/local</value>
                <final>true</final>
        </property>
        <property>
                <name>mapred.job.tracker</name>
                <value>hdfs://192.168.175.11:9001</value>
        </property>
</configuration>
配置yarn-site.xml:
<configuration> 
        <property>
                <name>yarn.resourcemanager.address</name>
                <value>192.168.175.11:8080</value>
        </property>
        <property>
                <name>yarn.resourcemanager.scheduler.address</name>
                <value>192.168.175.11:8081</value>
        </property>
        <property>
                <name>yarn.resourcemanager.resource-tracker.address</name>
                <value>192.168.175.11:8082</value>
        </property>
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce.shuffle</value>
        </property>
        <property>
                <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
                <value>org.apache.hadoop.mapred.ShuffleHandler</value>
        </property> 
</configuration>


配置masters文件:
master.hadoop或者192.168.175.11
配置slave文件:
slave1.hadoop或者192.168.175.12
slave2.hadoop或者192.168.175.13
slave3.hadoop或者192.168.175.14


mkdir -p /usr/hadoop/tmp
mkdir -p /home/hadoop/dfs/data
mkdir -p /home/hadoop/dfs/name
mkdir -p /home/hadoop/mapred/system
mkdir -p /home/hadoop/mapred/local


格式化HDFS文件系統(tǒng):使用hadoop用戶,只需格式一次:hadoop namenode -format
開始守護進程
# hadoop-daemon.sh start namenode
# hadoop-daemon.sh start datanode
可以同時啟動:start-dfs.sh
開始 Yarn 守護進程
# yarn-daemon.sh start resourcemanager
# yarn-daemon.sh start nodemanager
或同時啟動:start-yarn.sh
檢查守護進程是否啟動
# jps

到此,相信大家對“Hadoop的三種安裝模式”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI