OpenStack入門篇(四)之KVM虛擬機介紹和管理


  • 1.查看虛擬機,啟動虛擬機

[root@linux-node1 ~]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 -     CentOS-7-x86_64                shut off

[root@linux-node1 ~]# virsh start CentOS-7-x86_64

通過TightVNC連接,修改網絡vi /etc/sysconfig/network-scripts/ifcfg-eth0

tips:
KVM虛擬機在宿主機上的體現是一個進程,可以通過ps axu |grep kvm進行查看。對KVM的管理,就是在宿主機上對KVM的進程進行管理。

 

  • 2.libvirt介紹

libvirt組成部分:libvirt daemon后台進程,libvirt API庫,User-space management tools

tips:
(1)如果libvirtd服務停用了,會影響命令行管理虛擬機,但不會影響虛擬機本身的運行。
(2)kvm是為openstack進行創建虛擬機,如果openstack服務停用,可以使用libvirtd服務命令行進行管理。

  • 3.KVM常用管理:CPU,內存,網絡

(1)libvirt通過對xml文件進行管理

[root@linux-node1 ~]# cd /etc/libvirt/qemu
[root@linux-node1 qemu]# ls -l
total 8
-rw-------.  1 root root 3855 Nov 27 10:00 CentOS-7-x86_64.xml
drwx------. 3 root root 4096 Nov 27 09:33 networks

(2)CentOS-7-x86_64.xml是自動生成的,無法進行修改。如果需要修改,需要通過virsh edit進行編輯。但是在openstack上是無法進行修改的。

[root@linux-node1 qemu]# virsh edit CentOS-7-x86_64

(3)KVM修改熱添加:virsh edit CentOS-7-x86_64,熱添加會影響系統的性能,不適合在生產環境使用
tips:KVM支持熱添加,公有雲是不支持熱添加的。需要宿主機和虛擬機的系統保持一致性。


①cpu的熱添加,將cpu核數改為2,openstack不支持

修改為:

[root@linux-node1 qemu]# virsh setvcpus CentOS-7-x86_64 2 --live

②內存熱添加

a.查看KVM內存:

[root@linux-node1 ~]# virsh qemu-monitor-command CentOS-7-x86_64 --hmp --cmd info balloon
balloon: actual=1024

b.修改,將內存調成512M:

[root@linux-node1 ~]# virsh qemu-monitor-command CentOS-7-x86_64 --hmp --cmd  balloon 512

c.增加內存:修改xml文件,修改完xml文件需要重啟虛擬機

<memory unit='KiB'>1048576</memory> 
修改為:
<memory unit='KiB'>1548576</memory>
  <currentMemory unit='KiB'>1048576</currentMemory>

[root@linux-node1 ~]# virsh shutdown CentOS-7-x86_64
[root@linux-node1 ~]# virsh start CentOS-7-x86_64

(4)網絡管理,配置KVM的橋接網絡

[root@linux-node1 ~]# brctl show
bridge name bridge id       STP enabled interfaces
virbr0      8000.52540067fb26   yes     virbr0-nic
                                        vnet

①創建橋接網卡,寫成腳本

[root@linux-node1 ~]# vim bridge.sh
#!/bin/bash
brctl addbr br0
brctl addif br0 ens33
ip addr del dev ens33 192.168.56.11/24
ifconfig br0 192.168.56.11/24 up
route add default gw 192.168.56.2
[root@linux-node1 ~]# brctl show
bridge      name            bridge  id               STP   enabled  interfaces
br0                       8000.000c2903f3fe        no                   eth0
virbr0                  8000.52540067fb26          yes                  virbr0-nic
                                                                        vnet0

②修改xml

[root@linux-node1 ~]# virsh edit CentOS-7-x86_64
 interface type='network'   修改為 interface type='bridge'
      source network='default'/ 修改為 source bridge='br0'/

③重啟KVM虛擬機

[root@linux-node1 ~]# virsh shutdown CentOS-7-x86_64
Domain CentOS-7-x86_64 is being shutdown
[root@linux-node1 ~]# virsh start CentOS-7-x86_64
Domain CentOS-7-x86_64 started

④修改虛擬機網卡配置

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=static
NAME=eth0
ONBOOT=yes
IPADDR=192.168.56.111
NETMASK=255.255.255.0
GATEWAY=192.168.56.2
[root@localhost ~]# systemctl restart network

⑤驗證宿主機上能否登陸

[root@linux-node1 ~]# ping 192.168.56.111
PING 192.168.56.111 (192.168.56.111) 56(84) bytes of data.
64 bytes from 192.168.56.111: icmp_seq=1 ttl=64 time=0.618 ms
64 bytes from 192.168.56.111: icmp_seq=2 ttl=64 time=0.387 ms
64 bytes from 192.168.56.111: icmp_seq=3 ttl=64 time=0.264 ms
64 bytes from 192.168.56.111: icmp_seq=4 ttl=64 time=0.328 ms
^C
--- 192.168.56.111 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3002ms
rtt min/avg/max/mdev = 0.264/0.399/0.618/0.134 ms

[root@linux-node1 ~]# ssh 192.168.56.111
The authenticity of host '192.168.56.111 (192.168.56.111)' can't be established.
ECDSA key fingerprint is SHA256:k6ODnQ4pdtSMtYrfti2wB8eB5/XfCENW0SWApJrHTgY.
ECDSA key fingerprint is MD5:06:9f:34:32:b8:b2:a3:91:12:f9:3b:8c:dd:c0:e7:63.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.56.111' (ECDSA) to the list of known hosts.
root@192.168.56.111's password: 
Last login: Mon Nov 27 11:44:22 2017

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM