Vagrant 流浪上升及其非确定性问题

Vagrant 流浪上升及其非确定性问题,vagrant,virtualbox,Vagrant,Virtualbox,好的,我开始使用vagrant是因为客户使用它。把所有的部件组装在一起,让它们工作真的很痛苦。。。现在我面临一个不同的问题。 一旦我运行了vagrant up,可能会有不同的结果: 虚拟机无法正常启动 等待机器启动时超时。这意味着 Vagrant无法与内的来宾计算机通信 配置的(“config.vm.boot\u timeout”值)时间段 如果你看上面,你应该能够看到错误 流浪汉在试图连接到机器时发生了意外。这些错误 通常是关于可能出错的好提示 如果您使用的是自定义框,请确保网络已正确连接 正

好的,我开始使用vagrant是因为客户使用它。把所有的部件组装在一起,让它们工作真的很痛苦。。。现在我面临一个不同的问题。 一旦我运行了
vagrant up
,可能会有不同的结果:

  • 虚拟机无法正常启动

    等待机器启动时超时。这意味着 Vagrant无法与内的来宾计算机通信 配置的(“config.vm.boot\u timeout”值)时间段

    如果你看上面,你应该能够看到错误 流浪汉在试图连接到机器时发生了意外。这些错误 通常是关于可能出错的好提示

    如果您使用的是自定义框,请确保网络已正确连接 正在工作,您可以连接到机器。这是一个常见的问题 问题是这些框中的网络设置不正确。 验证身份验证配置也已正确设置, 还有

    如果该框看起来启动正常,您可能需要增加 超时(“config.vm.boot\u timeout”)值

  • MySQL死亡

    默认值:第1118行的错误2006(HY000):MySQL服务器已消失

    默认值:第3720行出现错误1034(HY000):表“ci_会话”的索引已损坏;试着修理它

  • 正常工作

  • 我必须背靠背运行
    vagrant up
    vagrant destroy
    命令,直到我的机器决定正确引导和构建。这很奇怪,我对此没有任何解释,运行环境是一场赌博,需要花费我很多时间才能奏效

    如果有人知道任何关于流浪汉或这个奇怪的问题,这将是非常感谢

    PD:

  • 我的文件已设置为

    config.vm.provider“virtualbox”do | v| v、 内存=4096 v、 CPU=3 结束

  • 正在加载的数据库是巨大的(5Gb之一),我尝试使用sed命令来改进max-allowed包,但没有成功

    sudo sed-i“s@[client server]@[client server]\n\n[mysqld]\nmax_allowed_packet=256M@”/etc/my.cnf

  • 我得到了这个答案:

    sed: -e expression #1, char 33: unterminated `s' command
    

    当我在
    vagrant ssh执行它时,它运行正常,但我不确定在我的vagrant文件中包含它的位置。

    我推测,在启动过程中,虚拟机中发生了很多事情,要么消耗了资源,要么花费了太长时间。您已经指出,您只为VM提供4GB的RAM,但是您尝试加载的数据库是5GB,因此VM可能会破坏交换分区。MySQL死机也表明您没有为VM提供所需的资源

    即使vagrant无法建立SSH连接并超时,您能否在一段时间后将SSH连接到该框中(选中“vagrant SSH配置”)

    增加RAM,并调查(也许您可以询问打包该框的人)作为引导过程的一部分,该VM将启动什么样的服务。监视VM的来宾操作系统提供的任何功能,您也应该看到VirtualBox GUI中发生了什么。按下来宾操作系统用于此目的的任何键,这样您就不会只看到一些不透明的引导屏幕

    对于sed命令,您可以使用shell provisioner:确保在通过
    inline
    属性传递命令行时正确转义