大数据安装与配置(手动配置版)
准备工作
准备至少三台同等环境和操作系统的虚拟机
配置好网络、分配好虚拟资源
主机名的修改和查看
$ 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 root@10.51.36.105 ‘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 root@10.51.36.104 ‘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