VMware搭建多台linux虚拟机内网环境

2023-05-16

现在的环境经常要使用linux系统组成的局域网环境来做各种测试,使用windows的用户如何如何在一台机器上模拟多台linux系统组成的linux集群环境呢?这就要用到虚拟化技术了,这篇讲解一下如何利用VMware软件在windows下模拟出多台linux服务器。

一.工具准备

1.安装VMware软件

到VMware官网下载安装,本人测试使用的15.0版本

2.下载ubuntu16.04的安装包

ubuntu-16.04.3-server-amd64.iso

二.WMware虚拟网络配置

配置VMware的虚拟网络,本篇测试使用的NAT网络模式,也可以使用敲击模式的网络模式。

运行VMware软件,点击编辑->虚拟网络编辑器打开虚拟网络编辑页面,添加网络,选择VMnet1.如图

上图是已经配置好的网络,仅提供示意参考。

选择VMnet1网络,在下面VMnet信息栏

1)选择NAT模式

2)使用本地DHCP勾选项去掉(如果保留DHCP配置,则每次该网络中虚拟机启动都会重新分配IP,会导致两次启动后的虚拟机的IP地址不一致,即同一台虚拟机IP地址不固定)

以上两部操作如图:

3)点击NAT设置,配置虚拟网络的网关地址,本次使用的10.0.0.2

以上就配置好了一个NAT模式的虚拟局域网络。

三.虚拟机镜像制作

      如果每次安装一个虚拟机都完整的走一遍完整的安装流程,这个比较耗时间,有一种解决的方式,就是先制作好一个具备基础功能的虚拟机。这个作为镜像,在这个镜像上不需要再次进行安装流程,只需要简单的配置,就可以快速启动一个虚拟机环境。

1.点击文件->新建虚拟机,打开安装虚拟机界面。选择自定义。

2.点击下一步,遇到要选择虚拟机镜像,选择准备好的虚拟机镜像文件。

3.设置虚拟机名称等,一直往下,选择虚拟机网络页面时选择网络类型为NAT。

4.一路向下,来到最后的完成页面,点击自定义硬件,配置网络。

点击自定义后,选择网络适配器选项,右边选择自定义虚拟网络,下拉栏选择VMnet1虚拟网络。

点击关闭,然后点击完成,虚拟机就进行安装环节。

5.安装过程网络配置。安装的过程中会进入到如下页面,这是提示要进行网络配置,原因是在配置虚拟网络VMnet1的时候关闭了DHCP,虚拟网络不会给虚拟机分配IP地址,所以需要手动给虚拟机分配IP地址,如果是开启了DHCP,则不需要手动配置IP地址。

点击continue,一直ENTER,来到下面界面。

这是提示配置IP地址,输入IP地址10.0.0.10(根据实际需要自己配置),进入下一步。

后面的子网掩码,保留默认的255.255.255.0,下一步进入到网关配置。

这里的默认的网关配置是10.0.0.1,改为10.0.0.2。

6.做完上述网络配置后,安装过程会自动继续,后面安装过程不需要配置,安装完成后会出现如下登录界面。

输入在之前配置虚拟机的用户名密码界面设置的用户名和密码登录。

7.经过上述步骤其实已经可以作为一个镜像来刻录其他的虚拟机了,但是这个镜像还可以做一些优化,让其更加完善。

ubuntu16.04的默认是没有SSH服务,vi工具也有缺陷,需要修复下。

1)vi编辑文件会出现方向键无法使用,修复

sudo apt-get remove vim-common
sudo apt-get install vim

2)安装ssh

sudo apt-get install openssh-server

默认是不能用root用户远程登录的,若要ssh支持root远程登录,则可以如下:

编辑ssh配置文件:

sudo vi /etc/ssh/sshd_config

注释行:PermitRootLogin prohibit-password,
在后边加上一句:PermitRootLogin  yes

重启服务器。

经过上面的操作,就完成了一个基础镜像的制作,下面可以真正制作虚拟机了。

四.克隆生成虚拟机

设置要创建的两个虚拟机的IP如下:

虚拟机1:10.0.0.20

虚拟机2:10.0.0.30

1.利用上面做好的虚拟机镜像,确保镜像是关闭状态。右击镜像,选择管理->克隆,进入如下界面。

2.点击下一步,中间设置采用默认选项,来到如下界面。

这里有两个选项。

连接克隆是快速克隆,直接在原镜像基础上修改。如果原镜像发生改变,则会影响到克隆的虚拟机。

创建完整克隆相当于复制一份原镜像,然后复制的镜像上面修改,克隆速度慢,但是远镜像后期的改变不会影响克隆的虚拟机。

选择快速克隆。

3.后续设置选择默认,最后完成克隆后,克隆完成后会线程一个新的虚拟机,显示在左侧的虚拟机列表。这时候虚拟机还没有启动。

4.在启动克隆好的虚拟机之前,还有一个重要的要设置的地方,右击克隆机,选择设置。

5.点击高级,选择生成MAC地址,重新生成MAC地址,否则,克隆机的MAC地址与镜像的MAC地址相同,会造成两者不能同时联网冲突。

6.配置重新生成MAC地址后,启动克隆虚拟机,现在克隆机的IP地址还是镜像的地址,需要对IP地址进行修改。

sudo vi /etc/network/interfaces

修改IP地址为10.0.0.20,然后保存,重新启动网络

/etc/init.d/networking restart

重启网络之后,查看IP地址,可以看到已经改变过来。

这就完成了虚拟机1的创建。

7.按照上面的操作克隆启动虚拟机2,只是IP设置为10.0.0.30。

五.测试网络连接状况

完成上面两台虚拟机创建后,测试包括两个方面

1.两台虚拟机都可以访问互联网。

在虚拟机1上ping 百度,成功,虚拟机2也一样。

2.两台虚拟机之间可以相互PING通。

在虚拟机1上Ping虚拟机2,成功。

在虚拟机2上ping虚拟机1,成功。

测试成功,这样就完成了两个节点的lunux虚拟机内网环境搭建。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VMware搭建多台linux虚拟机内网环境 的相关文章

  • 无需 root 访问权限即可安装 zsh? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 有可能 以及如何 我确实需要在几台具有 ssh 访问权限 但没有 root 访问权限 的远程计算机上使用此功能 下载 zsh wget O zsh t
  • 运行此处编译的 C 程序会导致在另一台服务器上找不到 GLIBC 库错误 - 是我的错还是他们的错?

    此处编译的 C 程序在我们的 Ubuntu 服务器上运行良好 但是当其他人尝试在他们的特定 Linux 服务器上运行它时 他们会收到以下错误 myprog install lib tls libc so 6 version GLIBC 2
  • ubuntu 的 CSS 更少(并且自动编译)? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我尝试过 simples 但现在 l
  • 在 Linux 控制台中返回一行?

    我知道我可以返回该行并用以下内容覆盖其内容 r 现在我怎样才能进入上一行来改变它呢 或者有没有办法打印到控制台窗口中的特定光标位置 我的目标是使用 PHP 创建一些自刷新的多行控制台应用程序 Use ANSI 转义码 http en wik
  • SMP 上如何处理中断?

    SMP 对称多处理器 多核 机器上如何处理中断 内存管理单元是只有一个还是多个 假设两个线程 A 和 B 运行在不同的内核上 同时 访问页表中不存在的内存页面 在这种情况下 将会出现页面错误 并从内存中引入新页面 将会发生的事件的顺序是什么
  • 比较linux中的两个未排序列表,列出第二个文件中的唯一项

    我有 2 个包含号码列表 电话号码 的文件 我正在寻找一种列出第二个文件中第一个文件中不存在的数字的方法 我尝试过各种方法 comm getting some weird sorting errors fgrep v x f second
  • 如何在linux中使用iptables将http和https流量转发到透明代理[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 这个问题似乎不是关于主要由程序员使用的特定编程问题 软件算法或软件工具 help on topic 如果您认为该问题与主题相关另一个 St
  • Apache LOG:子进程 pid xxxx 退出信号分段错误 (11)

    Apache PHP Mysql Linux 注意 子进程 pid 23145 退出信号分段错误 11 tmp 中可能存在 coredump 但 tmp下没有找到任何东西 我怎样才能找到错误 PHP 代码中函数的无限循环导致了此错误
  • 查找并删除超过 x 天的文件或文件夹

    我想删除超过 7 天的文件和文件夹 所以我尝试了 17 07 14 email protected cdn cgi l email protection find tmp mindepth 1 maxdepth 1 ctime 7 exec
  • 从哪里获取 iostream.h

    我正在尝试在 Linux 中做一些事情 但它抱怨找不到 iostream h 我需要安装什么才能获取此文件 这个标准头的正确名称是iostream没有扩展名 如果您的编译器仍然找不到它 请尝试以下操作 find usr include na
  • 由于 abi::cxx11 符号导致的链接问题?

    我们最近收到一份报告 因为GCC 5 1 libstdc 和双 ABI http gcc gnu org onlinedocs libstdc manual using dual abi html 它似乎Clang 不知道 GCC 内联名称
  • 如何使用 VSCode 调试 Linux 核心转储?

    我故意从我使用 VSCode 编写的 C 应用程序生成核心转储 我不知道如何调试核心转储 有没有人愿意分享这方面的经验 更新 我相信我现在已经可以使用了 我为核心文件创建了第二个调试配置 我需要添加指向生成的转储文件的 coreDumpPa
  • 如何在 bash_profile 文件中添加导出语句?

    我正在尝试了解是否必须添加导出语句来在 bash profile 文件中设置变量 我该怎么做呢 例如 如果我必须添加 export AX name 那么我应该将其简单地写在文件末尾还是我还需要编写其他内容 简单写一下export AS na
  • 为什么无论 -rdynamic 如何,backtrace 都不包含 Objective-C 符号?

    Update 我正在 Linux 上使用 GNU 运行时 问题是not发生在带有 Apple 运行时的 MacOS 上 更新2 我在 MacOS 上编译了 GNU 运行时并用它构建了示例 该错误确实not发生在带有 GNU 运行时的 Mac
  • Linux >2.6.33:可以使用 sendfile() 来实现更快的“猫”吗?

    必须将大量大文件连接成一个更大的单个文件 我们目前使用 cat file1 file2 output file but are wondering whether it could be done faster than with that
  • 如何在 Linux 中向热敏打印机发送 ESC/POS 命令

    我正在尝试在热敏打印机上发送 ESC POS 命令 但每当我发送它们时 热敏打印机都会将它们打印为文本 而不是作为命令执行它们 我在 prn 文件中编写这些命令 每当我执行 lp 命令来打印文件时 这些 prn 文件也会被打印 但作为文本
  • grep 彩色线条

    我编写了一个简单的 PHP shell 脚本 它解析文件并输出某些元素 它产生大量的输出 采用不同的 bash 颜色 绿色表示正常 黄色表示警告 红色表示错误等 在开发过程中我想过滤掉一些行 例如 所有包含红色文本的行 我可以使用grep
  • 如何在 Ubuntu/Linux 发行版中安装 Tesseract-OCR 3.03?

    我和一个朋友有兴趣为 CV 项目训练 tesseract OCR 引擎 我们尝试使用一些包装器 例如 PyTesser 和 pyocr 但结果目前不如我们需要的那么准确 因此 我们希望尝试训练超立方体以更好地实现我们的目的 即识别食品标签上
  • 使用 Python 将阿拉伯语或任何从右到左书写系统的字符串打印到 Linux 终端

    非常简单的例子是 city print city 我期望输出是 但实际上输出是相反的字符串 字母看起来有点不同 因为它们有开始 中间和结束形式 我无法将其粘贴到此处 因为复制粘贴会再次更正字符串的顺序 如何在 Linux 终端上正确打印阿拉
  • Linux 上的“软/硬 nofile”是什么意思

    当我尝试在RedHat EL5上安装软件时 我得到了错误 软 硬nofile的期望值是4096 而默认值是1024 我设法增加了这个数字 但我不知道参数是什么 他们指的是软链接和硬链接吗 我改变的方法是 a 修改 etc security

随机推荐

  • 代码函数调用关系图

    代码函数调用关系 Graphviz 43 CodeViz http www linuxidc com Linux 2015 01 111501 htmCallgraph xff1a 静态分析 C 程序函数调用关系图cflow 43 grap
  • Python元组(tuple),字符串,读取文件。

    目录 tuple xff1a tuple格式 xff1a tuple和列表的区别 xff1a 查询类型小方法 xff1a string 字符串 xff1a 字符串格式 xff1a 三种格式的区别 xff1a 1 单引号 xff0c 双引号换
  • 各种课程教学安排

  • 驱动测试时出现can't open 的一种情况

    提前声明 xff1a 本程序是使用class device create函数导致的错误 xff0c 如果不是使用该函数不要对号入座 xff0c 谢谢 在今天编写完驱动程序 xff0c 然后使用测试程序测试时 xff0c 却出现了can 39
  • Ubuntu 20.04上安装ROS

    文章目录 前言一 Ubuntu 20 041添加ROS源2更新软件源3配置及更换最佳软件源4安装ROS5初始化rosdep6设置环境变量7安装rosinstall8验证是否安装成功 总结 前言 在虚拟机VMware上安装了Ubuntu 20
  • 头文件只能放变量的声明但是不能放定义

    一般的做法都是在头文件 h 中声明变量 xff0c 然后在源文件 c 中定义变量 如果在头文件中定义变量 xff0c 这个变量就有了实体 xff0c 如果a c和b c一起引用了头文件head h xff0c 就等于同时创建了两个同样名字的
  • 使用策略模式优化大量if...else代码

    一 场景 假如我们有一个订单业务 xff0c 根据会员的类型不同 xff0c 使用if else判断 xff0c 然后去执行不同的业务操作 xff0c 伪代码如下 xff1a span class token keyword public
  • 操作系统笔记

    1 操作系统的特性 xff1a 并发性 共享性 异步性和虚拟性 2 特权指令与非特权指令 xff1a xff08 1 xff09 特权指令 只能在管态才能执行的指令为特权指令 这些指令一般只有操作系统才能执行 xff0c 而一般用户程序不能
  • 【计算机网络原理】根据IP地址和子网掩码计算网络地址

    背景 最近做计算机网络原理真题 xff0c 根据ip地址和子网掩码计算网络地址的过程总结一下 计算步骤 1 将IP地址 xff0c 子网掩码转换为二进制 2 之后将两个二进制进行与运算 xff0c 再将结果转为十进制 与 xff1a 相应二
  • C++学习笔记命名冲突和命名空间介绍

    C 43 43 命名冲突和命名空间介绍 假设您是第一次开车去朋友家 xff0c 给您的地址是 Mill City 的 245 Front Street 到达米尔城后 xff0c 您拿出地图 xff0c 却发现米尔城实际上有两条不同的前街 x
  • Docker的网络模式和如何跨主机通信(转载链接)

    https blog csdn net smooth00 article details 82842234 utm medium 61 distribute pc relevant t0 none task blog BlogCommend
  • java面试题2

    编程题 xff1a 1 xff0e 现在输入n个数字 xff0c 以逗号 xff0c 分开 xff1b 然后可选择升或者降序排序 xff1b 按提交键就在另一页面显示 按什么 排序 xff0c 结果为 xff0c xff0c 提供reset
  • 总线带宽 - 计算

    计算步骤 xff1a 1个时钟周期 61 1 总线时钟频率 xff1b 总线传输周期 61 1个时钟周期 总线周期包含时钟周期个数 xff1b 总线带宽 61 每个总线周期传送的数据 总线传输周期 xff1b 单位转化 xff1a 1MHz
  • centos7.5部署高可用k8s(一) ---- 部署LB负载均衡haproxy+keepalived

    在centos7 5系统部署一个k8s高可用集群 k8s版本采用v1 15 2 docker版本18 09 根据官方的文档 xff0c 部署集群前首先要部署负载均衡器 xff0c 这里简要记录下LB负载均衡器的部署过程 环境说明 节点IP备
  • centos7.5部署高可用k8s(二) ---- 部署k8s v1.15.2

    部署好LB以后 xff0c 接下来就正式开始部署k8s 部署前准备 1 各个节点设置注解名和域名解析 xff0c 包括两个haproxy节点 root 64 k8s master01 hostnamectl set hostname k8s
  • centos7.5部署高可用k8s(三) ---- 外置etcd集群

    前面的高可用集群的etcd是与control plane部署在同一个节点上的 xff0c 两者会相互影响 xff0c etcd还有一种部署方式是与control plane分离部署 xff0c 提供更高的稳定性 这里部署一个3节点的etcd
  • 抢单模式的研究

    最近在做关于公司的一个社区的项目 xff0c 在其中用到了一些业务模式 xff0c 对这些模式的应用做一个简单的总结 这是一个类似滴滴的抢单模式的项目 xff0c 对于抢单模式的实现做一个小小的总结 主要用到了三个表 问题表q 问题流转表q
  • mysql中的事务提交

    今天被问到了一个mysql自动事务提交的问题 xff0c 就着这个问题对mysql的事务提交机制进行了一些研究 xff0c 将测试的结果总结下 一 mysql的自动事务提交设置 mysql中的自动事务提交是通过参数autocommit配置的
  • python 图像重叠分块恢复

    图像重叠分块请阅读这篇文章 xff1a https blog csdn net coolsunxu article details 102639674 import cv2 import math import numpy as np im
  • VMware搭建多台linux虚拟机内网环境

    现在的环境经常要使用linux系统组成的局域网环境来做各种测试 xff0c 使用windows的用户如何如何在一台机器上模拟多台linux系统组成的linux集群环境呢 xff1f 这就要用到虚拟化技术了 xff0c 这篇讲解一下如何利用V