前言

在实际开发中我们经常会遇到很多预料之外的bug可能对操作系统有一定影响,从虚拟机作用来看可以帮助我们测试开发程序并避免重新安装某些软件,同时这是一个独立的环境保密性较高利于保护开发资料。

一 虚拟机

虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。在实体计算机中能够完成的工作在虚拟机中都能够实现。在计算机中创建虚拟机时,需要将实体机的部分硬盘和内存容量作为虚拟机的硬盘和内存容量。每个虚拟机都有独立的CMOS、硬盘和操作系统,可以像使用实体机一样对虚拟机进行操作。一般情况下我们的电脑只能运行一个操作系统,可能会因为工作或者学习的需要,我们希望使用其它的操作系统,但是不可能将自己 windows 操作系统更换成其它操作系统,在这种情况下就可以使用虚拟机来解决这个问题,在同一台电脑同时运行多个操作系统。

虚拟机软件会从电脑资源中分出一部分的CPU、内存、硬盘存储…等等,然后虚拟机软件把这些资源整合,组成了一台 “虚拟的电脑” 。在虚拟机上可以随意的运行其它操作系统,随意使用并不会对电脑正常系统产生影响,可以根据要求,随意分配内存。虚拟机系统和电脑所谓的“真机”环境是隔离的,用虚拟机操作,更随意,不用担心损坏系统而需要重做系统,即使虚拟机崩了,也不会对电脑自身造成影响,可以将虚拟出来的操作系统看作是另外一台电脑使用。

目前常见的虚拟机软件分别是 VMware 和 Virtualbox 。


1.1 VMware


官网:https://www.vmware.com/

VMWare虚拟机软件是一个“虚拟PC”软件,它使你可以在一台机器上同时运行二个或更多Windows、DOS、LINUX系统。与“多启动”系统相比,VMware采用了完全不同的概念。多启动系统在一个时刻只能运行一个系统,在系统切换时需要重新启动机器。

主要特性:使用Unity来集成客户机与宿主机,更加强大的VM录制与回放功能,支持智能卡和相关读卡器,增强型ACE,改进型3D图形支持

主要功能:不需要分区或重开机就能在同一台PC上使用两种以上的操作系统。完全隔离并且保护不同OS的操作环境以及所有安装在OS上面的应用软件和资料。不同的OS之间还能互动操作,包括网络、周边、文件分享以及复制粘贴功能。有复原(Undo)功能。能够设定并且随时修改操作系统的操作环境,如:内存、磁碟空

间、周边设备等等。热迁移,高可用性

1.2 VirtualBox

官网: https://www.virtualbox.org/

是一款开源虚拟机软件。VirtualBox 是由德国 Innotek 公司开发,由Sun Microsystems公司出品的软件,使用Qt编写,在 Sun 被 Oracle 收购后正式更名成 Oracle VM VirtualBox。Innotek 以 GNU General Public License (GPL) 释出 VirtualBox,并提供二进制版本及 OSE 版本的代码。使用者可以在VirtualBox上安装并且执行Solaris、Windows、DOS、Linux、OS/2 Warp、BSD等系统作为客户端操作系统。已由甲骨文公司进行开发,是甲骨文公司xVM虚拟化平台技术的一部分。

VirtualBox号称是最强的免费虚拟机软件,它不仅具有丰富的特色,而且性能也很优异。它简单易用,可虚拟的系统包括Windows(从Windows 3.1到Windows 10、Windows Server 2012,所有的Windows系统都支持)、Mac OS X、Linux、OpenBSD、Solaris、IBM OS2甚至Android等操作系统。使用者可以在VirtualBox上安装并且运行上述的这些操作系统。 与同性质的VMware及Virtual PC比较下,VirtualBox独到之处包括远端桌面协定(RDP)、iSCSI及USB的支持,VirtualBox在客户端操作系统上已可以支持USB 3.0的硬件装置,不过要安装 VirtualBox Extension Pack。

主要特性:免费、开源、轻量高效、多国语言 (含中文),任何人都可以借助它轻松在一台电脑上同时运行多个不同的操作系统!如在 macOS 上虚拟运行 Win10、在Win7 上安装 CentOS、在Win8上虚拟 XP、在 Ubuntu 上跑 Win 8 等等,完全可以满足大家工作、学习、开发甚至是玩游戏等需求。

主要功能:VirtualBox提供了一个组功能,使用户可以单独组织和控制虚拟机。除了基本组之外,任何VM也可以在多个组中,并且组可以嵌套在层次结构中,即组的组。通常,可以对组执行的操作与可应用于各个虚拟机的操作相同,即启动,暂停,重置,关闭(保存状态,发送关机,关机),丢弃保存状态,在文件系统中显示,排序。

二 CentOS

官网:https://www.centos.org/

2.1 CentOS系统介绍

CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS完全开源

2.2 CentOS系统介绍

硬件需求

CentOS对硬件配置的要求相对较低。就CentOS7而言,目前再用的大部分PC都能安装。

2.3 CentOS内核版本

当前CentOS最新版本为CentOS8,主流版本为CentOS7和CentOS6,仍然有部分老机器采用CentOS5及更低版本的CentOS。CentOS8基于Fedora 28和内核版本4.18、CentOS7则使用了3.10版本的Linux内核。CentOS6使用2.6版本的内核
目前Docker、OpenStack等主流云计算软件在CentOS6上的兼容性不太好,CentOS8具有混合云时代的所有强大的新特性和增强功能

CentOS ISO类型

DVD ISO:标准安装版

Everything ISO:对完整版安装盘的软件进行补充,集成所有软件

Minimal ISO:安装一个非常基本的系统,具有一个功能系统所需的最少的软件包

三 系统备份

有时候我们希望在每个节点对虚拟机进行备份,预防系统出现问题不至于重头再来,这里备份的方式有两种,一种是克隆,一种是快照。

3.1 快照

对某一个特定文件系统在某一个特定时间内的一个具有只读属性的镜像。当你需要重复的返回到某一系统状态,又不想创建多个虚拟机的时候,就可以使用快照功能。

3.2 克隆

一个虚拟机的克隆就是原始虚拟机全部状态的一个拷贝,或者说一个镜像。克隆的过程并不影响原始虚拟机,克隆的操作一但完成,克隆的虚拟机就可以脱离原始虚拟机独立存在,而且在克隆的虚拟机中和原始虚拟机中的操作是相对独立的,不相互影响。克隆过程中,VMware会生成和原始虚拟机不同的MAC地址和UUID,这就允许克隆的虚拟机和原始虚拟机在同一网络中出现,并且不会产生任何冲突。 VMware支持两种类型的克隆: 完整克隆、链接克隆


3.3 克隆与快照的区别:

四 VMware 的下载

打开官网进入以下页面,点击资源

点击 产品下载

我们要下载的是 VMware 里面的虚拟机软件,在搜索框中输入 vmware Workstation Pro ,就能看到不同版本的 Vmware虚拟机软件,选择你想要下载的版本,比如说我就选择最新版本 vmware workstation pro 16 ,点击搜索

接下来点击 DOWNLOAD NOW


五 VMware 的安装



在这里我们需要注意的是,这里它会给我一个默认的安装地址,是安装到 C 盘的,你可以选择你想要安装的路径,点击 更改 后即可选择目录,别放在带有中文或者特殊字符的目录下,我就把它放到之前创建的 VMware-workstation 文件夹中,其余步骤点击下一步即可

安装完成

5.1 验证是否安装成功

为了验证虚拟机是否安装成功,可以通过以下步骤查看,点击更多网络适配器选项

如果在网络连接窗口中看到这两个连接设备就说明虚拟机安装成功了

5.2 CentOS 映像下载

打开官网,这里选择 CentOS Linux 版

进入以下页面之后,点击箭头所指的地方

就会展示 CentOS-Linux 的镜像列表,找一个镜像去下载 CentOS

六 CentOS 安装到 VMware

首先 创建新的虚拟机

配置类型的话就选择 典型(推荐) 然后 下一步

选择 稍后安装操作系统(s)

客户机操作系统勾选 Linux(L) ,版本选择你 iso镜像文件 对应的版本,我这里就是 CentOS 7 64位 了,再点击 下一步

这里需要给你的虚拟机起个名字,它默认是下载到 C 盘的,这里建议不要放在 C 盘下

指定磁盘容量,默认是 20GB,勾选 将虚拟磁盘拆分成多个文件(M) ,点击 下一步

点击 自定义硬件©…

点击 新 CD/DVD(IDE) ,右边会出现 设备状态 和 连接 的一些配置,在 连接 配置下勾选 使用 ISO 映像文件(M),点击 游览 ,选择你之前下载好的 CentOS 7 映像文件 ,再 关闭 该硬件窗口

这时你就能在 VMware Workstation 的主页面看到你刚刚新建好的虚拟机了!

七 启动虚拟机安装

选择语言,此处选择中文,安装过程中界面显示是中文

软件选择项选择最小安装,其他的根据提示完成即可

设置ROOT密码,统一设置为123456

等待安装完成重启即可
关闭虚拟机
VMware虚拟机–编辑–虚拟网络编辑器–选择NAT模式–NAT设置–网关IP(192.168.67.2)


右键VMnet8虚拟网卡–属性–网络–Internet协议版本4(TCP/IPv4)
此处要使用手动设置IP,此处IP和之前看到网关地址需一致
把IP地址设置为192.168.67.110
网关和之前看到网关地址保持一致192.168.67.2

将虚拟机文件夹复制三份,并分别为node01,node02,node03

重新生成Mac地址,在虚拟机关机的情况下右键–设置–硬件-网络适配器-NAT模式–高级–Mac地址–生成

启动3台虚拟机,设置IP地址,修改配置文件

vi /etc/sysconfig/network-scripts/ifcfg-ens33

修改如下:

BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.67.110
NETMASK=255.255.255.0
GATEWAY=192.168.67.2
DNS1=8.8.8.8
DNS2=114.114.114.114


网络重启

systemctl restart network

验证是否网络通畅

ping Baidu.com

八 安装过程时遇到的问题


电脑如何开启虚拟化?
现在大部分电脑都是默认支持虚拟化的,但是有些电脑是不是,这个时候就需要开启 电脑的虚拟化
大概过程就是:

开启 / 重启 电脑时打开 BIOS (不同的电脑开启 BIOS 的方式可能不同)
找到 Virtualization 配置,将其设置为 【Enabled】,并且保存
重启 电脑

CentOS7虚拟机节点搭建教程相关推荐

  1. eth2.0 节点搭建教程

    本文以Centos7环境为例,同时提供了主网和测试网的eth2.0节点搭建教程.阅读时需要特别注意加入的网络和参数. eth版本 主网代号 测试网代号 eth1.0 mainnet goerli et ...

  2. 【k8s】虚拟机k8s搭建教程

    文章目录 前言 一.环境配置 1.系统镜像 2.环境要求 3. 静态ip配置 4.关闭防火墙 5. 关闭selinux 6. 关闭swap(k8s禁止虚拟内存以提高性能) 7. 配置host 8. 设 ...

  3. VDS超级节点搭建教程

    1.首先安装putty软件:https://www.putty.be/latest.html 下载远程操作软件 https://filezilla-project.org/download.php?t ...

  4. centos7虚拟机安装mysql_Linux CentOS7 虚拟机安装mysql教程

    a)下载mysql源安装包: [root@localhost ~]# wgethttp://dev.mysql.com/get/mysql57-community-release-el7-8.noar ...

  5. Nyzo验证者搭建教程(可能是最适合程序员参与的区块链)

    Nyzo可能是最适合程序员参与的区块链项目. 图文解析Nyzo运行机制(新型区块链共识机制) Nyzo与PoW或PoS共识机制不同,区块信息由Cycle中的Nyzo验证者轮番进行验证,Cycle验证者 ...

  6. [hadoop笔记]基于CentOS7虚拟机搭建Hadoop完全分布模式(3个节点)

    文章目录 1. 安装前准备 ① 虚拟机配置 ⑤克隆虚拟机 ⑥ 对每个主机固定IP地址,修改主机名,做主机映射 ⑦ 免密登录设置 2. 搭建Hadoop完全分布模式 ① 修改Hadoop配置文件 ③ 分 ...

  7. 如何搭建可正常使用的centOS7系统虚拟机节点

    虚拟机的定义 虚拟机(英文全称:Virtual Machine)是指通过软件模拟的具有完整硬件系统功能的.运行在一个完全隔离环境中的完整计算机系统,目前流行的虚拟机软件有VMware(VMWare A ...

  8. 大数据开发·关于虚拟机Hadoop完全分布式集群搭建教程

    hadoop完全分布式集群搭建 一.搭建准备 1.安装VMware虚拟机 2.Xshell 7 远程客户端及Xftp 7安装 3.搭建模板虚拟机hadoop100 配置虚拟机网络 为虚拟机普通用户配置 ...

  9. CentOS7虚拟机搭建xwiki

    和我们使用的confluence一样,xwiki也是wiki的一种,只不过xwiki是免费的,而我们使用的confluence是破解版的.下面就来看一看xwiki是如何搭建在centos7虚拟机上的. ...

最新文章

  1. java selenium (九) 常见web UI 元素操作 及API使用
  2. Windows x64内核学习笔记(三)—— SMEP SMAP
  3. centos 对已有卷扩容_centos LVM扩容 添加磁盘
  4. python中cmd全称_【转】Python中执行cmd的三种方式
  5. threadlocal内存泄露_深入理解 ThreadLocal
  6. 无锁并发框架Disruptor学习入门
  7. [源码和文档分享]基于汇编语言实现打字练习软件
  8. python模块库下载_Python及其常用模块库下载及安装
  9. 开发交接文档_为开发人员创造更好的设计交接体验
  10. HTML 标题居中 小小积累
  11. java实现界面化,java实现图形化界面
  12. mysql读写分离实现方式_MySQL实现读写分离的两种经典方案
  13. Edward Frenkel关于几何化朗兰兹纲领的采访
  14. 游戏排行榜实现mysql_游戏中百万用户排行设计与实现
  15. onlyoffice 自动保存_onlyoffice服务在线编辑文档保存解析
  16. already opened by ClassLoader
  17. js视频封面(截帧)
  18. SpringMVC——MVC思想、前端控制器、SpringMVC概述、编写第一个SpringMVC程序
  19. vue2 + tinymce 包含自定义图片上传及视频、音频上传
  20. (matlab代码分享,可运行) 多技能员工排班调度多目标优化(技能熟练度包含学习型、遗忘型)(Part 1)

热门文章

  1. 在华为云服务器安装Anaconda搭建环境体验深度学习——你值得了解一下
  2. 中国矿业大学-算法概论-作业1
  3. 面向适航符合性的智能航电系统认证研究进展
  4. 客户成功不好,会员运营好
  5. matlab function关键字无效,matlab function函数调用, 未定义函数
  6. Memcached 与Redis缓存服务器介绍
  7. 大一学生的疑惑:考研、30岁挨踢
  8. 如何在windows上调试安卓机谷歌浏览器上的页面
  9. 网络通信-基本概念:网络、IP地址、端口、socket
  10. 自己动手写一个简单的php模板引擎