Hadoop2.6集羣環境搭建

1、前言

首先我們要準備三臺centos機器,這三臺centos機器的ip、hostname分別爲

IP hostname
192.168.1.31 master
192.168.1.32 slave1
192.168.1.33 slave2

相關步驟:

  1. 設置/etc/hosts
  2. 關閉防火牆
  3. 關閉selinux
  4. 配置ssh免密登錄
  5. 安裝jdk
  6. 安裝 hadoop
  7. 配置hadoop
  8. 啓動hadoop
  9. 驗證hadoop是否安裝成功

2、 參考本人的使用vagrant創建多臺centos7虛擬機,並使用Docker Swarm建立主從集羣 這篇文章,使用vagrant創建三臺centos7虛擬機。

Vagrantfile文件內容,如下

Vagrant.configure("1") do |config|
  
  config.vm.define "master" do |vb|
      config.vm.provider "virtualbox" do |v|
      v.memory = 1024
      v.cpus = 1
    end
  vb.vm.host_name = "master"
  vb.vm.network :public_network, ip: "192.168.1.31"
  vb.vm.box = "my-centos7"
  end

  config.vm.define "slave1" do |vb|
      config.vm.provider "virtualbox" do |v|
      v.memory = 1024
      v.cpus = 1
    end
  vb.vm.host_name = "slave1"
  vb.vm.network :public_network, ip: "192.168.1.32"
  vb.vm.box = "my-centos7"
  end

  config.vm.define "slave2" do |vb|
      config.vm.provider "virtualbox" do |v|
      v.memory = 1024
      v.cpus = 1
    end
  vb.vm.host_name = "slave2"
  vb.vm.network :public_network, ip: "192.168.1.33"
  vb.vm.box = "my-centos7"
  end

end

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

3、設置/etc/hosts

# 設置命令
vi /etc/hosts

# 設置內容
192.168.1.31 master
192.168.1.32 slave1
192.168.1.33 slave2

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

4、關閉防火牆

# 查看防火牆狀態
firewall-cmd --state

# 停止firewall
systemctl stop firewalld.service

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

5、關閉selinux

# 修改selinux
vi /etc/selinux/config

# 修改內容
SELINUX=disabled

在這裏插入圖片描述
在這裏插入圖片描述

6、配置ssh免密登錄

# 創建私鑰
ssh-keygen -t rsa  

# 將創建私鑰copy到slave1
ssh-copy-id root@slave1

在這裏插入圖片描述
在slave1、slave2做同樣的操作
在這裏插入圖片描述
在這裏插入圖片描述
設置完成後,在master中ssh slave1、slave2,就不再需要輸入密碼了
在這裏插入圖片描述
slave1中ssh master、slave2以及slave2中ssh master、slave1參考上面的操作。

7、安裝jdk,參考本人另外一篇文章Centos服務器上安裝jdk

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

8、安裝 hadoop

8.1將hadoop-2.6.5.tar.gz安裝包上傳到/usr目錄下,並解壓

在這裏插入圖片描述

8.2 創建三個目錄

# 
mkdir -p  data/hadoop/namenode
mkdir -p  data/hadoop/data
mkdir -p  data/hadoop/tmp

在這裏插入圖片描述
slave1、slave2節點同樣的操作。

9、配製 hadoop

9.1 hadoop需要配製7個文件

  1. core-site.xml
  2. hdfs-site.xml
  3. mapred-site.xml
  4. yarn-site.xml
  5. slaves
  6. masters
  7. hadoop-env.sh

9.2 修改core-site.xml

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
		<description>namenode通信地址</description>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/data/hadoop/tmp</value>
		<description>臨時文件存儲路徑</description>
    </property>
</configuration>

9.3 修改hdfs-site.xml

<configuration>
	<property>
		<name>dfs.replication</name>
		<value>2</value>
	</property>
	<property>
		<name>dfs.namenode.name.dir</name>
		<value>file:/data/hadoop/namenode</value>
		<final>true</final>
	</property>
	<property>
		<name>dfs.datanode.data.dir</name>
		<value>file:/data/hadoop/data</value>
		<final>true</final>
	</property>
	<property>
		<name>dfs.namenode.secondary.http-address</name>
		<value>master:9001</value>
	</property>
	<property>
		<name>dfs.webhdfs.enabled</name>
		<value>true</value>
	</property>
	<property>
		<name>dfs.permissions</name>
		<value>false</value>
	</property>
</configuration>

9.4 修改mapred-site.xml

<configuration>

<property>
  <name>mapreduce.framework.name</name>
  <value>yarn</value>
</property>

</configuration>

9.5 修改yarn-site.xml

<configuration>

<!-- Site specific YARN configuration properties -->
	<property>
		<name>yarn.resourcemanager.address</name>
		<value>master:8040</value>
	</property>
	<property>
		<name>yarn.resourcemanager.scheduler.address</name>
		<value>master:8030</value>
	</property>
	<property>
		<name>yarn.resourcemanager.webapp.address</name>
		<value>master:8088</value>
		<description>ResourceManager對外web ui地址。用戶可通過該地址在瀏覽器中查看集羣各類信息</description>
	</property>
	<property>
		<name>yarn.resourcemanager.resource-tracker.address</name>
		<value>master:8025</value>
	</property>
	<property>
		<name>yarn.resourcemanager.admin.address</name>
		<value>master:8141</value>
	</property>
	<property>
		<name>yarn.nodemanager.aux-services</name>
		<value>mapreduce_shuffle</value>
		<description>NodeManager上運行的附屬服務。需配置成mapreduce_shuffle,纔可運行MapReduce程序</description>
	</property>
	<property>
		<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
		<value>org.apache.hadoop.mapred.ShuffleHandler</value>
	</property>
	<property>
		<name>yarn.acl.enable</name>
		<value>false</value>
	</property>
	<property>
		<name>yarn.admin.acl</name>
		<value>*</value>
	</property>
</configuration>

9.6 修改slaves

slave1
slave2

9.7 修改masters

master

9.8 修改hadoop-env.sh

添加JAVA_HOME配製

export JAVA_HOME=/usr/java/jdk1.8.0_231

在這裏插入圖片描述

10、啓動hadoop

10.1 啓動hadoop之前,需要先格式化文件系統

# 到bin目錄下
cd /usr/hadoop-2.6.5/bin/
#執行文件格式化命令
./hdfs  namenode  -format 

在這裏插入圖片描述

10.2 啓動hdfs

# 到sbin目錄下
cd /usr/hadoop-2.6.5/sbin/
# 啓動 hdfs
./start-dfs.sh

在這裏插入圖片描述

10.3 驗證hadoop是否安裝成功

# 啓動yarn
./start-yarn.sh

在這裏插入圖片描述

11、驗證hadoop是否啓動成功

# 
hadoop fs -ls  /

hadoop fs -mkdir /user

hadoop fs -put /data/jdk-8u231-linux-x64.tar.gz /user
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章