云服务器

玩转KVM:一招打开vm的console口

2019-12-05 09:57:16 49

前言

上篇(玩转KVM:了解网卡软中断RPS)简单了解了网卡中断如何提高虚拟机性能,同时也总结了这个技术的优缺点。下面讲一招打开vmconsole口,让你轻轻松松管理vm


什么是console口

consoleconsole接口是用来配置交换机的,所以只有网管型交换机才有。而且还要注意,并不是所有网管型交换机都有,那是因为交换机的配置方法有多种,如通过Telnet命令行方式、Web方式、TFTP方式等。而在PC上,它又是另外一个名字。

SerialPC上的串口一般是ttyS,板子上Linux的串口一般叫做ttySAC,PC上的串口,默认格式是ttySX,通常是使用USB外插串口卡实现的。在linux下,一般ttyS0对应com1口,ttyS1对应com2口。

一招打开vm的console

常规情况下,安装完 KVM之后,可能都会通过 VNC 连接到 KVM 虚拟机里面去设置相应的 IP 等信息。但是这样子,一方面可能会因为打开过多的端口造成安全问题,另一方面也不是会便捷。针对此种情况,我们可以使用 KVM为我们提供的 console 接口功能,它可以采用字符界面进行 linux 虚拟机控制台连接。这样子,及时 KVM 虚拟机没有 IP 地址,又或者 KVM 虚拟机出现了问题通过 IP 连接不进去了,都可以很便捷的快速进入到 KVM 虚拟机里面去排查问题。
PSwindows还不支持哦。

CentOS6

1.修改grub.conf 文件通过为内核传递参数console=ttyS0,来让内核把输出定向至 ttyS0。

[root@test01-kvm-jz  /root] # vim /etc/grub.conf

 

2.修改/etc/inittab文件通过在 inittab 里加一个 ttyS0 ,来使得系统启动时能够生成一个 ttyS0 来接收来自内核的数据。


[root@test01-kvm-jz  /root] # echo"S0:12345:respawn:/sbin/agetty ttyS0 115200" >> /etc/inittab

[root@test01-kvm-jz  /root] # tail -1 /etc/inittab  S0:12345:respawn:/sbin/agettyttyS0 115200


3.修改 /etc/securetty 文件由于/etc/securetty 文件允许你规定 root 用户可以从哪个 TTY 设备登录,因此我们需要添加ttyS0 的安全许可,即将 ttyS0 添加至该文件,来允许我们的 root 用户登录。

[root@test01-kvm-jz  /root] # echo "ttyS0" >>/etc/securetty

 

4.重启 KVM 虚拟机

[root@test01-kvm-jz  /root] # reboot

 

Ubuntu14

1.添加serial任务文件

[root@test01-kvm-jz  /root] vi  /etc/init/ttyS0.conf


2.添加到rc.local

[root@test01-kvm-jz /root] root@ecloud:~# which start

/sbin/start

[root@test01-kvm-jz  /root] echo “/sbin/start  ttyS0”>>/etc/rc.local


3.重启kvm虚拟机

[root@test01-kvm-jz  /root] # reboot


CentOS7/Ubuntu16

1.启动serial服务

[root@test01-kvm-jz  /root] # systemctl start serial-getty@ttyS0

[root@test01-kvm-jz  /root] # systemctl enable serial-getty@ttyS0

 

2.重启kvm虚拟机

[root@test01-kvm-jz  /root] # reboot


怎么使用console管理VM

步骤很简单:

1.root@ubuntu:~#   virsh list

Id   Name                          State

----------------------------------------------------

 50    centos-cloud-test           running

查到vmdomid


2.使用virsh console 登录vm

root@ubuntu:~#virsh console 50

Connected to domain centos-cloud-test

Escape character is ^]

 

CentOS Linux 7 (Core)

Kernel 3.10.0-229.el7.x86_64 on an x86_64

 

ecloud login: root

Password:

Last login: Fri Jan 4 15:59:34 on ttyS0

[root@ecloud ~]#


这样就可以看到控制台了。我们输入账号密码就可以登录控制台了。




睿江云官网链接:https://www.eflycloud.com/home?from=RJ0032

上一篇: 无

微信关注

获取更多技术咨询