Azure 门户中的串行控制台提供对 Linux 虚拟机 (VM) 和虚拟机规模集实例的基于文本的控制台的访问权限。此串行连接连接到 VM 或虚拟机规模集实例的 ttys0 串行端口,提供独立于网络或操作系统状态的访问。只能使用 Azure 门户访问串行控制台,并且仅允许那些对 VM 或虚拟机规模集具有“参与者”或更高访问角色的用户。
万众期待的Azure China VM/VMSS Serial Console已经正式上线,将为我们排查和修复Azure虚拟机启动、连接等故障提供强大助力,本篇会为大家介绍Serial Console在Linux VM排查方面的一些方法。备注:目前我们测试,该功能可以在中国北3使用。
1. /etc/fstab中的配置项不正确,看到类似于以下示例导致紧急模式状态的日志条目:


###提供root账户密码,进入救援模式,使用vi打开并编辑/etc/fstab


###保存后重启虚拟机,发现虚拟机已可正常启动

待虚拟机正常启动后,通过SSH连接登录虚拟机,然后再进一步排查文件系统分区挂载失败的原因并进行修正。
2. Linux操作系统内防火墙规则不正确,这里以iptables为例,如禁止了SSH端口访问

###此时已无法SSH连接

###通过Serial Console登入系统,在防火墙中放开SSH的22端口或临时关闭下iptables服务,再次查看SSH连接已经恢复正常

3. 联机修复文件系统损坏。如在启动日志中遇到类似下方报错时,除了有1中提到的/etc/fstab配置问题外,还有可能遇到了文件系统损坏


###此时可考虑进入救援模式,对文件系统进行联机排查和修复

###更多信息,请参考文档:https://learn.microsoft.com/zh-cn/troubleshoot/azure/virtual-machines/linux-recovery-cannot-start-file-system-errors
4. 因SSH配置问题,导致Linux虚拟机无法SSH连接登录,此时可通过Serial Console登入虚拟机,更新SSH配置文件/etc/ssh/sshd_config

###重启SSH服务后,查看服务状态

5. 内核升级失败,使用Serial Console更改系统启动时的内核引导顺序


6. 进单用户模式,本例中使用CentOS 7做测试
###在Azure portal的“Serial console”处点击“Restart VM”重启





相关参考文档:
https://learn.microsoft.com/zh-cn/troubleshoot/azure/virtual-machines/serial-console-linux

