linux怎么查看本机内存大小
275
2022-10-08
使用Azure VM串行控制台诊断和排除VM故障
在使用虚拟机的过程中,我们可能需要时不时的解决一些它们的问题。比如RDP文件损坏、虚拟机IP地址配置错误以及网卡被禁用等等。对于Azure中运行的虚拟机而言,往往解决这些问题是比较困难的,因为虚拟机的有些内容对我们是不可见的,比如引导过程和console口等等。但幸运的是,现在我们可以使用Azure VM串行端口控制台来对出问题的虚拟机进行故障排查,从而解决这些棘手的问题。 我们可以使用串行端口控制台以命令行的方式从Azure门户操作Azure虚拟机。该串行连接连接到VM或虚拟机规模集实例的ttyS0或COM1串行端口,提供独立于网络或操作系统状态的访问,也就是说即使虚拟机没有连接Internet,我们也能对其进行访问。
工作方式
我们可以在Windows和Linux虚拟机上使用串行控制台。但是需要注意额是,默认情况下,Azure上较新的Windows Server映像(在2018年2月之后创建)都具有特殊管理控制台(SAC)。Windows服务器版本支持SAC,但是客户端版本不支持SAC(需单独开启)。除此之外,对于较旧的Windows Server映像(在2018年2月之前创建),可以通过Azure门户的运行命令功能自动启用串行控制台。
使用串行控制台先决条件
要在VM或虚拟机规模集实例上访问串行控制台,将需要以下内容:
必须为VM启用启动诊断VM中必须存在使用密钥身份验证的用户帐户。可以使用VM访问扩展的重置密钥功能创建基于密钥的用户。访问串行控制台的Azure帐户必须同时具有VM和启动诊断存储帐户的虚拟机贡献者角色不支持经典部署。您的VM或虚拟机规模集实例必须使用Azure资源管理器部署模型。
启用启动诊断
使用串行控制台
串行控制台可以与所谓的通道一起使用,在SAC命令提示符下,输入CMD来启动cmd.exe通道,然后输入ch -? 就可以看到通道管理的所有命令:
如上图可以看到,我们可以使用ESC+TAB在SAC和CMD通道中进行切换。当我们切换到CMD通道时,我们可以使用常规的Windows命令提示符来执行所需的所有操作。但是需要注意的是,要访问到CMD通道的话,我们需要使用虚拟机的管理员账户进行验证。这也就是为什么先觉条件之一是拥有虚拟机管理员的账户名密钥。当我们以CMD通道登录到Windows以后,我们可以查看相关信息:
对于喜欢使用Powershell的同学,我们可以在CMD命令行下键入Powershell来切换到powershell窗口,切换完以后,就可以使用PowerShell执行各种操作。例如,检查VM中是否启用了RDP等等:
使用串行控制台进入VM引导菜单
很多情况下,我们希望能够访问VM的启动菜单来进行一些操作,比如以安全模式启动Windows等。现在我们可以通过串行控制台进行一些简单的设置,就可以对其进行访问。首先我们需要切换到CMD通道,然后运行如下命令:bcdedit /set {bootmgr} displaybootmenu yesbcdedit /set {bootmgr} timeout 10bcdedit /set {bootmgr} bootems yes注意:命令中的超时时间,定义了我们能够看到启动菜单的时长。
命令运行完成以后,重启虚拟机。通过串行控制台我们就能够看到虚拟机的启动菜单并且何其进行交互操作:
通过上面介绍,相信大家都能够认识到,串行控制台是一个非常有用功能。它在我们对Azure VM进行故障排除时,能够提供很多有用的帮助。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~