前言:

     我们需要至少3台服务器来实现分布式,鉴于没那么多钱买真机器,从学习和开发的角度看,只有虚拟机一条路了。
软件选择:
    虚拟机使用VMware软件,因为主流而且资料比较多,学习成本较低。软件在【 链接:http://pan.baidu.com/s/1jI4pppc  密码:zvtt 】下,破解文件也在里面。
    虚拟OS毫无疑问是linux,鉴于centos开源,下载方便又不需要破解,故而采用之。【‪CentOS-7-x86_64-Everything-1511.iso】
         此外还有redhat版本【shrike-i386-disc2.iso】,centOs是开源系统,可以自己去官网下载。
    
OS安装:
    新建虚拟机,一般都是默认,只是需要选择镜像文件和虚拟机配置,master主机可以内存硬盘稍稍大些3/20,其他可以不用太大1/15,看你内存多少了。
    创建硬盘的时候可以选择定容量模式,预占可以防止虚拟机硬盘后期占用无限大,但是假如没有用到这么大的空间,其它部分就浪费了。
    一系列设置完毕后进入VM,开始安装OS。选择语言和区域,接下来选择安装选项、网络配置等。虚拟机集群里最多只需要一个带有UI界面的,
    因为可能需要安装一些开发工具。选择尽量从简,需要的再自行安装(最小安装)。 
    安装过程中可以不必配置网络和用户只需要设置root密码
    安装结束后进入系统设置,对于某些插件来说可能需要接受协议,选择1/2,continue,只要确定已经选择了正确的选项,其他的不需要管,重启即可。
 
设置网络(静态ip、为了方便连接外网,采用NAT方式而非桥接):
    1.网络适配器设置:
      虚拟机有虚拟机网卡,在网络连接适配器中,手动设置虚拟机ip,包括子网掩码和网关。
      网关可以认为:前3数字位与ip一致,最后一个多数情况下是2.表示这一个网段的所有的ip都由这个网关管理。或者说由这个网关去映射网络中的ip。
    2.VMware的虚拟网络编辑器:
     在编辑中选择虚拟网络编辑器,如果没有,就新增一条,连接方式为NAT,不使用DHCP自动ip,子网ip在这个网段之内都行?
      
      在NAT设置里,设置正确的ip、网关、子网掩码

      
      端口映射应该是设置一些特殊的端口,这里暂时不用。这样,这个虚拟网络就设置好了。后面需要将这个虚拟网络添加到虚拟OS中去。
      
     3.虚拟OS的设置
      通过以上的设置,外部环境已经设置好了,下面需要设置一下虚拟机的网卡。参考:
      步骤:
 
ifconfig -a
如果命令不可用,就用ip addr
在结果中找到网卡名称,ens33、eth0等等格式。我这里是ens34
vi /etc/sysconfig/network-scripts/ifcfg-之前的网卡名。
在网卡里输入内容【参考资料里有详细内容】
最后需要修改
/etc/sysconfig/network
实测可以主机能够ping通虚拟机,虚拟机可以ping通baidu,设置完毕。
       
系统软件安装
    有GUI界面的:
    安装VMtools,可实现本机向虚拟机传递文件,点击安装即可,原则是只要能拖文件就行了,不需要在虚拟机里手动安装
    裸控制台的是最小安装,许多功能都没有。没有鼠标导致控制台几乎不可用。解决办法如下:
    首先通过ip addr拿到网卡信息,参照上面的网络配置,调通网络。接下来:
yum install -y gpm
chkconfig -add gpm --可有可无
reboot
问题是:鼠标指针延迟太高,可用性极差。
    虽然鼠标比较卡,但是幸运的是可以通过xshell/secureCRT终端连接到VMOS上,这样就不存在不好用的问题了。
 
应用软件安装:
    鉴于虚拟机可以克隆,所以我们只需要在一台机器上安装我们需要的东西即可。
    目前主要有:java,带UI的OS可以通过VM tools来拖到OS里,不带UI的裸控制台可以通过sftp命令来下载其他OS里的文件:
    sftp:sftp root@192.168.204.3 输入密码 然后get 远程目录 本地目录 即可下载文件,或者put来发送文件,最后quit离开sftp。
    解压java的tar包,最好放到/usr/local下面。可以通过 mv 源文件名 修改后文件名,来实现重命名。
    vi /etc/profile 在后面添加环境变量
JAVA_HOME=/usr/local/java/jdk1.7
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
    source /etc/profile 使其生效 最后java -version来测试环境是否安装好。
    除了java之外,还需要安装zookeeper和jstorm等软件,这放到后面详细写。
 
虚拟机克隆,搭建集群
   虚拟机基本软件安装好之后,关闭电源,为了防止出现其他问题选择完全克隆(看了很多完全克隆和链接克隆的区别,还是不太理解),建议克隆轻量的裸控制台的,因为带UI的太大,启动太慢。
   克隆虚拟机之后,按照之前的网络设置:
   ip addr 查看网卡和MAC地址 ,然后再网卡设置里,vi /etc/sysconfig/network-scripts/ifcfg-之前的网卡名,主要修改IPADDR地址和HWADDR。
   之后设置vi /etc/hosts  vi /etc/sysconfig/network等,重启即可。
 
   
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

利用vmware 搭建分布式集群的更多相关文章

  1. 利用vmware搭建分布式集群

    背景:      我们需要至少3台服务器来实现分布式,鉴于没那么多钱买真机器,从学习和开发的角度看,只有虚拟机一条路了. 软件选择:     虚拟机使用VMware软件,因为主流而且资料比较多,学习成 ...

  2. Hadoop2.7.3+HBase1.2.5+ZooKeeper3.4.6搭建分布式集群环境

    Hadoop2.7.3+HBase1.2.5+ZooKeeper3.4.6搭建分布式集群环境 一.环境说明 个人理解:zookeeper可以独立搭建集群,hbase本身不能独立搭建集群需要和hadoo ...

  3. linux下利用httpd搭建tomcat集群,实现负载均衡

    公司使用运营管理平台是单点tomcat,使用量大,或者导出较大的运营数据时,会造成平台不可用,现在需要搭建tomcat集群,调研后,决定使用apache的httpd来搭建tomcat集群.以下是搭建步 ...

  4. Spark-1.6.1 Hadoop-2.6.4 VMware Ubuntu 分布式集群搭建 全过程

    本文从头开始零基础完全配置,适合小白. 本文在vmware中配置三台虚拟机,一台做Master,两台Worker,hadoop 和spark只需要在Master上配置,然后cp到worker上,包括配 ...

  5. 用VMWare搭建服务器集群不能上外网的三种模式下对应解决办法

    前言 决心要花费宝贵时间写下这篇心得,是因为从昨天晚上到今天上午被这个VMWare模拟搭建的服务器集群不能上外网的问题搞得很心烦,最后决定跟它杠上了!上午还通过远程连接得到了“空白”同学的帮助,在此表 ...

  6. kubernetes-通过VMware搭建k8s集群遇到的问题

    VMWare版本:14.13 Centos版本:CentOS-7-x86_64-DVD-1810.iso 遇到的问题:ping不通 报could not resolve host这个错误 解决办法:参 ...

  7. ubuntu14.04环境下利用docker搭建solrCloud集群

    在Ubuntu14.04操作系统的宿主机中,安装docker17.06.3,将宿主机的操作系统制作成docker基础镜像,之后使用自制的基础镜像在docker中启动3个容器,分配固定IP,再在3个容器 ...

  8. 利用nginx搭建tomcat集群

    1.tomcat集群 利用nginx对请求进行分流,将请求平均的分给不同的tomcat去处理,减少单个tomcat的负载量,提高tomcat的响应速度. 2.创建多个tomcat服务器(同一个服务器上 ...

  9. 利用Docker搭建Redis集群

    Redis集群搭建 运行Redis镜像 分别使用以下命令启动3个Redis docker run --name redis-6379 -p 6379:6379 -d hub.c.163.com/lib ...

随机推荐

  1. vim for windows 简介

    普通人的编辑利器--VIM (for windows) 本文转载自 FROM Vincent_czz2005年5月,我开始用VIM.此后渐入佳境,原来因版权自律而放弃盗版UltraEdit的遗憾一扫而 ...

  2. ssh设置

    方法一:在/etc/hosts.allow中添加允许ssh登陆的ip或者网段 sshd:192.168.1.2:allowsshd:192.168.1.0/24:allow在/etc/hosts.de ...

  3. 《利用Python进行数据分析: Python for Data Analysis 》学习随笔

    NoteBook of <Data Analysis with Python> 3.IPython基础 Tab自动补齐 变量名 变量方法 路径 解释 ?解释, ??显示函数源码 ?搜索命名 ...

  4. linux日志文件

    linux日志文件 在系统运行正常的情况下学习了解这些不同的日志文件有助于你在遇到紧急情况时从容找出问题并加以解决. /var/log/messages — 包括整体系统信息,其中也包含系统启动期间的 ...

  5. 窗体showModal

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...

  6. RUDP之一 —— UDP VS TCP

    原文链接 原文:http://gafferongames.com/networking-for-game-programmers/udp-vs-tcp/ 介绍 大家好,我是Glenn Fiedler, ...

  7. CocoaPods安装和使用

    CocoaPods是iOS最常用的第三方类库管理工具,绝大部分有名的开源类库都支持CocoaPods. CocoaPods是用Ruby实现的,要想使用它首先需要有Ruby的环境.幸运的是OS X系统默 ...

  8. sketchup

    1. clean start 1. 删除中间人物 2. windows---style 3. Windows---Model Info 2. 好的建模习惯 1. 正面朝镜头 View---ToolBa ...

  9. asp.net三层架构详解

    一.数据库 /*==============================================================*/ /* DBMS name:      Microsof ...

  10. SQL Server 日期字段作为查询标志字段的注意事项

    今天在做一个数据抽取程序时遇到一个问题困扰好久才解决,这不是技术问题,而是常识和细心的问题.写出来让大家引起重视一下. 由于之前的程序长期用Oracle,并且数据标志字段采用的日期类型.在Oracle ...