VirtualBox 初次安装centos7 虚拟机的注意事项

来源:互联网 发布:vb获取当前日期时间 编辑:程序博客网 时间:2024/05/22 05:11

    • Network
    • yum install -y vim 报错
    • ifconfig 命令不存在
    • 固定虚拟机IP地址
    • 更改hostname
    • 安装运行docker daemon
    • 安装Swarm

最近一直在研究docker集群,正好看到swarm,于是打算使用virtualbox 构建一个本地的虚拟机集群来学习swarm的一些操作。由于之前在virtualbox上面只搭建了一台各个功能都完备的centos虚拟机,时间过于久远,现在又重零开始搭建centos虚拟机,确实遇到一些问题,下面主要是罗列出这些问题,并给出问题的最佳解决方案,以免下次隔了很久的时间再次搭建虚拟机时又从零开始,嘤嘤~。

Network

构建网络是第一个问题,一般我们需要虚拟机能够正常上网,正常访问主机,主机也能正常的访问虚拟机。因此在虚拟机网络设置的时候我们采用桥接模式。使用桥接模式需要注意以下的几点:
第一,Windows7 不会默认安装桥接的驱动程序,所以需要自行安装
首先打开本地连接的属性选项

本地连接

选择安装–> 服务–>添加–>从磁盘安装–>浏览
浏览的时候进入到virtualbox 的安装目录选择virtualbox–>dirvers–>network–>netlwf–>VboxNetLwf.inf
然后一路点击确定即可安装成功。
此时本地连接会多一个驱动

本地增加

此时在virtualbox 相应虚拟机实例上选择网络即可看到可以选择桥接模式了

桥接安装成功

yum install -y vim 报错

这是我这次重新安装centos7 虚拟机时遇到的最大的问题。当启动虚拟机后安装vim 出现如下错误:

networkerror

解决这个问题,网上有很多方案,好像都是ctrl+c ctrl+v 的结果,没有任何的卵用。
最本质的问题是网络没有配置好。我们已经实现了虚拟机的桥接模式上网。但是此时ping 外网还是处于不能连接的状态。需要更改/etc/sysconfig/network-scripts/ 文件夹下的配置文件。我这个地方更改的是ifcfg-enp0s3 其他环境可能不同可以通过ls -l | grep ifcfg-* 确定自己

netconfig

更改此文件的最后一行,将ONBOOT更改为YES

onboot

此时发现再次ping能够ping通。ping 能够成功的链接到外部的网络,但是依然出现yum install -y vim 等安装失败的问题。
需要更改DNS
vi /etc/resolv.conf
更换两组DNS 的nameserver 地址即可

nameserver 8.8.8.8nameserver 8.8.4.4

重启电脑,之后yum install -y XXX 就能够成功安装软件。

ifconfig 命令不存在

主要是没有安装net-tools.x86_64 这个工具包
使用yum install -y net-tools.x86_64 即可完成。

固定虚拟机IP地址

virtualbox 下使用DHCP的方式给虚拟机分配IP,每次启动虚拟机会导致IP地址随机的分配,这是使用者不想看到的,希望通过某种方式实现虚拟机的IP地址的固定。下面在桥接模式下实现虚拟机的网络IP地址的固定。其中IP地址的更改,网关以及子网掩码更改与宿主机网路一致即可。
修改/etc/sysconfig/network-scripts/ifcfg-enp0s3

ipchange

将DHCP的方式更改为static同时添加上ip地址,子网掩码以及网关
完成DNS配置,修改/etc/resolv.conf 添加nameserver 其中IP地址对应上图中的网关(GATEWAY)

nameserver 192.168.1.253

最后重启网络systemctl restart network
可以看到该虚拟机ip已经改成自己配置的IP地址(可能中间需要重启虚拟机)。
这种方式会导致实际物理机器无法访问虚拟机。因为用的IP为内网IP。

更改hostname

每一次远程登录如果使用virtualbox给主机默认的命名,那么在操作集群的时候容器出现虚拟机名字混淆的情况,各种不便,因此需要永久的更改虚拟机实例的名称
使用指令hostnamectl set-hostname <hostname> 实现更改,然后重启即可。

安装运行docker daemon

centos7 默认源中可以直接安装docker所以使用yum install -y docker 可以完成docker 的安装。然后后台启动docker 即可

systemctl start dockersystemctl enable docker

安装Swarm

使用如下指令

docker pull swarm

获取swarm镜像,由此开启swarm之旅。

0 0
原创粉丝点击