大數據安裝與配置(手動配置版)
準備工作
準備至少三臺同等環境和操作系統的虛擬機
配置好網絡、分配好虛擬資源
主機名的修改和查看
$ hostnamectl 或 hostnamectl status //查看主機名
$ vim /etc/hostname //修改主機名
添加Hosts映射關係
$ vim /etc/hosts //添加如下內容
10.51.36.104 mt01
10.51.36.105 ct01
10.51.36.106 ct02
關閉防火牆
$ systemctl status firewalld.service //查看防火牆狀態
$ systemctl start firewalld.service //啓動防火牆
$ systemctl stop firewalld.service //關閉防火牆
$ systemctl disable firewalld.service // 禁止開機啓動
啓動ssh並且免密碼登錄(按照命令順序執行)
$ cd ~
$ mkdir .ssh
$ chmod 744 .ssh
$ ssh-keygen -t rsa -P '' //ENTER
$ ssh-keygen -t rsa -f ~/.ssh/id_rsa //ENTER
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 700 ~/.ssh && chmod 600 ~/.ssh/*
$ vim /etc/ssh/sshd_config //修改內容
把下面的字段全部去掉前面的#
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
測試,第一次登錄可能需要yes確認,之後就可以直接登錄了
$ ssh localhost
Last login: Sat Jul 18 22:57:44 2015 from localhost重啓sshd服務
systemctlrestartsshd.service systemctl enable sshd.service // 開機自動啓動設置主機->從機的無密碼登錄(有幾臺從機執行幾次)
$ cat ~/.ssh/id_rsa.pub | ssh [email protected] ‘cat - >> ~/.ssh/authorized_keys’
測試是否成功:
$ ssh 10.52.36.105
Last login: Sat Jul 18 23:25:41 2015 from master設置從機->主機的無密碼登錄
$ cat ~/.ssh/id_rsa.pub | ssh [email protected] ‘cat - >> ~/.ssh/authorized_keys’
測試是否成功:
$ ssh 10.52.36.104
關閉SELinux
$vim /etc/selinux/config //修改內容(重啓後永久生效)
SELINUX=disabled
安裝JDK
查看是否安裝JDK
$ rpm -qa | grep java
javapackages-tools-3.4.1-6.el7_0.noarch
python-javapackages-3.4.1-6.el7_0.noarch
java-1.7.0-openjdk-1.7.0.75-2.5.4.2.el7_0.x86_64
tzdata-java-2015a-1.el7.noarch
java-1.7.0-openjdk-headless-1.7.0.75-2.5.4.2.el7_0.x86_64卸載jdk
$ yum -y remove java ..
下載jdk
在官網下載最新的jdk ,在根目錄下新建文件夾program
安裝jdk
cd/program//進入文件夾 tar -zxvf jdk-8u51-linux-x64.gz //解壓
$ mv jdk-8u51-linux-x64 jdk1.8 //重命名修改環境變量
$ vim /etc/profile //添加如下內容
export JAVA_HOME=/program/jdk1.8
export PATH=JAVAHOME/bin: PATH
export CLASSPATH=.:JAVAHOME/lib/dt.jar: JAVA_HOME/lib/tools.jar使配置文件生效
$ source /etc/profile
大數據環境配置
Hadoop環境安裝
- Hadoop 官方版本下載地址
http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.7.4/hadoop-2.7.4.tar.gz
- 解壓安裝Hadoop
$ cd /program //進入文件夾
$ mkdir hadoop //新建文件夾hadoop
$ cd hadoop //進入文件夾
$ tar -zxvf hadoop-2.7.4.tar.gz //進行解壓縮
修改環境變量
$ vim /etc/profile //添加如下內容
export HADOOP_HOME = /program/hadoop/hadoop-2.7.4
export PATH= .:HADOOPHOME/bin: JAVA_HOME/bin:$PATH使配置文件生效
$ source /etc/profile
修改hadoop的配置文件
- core-site.xml
$ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/core-site.xml //修改成如下內容
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://10.51.36.104:9000</value>
</property>
</configuration>
hdfs-site.xml
$ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/hdfs-site.xml //修改成如下內容
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/program/hadoop/hadoop-2.7.4/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/program/hadoop/hadoop-2.7.4/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>
mapred-site.xml
$ mv /program/hadoop/hadoop-2.7.4/etc/hadoop/mapred-site.xml.template /program/hadoop/hadoop-2.7.4/etc/hadoop/mapred-site.xml //重命名
$ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/hmapred-site.xml //修改成如下內容
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>10.51.36.104:9001</value>
</property>
</configuration>
yarn-site.xml
$ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/yarn-site.xml //修改成如下內容
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>mt01</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
hadoop-env.sh
$ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/hadoop-env.sh //修改成如下內容
export JAVA_HOME=$JAVA_HOME //錯誤,不能這麼改
export JAVA_HOME=/program/jdk1.8 //正確,應該這麼改
yarn-env.sh
$ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/yarn-env.sh //修改成如下內容
export JAVA_HOME=/program/jdk1.8
修改slaves文件
$ vim /program/hadoop/hadoop-2.7.4/etc/hadoop/slaves //修改成如下內容
ct01
ct02
分發配置(使用scp命令進行從本地到遠程的文件傳輸操作)
注意:三臺機器上都進行相同的配置,都放在相同的路徑下。
$ scp -r /program/hadoop/hadoop-2.7.4 10.51.36.105:/program/hadoop
$ scp -r /program/hadoop/hadoop-2.7.4 10.51.36.106:/program/hadoop
格式化磁盤
/program/hadoop/hadoop-2.7.4/bin/hdfs namenode -format
成功的話,會看到 “successfully formatted” 和 “Exitting with status 0” 的提示,若爲 “Exitting with status 1” 則是出錯。
至此,單機安裝had###p成功!
啓動hadoop yarn 及其他所有服務
$ /program/hadoop/hadoop-2.7.4/sbin/start-all.sh (關閉把start改成stop即可)
hadoop 的訪問地址
http://10.51.36.10:50070/
使用jps 查看進程
jps
運行一個wordcount示例(mapreduce 的helloword示例)
創建文件夾
cd /
mkdir project
cd project
mkdir input
cd input
echo “hello world” > test1.txt
echo “hello hadoop” > test2.txt
cd ..將文件上傳到hadoop HDFS文件系統
$ /program/hadoop/hadoop-2.7.4/bin/hdfs dfs -put /project/input/ /in/input
查看文件
$ /program/hadoop/hadoop-2.7.4/bin/hdfs dfs -ls /in/input
運行程序
$ /program/hadoop/hadoop-2.7.4/bin/hadoop jar /program/hadoop/hadoop-2.7.4/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.4.jar wordcount /in/input /out
查看結果
$ /program/hadoop/hadoop-2.7.4/bin/hdfs dfs -cat /out/*
如果要再次執行上面的程序,需要把生成的目錄刪除
$ /program/hadoop/hadoop-2.7.4/bin/hdfs dfs -rm -r /out