提示:最小安裝便可java
sudo useradd -m hadoop -s /bin/bash node
說明:-m表示自動建立用戶目錄(/home/hadoop),hadoop是用戶名,-s表示使用/bin/bash做爲shelllinux
sudo passwd hadoopweb
說明:輸入兩次新密碼shell
sudo adduser hadoop sudo數據庫
說明:安裝好了,桌面上會出現光盤圖標VBox_GAs_5.2.18和一個虛擬盤sf_VirtualBoxShareapache
./VBoxLinuxAddtion.run
(1)建立掛載的目標文件夾vim
mkdir ~/sharecentos
(2)掛載bash
格式:mount -t vboxsf 共享名 本地目錄
mount -t vboxsf VirtualBoxShare ~/share
說明:VirtualBox是共享文件夾的共享名,share目錄須要事先在家目錄(~,即/home/hadoop) 下建立
「設備」->「共享粘貼板」->「雙向「
說明:這樣在真機和虛擬機之間能夠任意的複製和粘貼。
sudo apt-get update
說明:apt-get是用來安裝軟件的工具
apt-get install openssh-server
說明: ssh是機器之間遠程登陸的服務
apt-get install vim
說明:vim是Linux下經常使用的文本編輯器,Ubuntu也有自帶的文本編輯器gedit
ufw disable
ufw status //查看防火牆狀態
cd ~/.ssh
ssh-keygen -t rsa
說明:一路回車,在~/.ssh目錄會生成一個兩個文件,id_rsa和id_rsa.pub
ssh-copy-id localhost
說明:也可cat ./id_rsa.pub >> ./authorized_keys,這樣~/.ssh目錄又會多一個文件authorized_keys
ssh localhost
說明:看是否須要輸入密碼
exit
mkdir ~/app
說明:後面的jdk、hadoop等都安裝在此
tar -zxvf ~/share/jdk-8u181-linux-x64.tar.gz -C ~/app //解壓
mv ~/app/jdk1.8.0_181 ~/app/jdk //更名
(1)編輯配置文件.bashrc
vim ~/.bashrc
export JAVA_HOME=/home/hadoop/app/jdk
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
(2) 編譯配置文件
source ~/.bashrc
(3)測試jdk
java -version
tar -zxvf ~/share/hadoop-2.7.3.tar.gz -C ~/app //解壓
mv ~/app/hadoop-2.7.3 ~/app/hadoop //更名
(1)配置環境變量
vim ~/.bashrc,添加或修改如下語句:
export HADOOP_HOME=/app/hadoop //添加
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin //修改
source ~/.bashrc //編譯生效
(2)配置hadoop-env.sh
vim ~/app/hadoop/etc/hadoop/hadoop-env.sh
找到export JAVA_HOME=${JAVA_HOME}這一行,將其修改成:
export JAVA_HOME=/home/hadoop/app/jdk
(3)配置core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/app/hadoop/tmp</value> <!--該目錄須要手動建立 -->
</property>
</configuration>
(4)配置hdfs-site.xml
<configuration>
<property>
<!--配置塊的副本數 -->
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
(5)配置mapred-site.xml
說明:需將mapred-site.xml.template複製成mapred-site.xml,並配置內容以下:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
(6)配置yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
hadoop namenode -format
說明:
首次運行須格式化,之後運行就不須要這一步。
格式化後會在core-site.xml中hadoop.tmp.dir所指定的目錄中生成name文件夾。
cd ~/app/hadoop/sbin
./start-all.sh
jps
14262 NameNode
15976 NodeManager
14385 DataNode
15884 ResourceManager
14601 SecondaryNameNode
16120 Jps
若是出現以上進程,說明hadoop環境搭建成功,分佈式系統啓動完成。
http://localhost:50070 //查看hdfs
http://localhost:8088 //查看mapreduce做業狀況
mkdir ~/tmp
echo 'hello world hello hadoop' > ~/tmp/word1.txt
echo 'hive run on hadoop' > ~/tmp/word2.txt
(1)在hdfs上新建輸入數據的目錄
hdfs dfs -mkdir /input
(2)上傳文件
hdfs dfs -put /tmp/word*.txt /input
hadoop jar ~/app/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /input output
hdfs dfs -cat /user/hadoop/output/part-r-00000
能夠看到每一個單詞出現的次數
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
tar -zxvf ~/share/apache-hive-2.1.0-bin.tar.gz -C ~/app
vim ~/.bashrc
HIVE_HOME=/home/hadoop/app/hive
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin
cd ~/app/hive/conf
cp hive-env.sh.template hive-env.sh
vim hive-env.sh
HADOOP_HOME=/home/hadoop/app/hadoop
cd ~/app/hive/conf
cp hive-site.xml.template hive-site.xml
vim hive-site.xml
<property>
<name>hive.querylog.location</name>
<value>/home/centosm/hive/hivelog</value>
<description>Location of Hive run time structured log file</description>
</property>
<property>
<name>hive.exec.local.scratchdir</name>
<value>/home/hadoop/app/hive/hivelog</value>
<description>Local scratch space for Hive jobs</description>
</property>
<property>
<name>hive.downloaded.resources.dir</name>
<value>/home/hadoop/app/hive/hivelog</value>
<description>Temporary local directory for added resources in the remote file system.</description>
</property>
cd ~/app/hive/bin
schematool -initSchema -dbType derby
$HADOOP_HOME/sbin/start-all.sh //先啓動hadoop
$HIVE_HOME/bin/hive //啓動hive
-------------------------------------------------------------------------------------------------
一、Ubuntu 遭遇 沒法打開鎖文件 /var/lib/dpkg/lock - open (13: 權限不夠)
sudo rm /var/lib/dpkg/lock
sudo rm /var/cache/apt/archive/lock