虚拟机环境装Hadoop 2.7.3

整体环境

三台虚拟机,初始状态,每台5G硬盘,1G内存,后来根据运行情况增加了内存设置。
我的笔记本是2012年购买的,10G内存,普通硬盘,大家看自己计算机情况,可能会更快或更慢。
n1 192.168.8.10 设置2048MB内存
d1 192.168.8.20 设置1552MB内存
d2 192.168.8.30 设置1552MB内存

虚拟机环境

采用VMware workstation.

虚拟机的坑

32位VM workstation安装64位系统。
请:

  1. 确认自己的CPU是否支持vt (我的i5 3210m是支持的,可以使用securable软件检测下自己的CPU)
  2. 验证 BIOS/固件设置 VT 启用和禁用 'trusted execution.'
    3)如果更改了这些 BIOS/固件设置 重新启动主机电源。
    4)重新安装 VMware Workstation,重新启动主机.
    可能需要更新到最新版本的 BIOS/固件。

** 安装vmware-tool **
yum -y install open-vm-tools
之后reboot就可以了

CentOS 64安装

选择minimal版本的iso安装
安装完成后先克隆一份备用,别问为什么,就像玩游戏一样,没事存个盘,以备万一。

配置CentOS

  1. 启动网络
    cd /etc/sysconfig/network-scripts/
    vi ifcfg-eth0
  2. 设置主机名
    设置主机名为n1

hostname n1 #设置主机名为n1
vi /etc/hostname #编辑配置文件

n1 #修改localhost.localdomain为n1, 去掉注释,否则有可能出问题
:wq! #保存退出

编辑hosts文件

vi /etc/hosts #编辑配置文件

127.0.0.1 localhost # 注意该行解析不能有n1, 会与下面的解析冲突,造成datanode无法回传数据
192.168.8.10 n1
192.168.8.20 d1
192.168.8.30 d2
:wq! #保存退出
shutdown -r now #重启系统

  1. 新建grid用户

useradd grid
passwd grid

将用户添加到sudoer列表

连接虚拟机

  1. 安装SecureCRT等ssh客户端,这次我用的MobaXterm,功能不错,同时具有sftp功能
  2. xterm软件中配置用户名,配置私钥文件
  3. 免密码输入连接到虚拟机

安装基本工具及环境

  1. yum 安装wget net-tools
    -- yum install wget net-tools
  2. 修改yum安装源
  1. 查找最快源
    yum clean all
    yum makecache
  1. wget 下载jdk (注意no cookies参数)下载速度较慢
    wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz"
  2. 安装jdk
    解压
    tar -xzvf jdk-8u131-linux-x64.tar.gz
    移动到usr目录

mv ./jdk1.8.0_131 /usr

修改本用户的环境变量

vi ~/.bash_profile

export JAVA_HOME=/usr/jdk1.8.0_131
export JRE_HOME=/usr/jdk1.8.0_131/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

复制多台虚机

复制多台虚机,改hostname,改ip

虚机间ssh免密码设置

生成key对,并将所有公钥拷贝到同一台机器上

ssh-keygen -t rsa
scp ./id_rsa.pub [email protected]:/home/grid/.ssh/authorized_keys
cat ./id_rsa.pub >>/home/grid/.ssh/authorized_keys

拷贝到所有机器上

scp authorized_keys [email protected]:/home/grid/.ssh/authorized_keys
scp authorized_keys [email protected]:/home/grid/.ssh/authorized_keys

设置权限(ssh不能免密连接的时候设置)

chown username: /home/username/.ssh
chown username: /home/username/.ssh/*
chmod 700 /home/username/.ssh
chmod 600 /home/username/.ssh/*

设置Xterm访问虚机的ssh免密码登录

  1. 首先用tools->mobakeygen 生成rsa key对
    2)分别保存公钥和私钥
    3)复制公钥,并粘贴到centos配置中

mkdir ~/.ssh
chmod 0700 ~/.ssh
touch ~/.ssh/authorized_keys
chmod 0644 ~/.ssh/authorized_keys
sudo vim ~/.ssh/authorized_keys

配置hosts文件,解析ip地址和主机名

su
vi /etc/hosts

增加以下内容:
192.168.8.10 n1
192.168.8.20 d1
192.168.8.30 d2

修改Hadoop 2.7配置文件

hadoop 2.7配置文件

复制分发hadoop

scp -r hadoop-2.7.3 grid@d1:/home/grid
scp -r hadoop-2.7.3 grid@d2:/home/grid

同时把java的环境变量设置分发出去

scp .bash_profile grid@d1:/home/grid
scp .bash_profile grid@d2:/home/grid

格式化namenode

hadoop-2.7.3/bin/hdfs namenode -format

启动hadoop

./sbin/start-dfs.sh
/.sbin/start-yarn.sh

验证安装是否成功

  1. jsp检查进程
    n1上运行的应该有:namenode, secondarynamenode, resourcemanager
    d1,d2上运行的应该有:datanode, nodemanager
  2. 查看集群状态:./bin/hdfs dfsadmin –report
  3. 查看文件块组成: ./bin/hdfsfsck / -files -blocks
  4. 查看HDFS: http://192.168.8.10:50070
  5. 查看RM: http://192.168.8.10:8088

运行示例

运行hadoop内置的wordcount示例,如果能正确产生结果,则安装正常

你可能感兴趣的:(虚拟机环境装Hadoop 2.7.3)