یافتن disk wwid

زمانی که با storage کار می کنید و از تیم زیرساخت دیسک یا به عبارتی lun دریافت می کنید، در خیلی از موارد احتیاج دارید که wwid دیسکی که بهمون اختصاص دادند رو پیدا کنیم.

پیدا کردن wwid زبان مشترکی هست بین تیم دیتابیس و زیرساخت. بصورت معمول برای جلوگیری از sinlge point of failure یک lun رو از چند مسیر می بینیم که بهش multipathing میگن و برای اینکه بدونیم کدوم نام دیسکها به یک lun اشاره می کنند، این روشی دقیق هست. همچنین اگر بخواهیم برای دیسکمون نامگذاری کنیم، می تونیم از همین wwid در multipath.conf استفاده کنیم.

 for i in `cat /proc/partitions | awk '{print $4}' |grep sd | grep [a-z]$`; do echo "### $i: `sudo /lib/udev/scsi_id  --whitelisted --replace-whitespace --device=/dev/$i`"; done

دستور بالا با فرض اینکه ما root نیستیم و مجوز sudoer داریم نوشته شده.

خروجی نمونه اون هم به شکل زیر هست:

### sda: 3600508b1001caee589be99466c0368f8

### sde: 360060160359850004f3a7c606a76a75e

### sdf: 36006016022e8500054dfd15f27aa4a59

### sdg: 36006016022e85000c3dfd15f850ca5f4

### sdh: 36006016022e8500085dfd15fabef3b8f

### sdi: 36006016022e85000f7ded15faee9c567

### sdj: 36006016022e85000a434d15f17e963b9

### sdk: 36006016022e85000a534d15f38e72dad

یه چیزی رو اضافه کنم و اون هم پیوند نام دیسک با oracleasm disk هست:

oracleasm listdisks | xargs oracleasm querydisk -p