vmware安装hadoop,vmware搭建hadoop集群
原文地址:http://博客。云时代。com/blog/2013/04/how-to-use-vagger-to-setup-a-virtual-Hadoop-cluster/
无赖是一个非常好用的工具,可以用它来在单台物理机器编程管理多个虚拟机(虚拟机系统).其支持原生虚拟盒子,并同时提供了对VMware Fusion、亚马逊EC2虚拟机集群的插件支持。
无赖提供了极易使用、基于红宝石的内部DSL,允许用户使用它们的配置参数定义一个或多个虚拟机。另外,对于自动部署,流浪汉支持多种机制:可以使用木偶,厨师或者用于在无赖配置文件中定义的所有虚拟机上自动安装软件程序和配置的壳脚本等。
所以,使用无赖可以在运行着多台伏特计的系统上定义复杂的虚拟框架,是不是很酷?
无赖的典型使用案例是以简单并且一致的方式构建工作或者开发环境。在Eligotech(原作者公司)公司里,开发人员正在开发一个产品,目标是让用户简单的使用Apache Hadoop、CDH(Cloudera的开源版本)。开发人员经常是为了测试需要在机器上安装大数据环境。他们发现无赖在这方面是一个非常便利的工具。
一个无赖配置文件的例子,你们可以自行测试。你需要下载并安装流浪汉(帮助地址http://docs.vagrantup.com/v2/installation/index.html)和virtualBox。所有东西都安装完毕后即可复制粘贴下面的文本保存为流浪档案,并将其放到一个目录下,比如流浪Hadoop .这个配置文件假定你机器内存至少32G,如果不适合可以自行编辑该文件。
# -*-模式:ruby -*-
# vi: set ft=ruby:
$master_script=SCRIPT
#!/bin/bash
cat /etc/hosts EOF
127.0.0.1本地主机
#以下几行是支持IPv6的主机所需要的
* 1个ip6-本地主机ip6-环回
fe00:0 ip6-本地网
ff00:0 ip6-mcastprefix
ff02:1 ip6-所有节点
ff02:2个ip6-全路由器
10.211.55.100虚拟机群集节点一
虚拟机群集节点2
虚拟机集群节点3
虚拟机群集节点四
虚拟机群集节点5
虚拟机群集客户端
安装卷曲的
REPOCM=${REPOCM:-cm4}
CM _ REPO _ HOST=$ { CM _ REPO _ HOST:-archive。云时代。com }
CM _ MAJOR _ VERSION=$(echo $ repo CM sed-e s/CM ([0-9] ).*/1/)
CM _ VERSION=$(echo $ repo CM sed-e s/CM ([0-9][0-9]* )/ 1/)
OS_CODENAME=$(lsb_release -sc)
OS _ DISTID=$(LSB _ release-si tr [A-Z] [A-Z])
if[$ CM _ MAJOR _ VERSION-ge 4];然后
cat/etc/apt/sources。列表。d/云时代-$回购cm。EOF列表
deb[arch=amd64]http://$ CM _ REPO _ HOST/CM $ CM _ MAJOR _ VERSION/$ OS _ DISTID/$ OS _ CODENAME/amd64/CM $ OS _ CODENAME-$ REPO CM contrib
deb-src http://$ CM _ REPO _ HOST/CM $ CM _ MAJOR _ VERSION/$ OS _ DISTID/$ OS _ CODENAME/amd64/CM $ OS _ CODENAME-$ REPO CM contrib
curl-s http://$ CM _ REPO _ HOST/CM $ CM _ MAJOR _ VERSION/$ OS _ DISTID/$ OS _ CODENAME/amd64/CM/archive。钥匙钥匙
添加键
空间键
容易得到更新
导出DEBIAN _ FRONTEND=非交互式
apt-get -q -y - force-yes安装Oracle-j2sdk 1.6云时代-管理器-服务器-数据库云时代-管理器-服务器云时代-管理器-管理器-守护进程
服务云era-scm-server-db initdb
服务云电子逆向拍卖服务器-数据库启动
服务云电子逆向拍卖服务器启动
脚本
$slave_script=SCRIPT
cat /etc/hosts EOF
127.0.0.1本地主机
#以下几行是支持IPv6的主机所需要的
* 1个ip6-本地主机ip6-环回
fe00:0 ip6-本地网
ff00:0 ip6-mcastprefix
ff02:1 ip6-所有节点
ff02:2个ip6-全路由器
10.211.55.100虚拟机群集节点一
虚拟机群集节点2
虚拟机集群节点3
虚拟机群集节点四
虚拟机群集节点5
虚拟机群集客户端
脚本
$客户端脚本=脚本
cat /etc/hosts EOF
127.0.0.1本地主机
#以下几行是支持IPv6的主机所需要的
* 1个ip6-本地主机ip6-环回
fe00:0 ip6-本地网
ff00:0 ip6-mcastprefix
ff02:1 ip6-所有节点
ff02:2个ip6-全路由器
10.211.55.100虚拟机群集节点一
虚拟机群集节点2
虚拟机集群节点3
虚拟机群集节点四
虚拟机群集节点5
虚拟机群集客户端
脚本
瓦格。configure( 2 )do config
配置。VM。定义:master do master
master.vm.box=precise64
主人。VM。提供商“VMware _ fusion”do v
v.vmx[memsize]=4096
主人。VM。提供者:virtualbox do v
v.name=虚拟机群集节点1
v.customize [modifyvm ,id,- memory , 4096]
主人。VM。网络:专用网络,ip: 10.211.55.100
主人。VM。主机名=虚拟机群集节点1
master.vm.provision :shell,inline=$master_script
配置。VM。定义:从1 do 从1
slave1.vm.box=precise64
奴隶1。VM。提供商“VMware _ fusion”do v
v.vmx[memsize]=5120
奴隶1。VM。提供者:virtualbox do v
v.name=虚拟机群集节点2
v.customize [modifyvm ,id,- memory , 5120]
奴隶1。VM。网络:专用网络,ip: 10.211.55.101
奴隶1。VM。主机名=虚拟机群集节点2
slave1.vm.provision :shell,inline=$slave_script
配置。VM。定义:从2 do 从2
slave2.vm.box=precise64
奴隶2。VM。提供商“VMware _ fusion”do v
v.vmx[memsize]=5120
奴隶2。VM。提供者:virtualbox do v
v.name=虚拟机群集节点3
v.customize [modifyvm ,id,- memory , 5120]
奴隶2。VM。网络:专用网络,ip: 10.211.55.102
奴隶2。VM。主机名=虚拟机群集节点3
slave2.vm.provision :shell,inline=$slave_script
配置。VM。定义:从3 do 从3
slave3.vm.box=precise64
奴隶3。VM。提供商“VMware _ fusion”do v
v.vmx[memsize]=5120
奴隶3。VM。提供者:virtualbox do v
v.name=虚拟机群集节点4
v.customize [modifyvm ,id,- memory , 5120]
奴隶3。VM。网络:专用网络,ip: 10.211.55.103
奴隶3。VM。主机名=虚拟机群集节点4
slave3.vm.provision :shell,inline=$slave_script
配置。VM。定义:从4 do 从4
slave4.vm.box=precise64
奴隶4。VM。提供商“VMware _ fusion”do v
v.vmx[memsize]=5120
奴隶4。VM。提供者:virtualbox do v
v.name=虚拟机群集节点5
v.customize [modifyvm ,id,- memory , 5120]
奴隶4。VM。网络:专用网络,ip: 10.211.55.104
奴隶4。VM。主机名=虚拟机群集节点5
slave4.vm.provision :shell,inline=$slave_script
配置。VM。定义:客户端do 客户端
client.vm.box=precise64
客户。VM。提供商“VMware _ fusion”do v
v.vmx[memsize]=4096
客户。VM。提供者:virtualbox do v
v.name=虚拟机群集客户端
v.customize [modifyvm ,id,- memory , 4096]
客户。VM。网络:专用网络,ip: 10.211.55.105
client.vm。主机名=虚拟机群集客户端
client.vm.provision :shell,inline=$client_script
目标
配置文件定义了6台vm,并指定了各伏特计的角色(遵循鼎晖投资角色):
虚拟机群集节点1:这是主节点;除了运行CM高手,它还应该运行namenode,辅助节点和求职跟踪系统.
虚拟机群集节点2:这是一个从机,它应该运行一个datanode和一个任务跟踪者.
虚拟机群集节点3:这是一个从机,它应该运行一个datanode和一个任务跟踪者.
虚拟机群集节点4:这是一个从机,它应该运行一个datanode和一个任务跟踪者.
虚拟机群集节点5:这是一个从机,它应该运行一个datanode和一个任务跟踪者.
虚拟机群集客户端:该机器充当集群的网关角色。
配置文件各配置项意义请点击:http://个文档。拉沃格起来。com/v2/lavogue文件/索引。html。特别指出的是依赖于不同的提供商,virtualbox或者vmwarefusion,定义的内存大小是不同的。大家看下,使用不同提供商
定制需要的环境是多么的简单!
上面的无赖配置文件做了另外一件重要的事情:在掌握和节点一节点自动安装肯睿经理。
要创建这个虚拟机集群,只需要到配置文件目录下(比如流浪Hadoop),在壳下运行:
流浪者up - provider=virtualbox
过一段时间(这个时间随你的机器性能而定),流浪运行完毕,意味着所有虚拟机安装配置完毕并且处于运行状态。
到此,你可以通过厘米管理用户界面(http://虚拟机集群节点1:7180)配置你的集群。
玩得开心!