1. 程式人生 > >在Linux上安裝hadoop教程

在Linux上安裝hadoop教程

1 準備Linux環境
1.修改主機名稱
vi /etc/sysconfig/network
NETWORK=yes
HOSTNAME=www.hadoopone.com

centos7 修改主機名
hostnamectl set-hostname www.hadoopone.com

--修改完成主機名稱之後要重啟才能生效

2.修改IP地址
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.80.128
NETMASK=255.255.255.0
GETWAY=192.168.80.1
DNS1=114.114.114.114
DNS2=8.8.8.8
3.重啟網路
service network restart
4.配置主機名和IP地址的對映關係
vi/etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.80.128 www.hadoopone.com
5.關閉防火牆
service iptables status
service iptables stop
6.設定防火牆開機不啟動
chkconfig iptables --list
chkconfig iptables off
chkconfig命令主要用來更新(啟動或停止)和查詢系統服務的執行級資訊。謹記chkconfig不是立即自動禁止或啟用一個服務,它只是簡單的改變了符號連線。
6. 上傳JDK
mkdir /usr/java
7.解壓JDK
tar -zxvf jdk-8u121-linux-i586.tar.gz -C /usr/java
-z 有gzip屬性的
-x 解壓
-v 顯示所有過程
-f 使用檔案名字,切記,這個引數是最後一個引數,後面只能接檔案名
-C 大C引數很有用,改變檔案目錄,多層時用
8.配置環境變數
vi /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_111
export PATH=$PATH:$JAVA_HOME/bin
當環境變數配置成PATH=$JAVA_HOME/bin時,會導致所有的命令不可用(ls,vi等)
解決方法:使用Vi編輯器命令所在的絕對路徑對profile檔案進行編輯
/bin/vi /etc/profile
9.重新整理環境變數的配置檔案-profile
source /etc/profile
10.驗證JDK是否安裝成功


錯誤:-bash: /usr/java/jdk1.8.0_121/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
原因:作業系統是64的,下載了32位的JDK
錯誤 :-bash: ls: command not found
環境變數檔案出問題
解決辦法:登入到虛擬機器,修改環境變數配置檔案
11.刪除錯誤的jdk安裝目錄
rmdir 目錄非空,就陷入深深的苦惱之中。
rm -rf 命令:
直接rm就可以了,不過要加兩個引數-rf 即:rm -rf 目錄名字
-r 就是向下遞迴,不管有多少級目錄,一併刪除
-f 就是直接強行刪除,不作任何提示的意思

12.上傳hadoop安裝包
mkdir /bigdata
13.解壓hadoop安裝包
tar -zxvf hadoop-2.6.5.tar.gz -C /bigdata/
14.在hadoop安裝目錄下有幾個比較重要的目錄
sbin: 啟動活停止hadoop相關服務的指令碼
bin: 對hadoop相關服務(HDFS,YARN)進行操作的指令碼
etc:hadoop的配置檔案目錄
share:hadoop的依賴jar包和文件,文件可以被刪除
lib:hadoop的本地庫(對資料庫進行壓縮解壓縮功能的)
15.配置hadoop(偽分散式),修改其中的5個配置檔案即可
/bigdata/hadoop-2.6.5/etc/hadoop
ESC : set nu  顯示檔案行號
1 hadoop-env.sh   hadoop環境相關的配置檔案
vi hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.8.0_121
2 core-site.xml hadoop核心配置檔案,會覆蓋預設的配置檔案的屬性core-default.xml
<!-- 配置hdfs NameNode(老大)地址-->
vi core-site.xml 
<configuration>
<property>
<name>fs.defaultFS</name>
可以寫主機名和IP地址,
<value>hdfs://www.hadoopone.com:9000</value>
</property>
<!--配置hadoop執行時資料存放的目錄,不是臨時資料,放很重要的資料,hadoop執行時的資料全部放在這個檔案下面-->
<!--在格式化namenode 的時候自動生成這個目錄-->
<property>
<name>hadoop.tmp.dir</name>
<value>/bigdata/tmp</value>
</property>
</configuration>
3 hdfs-site.xml
<!--指定hdfs儲存資料的副本數量,指定幾就是存幾份-->
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
4 mapred-site.xml.template
<!--指定mapreduce程式設計模型執行在yarn上-->
重新命名檔案 mv mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
5 yarn-site.xml
vi yarn-site.xml
<configuration>
<!--指定yarn的老大(ResourceManager的地址)-->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>www.hadoopone.com</cdvalue>
</property>


<!--mapreduce執行shuffle獲取資料的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
16  初始化HDFS(格式化HDFS) 格式化namenode
cd /bigdata/hadoop-2.6.5/bin
./hdfs namenode -format
格式化成功:Storage directory /bigdata/tmp/dfs/name has been successfully formatted.

jps檢視java程序狀態
17 啟動HDFS服務  
需要切換到hadoop-2.6.5目錄下:
--sbin/start-all.sh(hdfs,yarn)
sbin/start-dfs.sh(hdfs,yarn)
啟動成功之後有四個程序
DataNode
NameNode
SecondaryNameNode
瀏覽器訪問
192.168.3.111:50070有正常顯示,這hdfs啟動成功
18 啟動yarn服務
需要切換到hadoop-2.6.5目錄下:
sbin/start-yarn.sh
ResourceManager
NodeManager
瀏覽器訪問
192.168.3.111:8088有正常顯示,這hdfs啟動成功

NameNode  HDFS 老大 管理整個檔案系統
DateNode  HDFS 小弟
SecondaryName  NameNode助理  幫助NameNode同步源資料
 
ResourceManager yarn老大
NodeManager yarn 的小組長

19 配置hosts檔案
20 在one上面通過ssh命令在two上面建立資料夾
ssh
[email protected]
mkdir /Two
密碼輸入正確之後,還在one主機
21 免密登入
ssh-copy-id [email protected]
報錯:/usr/bin/ssh-copy-id: ERROR: No identities found
原因:one伺服器沒有生成公鑰和私鑰
生成:ssh-keygen -t rsa
檢視: cd ~/.ssh    ls
ssh-copy-id [email protected]


檢視是否拷貝成功:


進入two伺服器的(~)目錄下
使用ls -la 檢視是否有 .ssh
如果有進入.ssh目錄
cd .ssh/

cat authorized_keys 
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAx/64Pa/dPDWHtfza0s4VhlFlsJrYldMW+EbFxIAq/FtxsE/N28863Og4DmuiLD/p/j3bl+eyz0xztr9kz80iOW1rNWW7RchITR0jlKIgKQX3EQQQi4OtQXja9pZQ28zEiIyfJOD07KGhEBeFCcvXDx0985RBeYhAgFm86xxW48CVnRHsAJpmU3us5u5c8A709Y0O9X7yzPA1LRAxySCh/ar0eBUQNJktaTKg/PBTgJdJ/AqMsXzJsOMO/wBv5kB0YYCmJbzWaU06Yi2N8RnO6/wfc4lZAAb4R71vCflh+0rgglSLXHoV5Ejl61WtzUOBTeJyWzDqXCEkj2WFB9Qi4Q==
[email protected]



有www.hadoopone.com顯示成功

檢視one伺服器的keys:
進入two伺服器的(~)目錄下
cd .ssh ls
cat id_rsa.pub 
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAx/64Pa/dPDWHtfza0s4VhlFlsJrYldMW+EbFxIAq/FtxsE/N28863Og4DmuiLD/p/j3bl+eyz0xztr9kz80iOW1rNWW7RchITR0jlKIgKQX3EQQQi4OtQXja9pZQ28zEiIyfJOD07KGhEBeFCcvXDx0985RBeYhAgFm86xxW48CVnRHsAJpmU3us5u5c8A709Y0O9X7yzPA1LRAxySCh/ar0eBUQNJktaTKg/PBTgJdJ/AqMsXzJsOMO/wBv5kB0YYCmJbzWaU06Yi2N8RnO6/wfc4lZAAb4R71vCflh+0rgglSLXHoV5Ejl61WtzUOBTeJyWzDqXCEkj2WFB9Qi4Q==
[email protected]


顯示免密登入配置成功

22 列出HDFS跟目錄下的所有檔案
hdfs dfs -ls hdfs://www.hadoopone.com:9000/
hdfs dfs -ls /
22 上傳整個資料夾
hdfs dfs -put news /

hdfs dfs -rmr aaa.txt 刪除
23 上傳檔案許可權不足
錯誤:Permission denied: user=hadoop, access=WRITE, inode="/":root:supergroup:drwxr-xr-x
修改檔案:haoop 配置檔案中hdfs-site.xml 中設定許可權為false
<configuration>
<property>
       <name>dfs.replication</name>
       <value>1</value>
</property>
<property>
       <name>dfs.permissions.enabled</name>
       <value>false</value>
</property>
</configuration>

24 上傳中報錯:could only be replicated to 0 nodes instead of minReplication
  原因:由於上次執行其它版本的Hadoop在/tmp/hadoop-root/dfs/data目錄下有殘留的不相容的資料
  解決方式 : 刪除tmp/dfs/data 中的所有內容

相關推薦

Linux安裝hadoop教程

1 準備Linux環境1.修改主機名稱vi /etc/sysconfig/networkNETWORK=yesHOSTNAME=www.hadoopone.comcentos7 修改主機名hostnamectl set-hostname www.hadoopone.com-

Linux安裝Hadoop集群(CentOS7+hadoop-2.8.0)

hup dem current 格式 default dmv framework server1 上進 1下載hadoop 2安裝3個虛擬機並實現ssh免密碼登錄 2.1安裝3個機器 2.2檢查機器名稱

Linux安裝Hadoop集群(CentOS7+hadoop-2.8.0)--------hadoop環境的搭建

html -a 總結 全分布式 .html oop details clas HR Linux上安裝Hadoop集群(CentOS7+hadoop-2.8.0)------https://blog.csdn.net/pucao_cug/article/details/716

Linux安裝Hadoop叢集(CentOS7+hadoop-2.8.0)

 關鍵字:Linux  CentOS  Hadoop  Java  版本:  CentOS7  Hadoop2.8.0  JDK1.8  說明:Hadoop從版本2開始加入了Yarn這個資源管理器,Yarn並不需要單獨安裝。只要在機器上安裝了

Linux安裝Docker教程詳解(使用yum安裝

Docker的三大核心概念:映象、容器、倉庫 映象:類似虛擬機器的映象、用俗話說就是安裝檔案。 容器:類似一個輕量級的沙箱,容器是從映象建立應用執行例項,可以將其啟動、開始、停止、刪除、而這些容器都是相互隔離、互不可見的。 倉庫:類似程式碼倉庫,是Docker集

Linux安裝JDK8-教程

xl_echo編輯整理。歡迎新增echo微信(微訊號:t2421499075)交流學習。 百戰不敗,依不自稱常勝,百敗不頹,依能奮

linux(centos)安裝mysql教程,為需要遠端登入的使用者賦予許可權

最近把之前學生時代的win server換成了linux(centos)系統,因為win對於部署一些專案時候比較麻煩,直接入正題 1、準備階段 我使用xshell工具管理伺服器,相應下載和安裝自行百度 2、安裝 接下來主要介紹Linux下使用yum安裝MySQL,以及啟動、登

linux(centos)安裝mysql教程

最近把之前學生時代的win server換成了linux(centos)系統,因為win對於部署一些專案時候比較麻煩,直接入正題 1、準備階段 我使用xshell工具管理伺服器,相應下載和安裝自行百度 2、安裝 接下來主要介紹Linux下使用yum安裝MySQL,以及啟動、登入和遠端訪問MyS

Docker教程(2)Linux安裝Docker(非常簡單的安裝方法)

前提條件 目前,CentOS 僅發行版本中的核心支援 Docker。 Docker 執行在 CentOS 7 上,要求系統為64位、系統核心版本為 3.10 以上。 使用 yum 安裝 Docker 要求 CentOS 系統的核心版本高於 3.10

Linux虛擬機器安裝Hadoop叢集(初學)

測試已成功完成安裝的版本 hbase-1.2.6-bin.tar.gz hadoop-2.7.5.tar.gz ubuntu-16.04.3-server-amd64.ios jdk-8u161-linux-x64.tar.gz zookeeper-3

rabbitMQ在linux安裝教程和問題解決

語言環境安裝 一、編譯安裝方式 1.依賴環境的安裝-如果需要用編譯安裝erlang語言環境,需要安裝C++編譯。 yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-d

最詳細最全的Linux安裝Oracle的教程-centos7-humf

一、安裝Oracle前準備 1.建立執行oracle資料庫的系統使用者和使用者組[[email protected] ~]$ su root  #切換到root Password: [[email protected] sonny]# groupadd

Linux安裝Redis(Ubuntu16.04+Redis3.2.8)最煩網上流傳的那些根本走不通的教程

目      錄 3 編譯安裝        4.1 啟動        4.2 測試            太煩網上流傳的那些根本走不通的教程,還到處複製傳播,所以嘔心瀝血寫了這個比較詳細的圖文教程,希望同行不要走彎路,如果按照本文操

Hadoop的學習前奏(一)——在Linux安裝與配置Hadoop

前言  筆者目前是在做Android開發,又是在一個資訊保安的公司。公司的主要是做在虛擬機器上執行的產品,又涉獵雲端計算,心想是要去搞一下雲端計算。自我感覺移動網際網路 + 雲端計算 + 資訊保安會是一

Linux安裝谷歌瀏覽器的問題

ren asc and 谷歌 inux 退出 table 十六進制 瀏覽器 問題一:安裝過程中的依賴問題 sudo dpkg -i google-chrome-stable_current_xxxxx.deb sudo apt --fix-broken install

Kali Linux 安裝Nessus的方法

kali nessus安裝 Nessus是系統漏洞掃描與分析軟件,但Nessus在Kali Linux上的安裝可不簡單,沒有提供一個圖形化的安裝借口,下面就給大家介紹下如何在Kali Linux上安裝Nessus。利用Iceweasel 打開http://www.tenable.com/product

linux安裝完oracle數據庫後,如何修改ORACLE_HOSTNAME

acl home edi generated literal 添加 network tcp hostname 1、修改HOSTS文件,添加JTWF到本機IP地址的映射: [[email protected]/* */ home]# gedit /etc/host

Linux安裝Tomcat服務器並發布javaweb項目

img blog tom log 分享 str 命令 apache tar 一、安裝Tomcat 1、 將apache-tomcat-7.0.72.tar.gz文件上傳至Linux指定文件夾下 2、 用tar –zxvf命令將apache-tomca

win系統下的eclipse連接和使用linuxhadoop集群

con rgb ip地址 content col 準備 右擊 ack max 準備工作 先在win系統的hosts文件中加入下面內容 10.61.6.164master //hadoop集群的master節點

(一)在Linux安裝和編譯OpenCV3.0.0

接口 mac os color 下載源 同時 beta c函數 install mkdir OpenCV的全稱是:Open Source Computer Vision Library。OpenCV是一個基於(開源)發行的跨平臺計算機視覺庫,可以運行在Linux、W