你們可能在網上一搜索大數據,巴拉巴拉一大堆的理論性的東西撲面而來,都是這樣過來的,當時一臉懵逼,因此在此就不給你們再介紹理論性的知識了,直接帶你們搭建分佈式的開發環境。html
hadoop的分佈式架構 (一主二從)java
主機名 | ip地址 | namenode | datanode |
---|---|---|---|
master | 192.168.6.133 | 是 | 否 |
slave1 | 192.168.6.131 | 否 | 是 |
slave2 | 192.168.6.132 | 否 | 是 |
須要有一臺centerOS7虛擬機,同時已經搭建好了jdk的環境,若有疑問可移駕 hadoop之旅1-centerOS7: 搭建java環境node
準備好hadoop的開發包linux
[root@localhost mmcc]# tar -zxvf hadoop-2.7.3.tar.gz
....
//重命名目錄名稱(可選)
[root@localhost mmcc]# mv hadoop-2.7.3/ hadoop2.7.3
複製代碼
[root@localhost mmcc]# cd hadoop2.7.3/
[root@localhost hadoop2.7.3]# pwd
/home/mmcc/hadoop2.7.3 //配置環境變量時會用到
複製代碼
/etc/profile
最下面,hadoop之旅1-centerOS7: 搭建java環境章節配置的PATH
,CLASSPATH
上面增長環境變量配置HADOOP_HOME=/home/mmcc/hadoop2.7.3
PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$JAVA_HOME/bin:$PATH:.
複製代碼
[root@localhost jdk1.8]# source /etc/profile
複製代碼
/etc/hadoop/
下的hadoop.env.sh
腳本文件vi /hadoop-2.7.3/etc/hadoop/hadoop.env.sh
export JAVA_HOME=/home/mmcc/jdk1.8 //配置java的環境目錄
複製代碼
/etc/hadoop/
下的core-site.xml
文件。<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value> (master處爲當前主機ip或主機名)
</property>
複製代碼
此處的master後面會教你們apache
[root@localhost mmcc]# hostnamectl set-hostname master/slave1/slave2
複製代碼
[root@localhost mmcc]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.6.133 netmask 255.255.255.0 broadcast 192.168.6.255
inet6 fe80::3d1d:5127:6666:c62d prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:f4:ef:5d txqueuelen 1000 (Ethernet)
RX packets 317168 bytes 315273916 (300.6 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 149675 bytes 14400069 (13.7 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1 (Local Loopback)
RX packets 12826 bytes 3163428 (3.0 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 12826 bytes 3163428 (3.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
複製代碼
若是查詢不到ip地址,須要配置網絡bash
cd /etc/sysconfig/network-scripts/
vi ifcfg-ens33 (個人虛擬機版本,別的版本可能不同)
ONBOOT="yes" 表開啓網絡。
複製代碼
hdfs://master:9000
[root@localhost network-scripts]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.6.133 master
192.168.6.131 slave1
192.168.6.132 slave2
複製代碼
重啓網絡微信
service network restart 重啓網絡
複製代碼
而後你們能夠試着ping master/slave1/slave2
若是ping通說明配置成功網絡
hdfs namenode -format
複製代碼
啓動以前進行格式化,若是沒有error和Exception 表示格式化成功架構
cd /home/mmcc/hadoop2.7.3/etc/hadoop
[root@localhost hadoop]# vi slaves
//增長如下內容
slave1
slave2
複製代碼
[root@localhost mmcc]# systemctl stop firewalld
[root@localhost mmcc]# hadoop-daemon.sh start namenode //主節點master
[root@localhost mmcc]# hadoop-daemon.sh start datanode //從節點slave1,slave2
複製代碼
而後能夠在網頁上輸入主節點的地址master:50070
或ip地址:50070
查看當前的狀態及其節點狀態哦。到此一個分佈式的hadoop環境已經成功啓動。 下一節會教你們如何進行免密登陸,一鍵啓動集羣,及一些簡單的hdfs文件存儲命令, 你們在配置過程當中若是有什麼問題能夠查看log日誌進行問題排查。歡迎加我微信一塊兒學習一塊兒進步哈dom