为虚拟磁盘 添加/删除物理磁盘

为虚拟磁盘 添加/删除物理磁盘

Add-Physicaldisk     
此命令用于将指定的物理磁盘添加到虚拟磁盘    
在存储池一节已经介绍过将物理磁盘加入存储池的用法,    
在这里将介绍在虚拟磁盘上的用法    
在正式介绍命令用法之前先回答 在Get-StoragePool,Get-VirtualDisk,New-VirtualDisk    
三节中的提问    
要获取未被虚拟磁盘使用的物理磁盘,你必须学会灵活的使用管道命令    
$pool_pd = @(Get-StoragePool -FriendlyName pool_name |Get-PhysicalDisk)    
$vd_pd= @(Get-VirtualDisk -FriendlyName vd_name |Get-PhysicalDisk)    
上面的两个命令分别 获取存储池的成员物理磁盘以及虚拟磁盘的成员物理磁盘    
最为简单(也是最笨)的做法就是人工对比两个变量(其实是数组)的差异    
(PowerShell 不强制要求定义变量的类型,当变量中有多个对象时将自动转化为数组,    
个人建议:如果在定义变量之前可预期变量中对象数量的时,尽可能定义为数组     
即 $ Array= @( ) 这种形式 )    
最为简洁高效的方法就是让系统自动对比出存储池与虚拟磁盘的成员物理磁盘    
脚本如下    
代码开始-----------------------------------------------------------------------------------

$pool_name = "ssdpool"  #虚拟磁盘所在池友好名称   
$vd_name = "ssd_vd"     #虚拟磁盘友好名称

$pool_pd = @((Get-StoragePool -FriendlyName $pool_name |Get-PhysicalDisk).deviceid)   
$vd_pd= ((Get-VirtualDisk -FriendlyName $vd_name |Get-PhysicalDisk).deviceid)    
$vd_pdco=$vd_pd.count    
$pool_pdco=$pool_pd.count    
$nosame = @()    
$sam = @()

foreach ($11 in $pool_pd)

{                     
   if ($vd_pd -ccontains $11)    
      {$sam += Get-PhysicalDisk|where {$_.DeviceId -eq "$11"}    
           }    
          else    
             { $nosame += Get-PhysicalDisk|where {$_.DeviceId -eq "$11"}    
               }    
                       }

Write-Host "$pool_name${$pool_name$}中物理磁盘数量:$pool_pdco"

write-host "$vd_name${$vd_name}使用物理磁盘数量:$vd_pdco"

if ($pool_pdco -eq $vd_pdco )   
   {    
 write-host "虚拟磁盘已经使用池中全部物理磁盘"    
        }    
    else    
        {

Write-Host "池中下列物理磁盘尚未被虚拟磁盘使用"

$nosame |ft -AutoSize   
            }

代码结束-----------------------------------------------------------------------------------   
对于上面的脚本也是存在问题 如果你在正确的使用下脚本的结果是正确的,    
如果你试图用一个不存在的池以及虚拟磁盘让脚本进行判断,结果一定是错误的    
正常情况下应如下图    

借助此脚本你可以轻易的以对象的方式访问未被使用的物理磁盘以及已经使用的物理磁盘    
如果你明白了上面脚本作用,那么为虚拟磁盘添加物理磁盘的必要条件你已经知道了    
下面将实际演示使用Add-Physicaldisk 命令向名为ssd_vd的虚拟磁盘添加物理磁盘    
本次演示将全部池中未使用的物理磁盘添加到虚拟磁盘中    
在本次演示中使用上面提供的脚本中的部分变量进行操作    
(如果你只是添加单一物理磁盘,也可以不使用脚本中变量)    
输入下面的命令即可    
Add-PhysicalDisk -VirtualDiskFriendlyName ssd_vd -PhysicalDisks $nosame    
(上面的命令中指定了虚拟磁盘名称以及将要添加进虚拟磁盘的物理磁盘    
$nosame 这个数组则是在脚本中由系统对比出来的尚未在虚拟磁盘使用中的物理磁盘)

添加完成后再次运行此脚本如下图   

提问:请尝试自行理解脚本作用以及脚本中以下变量    
$pool_pd ,$vd_pd,$vd_pdco,$pool_pdco,$nosame ,$sam     
温馨提示:请合理的规划物理磁盘所承载的虚拟磁盘,以免出现性能瓶颈

Remove-Physicaldisk     
此命令用于向虚拟磁盘以及存储池中删除新物理磁盘    
在删除虚拟磁盘时候会有诸多限制,最为直接的限制就是    
当池中没有任何闲置的物理磁盘时(即全部物理磁盘都承载虚拟磁盘)    
除非你向池中加入新的物理磁盘,否则你将不能删除任何承载虚拟磁盘的    
物理磁盘。处于简单布局下的虚拟磁盘无法删除成员物理磁盘    
(即使成员物理磁盘同时承担多个虚拟磁盘)

下面将演示删除虚拟磁盘的成员物理磁盘   
环境:    
存储池 SSDpool 成员物理磁盘数量9    
虚拟磁盘ssd_vd  成员物理磁盘数量9;固定配置;容量20GB;磁盘布局parity    
环境如下图所示    
存储池    

存储池物理磁盘    

虚拟磁盘状态    
(由于命令过长截图不便 下面附上命令,截图中将省略部分命令)    
Get-VirtualDisk -FriendlyName ssd_vd |Select-Object FriendlyName,`    
ResiliencySettingName,ProvisioningType,size |ft –AutoSize    

对于检查虚拟磁盘使用了那些物磁盘还是用上一节的脚本  

---本文档由联科教育(http://www.iLync.cn田梦博 原创提供,如有问题请咨询我们的专家团队!---

为虚拟磁盘 添加/删除物理磁盘,布布扣,bubuko.com

时间: 2024-10-06 01:10:14

为虚拟磁盘 添加/删除物理磁盘的相关文章

2015-08-31 Linux添加一个物理磁盘,使用LVM进行扩容

Linux添加一个物理磁盘,使用LVM进行扩容 一.首先创建一块新的分区: fdisk  /dev/sdb n p      #选择逻辑分区,如果没有,则首先创建扩展分区,然后再添加逻辑分区(硬盘:最多四个分区P-P-P-P或P-P-P-E) 1        #分区号(从5开始),/dev/sdb1 t      8e   #分区类型8e表示LVM分区 w        #写入分区表 partprobe   #重读分区表 reboot   #重启 mkfs –t ext3 /dev/sdb1

asm添加删除磁盘

一. ASM_POWER_LIMIT 参数 这个参数 ASM_POWER_LIMIT 参数控制 ASM 后台进程 ARBx 的数量.ARBx 进程用来进行 ASM 磁盘数据重新分布打散.ASM_POWER_LIMIT 取值 从 0 到 11(据说从 10gR2 开始可以设置为 0 ). 当新添加磁盘或者删除磁盘后,ASM 会启动 ARBx 进行 IO 分散操作,该参数值越大,io 越大.这是个非常消耗资源的动作,所以一定要选择系统空闲的时候进行. ASM_POWER_LIMIT 参数官方描述:

Esxi 5添加物理磁盘出错

问题: 在ESXi 上添加一块硬盘时,提示如下错误:"在 ESXi"xxx.xxx.xxx.xxx"上调用对象 "ha-datastoresystem"的"HostDatastoreSystem.QueryVmfsDatastoreCreateOptions" 失败". 问题分析: 这个磁盘之前是其他虚拟主机上的引导盘,可能和这个有关系.另外还有这些原因: LUN 的大小超过了 2TB - 512 字节,在 vSphere 4

如何在现有的 Linux 系统上添加新的磁盘

摘要: 作为一个系统管理员,我们会有这样的一些需求:作为升级服务器容量的一部分,或者有时出现磁盘故障时更换磁盘,我们需要将新的硬盘配置到现有服务器. 在这篇文章中,我会向你逐步介绍添加新硬盘到现有 RHEL/CentOS 或者 Debian/Ubuntu Linux 系统的步骤. 作为一个系统管理员,我们会有这样的一些需求:作为升级服务器容量的一部分,或者有时出现磁盘故障时更换磁盘,我们需要将新的硬盘配置到现有服务器. 在这篇文章中,我会向你逐步介绍添加新硬盘到现有 RHEL/CentOS 或者

如何恢复,迁移,添加, 删除 Voting Disks

如何恢复,迁移,添加, 删除 Voting Disks恢复流程 在11gR2 之前,我们可以直接直接使用dd命令对voting disk进行备份.DD示例 备份votedisk盘:[[email protected] bin]# dd if=/dev/raw/raw2 of=/home/oracle/voting_disk.bak 恢复votedisk盘:[[email protected] bin]# dd if=/home/oracle/voting_disk.bak of=/dev/raw

实战:mysql检查物理磁盘中的二进制日志文件是否有丢失

场景:有时候因为磁盘损坏或人为原因错误删除了磁盘中的二进制文件,导致mysql中的show binary logs记录和实际的物理磁盘中的二进制文件不匹配 #binlogdiff.sh #!/bin/sh #[email protected] #作用:mysql中show binary logs记录的二进制日志文件和实际的物理文件比较,检查 #磁盘中对应的二进制日志文件是否有丢失 source /usr/local/mysql/scripts/mysql_env.ini binlog_init=

物理磁盘空间使用已满导致数据库hang起

情况描述 一天公司小张过来咨询,说是数据库查询报错了:乍一看好像是数据库有坏快了,为了排查更加详细的错误信息,决定查看一下告警日志,发现问题所在,原来是数据库的物理磁盘空间满了 Writing to the above trace file is disabled for now on... Tue Jul 29 17:30:32 2014 Non critical error ORA-48181 caught while writing to trace file "/u01/app/orac

VMware EXSi5.5 添加虚拟共享磁盘

实现一块虚拟硬盘,同时挂载在两台虚拟机上,所有文件双方可见,注意双方不能同时修改同一文件. 操作步骤 1.创建第一台虚拟机A,添加硬盘时磁盘置备"厚置备置零"(会按照置备大小直接分配存储空间,并作格式化,添加时间略长). 2.添加第二块硬盘,虚拟设备接点选在另一个SCSI控制器下(共享设置在控制器上,为保护系统安装盘,选择别的SCSI控制器). 添加硬盘时磁盘置备"厚置备置零",模式选中"独立"."持久"(为了保障硬盘分区表.

ceph_OSD的添加删除

this is my first 'ceph'  article ,just start .....................! ! ! 一,手动增加OSD 在ceph里,一个OSD一般是一个ceph-osd守护进程,它运行在硬盘之上,当集群容量达到使用上限,或接近near full 比率后,需要增加OSD或OSD主机来扩容. 在一个运行的ceph集群里添加一个osd要依次创建数据目录,把硬盘挂载到数据目录,把OSD加入集群,然后把OSD加入CRUSHMAP, ceph集群尽量使用统一 硬