Интерфейсы IBM i (as400) CIM и Ethernet
Я пытаюсь проверить состояние карт Ethernet на удаленном компьютере IBM i (as400) с помощью команды wbemcli:
wbemcli -nl ei ".../root/cimv2:IBMOS400_EthernetPort"
Кажется, что тонны полей описывают статус карты, большинство из них пустые:
(...)
-OperationalStatus=2
-StatusDescriptions="THE LINE IS IN USE."
-Status=
-HealthState=
-CommunicationStatus=
-DetailedStatus=
-OperatingStatus=
-PrimaryStatus=
-EnabledState=2
-OtherEnabledState=
-RequestedState=5
-EnabledDefault=6
-TimeOfLastStateChange=
-AvailableRequestedStates=
-TransitioningToState=12
(...)
-Availability=3
-StatusInfo=
(...)
Единственные непустые поля просто содержат целые числа, я действительно не знаю, что с этим делать. У кого-нибудь есть подсказка? Я пишу сценарий с предположением, что OperationalStatus=2 означает "ВВЕРХ", а в противном случае "ВНИЗ", но это ненадежно.
Спасибо,
1 ответ
Использование поискового термина AS400, вероятно, будет бесполезным; операционная система называется IBM i уже много лет, и именно там находится текущая документация. В любом случае, на какой версии IBM i работает сервер? Если он действительно старый, у вас, вероятно, пока нет хорошей поддержки CIM. Вот руководство для 7.1: (Начиная с центра знаний) IBM i 7.1> Управление системами> Общая информационная модель> Справочная информация для CIM > Инвентаризация оборудования и поставщики управления сетью> IBM_EthernetPort К сожалению, реализация IBM CIM описана так же, как и CIM. схемы. Вот ссылка на CIM-устройство Схемы 2.40, которое показывает OperationalStatus, но просто определяет его как uint16[]
Возможно, есть еще одна проблема - более новые версии IBM i можно виртуализировать, и вы не сможете просматривать физическое оборудование через CIM. Я не знаю это на самом деле; это то, что вам нужно исследовать.
РЕДАКТИРОВАТЬ: Как проверить с помощью PASE: Оказывается, что IBM i 7.1 (с соответствующими PTF) и 7.2 (мой выпуск) имеют команды командной строки CIM, поэтому я воспользовался моментом и попробовал некоторые. Они бегут в ПАСЕ (call qp2term
):
cimcli ni IBM_EthernetPort
IBM_EthernetPort.CreationClassName="IBM_EthernetPort",DeviceID="ETHLINE",SystemCreationClassName="IBMOS400_ComputerSystem",SystemName="my.system.com"
IBM_EthernetPort.CreationClassName="IBM_EthernetPort",DeviceID="ETHLINEPUB",SystemCreationClassName="IBMOS400_ComputerSystem",SystemName="my.system.com"
IBM_EthernetPort.CreationClassName="IBM_EthernetPort",DeviceID="ETHLINEPVT",SystemCreationClassName="IBMOS400_ComputerSystem",SystemName="my.system.com"
cimcli ei IBM_EthernetPort
path= IBM_EthernetPort.CreationClassName="IBM_EthernetPort",DeviceID="ETHLINE",SystemCreationClassName="IBMOS400_ComputerSystem",SystemName="my.system.com"
//Instance of IBM_EthernetPort
instance of IBM_EthernetPort
{
InstanceID = NULL;
Caption = "Ethernet port ETHLINE";
Description = "Ethernet port information for ETHLINE.";
ElementName = "ETHLINE";
InstallDate = NULL;
Name = "ETHLINE";
OperationalStatus = {2};
StatusDescriptions = {"The line is in use."};
Status = NULL;
HealthState = NULL;
CommunicationStatus = NULL;
DetailedStatus = NULL;
OperatingStatus = NULL;
PrimaryStatus = NULL;
EnabledState = 2;
OtherEnabledState = NULL;
RequestedState = 5;
EnabledDefault = 6;
...