阿里雲搭建大資料平臺(3):安裝JDK和Hadoop偽分佈環境
一、安裝jdk
1.解除安裝Linux自帶的JDK
rpm -qa|grep jdk #查詢原始JDK
yum -y remove <舊JDK>
2.解壓縮
tar -zxvf /opt/softwares/jdk-8u151-linux-x64.tar.gz -C /opt/modules/
3.將Java新增至環境變數
vi /etc/profile
新增
export JAVA_HOME=/opt/modules/jdk1.8.0_151
export PATH=$PATH:$JAVA_HOME/bin
4.重新整理配置
source /etc/profile
5.檢測
jps
二、環境配置準備
1.關閉防火牆CentOS7.4
(1)關閉:
systemctl stop firewalld
(啟動:systemctl start firewalld)
(2)開機禁用 :
systemctl disable firewalld
(開機啟用 : systemctl enable firewalld)
(3)檢視狀態:
systemctl status firewalld
結果:
● firewalld.service
Loaded: masked (/dev/null; bad)
Active: inactive (dead)
2.修改hostname
(1)臨時修改hostname
hostname hadoop
(2)永久修改hostname
修改配置檔案 /etc/sysconfig/network。
NETWORKING=yes #使用網路
HOSTNAME=hadoop #設定主機名
(3)立即生效主機名
hostnamectl set-hostname hadoop
3.修改對映關係
vim /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 172.19.199.187 hadoop
注意:172.19.199.187是私網ip!
4.建立使用者hadoop
(1)建立使用者
adduser hadoop
(2)修改密碼
passwd hadoop
(3)給hadoop使用者root許可權
vi /etc/sudoers
新增一行
hadoop ALL=(root) NOPASSWD:ALL
5.設定ssh
(1)生成金鑰
ssh-keygen -t rsa -P ""
(2)將金鑰寫入ssh中,這樣在本地啟動時,就可以避免輸入密碼
root使用者:
cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
hadoop使用者:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
三、Hadoop偽分散式環境搭建
1、解壓Hadoop到指定目錄下
tar -zxvf /opt/softwares/hadoop-2.6.0-cdh5.15.0.tar.gz -C /opt/modules/
2、修改檔案許可權
sudo chown -R hadoop:hadoop ./hadoop-2.6.0-cdh5.15.0/
3、清理Hadoop的目錄,將hadoop-2.6.0-cdh5.15.0.tar.gz/share/doc目錄刪除,節省磁碟空間,通過這個命令檢視df -h
rm -rf doc
4、修改三個.sh檔案
修改etc/hadoop/hadoop-env.sh檔案
修改etc/hadoop/mapred-env.sh檔案
修改etc/hadoop/yarn-env.sh檔案
指定Java安裝路徑
export JAVA_HOME=/opt/modules/jdk1.8.0_151
5、修改hadoop/etc/hadoop/core-site.xml檔案
<property>
<name>fs.defaultFS</name>
<value>hdfs://172.19.199.187:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/modules/hadoop-2.6.0-cdh5.15.0/data/tmp</value>
</property>
備註:172.19.199.187是私有ip!
6、重新自定義系統生成的檔案路徑,保證資料檔案安全性
(1)建立/opt/modules/hadoop-2.6.0-cdh5.15.0/data/tmp目錄
(2)修改許可權
sudo chmod -R 777 /opt/modules/hadoop-2.6.0-cdh5.15.0/
7、修改etc/hadoop/hdfs-site.xml檔案
指定HDFS檔案儲存的副本數個數,預設是3個,這裡是單臺機器就設定為1,這個數字要小於datanode的節點數
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
8、修改etc/hadoop/slaves檔案
指定從節點的機器位置,新增主機名即可,注意私網:172.19.199.187
172.19.199.187
9、格式化namenode
sudo bin/hdfs namenode -format
10、啟動命令
sudo sbin/hadoop-daemon.sh start namenode
sbin/hadoop-daemon.sh start datanode
除錯日誌資訊:
namenode
tail -100 /opt/modules/hadoop-2.6.0-cdh5.15.0/logs/hadoop-hadoop-namenode-hadoop.log
datanode
tail -100 /opt/modules/hadoop-2.6.0-cdh5.15.0/logs/hadoop-hadoop-datanode-hadoop.log
11、檢視HDFS外部UI介面(阿里雲)
(1)開啟伺服器外網訪問埠
網路和安全-》安全組-》配置規則
(2)新增安全組規則-》新增埠50070
(3)訪問web埠
http://公網ip:50070/explorer.html#/
12、測試HDFS環境
建立資料夾,HDFS中有使用者主目錄的概念,和Linux一樣
bin/hdfs dfs -mkdir -p /hadoop/test
bin/hdfs dfs -mkdir -p hadoop/test上傳到hdfs的/user下面的目錄下
13、檢視檔案
bin/hdfs dfs -ls /
結果:
[[email protected] hadoop-2.6.0-cdh5.15.0]$ bin/hdfs dfs -ls /
Found 2 items
drwxr-xr-x - hadoop supergroup 0 2018-10-30 07:46 /hadoop
drwxr-xr-x - hadoop supergroup 0 2018-10-30 07:50 /user
14、上傳檔案到HDFS
bin/hdfs dfs -put etc/hadoop/core-site.xml hadoop/
15、讀取HDFS的檔案
bin/hdfs dfs -text hadoop/core-site.xml
16、下載檔案到本地(指定下載到哪裡,同時可以重新命名成get-site.xml)
bin/hdfs dfs -get hadoop/core-site.xml /home/hadoop/get-site.xml
17、刪除hdfs上檔案
bin/hdfs dfs -rm -R /hadoop