没事学学KVM(五)虚拟机基础管理

1、今天学习一下KVM的开机自启功能。开机启动,即随宿主机启动而启动

virsh autostart vm-name

开机自启的前提是libvirt功能也是开机启动的;systemctl enable libvirtd

复制代码
[root@KVM03-10 ~]# virsh autostart test-kvm
Domain test-kvm marked as autostarted

[root@KVM03-10 ~]# systemctl restart libvirtd
[root@KVM03-10 ~]# virsh list --all
Id Name State
----------------------------------------------------
1 test-kvm running

复制代码

该命令会在/etc/libvirt/qemu/目录下增加一个autostart文件

1
2
3
4
5
6
7
[root@KVM03-10 ~]# cd /etc/libvirt/qemu/
[root@KVM03-10 qemu]# ll
total 8
drwxr-xr-x. 2 root root   26 Aug 31 21:52 autostart
drwx------. 3 root root   42 Aug 26 09:58 networks
-rw-------. 1 root root 4227 Aug 30 21:57 test-kvm.xml
[root@KVM03-10 qemu]# ll
1
2
3
4
[root@KVM03-10 qemu]# cd autostart/
[root@KVM03-10 autostart]# ll
total 0
lrwxrwxrwx. 1 root root 30 Aug 31 21:52 test-kvm.xml -> /etc/libvirt/qemu/test-kvm.xml

 实际上这个autostart目录下方的就是一个需要进行开机启动的虚机配置文件的软链接,链接到虚机真正的配置文件。从逻辑上说,当系统启动了libvirt功能后,就会在autostart目录下查询,如果有对应内容,则对启动相应的虚机。

取消开机自启 virsh autostart  --disable vm-name

 

2、console登陆控制虚拟机

宿主机开启libvirt服务后,会在网卡中增加virbr网卡,该地址作为虚机网卡地址的网关;

复制代码
3: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether 52:54:00:87:f8:b7 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN qlen 1000
    link/ether 52:54:00:87:f8:b7 brd ff:ff:ff:ff:ff:ff
5: vnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master virbr0 state UNKNOWN qlen 1000
    link/ether fe:54:00:db:81:f8 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::fc54:ff:fedb:81f8/64 scope link
       valid_lft forever preferred_lft forever
[root@KVM03-10 qemu]# ssh 192.168.122.63
The authenticity of host '192.168.122.63 (192.168.122.63)' can't be established.
ECDSA key fingerprint is 99:72:f9:54:f3:45:a8:52:bd:52:01:81:9f:30:ee:2a.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.122.63' (ECDSA) to the list of known hosts.
root@192.168.122.63's password:
Last login: Mon Aug 31 22:10:10 2020
[root@localhost ~]#
复制代码

想要通过virsh console连接虚拟机,需要修改虚机的内核参数,

grubby --update-kernel=ALL --args="console=ttyS0,115200n8"

复制代码
对比修改前后两个文件的差异发现
[root@localhost home]# grubby --update-kernel=ALL --args="console=ttyS0,115200n8" [root@localhost home]# [root@localhost home]# diff /etc/grub2.cfg /home/grub grub2.cfg.bak grub.cfg.bak [root@localhost home]# diff /etc/grub2.cfg /home/grub.cfg.bak 99c99
< linux16 /boot/vmlinuz-3.10.0-514.el7.x86_64 root=UUID=4a965762-42e0-4cc0-8f36-57f9f7ae82f6 ro rhgb quiet LANG=en_SG.UTF-8 console=ttyS0,115200n8 --- > linux16 /boot/vmlinuz-3.10.0-514.el7.x86_64 root=UUID=4a965762-42e0-4cc0-8f36-57f9f7ae82f6 ro rhgb quiet LANG=en_SG.UTF-8 113c113 < linux16 /boot/vmlinuz-0-rescue-a9c5fb0f9f5f4f0b87ca06f4b6dfc62c root=UUID=4a965762-42e0-4cc0-8f36-57f9f7ae82f6 ro rhgb quiet console=ttyS0,115200n8 --- > linux16 /boot/vmlinuz-0-rescue-a9c5fb0f9f5f4f0b87ca06f4b6dfc62c root=UUID=4a965762-42e0-4cc0-8f36-57f9f7ae82f6 ro rhgb quiet [root@localhost home]#
复制代码

修改完内核参数后,需要对系统进行重启,重启完成后即可在宿主机上通过virsh console vm-name登陆虚拟机;

复制代码
[root@KVM03-10 qemu]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 1     test-kvm                       running

[root@KVM03-10 qemu]# virsh console test-kvm
Connected to domain test-kvm
Escape character is ^]
CentOS Linux 7 (Core)
Kernel 3.10.0-514.el7.x86_64 on an x86_64
localhost login: root
Password:
Last login: Mon Aug 31 22:24:43 from gateway
[root@localhost ~]#

[root@localhost ~]# who
root ttyS0 2020-08-31 22:38

复制代码

 

posted @   woshinidaye  阅读(220)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· Qt个人项目总结 —— MySQL数据库查询与断言
点击右上角即可分享
微信分享提示