【VirtualBox+Vagrant】使用教程

您所在的位置:网站首页 virtualbox在哪儿卸载 【VirtualBox+Vagrant】使用教程

【VirtualBox+Vagrant】使用教程

2024-07-10 19:58| 来源: 网络整理| 查看: 265

文章目录 前言要开启cpu虚拟化默认账号密码如果按教程来没成功,那就看着视频教程来一遍如果在cmd里面没有看到VirtualBox的网卡信息如果配置完毕,还是不能通关xshell连接虚拟机vagrant相关命令执行注意事项虚拟机的删除 视频教程下载配置VirtualBox 初始化虚拟机生成Vagrantfile文件启动虚拟机进入虚拟机 通过VirtualBox操作虚拟机给虚拟机配置IP查看VirtualBox虚拟网卡地址编辑Vagrantfile文件刷新vagrant验证ip开启密码登录 总结扩展再新建一个虚拟机批量新建虚拟机配置1配置2修改配置文件通过xshell登录

前言 要开启cpu虚拟化

不知道怎么搞看视频教程

默认账号密码

虚拟机默认信息 账号:root 密码:vagrant

如果按教程来没成功,那就看着视频教程来一遍 如果在cmd里面没有看到VirtualBox的网卡信息

1、那就把vagrant和VirtualBox同时都卸载掉(可以通过电脑管家卸载,我是这样的,然后重启),这时候再在cmd里面查看,会发现网卡信息也会清除 2、接着重新安装两个软件,正常的话会发现已经可以看到VirtualBox的网卡信息了

如果配置完毕,还是不能通关xshell连接虚拟机

这里要查看自己配置完ip,是不是没有通过vagrant reload进行刷新重启

vagrant相关命令执行注意事项

文档下通过vagrant前缀执行的相关命令,都是通过cmd进入到vagrantfile所在的目录下执行的

虚拟机的删除

可以直接在VirtualBox里面进行关机、删除。 然后再去文件夹下把相关的目录删除即可,这个没关系,不影响啥。

视频教程

尚硅谷视频 https://www.bilibili.com/video/BV1np4y1C7Yf?p=6 https://www.bilibili.com/video/BV1np4y1C7Yf?p=7

下载

VirtualBox vagrant

配置 VirtualBox

点击:管理-全局设定-常规,设置虚拟机存储地址 默认C盘,修改为其他地址。比如D盘,K盘 在这里插入图片描述

初始化虚拟机

上面这一步,我是在K盘建了个目录,用户专门存储本地虚拟机文件的 在这里插入图片描述 因为是先下载镜像生成Vagrantfile文件,然后在vagrant同目录下生成相对于的虚拟机文件。 我为了能够后面如果有多个vagrantfile文件时,不那么乱,所以把vagrant文件单独存放

生成Vagrantfile文件

1、新建目录 在这里插入图片描述 2、在目录下执行vagrant init centos/7 生成一个vagrant可执行的centos7镜像的配置文件

启动虚拟机

接着执行命令,vagrant up,启动虚拟机。 这时候会在和learn-rocket文件夹同目录生成一个虚拟机运行的文件夹,该文件夹名称和上面我们新建的名称一样 在这里插入图片描述 启动后,我们就可以在VirtualBox中看到这个新建的虚拟机了

进入虚拟机

在cmd执行vagrant ssh,就可以进入虚拟机了。 在这里可以执行一系列的linux命令。

通过VirtualBox操作虚拟机

前面的步骤按部就班的操作一遍后,就可以通过VirtualBox进行虚拟机的开机,重启,关机等操作了

给虚拟机配置IP

这里关不关机好像都可以,我就不关机了。

查看VirtualBox虚拟网卡地址

打开cmd,输入ipconfig,查看网卡信息 在这里插入图片描述

编辑Vagrantfile文件

接着打开learn-rocket文件夹下的Vagrantfile文件,大概在35行,打开注释的内容,修改ip。 可以通过关键字进行搜索:private_network 在这里插入图片描述

刷新vagrant

启动虚拟机 在这里插入图片描述 刷新虚拟机,这里会重新启动!注意,一定要用这个命令,而不是通过VirtualBox重新启动 vagrant reload 在这里插入图片描述

验证ip

1、在cmd通过vagrant up启动虚拟机 2、输入vagrant ssh,进入虚拟机 3、输入ip addr,查看当前虚拟机ip 在这里插入图片描述

开启密码登录

1、查看当前用户 whoami 2、切换为root用户 su root 密码:vagrant 3、修改文件(把PasswordAuthentication no改为yes) vi /etc/ssh/sshd_config

在这里插入图片描述 4、重启服务 改完后退出文件,执行命令,重启服务 service sshd restart

5、测试通过xshell连接虚拟机 ip:192.168.56.10 端口:22 账号:root 密码:vagrant 在这里插入图片描述

总结

上面执行一遍后,再看下本地文件夹,可以发现,一个虚拟机对应了两个东西: 一个Vagrantfile文件,一个虚拟机文件夹。通过文件夹进行隔离,就算有多个虚拟机,也互不影响

扩展 再新建一个虚拟机

两种方法: 1、通过VirtualBox复制 关机后,通过VirtualBox进行复制,这个我没用过,有想法的可以百度试下 2、把上面的步骤再执行一遍

批量新建虚拟机

参考教程:https://www.bilibili.com/video/BV1np4y1C7Yf?p=343 在这里插入图片描述 通过观看视频,不难发现,虚拟机的生成都是通过Vagrantfile文件的配置来进行生成的。 在文件中配置好,可以通过循环,一次性生成多个虚拟机。

配置1 Vagrant.configure("2") do |config| (1..3).each do |i| config.vm.defind "myvm-node#{i}" do |node| # 设置虚拟机的box node.vm.box = "centos/7" # 设置虚拟机的主机名 node.vm.hostname="myvm-node#{i}" # 设置虚拟机的IP node.vm.network "private_network", ip: "192.168.56.#{99+i}", netmask: "255.255.255.0" # 设置主机与虚拟机的共享目录 # node.vm.synced_folder "~/DOcuments/vagrant/share", "/home/vagrant/share" # VirtualBox相关配置 node.vm.provider "virtualbox" do |v| # 设置虚拟机的名称 v.name = "myvm-node#{i}" # 设置虚拟机的内存大小 v.memory = 4096 # 设置虚拟机的cpu个数 v.cpus = 4 end end end end

以前按视频做的时候是成功的,但是这次不知道是不是因为vagrant和virtualbox装的最新版本的原因,失败了。错误信息如下: 在这里插入图片描述

配置2

配置内容来源于:https://blog.csdn.net/llb_3601478/article/details/117483860 这个是成功了

boxes = [ { :name => "myvm-node1", :eth1 => "192.168.56.11", :mem => "2048", :cpu => "2", :sshport => 22230 }, { :name => "myvm-node2", :eth1 => "192.168.56.12", :mem => "2048", :cpu => "2", :sshport => 22231 }, { :name => "myvm-node3", :eth1 => "192.168.56.13", :mem => "2048", :cpu => "2", :sshport => 22232 } ] Vagrant.configure(2) do |config| config.vm.box = "centos/7" Encoding.default_external = 'UTF-8' boxes.each do |opts| config.vm.define opts[:name] do |config| config.vm.hostname = opts[:name] config.vm.network "private_network", ip: opts[:eth1] config.vm.network "forwarded_port", guest: 22, host: 2222, id: "ssh", disabled: "true" config.vm.network "forwarded_port", guest: 22, host: opts[:sshport] #config.ssh.username = "root" #config.ssh.password = "root" #config.ssh.port=opts[:sshport] #config.ssh.insert_key = false #config.vm.synced_folder ".", "/vagrant", type: "rsync" config.vm.provider "vmware_fusion" do |v| v.vmx["memsize"] = opts[:mem] v.vmx["numvcpus"] = opts[:cpu] end config.vm.provider "virtualbox" do |v| v.memory = opts[:mem]; v.cpus = opts[:cpu]; v.name = opts[:name]; end end end end

在这里插入图片描述

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

成功!

修改配置文件

接下来是允许通过ip进行远程密码连接 去vagrant文件目录下,打开cmd,进行远程连接 在这里插入图片描述 然后分别执行这一步操作:开启密码登录 在这里插入图片描述

通过xshell登录

在这里插入图片描述 在这里插入图片描述 收工! 2022年5月14日11:56:05 准备吃饭 和 无限乱斗!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3