unique_id дисков в AIX

Главная Форумы POWER Systems AIX/Hardware unique_id дисков в AIX

Просмотр 4 веток ответов
  • Автор
    Сообщения
    • #14120
      andrewk
      Участник

      имхо этой информации нет ни в каком инфоцентре или открытом документе IBM.

      odmget -q “name=hdiskXX and attribute=unique_id” CuAt
      или
      lsattr -El hdiskXX -a unique_id

      Возвращается длинная строка из кучи символов. Например,
      210800054C110AST373207LC03IBMscsi

      Первые 2 символа – длина строки в hex’е.
      Вторые 2 символа – длина серийного номера устройства в hex’e.
      Последующие символы (в моем случае 8) – серийный номер устройства. В этом поле вендоры часто пишут не только серийный номер, но и LUN ID на сторедже (некоторые в hex’е, некоторые в десятичной системе).
      Следующие 2 символа – длина Machine Type-Model в hex’e
      Следующие символы (в моем примере 0A, т.е. 10) – этот тот самый MTM, по которому можно определить сторедж. Например, 2107900 – DS8000. Может быть написано также словами, типа OPEN-V – HDS USP-V.
      Следующие 2 символа – для вендора в hex’e.
      Следующее поле (в моем примере 3 символа) – вендор. IBM, HITACHI, HP, …
      Последнее поле (все оставшееся) – обозначение протокола типа scsi, fcp

      Если диск передан с VIOS’а через VSCSI, то в unique_id:
      Первые 2 символа – длина всей строки в hex’e
      Вторые 2 символа – длина следующего поля
      Потом идет поле, которое в точности повторяет поле unique_id устройства на VIOS’е. Если Вы выделили клиенту не целиком устройство, а только один LV, то длина этого поля будет 00 и начиная с 3 символа строки будет идти LV ID, по которому потом можно найти на VIOS этот самый LV (lquerylv -L lvid)
      Потом снова 2 символа – длина протокола (05)
      Потом всегда 5 символов – VDASD (Virtual Direct Attach SCSI Device)
      Дальше не помню, но ничего интересного 🙂

      Смысл в том, что обычно все равно, какой у Вас сторедж и как Вы отдаете диски – по NPIV, VSCSI или напрямую через выделенную карту, – Вы всегда можете проанализировав unique_id найти сторедж, с которого выдан LUN, и ID этого LUN’а.

      пришлось сегодня потратить полчаса на reverse engineering 🙂

    • #14126
      Michael
      Участник

      В случае с дисками через SVC строка с цифирками длиннее будет :laugh:
      $ lsattr -El vpath0 -a unique_id
      unique_id 332136005076801900175500000000000003D04214503IBMfcp Device Unique Identification False

      Здесь:
      6005076801900175500000000000003D – это UID диска примапленного через SVC
      2145 – модель SVC (без типа)

      Остальное в окончании детально расписано предыдущим оратором, но вот начало строки “33213” меня немного смущает с утра пораньше. Пойду кофейку попью…

    • #14129
      andrewk
      Участник

      а чего смущает? тоже ведь расписано:
      33 – это длина всей строки, т.е. 51 символ
      21 – длина первого поля, т.е. 33 символа, в нее как раз входит весь UID диска, только начинается он почему с 3х – но я такое уже тоже видел. На какой-то старой DS8000 мне тоже отдался серийный номер с первой тройкой. Что она значит для IBM – не знаю.

    • #14130
      andrewk
      Участник

      пример строки из виртуализированного AIX:

      3520200B75DWYA1170607210790003IBMfcp05VDASD03AIXvscsi

      35 – длина всей строки
      20 – длина “серийного номера” устройства
      200B75DWYA1170607210790003IBMfcp – “серийный номер” устройства. На самом деле – unique_id диска, отданного VIO-клиенту
      05 – длина MTM
      VDASD – MTM
      03 – длина вендора
      AIX – вендор
      vscsi – протокол

      200B75DWYA1170607210790003IBMfcp
      20 – длина всей строки
      0B – длина серийного номера
      75DWYA11706 – “серийный номер”, LUN ID
      07 – длина MTM
      2107900 – MTM
      03 – длина вендора
      IBM – вендор
      fcp – протокол

      372200c1ffc500004c000000012969df287a.105VDASD03AIXvscsi

      37 – длина всей строки
      22 – длина серийного номера
      00c1ffc500004c000000012969df287a.1 – LV ID логического тома с VIOS’а
      05 – длина MTM
      VDASD – MTM
      03 – длина вендора
      AIX – вендор
      vscsi – протокол

      1F0C50 133DE500106OPEN-V02HPfcp

      1F – длина всей строки
      0C – длина серийного номер
      50 133DE5001 – серийный номер. Здесь на самом деле 133DE – серийный номер стореджа в hex’е, а 5001 – LUN ID. что такое первые 50 – не знаю.
      06 – длина MTM
      OPEN-V – MTM. В данном случае HP XP24000.
      02 – длина вендора
      HP – вендор
      fcp – протокол

    • #14143
      andrewk
      Участник

      а для SVC в интернете нарылось:

      The Vdisk UID is broken down as follows:
      6 = NAA (Network Address Authority) in this case: IEEE
      Registered Extended.
      005076 = OUI (Organizationally Unique Identifier). i.e. IBM
      80187001E28 = Product (801=SVC)/Cluster Id alias (see note 1 below)
      00000000 = reserved zeroes
      000000 = Lun Instance number (see note 2 below).

      Note 1:

      The cluster id displayed here is the cluster id alias shifted by 2 bits.
      So if you take the number 80187001E28 and divide by 2 twice, it should
      evaluate to the cluster id alias reported by “svcinfo lscluster” –
      which I think makes it: 20061C0078A. In most cases a cluster id will
      match the cluster id alias, but I think there are certain operations on
      a cluster which can lead to the alias (and therefore lun uids) becoming
      different.

      Note 2:

      The LUN instance is not the same as the LUN ID (Vdisk ID). (Although in
      a newly created cluster, the lun instance/id will be the same to begin
      with, but as Vdisks are created and destroyed etc, they will not
      necessarily continue to match.)

Просмотр 4 веток ответов
  • Для ответа в этой теме необходимо авторизоваться.