• kvm虚拟化2


    需求,给你的kvm机器增加500g的neicun

    1.vmware增家50g的硬盘

    2.重启vm虚拟机

    1. mkfs.xfs /dev/sdb
    2. mkdir /new_data
    3. mount -t xfs /dev/sdb /new_data
    4. #将虚拟机的磁盘放到/new_data下
    5. 1先给虚拟机guanji
    6. [root@localhost ~]# virsh shutdown linux0224_cento7
    7. Domain linux0224_cento7 is being shutdown
    8. #挪磁盘
    9. [root@localhost ~]# mv /data/* /new_data
    10. #修修改虚拟机的配置,识别新磁盘的路径
    11. [root@localhost ~]# virsh edit linux0224_cento7
    12. 32
    13. 33
    14. 34 /usr/libexec/qemu-kvm
    15. 35 type='file' device='disk'>
    16. 36 'qemu' type='raw'/>
    17. 37 <source file='/data/linux0224_cento7.raw'/>
    18. 38 'vda' bus='virtio'/>
    19. 39
      type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    20. 找到37行,更改一下,开机即可
    21. #虚拟机改名
    22. [root@localhost ~]# virsh list --all
    23. Id Name State
    24. ----------------------------------------------------
    25. - linux0224_cento7 shut off
    26. [root@localhost ~]# virsh domrename linux0224_cento7
    27. error: command 'domrename' requires option
    28. [root@localhost ~]# virsh domrename linux0224_cento7 centos7
    29. Domain successfully renamed
    30. [root@localhost ~]# virsh list
    31. Id Name State
    32. ----------------------------------------------------
    33. [root@localhost ~]# virsh list --all
    34. Id Name State
    35. ----------------------------------------------------
    36. - centos7 shut off
    37. #磁盘格式转换
    38. /data/linux0224_cento7.raw
    39. raw缺点
    40. 占空间
    41. 不支持快照
    42. qcow2
    43. 省空间
    44. 支持快照
    45. virsh命令是管理虚拟机的
    46. qemu-img是管理底层虚拟化设备的,如查看信心
    47. [root@localhost ~]# qemu-img info /data/linux0224_cento7.raw
    48. image: /data/linux0224_cento7.raw
    49. file format: raw
    50. virtual size: 5.0G (5368709120 bytes)
    51. disk size: 1.6G
    52. #更改文件类型 给他3g的存储空间
    53. [root@localhost ~]# qemu-img create -f qcow2 /data/linux0224_cento7.qcow2 3G
    54. Formatting '/data/linux0224_cento7.qcow2', fmt=qcow2 size=3221225472 encryption=off cluster_size=65536 lazy_refcounts=off
    55. 给3G感觉太少了,多给4G,只能增加不能减少
    56. [root@localhost ~]# qemu-img resize /data/linux0224_cento7.qcow2 +4G
    57. Image resized.
    58. #镜像转换,将raw镜像换成 qcow 格式,需要先关机
    59. -f指定源格式 -O指定输出格式
    60. convert,转换
    61. [root@localhost ~]# qemu-img convert -f raw -O qcow2 /data/linux0224_cento7.raw /data/linux0224_cento7.qcow2
    62. 修改磁盘的配置文件,读取新的磁盘格式
    63. virsh edit centos7
    64. 35 type='file' device='disk'>
    65. 36 'qemu' type='qcow2'/>
    66. 37 <source file='/data/linux0224_cento7.qcow2'/>
    67. #访问测试
    68. [root@localhost ~]# virsh domifaddr centos7
    69. Name MAC address Protocol Address
    70. -------------------------------------------------------------------------------
    71. vnet0 52:54:00:f2:60:4e ipv4 192.168.122.218/24
    72. [root@localhost ~]# ssh root@192.168.122.218
    73. root@192.168.122.218's password:
    74. Last login: Sun Jun 2 12:07:42 2024
    75. [root@localhost ~]#
    76. [root@localhost ~]# hostname -I
    77. 192.168.122.218

    3.添加虚拟磁盘

    1. 1,进入磁盘目录创建一个新的硬盘
    2. -f qcow2 更省空间,支持快照
    3. [root@localhost ~]# qemu-img create -f qcow2 /data/centos7 5G
    4. Formatting '/data/centos7', fmt=qcow2 size=5368709120 encryption=off cluster_size=65536 lazy_refcounts=off
    5. #额外在添加一块盘,无需在关机
    6. attch 附属
    7. --live 激活他
    8. --cache=none 要不要无所谓,不要缓存
    9. vdb 磁盘名字
    10. attach-disk 临时热添加磁盘
    11. [root@localhost ~]# virsh attach-disk centos7 /data/centos7 vdb --live --cache=none --subdriver=qcow2
    12. Disk attached successfully
    13. 删除磁盘
    14. [root@localhost ~]# virsh detach-disk centos7 vdb
    15. Disk detached successfully
    16. 永久化添加kvm磁盘
    17. [root@localhost ~]# qemu-img create -f qcow2 /data/centos7 5G
    18. [root@localhost ~]# virsh attach-disk centos7 /data/centos7 vdb --live --cache=none --subdriver=qcow2
    19. [root@localhost data]# virsh dumpxml centos7 > /opt/lastest_centos7.xml
    20. [root@localhost data]# virsh define /opt/lastest_centos7.xml
    21. Domain centos7 defined from /opt/lastest_centos7.xml
    22. 在关机重启测试一下

    创建快照

    1. 创建虚拟机快照
    2. --name init-ok就是给这快照起一个名字
    3. [root@localhost data]# virsh snapshot-create-as --name init-ok centos7
    4. Domain snapshot init-ok created
    5. #查看有哪些快照
    6. [root@localhost data]# virsh snapshot-list centos7
    7. Name Creation Time State
    8. ------------------------------------------------------------
    9. init-ok 2024-06-05 20:49:03 +0800 running
    10. 恢复快照
    11. --snapshotname init-ok 指定恢复快照的名称
    12. [root@localhost data]# virsh snapshot-revert centos7 --snapshotname init-ok
    13. 免密登录到虚拟机
    14. [root@localhost data]# ssh-keygen -t rsa
    15. [root@localhost data]# ssh-copy-id root@ip
    16. 删除快照
    17. [root@localhost data]# virsh snapshot-delete centos7 --snapshotname init-ok
    18. Domain snapshot init-ok deleted
    19. [root@localhost data]# virsh snapshot-list centos7
    20. Name Creation Time State
    21. ------------------------------------------------------------

    kvm克隆

    1. 克隆时必须关机
    2. [root@localhost data]# virsh shutdown centos7
    3. Domain centos7 is being shutdown
    4. --auto-clone从原始客户机配置自动生成克隆名称以及存储路径
    5. -o指定原有的虚拟机
    6. -n指定新的虚拟机的名字
    7. [root@localhost data]# virt-clone --auto-clone -o centos7 -n new_centos7
    8. Allocating 'linux0224_cento7-clone.qcow2' | 5.0 GB 00:00:03
    9. Allocating 'new_centos7' | 5.0 GB 00:00:00
    10. Clone 'new_centos7' created successfully.
    11. [root@localhost data]# virsh list --all
    12. Id Name State
    13. ----------------------------------------------------
    14. - centos7 shut off
    15. - new_centos7 shut off
    16. 修改端口
    17. [root@localhost data]# virsh vncdisplay centos7
    18. :0
    19. virsh edit centos7
    20. 105 type='vnc' port='-1' autoport='yes' listen='0.0.0.0'> 把autoport改为no port改称你想要端口 比如port='5'
    21. 106 type='address' address='0.0.0.0'/>
    22. 107
    23. [root@localhost data]# virsh define /etc/libvirt/qemu/new_centos7.xml
    24. 在关机重启即可
    25. virsh shutdown centos7
    26. virsh start centos7

    添加虚拟网桥

    1. 此时在kvm虚拟机里面跑了一个nginx服务,想在宿主机访问,显示没有路由
    2. [root@test3 ~]# virsh domifaddr centos7
    3. Name MAC address Protocol Address
    4. -------------------------------------------------------------------------------
    5. vnet0 52:54:00:24:be:9e ipv4 192.168.122.232/24
    6. [root@test3 ~]# curl 192.168.122.232
    7. curl: (7) Failed connect to 192.168.122.232:80; No route to host
    8. #创建一个虚拟网桥,和ens33做一个桥接
    9. [root@test3 ~]# virsh iface-bridge ens33 kvm-bridge0
    10. Created bridge kvm-bridge0 with attached device ens33

  • 相关阅读:
    基于C++的中国行政区域图染色与信息查询 课程论文+任务书+代码
    leetcode415拓展字符串相加(带符号)
    16 最长回文串
    高防CDN:保障网络安全的未来之路
    巨好用的log分析工具---klogg
    【后端】HTTP4
    【NestJS系列】核心概念:Middleware中间件
    Transform+ASM插桩系列(3)——Transform+ASM的实战
    【秋招面经】全网最全大华前端题目总结
    9.4语言是一种实践2
  • 原文地址:https://blog.csdn.net/2201_76119904/article/details/139428690