hadoop技术一般的程序员怎么用虚拟机搭建Hadoop的全分布模式

建立Linux虚拟机(全节点)

客户机操作系统:CentOS-6.5-x86_64。

网络连接:host-only。Connecet automaticcally:打勾。

hadoopmaster 192.168.169.100 255.255.255.0

hadoopslave1 192.168.169.101 255.255.255.0

hadoopslave2 192.168.169.102 255.255.255.0

安装类型:Minimal

关闭防火墙和SELINUX(全节点)

 

# iptablesservice iptables statusservice iptables stop# 不随操作系统自动启动chkconfig iptables off# 永久起效,reboot重启后生效vi /etc/selinux/configSELINUX=disabled

 

合并CentOS 6.5的两个DVD作为本地yum源(master节点)

创建相关目录

 

mkdir -p /mnt/dvd1 /mnt/dvd2 /mnt/dvd /mnt/iso

 

说明:

/mnt/dvd1和/mnt/dvd2,用于挂载Centos6.5原有的两个镜像ISO文件。

/mnt/dvd,合并后的镜像文件存放目录。

/mnt/iso,制作好ISO镜像的存放目录。

挂载CentOS原来的两个镜像文件,首先, 复制第一张DVD(CentOS-6.5-x86_64-bin-DVD1)中的所有文件到/mnt/dvd目录下,然后,只拷贝第二张DVD中 Packages目录下的所有RPM文件到/mnt/dvd/Packages/目录下,由于第二张DVD(CentOS-6.5-x86_64-bin-DVD2)不能当做启动光盘,所以只需要RPM文件即可。

 

mount /dev/sr0 /mnt/dvd1df -hcp -av /mnt/dvd1/* /mnt/dvdumount /mnt/dvd1mount /dev/cdrom /mnt/dvd2cp -v /mnt/dvd2/Packages/*.rpm /mnt/dvd/Packages/

 

合并TRANS.TBL,将DVD2中TRANS.TBL的信息追加到DVD1中TRANS.TBL后面,并排序保存。

 

cat /mnt/dvd2/Packages/TRANS.TBL >> /mnt/dvd/Packages/TRANS.TBLmv /mnt/dvd/Packages/{TRANS.TBL,TRANS.TBL.BAK}sort /mnt/dvd/Packages/TRANS.TBL.BAK > /mnt/dvd/Packages/TRANS.TBLrm -rf /mnt/dvd/Packages/TRANS.TBL.BAK

 

备份原有yum配置文件,

 

cd /etc/yum.repos.drename .repo .repo.bak *.repo

 

生成新的yum配置文件

 

cat > /etc/yum.repos.d/CentOS-Media.repo <<EOF>[c6-media]>name=CentOS-\$releasever - Media>baseurl=file:///mnt/dvd>gpgcheck=0>enabled=1>gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6>EOF

 

更新yum源

 

yum clean allyum upgrade

 

将/mnt/dvd/打包为iso

 

yum install genisoimagemkisofs -l -J -L -r -V "CentOS-6.5-x86_64" -o /mnt/iso/CentOS-6.5-x86_64-DVD.iso /mnt/dvd

 

CentOS搭建本地yum源(http方式)(master节点)

启动httpd服务

 

# 验证是否安装httpd服务rpm -qa|grep httpd# yum install -y httpdyum install -y httpd# 启动httpd服务service httpd start

 

安装yum源

 

# 在/var/www/html/下创建文件夹CentOS6.5mkdir -p /var/www/html/CentOS6.5# 将iso文件中的内容copy到CentOS6.5cp -av /mnt/dvd/* /var/www/html/CentOS6.5/

 

利用ISO镜像,yum源搭建OK。浏览器验证访问:http://192.168.169.100/CentOS6.5/。

使用yum源

 

# 备份原有的repo文件mkdir -p /etc/yum.repos.d/repo.bakcd /etc/yum.repos.d/cp *.repo *.repo.bak repo.bak/rm -rf *.repo *.repo.bak# 新建文件 vi CentOS6.5.repo[base]name=CentOS-$releasever - Basebaseurl=http://hadoopmaster:80/CentOS6.5/enabled=1gpgcheck=1gpgkey=http://hadoopmaster:80/CentOS6.5/RPM-GPG-KEY-CentOS-6# 更新yum源yum cleanyum repolist

 

yum源配置(全节点)

使用yum源

 

# 备份原有的repo文件mkdir -p /etc/yum.repos.d/repo.bakcd /etc/yum.repos.d/cp *.repo *.repo.bak repo.bak/rm -rf *.repo *.repo.bak# 新建文件 vi CentOS6.5.repo[base]name=CentOS-$releasever - Basebaseurl=http://hadoopmaster:80/CentOS6.5/enabled=1gpgcheck=1gpgkey=http://hadoopmaster:80/CentOS6.5/RPM-GPG-KEY-CentOS-6# 更新yum源yum cleanyum repolist

 

hosts文件修改(全节点)

 

vi /etc/hosts192.168.169.100 hadoopmaster192.168.169.101 hadoopslave1192.168.169.102 hadoopslave2

 

ssh免密码登录,以master节点为例(全节点)

 

yum install -y openssh-clientsssh-keygen -t rsassh-copy-id -i .ssh/id_rsa.pub root@hadoopmasterssh-copy-id -i .ssh/id_rsa.pub root@hadoopslave1ssh-copy-id -i .ssh/id_rsa.pub root@hadoopslave2

 

安装jdk(全节点)

 

mkdir -p /root/trainingcd /root/trainingtar -zxvf jdk-7u75-linux-i586.tar.gz

 

配置环境变量:

 

vi .bash_profileJAVA_HOME=/root/training/jdk1.7.0_75export JAVA_HOMEPATH=$JAVA_HOME/bin:$PATHexport PATH# 立即生效source .bash_profilewhich javajava -version

 

bug解决:64bit的操作系统,无法运行32bit的应用程序,需要安装32bit的glibc库。

 

-bash: /root/training/jdk1.7.0_75/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory

yum install -y glibc*.i686rpm -qf /lib/ld-linux.so.2

 

全分布模式配置

hadoop-env.sh JAVA_HOME /root/training/jdk1.7.0_75 Java的home目录 hdfs-site.xml dfs.replication 2 数据的冗余度 hdfs_site.xml dfs.permissions false

core-site.xml fs.defaultFS hdfs://hadoopmaster:9000 namenode的IP地址和端口,9000是RPC通信的端口 core-site.xml hadoop.tmp.dir /root/training/hadoop-2.4.1/tmp 如不修改默认为/tmp,设置的路径必须事先存在 slaves DataNode的地址 hadoopslave1 hadoopslave2

mapred-site.xml mapreduce.framework.name yarn 指定MR运行在yarn上 yarn-site.xml yarn.resourcemanager.hostname hadoopmaster 指定YARN的老大(ResourceManager)的地址 yarn-site.xml yarn.nodemanager.aux-services mapreduce_shuffle reducer获取数据的方式

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值