| 关键词: 命令 宿主机 网络 网卡 按钮 系统 配置 模式 VirtualBox 选择 |
版权声明本文由“开发者手册”原创,如需转载,请标明出处。 基本介绍作为一个软件开发者,总想自己搭个服务器、组个集群、整整docker、玩玩k8s,什么?系统搞挂了.... 怎么能快速重来? 一般我们会有一台工作笔记本(宿主机),可以通过VirtualBox安装多台centos系统来搭建本地开发环境。网络要实现宿主机与虚拟机之间的互通、虚拟机与虚拟机之间的互通、虚拟机可以访问外部网络和同一局域网内的其他主机、同一局域网中的其他主机不能访问虚拟机。 系统环境宿主机环境:MacBook Pro 2015,macOS Catalina 10.15.6 VirtualBox:6.1 centos镜像版本:CentOS-7-x86_64-Minimal-1804.iso 说明:安装包在我共享的网盘里,如果需要可以+关注私信我 VirtualBox安装和基本设置VirtualBox安装好后的主页面如下图所示 VirtualBox四种常见网络配置方案 Network Address Translation(NAT,网络地址转换模式):在NAT模式下虚拟机访问网络是通过主机提供的,虚拟机本身并不存在于网络中,虚拟机通过DHCP获得的虚拟ip通常为(10.0.2.X)。 Bridged Adapter(桥接模式):在桥接模式下,虚拟机和主机的网卡之间就像架设了一座桥,使虚拟机可以直接接入到网络中。虚拟机能被分配到一个真实IP,所有的网络功能和真机一样。 Internal(内部网络模式):在内部网络模式下,虚拟机与外网完全断开,只能实现虚拟机和虚拟机之间的网络互相访问。 Host-Only Adapter(主机模式):在主机模式下,VirtualBox会在宿主机上模拟出一张虚拟网卡(vboxnet:192.168.56.1)专门用于提供虚拟机使用。所有的虚拟机都会连接到该网卡上,虚拟机通过DHCP获得的虚拟ip通常为(192.168.56.X)。 配置本地VirtualBox网络环境 我们会采用NAT+Host-Only配置方式来实现需求。NAT模式是用于满足虚拟机外网的访问,Host-Only模式是设置固定IP使虚拟机和宿主机可以互相访问。 创建NAT网络环境 1、点击全局设定 2、选择网络->点击添加->启动网络,参数保持默认即可 创建Host-Only网络环境 1、选择网络菜单 2、点击创建按钮,会生成一个vboxnet0的网络配置,网段为:192.168.56.X,DHCP服务器可以启用也可以关闭,我这边选择关闭,因为后续会配置为固定IP。 安装centos操作系统安装步骤 1、点击新建按钮 2、输入基本信息后点击创建按钮 3、设置磁盘大小后点击创建按钮 4、点击设置->网络来设置网卡信息 5、点击启动按钮 6、出现选择操作系统镜像页面,点击选择按钮 再点击Add按钮,在弹出框中选择本地镜像文件,最后点击choose按钮 再点击start按钮 7、此时会显示安装页面 ![]() 8、选择安装语言 9、设置时区 ![]() 10、选择安装路径 11、点击Begin Installation开始安装 12、设置root密码 13、点击Reboot按钮重启 14、重启后使用root用户登录系统 centos基本配置 配置网卡 输入ip addr命令查看网络信息,发现有enp0s3和enp0s8两个网卡。 enp0s3为NAT模式对应的网卡,不配置固定IP。 enp0s8为Host-Only模式对应的网卡,配置为固定IP。 设置enp0s3网卡 命令:vi /etc/sysconfig/network-scripts/ifcfg-enp0s3 修改:ONBOOT=yes ![]() 保存退出后。 输入命令:systemctl restart network重启网络服务。 此时再通过命令:ip addr查看网络配置,发现enp0s3这张网卡被分配到ip(10.0.2.9)了: 此时外网访问应该也通了,ping www.baidu.com后结果如下: ![]() 设置enp0s8网卡: 命令:vi /etc/sysconfig/network-scrirpts/ifcfg-enp0s8 修改如下: ![]() 我这边把固定IP设置为:192.168.56.56 通过命令:systemctl restart network重启网络服务。 此时通过命令:ip addr查看,发现enp0s8网卡的固定IP也生效了。 在宿主机通过ping 192.168.56.56命令发现宿主机可以访问虚拟机了。 该虚拟机通过ping 192.168.56.1发现虚拟机也可以访问宿主机。 ![]() 配置主机名 命令:hostnamectl --static set-hostname demo56 说明:设置主机名为demo56。 关闭防火墙 命令:systemctl stop firewalld && systemctl disable firewalld 输出: Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. 关闭SELinux 命令:setenforce 0 命令:vi /etc/selinux/config 修改:SELINUX=disabled 关闭swap和取消swap挂载 命令:swapoff -a && sysctl -w vm.swappiness=0 结果:vm.swappiness = 0 命令:vi /etc/fstab 修改(加#号注释):#/dev/mapper/centos-swap swap swap defaults 0 0 设置localadmin用户 由于一般不直接用root用户来做操作,所以我们通过创建localadmin用户替代root用户。 以下操作在root用户下执行 创建用户组 命令:groupadd localadmin 创建用户 命令:useradd localadmin -m -s /bin/bash -d /home/localadmin -g localadmin 参数说明:
设置登录密码 命令:passwd localadmin 设置sudo权限 命令:visudo -f /etc/sudoers 新增: localadmin ALL=(ALL) NOPASSWD: ALL 说明: NOPASSWD: ALL 表示执行所有操作都无需验证密码 安装基础软件 在localadmin用户下执行 在线安装:
安装docker(17.03.0-ce,安装包在我的共享网盘里有提供): 命令:sudo yum -y install docker-ce-selinux-17.03.0.ce-1.el7.centos.noarch.rpm 命令:sudo yum -y install docker-ce-17.03.0.ce-1.el7.centos.x86_64.rpm 设置docker开机启动:sudo systemctl enable docker 启动docker:sudo systemctl start docker 查看docker是否启动成功:docker -v 制作centos备份系统通过前面的步骤,我们已经安装好了centos系统,并做了基本的配置和安装了基础软件,服务器基本可以投入使用了。但是为了不重复造轮子,我们可以通过VirtualBox把当前这个状态的系统备份下来作为基础系统,后续的虚拟机都从这个系统获取。 先关闭当前centos系统。 1、选择备份系统菜单 2、点击生成按钮 3、输入备份名称和备份描述后点击OK按钮 4、创建成功 根据备份系统创建新虚拟机注意:做此操作时,最好保持被复制的系统处于关闭状态,以防止出现ip冲突等问题。 现在我们要基于前面备份的基础系统来创建真正投入使用的系统 1、在要被备份的虚拟机上点击复制按钮 2、填写新虚拟机的名称和存放路径 ![]() 3、选择副本类型 ![]() 4、选择备份类型 ![]() 5、点击复制后,发现server111这台虚拟机创建成功 对新虚拟机做的配置 设置新的固定IP 我这里将IP设置为:192.168.56.111 启动server111这台虚拟机,使用root账户登录,然后执行如下命令设置IP 命令:vi /etc/sysconfig/network-scripts/ifcfg-enp0s8 修改: IPADDR=192.168.56.111 再执行命令:systemctl restart network 重启网络服务。 此时会发现enp0s8的ip变为了192.168.56.111 设置主机名 我这里设置为server111 命令:hostnamectl --static set-hostname server111 常见问题及解决方法无法正确解析域名 问题起因:这个问题是由于虚拟机的DNS服务器IP地址设置不正确引起的。一般情况下,虚拟机使用的是和宿主机一样的DNS设置。如果是在公司创建的虚拟机,创建好后能上网,但是拿到家里就上不了了,这是由于DNS服务地址还没有刷新过来,导致在家上不了网。 解决办法:可以通过重启虚拟机或者手动刷新DNS缓存来解决,刷新DNS缓存命令如下:sudo systemctl restart nscd 参考资料VirtualBox官方地址:https://www.virtualbox.org 结束语希望我的文章能给您带来帮助,如果您有什么疑问,可以给我留言,我会在第一时间给您提供解答。如果您有好的建议或想法,也欢迎给我留言。 |
| 本文出处: https://www.toutiao.com/a6864913650499453454/ |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|