EMC Storage

Manuell SCSI Reservierung auf EMC Disk knacken

Man benötigt die Information an welchem FSCSI Adapter das zu befreiende hdiskpower device sitzt.

# lsdev -l hdiskpowerX -F parent

und kann mit dieser Information dann den emcpowerreset durchführen

# /usr/lpp/EMC/Symmetrix/bin/emcpowerreset fscsiX hdiskpowerX

<Top>

EMC Platten löschen - Schrittfolge

# varyoffvg <die vg, die die zu löschenden powerpath devices benutzt>

# powermt remove adapter=fcsX/all

# rmdev -dl hdiskpowerX

# rmdev -dl hdisksX

<Top>

EMC-Grab

Vergleichbar mit dem AIX Snap gibt es den EMC Grab, mit dem der EMC Support Fehlerdiagnose durchführen kann. Es handelt sich dabei um ein Shellskript, das von root ausgeführt wird und die nötigen Informationen einsammelt. Der Grab wird dann an EMC geschickt. Die jeweils aktuelle Version des emcgrab Skriptes kann mit FTP heruntergeladen werden:

ftp://ftp.emc.com/pub/emcgrab/Unix/

I.d.R. wird das Archiv nach /tmp kopiert und dort ausgepackt. Der größte Nachteil des emcgrab ist, daß man ein gutes Dutzend an Abfragen und Bestätigungen über sich ergehen lassen muß. Zwar drückt man dabei durchwegs nur die <Enter> Taste, es ist aber trotzdem lästig. Zur Abhilfe hier ein Beispiel für ein kleines expect Skript, das die Ausführung vollständig automatisiert.

#!/usr/bin/expect -f

# Author Andreas Schulze

#

# Usage: emcgrab <target host>

# Description Automates creating EMC grabs via SSH/Blade Logic Access

# on <target host>. The grab is placed in /tmp/EMC/emcgrab/outputs

# and from there copied to nim.

#

# Prerequisites for successful usage of this script

# + <target host> must have correct NIM entry in its /etc/hosts

# + <target host> prompt must match $prompt definition

# + <target host> must have enough free space in /tmp

#

# Tested with servera, serverb, serverc, serverd, serverf

# serverg, serverh, serveri, viosa, viosb

#

# To-Do Selection of EMC software package is fixed to emcgrab_AIX_v4.4.2

#

# Version 1.00 29062010 Creation

# 1.01 05072010 reduced match_max

# 1.02 26072010 changed emcgrab version to 4.4.2

# 1.04 27072010 old /tmp/EMC/ is now removed before new

# emcgrab is created. Gzipped emcgrab is

# copied to nim.

# 1.05 02082010 removed minor glitch

# 1.06 12082010 Added functionality for VIOS

# 1.07 16082010 Extended default prompt

# 1.08 24082010 fixed premature eof detection

#

set force_conservative 1 ;# set to 1 to force conservative mode even if

;# script wasn't run conservatively originally

if {$force_conservative} {

set send_slow {1 .1}

proc send {ignore arg} {

sleep .1

exp_send -s -- $arg

}

}

set timeout -1

spawn $env(SHELL)

match_max 50000

set prompt "(%|#|>|\\$) $"

catch {set prompt $env(EXPECT_PROMPT)}

send -- "alias | grep oem_setup_env && oem_setup_env\r"

send -- "ksh\r"

expect -re $prompt

send -- "mount \$(grep nim\[0-9\] /etc/hosts | head -1 | awk '{print \$1}'):/nim/software/ /mnt\r"

expect -re $prompt

send -- "\[\[ -d /tmp/EMC \]\] && rm -rf /tmp/EMC/\r"

expect -re $prompt

send -- "\[\[ -d /tmp/EMC \]\] || mkdir /tmp/EMC\r"

expect -re $prompt

send -- "cd /mnt/EMC/\r"

expect -re $prompt

send -- "cp emcgrab_AIX_v4.4.2.tar /tmp/EMC ; cd /tmp/EMC\r"

expect -re $prompt

send -- "tar -xvf emcgrab_AIX_v4.4.2.tar\r"

expect -re $prompt

send -- "umount /mnt; cd /tmp/EMC/emcgrab\r"

expect -re $prompt

send -- "./emcgrab.sh\r"

expect "LEGAL_NOTICE.txt"

send -- "^[G\r"

expect "EMC_LEGAL_NOTICE.txt: END"

send -- ":q\r"

expect "ACCEPT THE TERMS & CONDITIONS OF THIS LEGAL AGREEMENT (Y/N)"

send -- "y\r"

expect "degradation when running some commands"

send -- "G\r"

expect "README: END"

sleep 1

send -- ":q\r"

expect -re "Please enter full path to emc directory, if installed *:"

send -- "\r"

expect "Please Enter Service Request Number *:"

send -- "\r"

expect "Please Enter Customer Party Number (Site ID) *:"

send -- "\r"

expect "Please Enter Customer Company Name *:"

send -- "\r"

expect "Please Enter Customer Contact Name *:"

send -- "\r"

expect "Please Enter Customer Contact Phone Number *:"

send -- "\r"

expect "Please Enter your Email Address *:"

send -- "\r"

expect "Is the EMC Grab Identification Information Correct (Y/N)"

send -- "y\r"

expect -re $prompt

send -- "exit\r"

expect -re $prompt

send -- "exit\r"

expect -re $prompt

send -- "scp $argv:/tmp/EMC/emcgrab/outputs/*.tar.gz nim:/nim/savevg/pbtoibm/\r"

expect "Returncode was:"

expect -re $prompt

send -- "exit\r"

expect eof

<Top>