xen虚拟机挂载硬盘

xen虚拟机挂载硬盘

使用virsh命令挂载

  • 1、创建一块大小100G的lvm卷
lvcreate -n api2-data -L 100G vg_xen3
  • 2、dump一份虚拟机的配置文件,保存到用户家目录
virsh dumpxml api-2 > ~/api-2.xml
  • 3、打开虚拟机(api-2)配置文件,扎到标签位置,查看当前硬盘的标签内内容如下:
<disk type='block' device='disk'>
  <source dev='/dev/vg_xen3/api-2'/>
  <target dev='xvda' bus='xen'/>
</disk>
  • 4、重新编辑虚拟机配置文件,添加一个标签,更改之后为:
<disk type='block' device='disk'>
  <source dev='/dev/vg_xen3/api-2'/>
  <target dev='xvda' bus='xen'/>
</disk>
<disk type='block' device='disk'>
  <source dev='/dev/vg_xen3/api2-data'/>
  <target dev='xvdb' bus='xen'/>
</disk>
# 注意dev的名字要修改 #
  • 5、重启创建虚拟机
# 使用xl或者virsh把虚拟机停掉
xl shutodwn api-2
virsh shutdown api-2
# 使用virsh重新加载虚拟机配置文件
virsh start api-2 # 建议使用 start的方式
# 或者使用create
virsh create ~/api-2.xml
  • 6、连接虚拟机查看应哦按挂载
virsh console api-2 # 从Dom0上连接到guest
# 查看硬盘
[root@localhost ~]# fdisk -l

Disk /dev/xvda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0001a1cf

    Device Boot      Start         End      Blocks   Id  System
/dev/xvda1   *           1          64      512000   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/xvda2              64        2611    20458496   8e  Linux LVM

Disk /dev/xvdb: 107.4 GB, 107374182400 bytes  # 可以看到硬盘已经挂载上去
255 heads, 63 sectors/track, 13054 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

注意事项: 按住Ctrl+] 键退出虚拟机

关于 xl命令 和 virsh命令

博主使用virsh安装虚拟机,安装三台guest,分别为api-1,api-2,api-3、安装完成之后重启xen服务器,重新使用virsh list –all 查看虚拟机报错,因为初始libvirtd起不来,笔者在rc.local中设置自启,可以使用virsh list –all 查看虚拟机状态,状态为如下:

[root@xen-3 ~]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 0     Domain-0                       running
 1     api-1                          running
 -     api-2                          shut off
 -     api-3                          shut off

[root@xen-3 ~]# xl list --all
option `' not supported.
Name                                        ID   Mem VCPUs  State   Time(s)
Domain-0                                     0  2045    12     r-----      51.0
api-1                                        1  4096     4     -b----      12.6
api-2                                        2     0     0     --p---       0.0   # 没启动成功,不知道为什么,下次重启 有可能api-1起不来,这里困扰两个礼拜啦
api-3                                        5  4096     4     -b----       0.2

使用xl list 查看状态如下:

分析: xen服务器使用virsh命令安装的虚拟机重启时 xl和virsh命令都会对虚拟机进行操作,一般是xl命令起作用

  • 故障尝试修复:

libvirtd 服务无缘无故停掉。

xl list 查看虚拟机状态不正常

加到lvm组中

  • 挂载lvm
mkfs.ext4 /dev/xvdb1
pvcreate /dev/xvdb1
vgextend VolGroup /dev/xvdb1
lvcreate -n data -L 119G VolGroup
mkdir /data
mkfs.ext4 /dev/VolGroup/data
mount /dev/VolGroup/data  /data/
/dev/mapper/VolGroup-data    /data                   ext4    defaults        1 1

扩大lvm卷(root)

[root@jenkins ~]# lvextend -l +100%FREE /dev/mapper/VolGroup-lv_root
[root@jenkins ~]# resize2fs /dev/mapper/VolGroup-lv_root
[root@jenkins ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
                      103G   40G   58G  41% /
tmpfs                 4.9G   12K  4.9G   1% /dev/shm
/dev/xvda1            477M  153M  299M  34% /boot
# 扩容成功

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏用户2442861的专栏

java数据库操作 (附带数据库连接池的代码)

本文来自:曹胜欢博客专栏。转载请注明出处:http://blog.csdn.net/csh624366188

36920
来自专栏会跳舞的机器人

记一次线上Java程序导致服务器CPU占用率过高的问题排除过程

使用top命令查看资源占用情况,发现pid为14063的进程占用了大量的CPU资源,CPU占用率高达776.1%,内存占用率也达到了29.8%

27320
来自专栏Android先生

Android中极简的js与java的交互库-SimpleJavaJsBridge

最近接触android中js与java交互的东西很多,当然它们之间的交互方式有几种,但是我觉得这几种交互方式都存在一定的不足,这是我决定编写SimpleJava...

15330
来自专栏牛肉圆粉不加葱

Spark Task 的执行流程② - 创建、分发 Task

task 的创建本应该放在分配 tasks 给 executors一文中进行介绍,但由于创建的过程与分发及之后的反序列化执行关系紧密,我把这一部分内容挪到了本文...

9810
来自专栏Kevin-ZhangCG

[ Java面试题 ]JavaWeb篇

39580
来自专栏张善友的专栏

利用Windows性能计数器(PerformanceCounter)监控

一、概述 性能监视,是Windows NT提供的一种系统功能。Windows NT一直以来总是集成了性能监视工具,它提供有关操作系统当前运行状况的信息,针对各种...

38490
来自专栏fixzd

redis系列:基于redis的分布式锁

这篇博文讲介绍如何一步步构建一个基于Redis的分布式锁。会从最原始的版本开始,然后根据问题进行调整,最后完成一个较为合理的分布式锁。

15620
来自专栏同步博客

Memcache存储机制与指令汇总

  memcached是高性能的分布式内存缓存服务器。一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度、提高可扩展性。

10320
来自专栏java一日一条

JVM性能优化入门指南

Monitor是 Java中用以实现线程之间的互斥与协作的主要手段,它可以看成是对象或者Class的锁。每一个对象都有,也仅有一个 monitor。下面这个图,...

8430
来自专栏无题

GC优化案例6: metaspace占用率过高

对GC优化的案例进行的系列总结(六): 由于最近写的程序在运行一段时间后出现高cpu,然后不可用故进而进行排查,最终定位到由于metaspace引起fullg...

1.5K50

扫码关注云+社区

领取腾讯云代金券