所需软件:
- VMware
- iso镜像
( centOS6.5镜像文件:链接:https://pan.baidu.com/s/19uUX_M-jE6xI8kBwxhydSA
密码:xs54 ) - linux客户端操作软件 (Xshell5+Xftp)(https://pan.baidu.com/s/1NqtNSvcNR5TlkF6UQ4BPZg 密码:h8f1 )
- jdk1.8安装rpm包(同一使用该方式):(链接:https://pan.baidu.com/s/1wko89Lo1tAdPcM8r7FhVuA 密码:vtob )
-
hadoop2.6.5安装包:(链接:https://pan.baidu.com/s/1aZ7k7kk3mW9C0PCP5SAFug 密码:wu98 )
搭建过程:
1.安装虚拟机导入系统
链接:https://pan.baidu.com/s/1hiaqBh3txjdstDPx4MDB6Q 密码:p0i2
安装后重新引导,输入用户名,密码进入系统
编辑--虚拟网络编辑器--NAT模式--修改子网ip为192.168.100.0 子网掩码为255.255.255.0
- cd / 进入根目录
- vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改网络配置信息
按i进入可编辑模式,删除多余信息,修改信息为
esc退出编辑模式,输入:wq保存并退出
- service network restart 重启服务
- vi /etc/sysconfig/network 修改主机名
修改HOSTNAME=n1,esc退出编辑模式,输入:wq保存并退出
- vi /etc/resolv.conf 配置dns
输入namesercer 114.114.114.114,保存退出
ping 192.168.100.2
ping www.baidu.com 测试外网是否可通
2.克隆另外两台虚拟机并配置
注意事项:克隆过程中要创建完整克隆
开启克隆机,登入系统
配置信息:
- rm -rf /etc/udev/rules.d/70-persistent-net.rules 首要操作
- vi /etc/sysconfig/network-scripts/ifcfg-eth0 设置ip地址为192.168.100.11,第三台为192.168.100.12其余信息与第一台相同
- vi /etc/sysconfig/network 修改主机名为n2;第三台设置为n3
- vi/etc/resolv.conf 配置dns
- init 6 重启克隆机系统
注意事项:
必须先删除文件;无需重启服务,因为最终会重启系统
ping 192.168.100.2
ping www.baidu.com 测试外网是否可通
3.用Xshell5连接配置好的n1,n2,n3主机
打开Xshell5,创建三个会话框,分别输入以下三句话,连接三个不同主机
- ssh 192.168.100.10
- ssh 192.168.100.11
- ssh 192.168.100.12
在Xshell最下面会话框右边,左击勾选全部会话
4.准备工作
- date -s "2012-05-1804:53:00" 为三台主机设置相同时间
- service iptables stop
- chkconfig iptables off 关闭防火墙
- yum install -y vim 安装vim命令
5.主机映射
- vi /etc/hosts
在最下方插入三台主机的ip地址和主机名,每台主机ip地址和主机名占一行,主机名和ip地址直接用空格隔开
6.jdk部署
- cd /home/ 切换到家目录
- mkdir tools 创建文件夹tools
- mkdir bigdata 创建文件夹bigdata
用xftp将jdk的rpm包上传到三台主机的/home/tools目录下
- cd /home/tools/
- rpm -ivh jdk-8u151-linux-x64.rpm 安装后jdk所在目录为/usr/java/
如果安装包为tar包可用
- tar -zxvf jdk-8u151-linux-x64.rpm -C 指定路径 -C后跟路径,安装到指定路径上
在三台主机上都安装了jdk后
- vim ~/.bash_profile
- 或者
- vim /root/.bash_profile 进入修改环境变量
在最后面添加
- export JAVA_HOME=/usr/java/default
- export PATH=$PATH:$JAVA_HOME/bin
保存退出后
- source ~/.bash_profile 刷新配置信息
在三台主机上都配置环境变量,且配置后均要source一把
7.免秘钥
在第一台主机上输入以下命令,生成秘钥
- ssh-keygen 一直回车,直到结束
- cd /root/.ssh/ 查看
- ssh-copy-id -i id_rsa.pub root@n1
- ssh-copy-id -i id_rsa.pub root@n2
- ssh-copy-id -i id_rsa.pub root@n3 拷贝到其他机器上
测试:ssh 主机名 如果均不需要密码说明成功
8.正式安装
上传hadoop的tar包到/home/bigdata/文件夹下
- tar -zxvf hadoop-2.6.5.tar.gz -C /home/bigdata/ 解压
- vim ~/.bash_profile 配置环境变量
- export HADOOP_HOME=/home/hadoop-2.6.5
- export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
- source ~/.bash_profile
三台主机均要安装和配置
输入hdfs测试
修改配置文件
- cd /home/bigdatas/hadoop-2.6.5/etc/hadoop/ 进入目录修改
1>配置Hadoop-env.sh
修改JAVA_HOME=/usr/java/default
2>配置core-site.xml
- <!--客户端访问hdfs的(其实就是namenode)入口-->
- <property>
- <name>fs.defaultFS</name>
- <value>hdfs://n1:9000</value> <!--此处的n1是第一个的主机名-->
- </property>
- <!-- namenode的工作目录: fsimage edits两个磁盘文件的存放目录-->
- <property>
- <name>hadoop.tmp.dir</name>
- <value>/opt/hadoop2.6.5</value>
- </property>
3>配置hdfs-site.xml
- <!--每份数据的副本数-->
- <property>
- <name>dfs.replication</name>
- <value>3</value> <!--3是搭建的主机数-->
- </property>
- <!--secondaryname的http协议地址, secondaryname主机 端口(可以自定义)-->
- <property>
- <name>dfs.namenode.secondary.http-address</name>
- <value>n2:50090</value> <!--此处的n2是第二个的主机名-->
- </property>
- <!-- secondaryname的https协议地址,-->
- <property>
- <name>dfs.namenode.secondary.https-address</name>
- <value>n2:50091</value> <!--此处的n2是第二个的主机名-->
- </property>
创建masters
- vi /home/hadoop-2.5.1/etc/hadoop/masters 在其中添加n2
配置slaves
- vi /home/hadoop-2.5.2/etc/hadoop/slaves 添加n2 n3 n4
三台主机同步配置
9.
- hdfs namenode -format
10.启动集群
- start-dfs.sh
最后输入jps测试,在浏览器中输入192.168.100.10:50070测试