95
EMC Education Service OS Boot Camp Storage Lab Exercises July 2012

OS Boot Camp Lab Guide_2012_Final Redo

  • Upload
    challa

  • View
    11

  • Download
    2

Embed Size (px)

DESCRIPTION

OS Boot Camp Lab Guide_2012 OS Boot Camp Lab Guide_2012

Citation preview

  • EMC Education Service

    OS Boot Camp Storage Lab Exercises July 2012

  • EMC Education Service 2

    Copyright

    Copyright 1996, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 EMC

    Corporation. All Rights Reserved. EMC believes the information in this publication is accurate as of its

    publication date. The information is subject to change without notice.

    THE INFORMATION IN THIS PUBLICATION IS PROVIDED AS IS. EMC CORPORATION MAKES NO

    REPRESENTATIONS OR WARRANTIES OF ANY KIND WITH RESPECT TO THE INFORMATION IN THIS

    PUBLICATION, AND SPECIFICALLY DISCLAIMS IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A

    PARTICULAR PURPOSE.

    Use, copying, and distribution of any EMC software described in this publication requires an applicable

    software license.

    EMC2, EMC, Data Domain, RSA, EMC Centera, EMC ControlCenter, EMC LifeLine, EMC OnCourse, EMC

    Proven, EMC Snap, EMC SourceOne, EMC Storage Administrator, Acartus, Access Logix, AdvantEdge,

    AlphaStor, ApplicationXtender, ArchiveXtender, Atmos, Authentica, Authentic Problems, Automated

    Resource Manager, AutoStart, AutoSwap, AVALONidm, Avamar, Captiva, Catalog Solution, C-Clip, Celerra,

    Celerra Replicator, Centera, CenterStage, CentraStar, ClaimPack, ClaimsEditor, CLARiiON, ClientPak,

    Codebook Correlation Technology, Common Information Model, Configuration Intelligence, Configuresoft,

    Connectrix, CopyCross, CopyPoint, Dantz, DatabaseXtender, Direct Matrix Architecture, DiskXtender,

    DiskXtender 2000, Document Sciences, Documentum, elnput, E-Lab, EmailXaminer, EmailXtender, Enginuity,

    eRoom, Event Explorer, FarPoint, FirstPass, FLARE, FormWare, Geosynchrony, Global File Virtualization,

    Graphic Visualization, Greenplum, HighRoad, HomeBase, InfoMover, Infoscape, Infra, InputAccel, InputAccel

    Express, Invista, Ionix, ISIS, Max Retriever, MediaStor, MirrorView, Navisphere, NetWorker, nLayers, OnAlert,

    OpenScale, PixTools, Powerlink, PowerPath, PowerSnap, QuickScan, Rainfinity, RepliCare, RepliStor,

    ResourcePak, Retrospect, RSA, the RSA logo, SafeLine, SAN Advisor, SAN Copy, SAN Manager, Smarts,

    SnapImage, SnapSure, SnapView, SRDF, StorageScope, SupportMate, SymmAPI, SymmEnabler, Symmetrix,

    Symmetrix DMX, Symmetrix VMAX, TimeFinder, UltraFlex, UltraPoint, UltraScale, Unisphere, VMAX, Vblock,

    Viewlets, Virtual Matrix, Virtual Matrix Architecture, Virtual Provisioning, VisualSAN, VisualSRM, Voyence,

    VPLEX, VSAM-Assist, WebXtender, xPression, xPresso, YottaYotta, the EMC logo, and where information

    lives, are registered trademarks or trademarks of EMC Corporation in the United States and other countries.

    All other trademarks used herein are the property of their respective owners.

    Copyright 2012 EMC Corporation. All rights reserved. Published in the USA.

    Revision Date: July 2012

    Revision Number: MR-7CN-NSOSBOOT.5.0

  • EMC Education Service 3

    Document Revision History

    Rev # File Name Date

    0.2 OS_Boot_Camp_Labs_Days_4_and_5

    First-cut version with HP-UX lab only.

    16-Feb-2005

    0.3 Added Solaris and AIX labs.

    20-Feb-2005

    0.4 Added Windows lab. Also an introductory

    section on PuTTY and VNC.

    23-Feb-2005

    0.5 ID-Review: completed one pass of edits 11-March-2005

    0.6 Second pass of edits, accommodates

    differences in classroom lab hardware

    18-March-2005

    0.7 Format review 16-April -2008

    0.8 Edits, corrections 09-May-2011

    0.9 Updates to Exercises 17-Jan-2012

    1.0 Updates to Exercises 10-July-2012

  • EMC Education Service 4

    This page intentionally left blank.

  • EMC Education Service 5

    Table of Contents

    COPYRIGHT ............................................................................................................ 2

    DOCUMENT REVISION HISTORY ............................................................................. 3

    LAB EXERCISE 1: NETWORK CLIENT TOOLS: INSTALLATION AND USE .................... 7

    LAB EXERCISE 1: PART 1 - PUTTY ................................................................................... 8

    LAB EXERCISE 1: PART 2 - VNC CLIENT .......................................................................... 13

    LAB EXERCISE 2: HP-UX LAB................................................................................. 15

    LAB EXERCISE 2: PART 1: KSH (KORN SHELL) AND HOST SYSTEM BASICS ............................... 16

    LAB EXERCISE 3: SOLARIS LAB ............................................................................. 19

    LAB EXERCISE 3: PART 1 - SH (BOURNE SHELL) AND HOST SYSTEM BASICS ............................ 20

    LAB EXERCISE 3: PART 2 - EXPLORE STORAGE HARDWARE AND DRIVERS ............................... 26

    LAB EXERCISE 3: PART 3 - INSTALL A SOFTWARE PACKAGE ON THE SOLARIS HOST ................... 34

    LAB EXERCISE 3: PART 4 - TEST DRIVE OUR EMC STORAGE FROM THE SOLARIS HOST ............. 39

    LAB EXERCISE 3: PART 5 - CLEAN UP THE SOLARIS HOST .................................................... 49

    LAB EXERCISE 4: AIX LAB ..................................................................................... 53

    LAB EXERCISE 4: PART 1 - CSH AND HOST SYSTEM BASICS .................................................. 54

    LAB EXERCISE 4: PART 2 - EXPLORE STORAGE HARDWARE AND DEVICE CONFIGURATION ......... 57

    LAB EXERCISE 4: PART 3: INSTALL ADDITIONAL SOFTWARE ON THE AIX HOST ........................ 66

    LAB EXERCISE 4: PART 4 - CLEAN UP THE AIX HOST .......................................................... 70

    LAB EXERCISE 5: WINDOWS 2000/2003 SERVER LAB ........................................... 73

    LAB EXERCISE 5: PART 1 - EXPLORE THE HOST SYSTEM ...................................................... 74

    LAB EXERCISE 5: PART 2 - INSTALL SOFTWARE ON THE WINDOWS HOST ............................... 83

    LAB EXERCISE 5: PART 3 - CLEAN UP THE WINDOWS HOST ................................................. 88

    LAB EXERCISE 6: LINUX LAB ................................................................................. 89

    LAB EXERCISE 6: PART 1 - LINUX SYSTEM BASICS .............................................................. 90

    LAB EXERCISE 6: PART 2 - INSTALLING UNISPHERE AGENT AND NAVISPHERE CLI .................... 95

  • EMC Education Service 6

    This page intentionally left blank

  • EMC Education Service 7

    Lab Exercise 1: Network Client Tools: Installation and Use

    Purpose:

    To become familiar with two popular and free tools for connecting over a network to servers, from a Windows desktop or laptop. All subsequent labs Lab 1 through Lab 4 will require use of these tools.

    Tasks: In this lab, you perform the following tasks:

    Verify if PuTTY is already available on a Windows desktop; if its not available, install the PuTTY toolkit

    Install VNC client on a Windows desktop

    Verify proper operation of these tools with a simple test try connecting to one Unix server and one Windows server

    Understand basic features of these tools

    References: Online Help for both tools

  • EMC Education Service 8

    Lab Exercise 1: Part 1 - PuTTY

    Step Action

    1 PuTTY is what we will need to connect over the network to any of our Unix servers (HP-UX, Solaris or AIX). Lets first check if PuTTY is already available on the desktop or laptop. Strictly speaking, it is sufficient to have the single binary program, putty.exe, for remote terminal sessions. Lets check for presence of this binary. Start > Run Type cmd to get a Command Prompt window. In the command window, type: C: dir/s putty.exe

  • EMC Education Service 9

    Step Action

    What does dir /s do? Do a dir /? to find out. Can you search for the same file on the system using Windows Explorer? How? If the PuTTY binary already exists, were done. Do one, or both, of the steps below this paragraph. If PuTTY does not exist, you will have to install it. Go directly to the next step, Step 2. Create a shortcut to the PuTTY program on the desktop. Once this is done, you can start a PuTTY session by simply clicking on the shortcut icon. If you prefer the command line, you may want to add the full directory path to the PuTTY binary location to your Path environment variable. How does this help? on My Computer, select Properties. Select Advanced to Environment Variables. Under System Variables, highlight Path, then select Edit In the Variable Value field, navigate to the end of the current Path definition. Terminate it with a semicolon (;) and add the directory location of the new binary. For example, add: ;C:\putty Press OK successively until you exit. Lets check if our change has taken effect. Start a new Command Prompt window. From the default directory (typically C:\ ), type: putty If weve done our path definition correctly, this should work - and open the PuTTY main window.

  • EMC Education Service 10

    Step Action

    2 If PuTTY is not already on the desktop well be using well, well just have to install it. PuTTY is distributed under the GPL license; there are thus no restrictions on installing it on any number of machines. A large number of freeware sites make a copy of it available for download; check google. For your convenience, a recent version of the PuTTY toolkit is on your Resource CD. Load the CD into your CD-ROM drive, then: Start > Run Browse to the binary on the CD called: putty-cvs-installer.exe Running this binary will install PuTTY on your system. Once this is done, revisit Step 1 and complete the last two steps: add a desktop shortcut to the PuTTY binary; and set your Path so you can run PuTTY on the command line from any directory.

  • EMC Education Service 11

    Step Action

    3 This is what the PuTTY main window looks like, when you start it:

    Typically you feed in an IP address in the Host Name (or IP address) field, and select Telnet which initiates a connection on TCP port 23 automatically.

    Selecting Open at this point will put you into a telnet session right away.

    If you expect to be logging in and out of the host repeatedly, you may want to feed the host name into Saved Sessions and Save first. This helps avoid the bother of having to remember the servers IP address each time you want to start a new session. The Load button brings back the saved IP address for the selected host, at which point you can just Open.

    You must also set the backspace key sequence. The UNIX environment issues a Control-H when the backspace key is pressed. You windows keyboard issues a Control-Y. The Control-Y key sequence in UNIX will erase the line you have typed rather than deleting a character. Dont forget to make this change and make it permanent in your saved sessions.

  • EMC Education Service 12

    Step Action

    4

    PuTTY has comprehensive online help. To access it, just press the question mark (?) on the top right, and click on any field. You get context-sensitive help for the field you select.

    Or, you can just select Contents and browse the entire help document.

    End of Lab Exercise

  • EMC Education Service 13

    Lab Exercise 1: Part 2 - VNC Client

    Step Action

    1 We will be using VNC Client to connect to the Windows Server (Lab 4). All other labs involve Unix servers - for those, PuTTY is sufficient. Like PuTTY, VNC Client is also distributed freely under the GPL license. For VNC, there is a server component and a client component. The lab server should already be running the VNC server software, properly configured. You need to make sure that you have the client component on the desktop or laptop you will be accessing the server from. Weve included the VNC Client binary on the Resource CD. The filename is: vnc-4.0-x86_win32_viewer.exe Copy this binary to a directory of your choice on the C: drive. Note that this is not an install kit this binary is it! There is nothing to install. You may want to call it something shorter on your C: drive perhaps vnc.exe, create a shortcut to it, and/or add the directory to your Path variable , If you dont understand Path you didnt read Part 1 on PuTTY, did you?

    2 Running the VNC client with Start>Run , or directly from a Command Window gives you a small startup screen like this:

    You merely need to feed in the IP address of the Windows server, followed by a colon : , and the TCP Port number that the VNC server is listening on. Frequently thats port 5900, but check with your lab instructor your server may be configured to use a different port. Select OK and youre on the desktop of the server. What TCP port number does telnet typically use?

    3 You may want to explore the Options available on the VNC client. Perhaps the most important one controls desktop sharing. Be nice - make sure you dont lock out other VNC clients from connecting to the same server!

    End of Lab Exercise

  • EMC Education Service 14

    This page intentionally left blank.

  • EMC Education Service 15

    Lab Exercise 2: HP-UX Lab

    Purpose:

    To become familiar with HP-UX, from a storage installation and deployment perspective. The emphasis is on features unique to HP-UX, relative to other flavors of Unix.

    Tasks: In this lab, you perform the following tasks:

    Perform a software package installation on a HP-UX host.

    Run various storage-centric utilities on a HP-UX host.

    Perform a routine test on a HP-UX device provisioned from an EMC storage array.

    References: HP-UX man pages

    EMC Host Connectivity Guide for HP-UX

  • EMC Education Service 16

    Lab Exercise 2: Part 1: ksh (Korn shell) and Host System Basics

    Step Action

    1 Using PuTTY, login as root to the HP-UX host. If you dont know what PuTTY is, read the very first section of this lab workbook on Network Client Tools.

    2 Switch to the Korn shell with command-line editing capability. There are many UNIX editors. We only have been taught one editor, vi. So in order to manipulate the command line the Korn shell must be told which editor to use. # ksh o vi

    3 Change your terminal settings, so that the key behaves like erase :

    # stty erase

    4 List all the files in roots home directory, / : # ls

    5 What filesystems are mounted on this host, and how much free space is there? We need to bring in some software installation files.

    # bdf

    The free space in the / filesystem is: = Kbytes

    The free space in the /home filesystem is: = Kbytes

  • EMC Education Service 17

    Step Action

    6 Lets make a directory to put our stuff in , and go there:

    # cd /var/tmp # ls HP installs software in a depot format. The Software Assistant SWA, creates software bundles for installation. These bundles are typically installed from directories called depots. # mkdir depot # cd depot # pwd

    7 Get the history of previously-run commands within ksh :

    # history

    8 Now lets recall our first ls command. Type the sequence , repeatedly (not both together tap , then tap ). Notice how the commands appear, starting with the most recent one. Repeat the sequence until you get the command ls, then press to run it again. Note: you can actually edit the recalled command with vi-like actions, but thats for you to explore at leisure.

    9 Note the exact revision of the HP-UX operating system, and the hardware architecture obtained from the command: # uname -a Is our HP-UX revision 11.21, 11.31 or some other version? Our HP-UX server OS version is: What architecture is the HP-UX server:

    End of Lab Exercise

  • EMC Education Service 18

    This page intentionally left blank.

  • EMC Education Service 19

    Lab Exercise 3: Solaris Lab

    Purpose:

    To become familiar with Solaris, from a storage installation and deployment perspective. The emphasis is on features unique to Solaris, relative to other flavors of Unix.

    Tasks: In this lab, you perform the following tasks:

    Perform a software package installation on a Solaris host

    Run various storage-centric utilities on a Solaris host

    Perform routine tests on a Solaris device provisioned from an EMC storage array.

    References: Solaris man pages

    http://docs.sun.com

    EMC Host Connectivity Guide for Sun Solaris

  • EMC Education Service 20

    Lab Exercise 3: Part 1 - sh (Bourne shell) and Host System Basics

    Step Action

    1 Using PuTTY, login as root to the Solaris host. If you dont know what PuTTY is, read the very first section of this lab workbook on Network Client Tools.

  • EMC Education Service 21

    Step Action

    OK, lets look around the host first. What are the current settings for common environment variables? # env What type of shell are we running? You can search the list from above, or you can simply type: # echo $SHELL Did it report /bin/sh ? That would be the Bourne shell. This is an older shell, and has fairly basic features compared to the others. But its worth knowing for a couple of reasons. First, it happens to be the default shell on Solaris (what you get if you add yourself as a user, and dont ask for some other login shell). Plus, a lot of critical startup scripts are written in Bourne. EMC also uses Bourne shell to install Solutions enabler. If we preferred ksh , how would we switch to ksh in this session? If we wanted bash to be the default login shell for root, what file do we edit? Run this command. Dont actually edit it, though leave it alone. Corrupting this file will render the system inaccessible. If you dont know what that file is remember we created a user account earlier this week and you edited it. # grep root If we did make the edit and saved that file, when does the change take effect? Does the current PuTTY session switch to bash right away?

  • EMC Education Service 22

    Step Action

    3 Whats the environment variable PATH set to? Our PATH tells the shell where to look for commands (binaries or shell scripts) when we type them. The shell looks for a file matching the command name, and searchs the directories in the order specified by PATH. We dont like our current PATH. Were going to be installing some software ( naviseccli), and after thats done, we want an extra (/opt/Unisphere/bin) directory in our PATH. We also want the shell to always check our current directory too, for executables. So lets take care of all this now. Before we edit the profile, lets first save a copy. Just in case we dont like the results of our edits. # cp .profile .profile.orig Start the vi editor on the file .profile (theres a period in front of profile). This is the configuration file for the Bourne, Korn and Bash Shells theres one for every user, in there home directory. Which directory are we in now, and whose home directory is it? How do we know? # vi .profile Navigate down to the PATH line with the key. Then navigate over to the end of the line anyway you know. Simply pressing repeatedly will do it. You can add stuff to the end of the line with . Were going to add the directories /opt/Unisphere/bin and . (just a period) to our PATH. After were done, the line will look something like this: PATH=/usr/bin:/etc:/usr/sbin:/usr/openwin/bin:/usr/ucb:/sbin:/usr/emc/ECC/bin:/usr/symcli/bin:/opt/EMCpower/bin:/opt/VRTSvmsa/bin:/opt/Acrobat5/bin:/opt/Unisphere/bin:. Now check the PATH variable again. Has it changed? When will the new value take effect?

  • EMC Education Service 23

    Step Action

    4 Being the impatient sort, lets start a new PuTTY session and log in again as root. Examine the PATH variable again. We should be happy with the results at this point. Run the command:

    # echo $PS1

    PS1 stands for: Prompt String 1. There is a PS2 as well. By default, the shell uses whatever PS1 resolves to right now, and makes that the command prompt.

    Now lets try the command below. Be careful with all the quote marks. The ` (tilde) is the back-quote key, usually under ~ (tilde) on the keyboard. This is not the standard single-quote mark!

    # PS1=`date`>

    The ` grave accent will execute the command inside them and replace the command text with the command output.

    What happened to our command prompt?

    The key thing to note here is the difference between and ` (which is pretty universal across all flavors of Unix shells). A double-quoted item - using a pair of - represents a text string. A grave-quoted item using a pair of ` forces evaluation of the item by a shell, and the result is put in place of the command.

    OK, we like our new prompt. Lets make it permanent. How?

    If youre one step ahead, youve already started a new PuTTY session and logged out of the old ones. If not - lets try something new: # . ./.profile This forces the current shell to use all the definitions in our current .profile. If there are problems with our edits, well know right away. If it works now, it will work with new PuTTY logins too.

  • EMC Education Service 24

    Step Action

    5 What filesystems are mounted on this host, and how much free space is there?

    # df -k

    Whats the /proc filesystem? Why is /proc reporting zero for capacity, space used and available?! Is this a conventional filesystem on a physical disk somewhere? Where does it reside, physically on the host? For a good definition check out this link

    http://tldp.org/LDP/LGNET/46/fink.html

    Lets get into this directory and take a look around. Under /proc, youll see a bunch of directories, one per process on the system. The directory name is the same as the PID. Look around in a directory and see what you find. About the only thing that writes to the /proc filesystem is the Solaris kernel. A bunch of diagnostic utilities read the information there. For example, try the command:

    # ptree a | more

    What do you think this command is doing?

    Do you see the command we just typed in ptree a - in the tree? Does the process hierarchy begin to make sense?

  • EMC Education Service 25

    Step Action

    6 Lets record our exact Solaris revision, before moving on to the next part.

    # uname a

    Solaris versions are colloquially referred to as: Solaris 8, Solaris 9, Solaris 10 etc. If uname reported 5.10, it means were running Solaris 10. Solaris 9 and 10 are the most commonly deployed versions at this time. My Solaris host operating system version is: What is the hardware architecture? Is it 32 bit or 64 bit? It matters when you are downloading the software from powerlink.

    7 Frequently, installing a software package on Solaris requires that certain operating system patches be installed as a pre-requisite. The command to show currently installed Solaris patches is:

    # showrev p

    Try it and see what it says.

    Pop quiz:

    Lets say were checking if patch number 120220-01 is installed on our Solaris 10 host a new driver we want to install requires that patch. Can you?

    Is the host ready for our new driver right now?

    End of Lab Exercise

  • EMC Education Service 26

    Lab Exercise 3: Part 2 - Explore Storage Hardware and Drivers

    Step Action

    1 Using PuTTY, login as root to the Solaris host.

    Lets first understand the prtconf utility. prtconf gives you a pretty good idea of a Sun hosts current hardware configuration, what drivers have been installed, etc. Since this is an unfamiliar command in Unix, the first thing we do (of course) is: # man prtconf From the man page, we know this command cant do any damage by itself its just printing out stuff. By itself, this is a good reason to read the man page before you run anything unfamiliar! Play around with the prtconf options and see how they affect the output to screen. You may want to pipe the output through more so you can look at your own pace. Since were storage-focused here, we invariably care about two key things on the host: what HBA boards (typically Fibre Channel boards) are installed on the system; and are the proper device drivers loaded for them. Try this: # prtconf Dv | grep i fibre If this doesnt work maybe you need to search for other objects, try this command to find your HBAs # prtdiag To list the driver information, firmware and wwpn for your adapters use this command: # fcinfo hba-port Do you see information on two Fibre Channel boards? The driver calls each physical board or host port one instance. Whats the name of the driver managing these two HBAs?

  • EMC Education Service 27

    Step Action

    3 On Sun hosts, youll commonly see either Emulex HBAs, which require the lpfc driver, or Qlogic HBAs which require a driver whose name begins with qla. Some older hosts use the JNI HBAs the drivers for these are either fcaw or fca-pci , depending on whether the boards use Suns proprietary S-bus, or the more standard PCI bus. How do we check if a Sun host has JNI boards of any type, with a suitable driver installed? OK, so we know we have two Emulex HBAs and the driver is installed for them. Lets find out more about the currently installed Solaris driver. In Solaris, Fibre Channel drivers are installed like any other software package using the pkgadd utility. Once a package is added, you can list information about it using pkginfo . # pkginfo | grep i emu emu is short for emulex # pkginfo -l SUNWemlxs Our lpfc driver version is:

  • EMC Education Service 28

    Step Action

    4 Frequently, we also care about what firmware revision is on the boards. Firmware is basically code that resides in the flash memory on the HBA, and runs from there on the HBAs processor chip. Its quite unlike our software driver of the previous step, which actually gets built into the Solaris kernel.

    All HBA manufacturers supply a utility that can be used for various diagnostics on these boards, and also to load new firmware on the boards when needed. For Emulex, this utility is called lputil . This utility can be downloaded from Emulex at this link

    http://www.emulex.com/downloads/emc/drivers/solaris/602hx2.html

    The file will then have to be copied to you Solaris host using your favorite utility ftp. The name of the file is solaris-2.1a18-6.02hx2-1a.tar

    Extract the files and you find multiple tar files that must be installed separately. There is also a readme.first.txt file, please read it! You must install both the lpfc driver and then the utility. When you extract all the tar files take note of their names, there are multiple README.txt files they will tell you how to install the driver and the utility. At some point you will be extracting multiple tar files. These may have tar file inside them which also must be extracted. The driver file must be installed first. Cd to you parent directory of lpfc.1 and execute this command

  • EMC Education Service 29

    Step Action

    Now we have to extract the Emulex applications and where necessary unzip the file.

  • EMC Education Service 30

    Step Action

    The tar file you extracted contains 2 more tar files that must also be extracted. This is such fun. You can then use pkgadd to install the software packages contained in the directory

    # pkgadd -d .

    You may also find the file is compressed with a .gz format. You must use gunzip to uncompress it before attempting the installation. We know that lputil is probably on the host now, since the lpfc driver package is in there. How do we find it? Typically, user-installed drivers would go either in /usr or /opt . So lets try those places.

    # find /usr name lputil

    OK, we found it. Now run this utility and fill in the following information:

    The firmware revision on lpfc instance 0 is:

    The firmware revision on lpfc instance 1 is:

  • EMC Education Service 31

    Step Action

    5 Warning: if youve already completed Lab 1, the HP-UX lab: be careful here the ctd device numbering does NOT work the same in Solaris and HP-UX!

    Now lets look for any LUNs we can see on our Fibre Channel buses. LUN stands for Logical Unit Number, and its seen by the host as one physical disk. inq is a useful program written by EMC to figure out what LUNs we can see. By a stroke of luck, inq is on this host already.

    # which inq

    What does which do ? Do a man which .

    How does which relate to our PATH environment variable? (Part 1, Step 3)

    Suppose we brought in a new version of the inq binary to the current directory. Which inq binary will be run for each of the following commands? Your answer should contain a full directory path name.

    # inq

    # ./inq

    OK, lets look at the inq output carefully now. In our host, we know we are booting Solaris from a local disk drive. There may also be one or two other local disk drives on the machine. All of these are c0 devices. In Solaris, the c in ctd stands for a HBA or host bus instance. We dont care about c0 right now, since thats an internal SCSI bus not Fibre Channel, like our two Emulex boards.

    Do you see any devices that are not on c0, and that report DGC under the VEND column? VEND stands for Vendor. EMC CLARiiON devices report the vendor name as DGC. We are sure you can guess the Symmetrix disk name.

    Lets make a list of whatever devices we can see right now. In Solaris ctds, the d number is the same as the LUN number presented by the array. The t number is a unique number configured on the host for the target port and is the wwpn of the array the lun is from.

    CTD device name LUN

    number

    NOT one of ours example only: c4t5006048ACCD23B1Ed10

    10

  • EMC Education Service 32

    Step Action

    6 Remember, our Fibre Channel driver is called lpfc (Emulex), or qlgc (Qlogic). Two parameters in the /etc/system file require modification when operating in a Solaris environment. We must make the necessary edit to this configuration file (make a backup copy before you start vi!). After we make the edit and save the file, we want to force the host to reload the sd driver configuration. Save a backup copy of /etc/system, modifying this file incorrectly may cause the scsi subsystem not to reload. When using the Emulex or QLogic drivers, set the following parameters: sd_io_time sd_max_throttle To modify these parameters for Emulex sd or QLogic sd drivers complete the following steps: 1. Set sd_io_time to 60 seconds. set sd:sd_io_time = 0x3C This setting prevents the host from issuing warning messages while non-disruptive operations are performed on the EMC storage system: 2. Set sd_max_throttle to 20. set sd:sd_max_throttle = 20 This setting prevents the host from over-sending tag queuing commands which may cause scsi cmd timeout and scsi bus reset. We need to reboot the system to make the changes take effect # shutdown r now or # init 6 What does init 6 do? Man pages will help here, or google. We may see additional disk now that we have rebooted, check the messages file on your system. The file is /var/adm/messages. Its where the kernel and most drivers write useful messages to. Another way to get at the kernel log since the last reboot only is to simply use the command: dmesg.

  • EMC Education Service 33

    Step Action

    For right now: Open up another PuTTY login as root, and issue the following command in it: # tail f /var/adm/messages What does tail f do? Do a man tail . Did you see any activity in the tail f window? Kernel log messages have timestamps on them. Does recent activity give you a clue as to whether were done? OK, we can also try to rescan the bus if we have only masked new disks to an already running SAN environment. Lets rescan our buses and build device files as necessary just in case we have mapped and masked new devices: For Solaris 9 and higher only: # update_drv f sd For Solaris 8: # devfsadm C Now run inq again. If were all set, we now revisit Step 5 and fill in the new LUN in the table.

  • EMC Education Service 34

    Lab Exercise 3: Part 3 - Install a Software Package on the Solaris Host

    Step Action

    1 Using PuTTY, login as root to the Solaris host.

    2 Our goal in this part is to install the Unisphere Agent/CLI software package on the Solaris host. Its useful to have that on the host with a CLARiiON array attached. We also may need Solutions Enabler if we are attached to a Symmetrix. Download the Unisphere Agent, the Navisphere/CLI and Solutions enabler depot from EMCs Powerlink website to your desktop. If there is a newer version than the one listed here please use the newer one. From http://powerlink.emc.com, follow Support then Software downloads. We want version 1.0.51.1.0038 or higher of the Solaris Unisphere Agent and the Navisphere/CLI 7.30.11.0.38 or higher. We also want the latest version of Solutions enabler so we can also install it. We know that you may or may not have both types of arrays attached to your system, the installation procedures are different and you need to try both. As our first priority, lets make sure theres no older version of the package already installed in there. We could try pkginfo , and grep for a suitable string (see Part 2 Step 3, where we did something like this earlier). The only thing we know for sure about the package name is: it should have the string nav (from Navisphere) or uni (from Unisphere) in it. Were not sure if that string is uppercase, lowercase, or mixed. What command did you try? Did it show anything?

    3 We conveniently have the package on the host, and ready to install (today must be our lucky day). If not we must copy it from your laptop to the host. Now may be a good time for ftp. Where is the file, possibly its in /var somewhere; and if it is its in gzip format. Our task is to find that gzip file. If not create a directory called software on a filesystem with enough room to hold your download. The find command that worked for us is:

  • EMC Education Service 35

    Step Action

    4 Next, we have to get our package out from the gzip archive. Try this:

    # cd

    # gzcat *.gz | tar xvf

    What is this doing? gzcat is just like a gzip d decompression, however it writes decompressed stuff to standard output. tar x means: extract whatever tar file appears after the f option. In the case where the filename is - , tar extracts from standard input. The pipe handles routine business: take the standard output of the first command (zcat) and use that for standard input on the second command (tar). This is fairly advanced command syntax if you prefer the next set of commands does the same thing.

    If this all looks clever but confusing, take your time and do it in two steps. List the files between steps, so you can see what is happening:

    # cd

    # ls l

    # gzip d *.gz

    # ls l

    # tar xvf *.tar

    # ls l

    If everything worked fine, we should have the package file called

    HostAgent-Solaris-32-sparc-en_US-1.0.51.1.0038-1.pkg

  • EMC Education Service 36

    Step Action

    5 Without further ado, lets install this thing:

    # pkgadd d HostAgent-Solaris-32-sparc-en_US-1.0.51.1.0038-1.pkg

    Dont forget the NAVISPHERE/CLI also you may have to repeat the command obove with a different pkg file.

    You want to select the default, i.e. install everything, by typing when you get there:

    Youll also have to type Y for Yes a couple of times

    When were all done, lets verify that everything we want has been installed:

    # pkginfo l UNIAGENT

    # pkginfo l NAVISCLI

  • EMC Education Service 37

    Step Action

    6 Lets check if the Unisphere Agent process is running: # ps ef | grep i uni Since its not, lets start it: # /etc/init.d/agent start Did that work? # ps ef | grep i uni Can you guess the command that will stop the agent process? Take a look at the agent startup script. You may find a clue in there or it may confirm your guess. In a real install, youd have to go edit the Agent configuration file at this point. Were going to skip that now (today is our lucky day..)

  • EMC Education Service 38

    Step Action

    7

    Lets check if the naviseccli command works, now that weve installed it:

    Will the naviseccli command work when you are defaulted to the root directory? If not what do we have to fix on the system? What variable? Look at the output of the command. # which naviseccli What does the which command tell us? How did HP-UX find our naviseccli executable? What previous step helped us?

    End of Lab Exercise

  • EMC Education Service 39

    Lab Exercise 3: Part 4 - Test Drive our EMC Storage from the Solaris Host

    Step Action

    1 Using PuTTY, start a login as root to the Solaris host.

    2 Before we can use any of our CLARiiON LUNs from Solaris, we need to format them first. All format does is: write a partition table at the head of the disk, following a standard layout. Needless to say, this could- erase existing information on a disk (though not always). Do not run this command on the boot disk it will erase it. Lets pick one of the CLARiiON (DGC)/Symmetrix luns in our table of Part 2, Step 5. Were looking for any one of those ctd devices. If youve listed any device whose name begins with c0 in that table, this is a good time to stop and seek help. The one thing you dont want to do is to run format on your boot disk drive.. unless you really know what youre doing. Here goes: # format This brings up a menu as shown in the following screenshot.

  • EMC Education Service 40

    Step Action

    2

    Select a disk by its number i.e. 1-11 in this example The disk will return the statement it is not labeled and will as you if you want to do it. The label is the partition table of the disk Type y to confirm (Solaris is just trying to protect you here.)

  • EMC Education Service 41

    Step Action

    Can you tell from this screen that weve been messing with a CLARiiON/Symmetrix device, and not any other type?

    The first column, Part, is the partition number same as the slice number. Run inq again do you see an s2 at the end of all our ctd device names? The s2 refers to slice 2 or partition 2 of this disk which in Solaris is the entire disk.

  • EMC Education Service 42

    Step Action

    3 OK, its time to get our pencils out and fill out one of our tables. Ignore the unassigned partitions on this LUN it means they are not configured. You can use all of them if you wish but we are just using the ones listed here. We have four others. Fill out the table below for these four partitions. Someone has already done s6 for us, since they were getting mildly anxious about all the formatting going on.

    Slice name Starting cylinder Ending cylinder

    S0 0 0

    S1

    S2

    S6

    Which slice encompasses the entire disk? Our customer just stopped by, and she appears pleased with progress on the storage provisioning. She says she will be building a filesystem on a CLARiiON LUN and migrating some huge files over. Shes trying to estimate how long that copy might take. Could we possibly spot-check the write speed we can get on a LUN? No problem, we know all about dd or do we? man dd sounds like a good idea at this point. After having read that, lets try a write test on our newly-formatted device. Were going to be doing raw device writes, and we figure on using the entire device (you know which slice that is). Since we want to measure the I/O rate from the host, lets first open a new PuTTY session as root, and fire up this command there: # iostat nxzM 5 iostat can be very handy at times like this; of course you want to read the man page. iostat options are very different on different Unix systems. Whats the 5 doing? That argument pretty much means the same for iostat, vmstat etc. on any flavor of Unix.

  • EMC Education Service 43

    Step Action

    On our first PuTTY session, lets fire up the write test: # dd if=/dev/zero of=/dev/rdsk/ c4t5006048ACCD23B1Ed10s2 bs=64k What is this command doing? dd just reads data from the input file (whatever is specified as if) and writes the data to the output file (whatever is specified as of). In our command, we use the special device /dev/zero for input. This is not a real storage device its a synthetic device that spews out zeroes as fast as the host processor can generate them. This is a fairly standard way to create a heavy write workload to a storage device. When the entire output device has been filled with zeroes, dd exits. How do we know were writing to a raw device? The bs=64k just tells dd that it should read and write in 64-Kbyte chunks which are quite large by normal standards. This guarantees high bandwidth on a fast storage system with lots of cache on it.

  • EMC Education Service 44

    Step Action

    Have you been watching that iostat window? Oh no, what happened? It seemed to write really fast for a while, and then it stopped? Has our dd hung? No it has not hung the disk you are writing to is only 139MB in size and has run out of space. At this point you probably want to kill the PuTTY session with the dd in it its unlikely you can recover that session. Lets start a new login and examine the wreckage. First things first can we read from the device now? Come to think of it, we should have probably tried that before we even attempted the write test.. remember, reading a raw device is very safe. # dd if=/dev/rdsk/c4t5006048ACCD23B1Ed10s2 Continued on the next line of=/dev/dsk/c4t5006048ACCD23B1Ed10s2 of=/dev/null You can think of /dev/null as an infinitely large sink device you can keep writing to it forever and it will never fill up. The counterpart that we used in our earlier command - /dev/zero - is an infinitely large source device. You can keep reading from it and youll never run out of records to read. OK, so did our dd read succeed? It didnt; it probably gave you an error like the one below, and exited immediately. dd: /dev/rdsk/ c4t5006048ACCD23B1Ed10s2: open: I/O error

    To figure out what went wrong, lets go back to our slice table in Step 2. Our first dd test was writing to slice 2, which means it started writing from block 0 of the physical disk or LUN. Is this a problem? Which cylinder has the Solaris device label on it the label that format created?! Did we just blow it off, with our first dd? How do we recover from this situation?

    Remember, the disk didnt have a label to start with, before our format. Now we have a possibly corrupted label. Not much difference there. We dont have any useful data on the disk anyway. It has been provisioned.

  • EMC Education Service 45

    Step Action

    4 After fixing our minor problem of Step 3, lets see if theres any other way to run this demo for our (by now visibly shaken) customer.

    Is there another safe slice we could be using, in that first dd if=/dev/zero command of Step 3?

    We want the biggest one possible. If they all start at cylinder 0 you must change a partition to start, lets say 10 cylinder into the disk and finish on the last cylinder. If you use slice 6 and repartition it you will not destroy the label we just put back in place.

    Try it out; if you came this far, you know how to fix it, anyway. We would rather you mess up here than at a real customer site.

    Did the dd run much longer this time, and actually finish?

    Can you tell from the iostat window if the dd is doing anything?

    How many 64K records did dd write, before exiting?

    You already know how big your slice is. Does the completed record count above make sense? Show the math.

  • EMC Education Service 46

    Step Action

    5 Filesystems, unlike dd, have some degree of intelligence so they can deal with slice 2 just fine. They know how to stay out of troublesome spots like disk labels. Lets build a filesystem on the device we just clobbered and recovered. Please use the raw device to create the filesystem.

    # newfs /dev/rdsk/c4t5006048ACCD23B1Ed10s2

    Solaris again thoughtfully asks if we really want to do this, and we say y .

    This is another command you want to be careful with you usually dont want to newfs a raw device that already contains a filesystem on it. Unless you dont need that data ever again. Typos count!

    What type of filesystem did newfs make for us? Do a man newfs .

    Now lets make a mount point lets call it /test . This is just the root directory for our new filesystem just like all the others you see when you run df .

    # mkdir /yourfirstname

    Lets mount the filesystem. Be careful, you want to use the /dev/dsk device here i.e. the block device. Not the /dev/rdsk, which is the raw device. # mount /dev/dsk/c4t5006048ACCD23B1Ed10s2 /yourfirstname Did it work? Run df k to find out. How much room do we have on our new filesystem? Do basic tests with the new filesystem: copy some files over to it, read them back. Now unmount the filesystem. This is done with the umount command which is just the English word unmount without the first n (youre not the first one to have trouble with this concept, and you wont be the last). # cd / # umount /yourfirstname Did it work? # df -k

    # cp vfstab vfstab.orig

    # vi vfstab

    If youve already read man mount before you got here nice work!

  • EMC Education Service 47

    Step Action

    6 Why is cd / a good idea before attempting a umount? What happens when your current directory is somewhere in /test, and you attempt the umount? Try it and see. OK, everything works. Now we want to fix it so we dont have to issue that mount command ever again we want the host to mount that filesystem automatically at boot-up time. Take a look at the /etc/vfstab file. The man page for vfstab is not particularly friendly. Try this document from Sun instead: http://docs.sun.com/app/docs/doc/805-7228/6j6q7uev3?a=view

    In general, docs.sun.com is a good place to go for any information about Solaris.

    Now that were done reading, lets fix the vfstab the way we want it. First, lets back up the original vfstab:

    # cd /etc

    We want to add one line to the file, for our new filesystem. Its easiest to start with the existing entries for the / filesystem, and then make minor edits.

    The first field should be your block device ( /dev/dsk/.. )

    The second field is your raw device (/dev/rdsk/..) This is the device we check when we fell there may have been corruption when the system shutdown abnormally. Kind of like checkdisk in windows

    The 3rr field is your mount point and will be /yourfirstname

    You really want differences from the / filesystem in only two fields: use (hyphen) for

    fsck_pass, and yes for mount_at_boot and hyphen in the last 2 field

    Explaining the meanings of various fields in vfstab is beyond the scope of this class; you just need to understand how to add entries for non-booting filesystems, if necessary. Now that its done, do we really want to reboot the host to test it? Theres a simpler way to

    check our edits, fortunately:

    # cd /

    # mount a Did it work?

    # df k

  • EMC Education Service 48

    Step Action

    If it did you edited the file correctly. If not you must go back and fix the problem.

    Remember there must be 7 fields. It should look something like the entry for the / filesystem.

    Now have you installed Solutions Enabler? You may want to look at the readme file that comes with the software package.

  • EMC Education Service 49

    Lab Exercise 3: Part 5 - Clean up the Solaris Host

    Step Action

    1 Unmount test filesystem; remove the test mount point # cd / # umount /yourfirstname Did it work? # df -k # rm rf yourfirstname

    2 Restore the original vfstab file. # cd /etc # cp vfstab.orig vfstab Does that original version still work? # mount a # df -k

  • EMC Education Service 50

    Step Action

    3 Restore device-special files to their original state: run the script below # /var/tmp/cleanup_devices Did you bother to give the script a look before running it? What if it had been a one-liner to blow off the / partition? A dash of healthy skepticism goes a long way. Did the cleanup script work? Lets check. # update_drv f sd # inq inq should show one missing CLARiiON device (as it was for you at the start). If not, please notify a lab instructor thank you.

    3 Restore the original .profile for the user root # cd / # cp .profile Hopefully the backup has a meaningful name, and we can actually find it? Is that backup for real, anyway? Lets test it and see. # . ./.profile Any problems? Good! Restore the original /etc/vfstab file

  • EMC Education Service 51

    Step Action

    4 Remove all traces of Unisphere Agent and CLI. # pkgrm NAVISCLI # pkgrm HOSTAGENT Respond with y to any questions that pkgrm asks.

    We also want to remove any files left behind by these packages:

    # cd /etc

    # pwd

    # rm rf Unisphere

    # cd /opt

    # pwd

    # rm rf Unisphere

  • EMC Education Service 52

    Step Action

    5 Remove any non-critical files that we may have generated in /var/tmp/pkg :

    # cd /var/tmp/pkg

    # ls al

    # rm f HOSTAGENT.pkg

    # rm f Agent tar files and the navisphere cli file

    # ls -al

    Stop the agent also, if you remember how. It is in the lab!

    If everything worked correctly, there should be just the original .tar.gz file here no other files. Please remove that also and call your instructor over to verify the cleanup.

    6 Dont forget to logout from all of your PuTTY sessions on this host. There are several ways to do this, pick your choice.

    # logout

    While in the PuTTY window, hold down the and keys together.

    #

    Kill the PuTTY window on your desktop.

    End of Lab Exercise

  • EMC Education Service 53

    Lab Exercise 4: AIX Lab

    Purpose:

    To become familiar with IBMs AIX, from a storage installation and deployment perspective. The emphasis is on features unique to AIX, relative to other flavors of Unix.

    Tasks: In this lab, you perform the following tasks:

    Perform software package installations on an AIX host

    Run various storage-centric utilities on an AIX host

    References: AIX man pages

    http://www.redbooks.ibm.com

    EMC Host Connectivity Guide for AIX

  • EMC Education Service 54

    Lab Exercise 4: Part 1 - csh and Host System Basics

    Step Action

    1 Using PuTTY, login as root to the AIX host. If you dont know what PuTTY is, read the very first section of this lab workbook on Network Client Tools.

    2 Lets have a look at the current login environment. What are the settings for common environment variables? # env What type of shell are we running? You can search the list from above perhaps you run env | more next - or you can simply type: # echo $SHELL Did it report /usr/bin/ksh ? That would be the Korn shell. Whats the file that determines which type of shell we get, at login time? It is the same file you used to create a user account in the lab on Monday. Lets take a look at that file. Were user root, so lets do: # grep root Do you see the Korn shell specified there for root? Since we want a c shell, and we want it now! lets just manually start one: # csh csh is a Just a different shell. It has it own special nuances.

  • EMC Education Service 55

    Step Action

    3 Lets set up the history mechanism, create the history variable. # set history = 100 Type the following command to create some history to recall from. # ls # pwd # find / -name software # history Lets rerun one of those older commands from your history list pick a safe one for your own host. In our screenshot, lets rerun # 5 # !5

    What did the !5 do? For some reason, we didnt quite like the command we just ran. Maybe we want to find the syslog.conf file instead. Thats easy enough: # ^errlog^syslog.conf

  • EMC Education Service 56

    Step Action

    4 Lets check the operating system version on our AIX host:

    # oslevel

    For AIX, we also want to know the specific maintenance level. Frequently the way we get supported drivers that are native to AIX is: move up to a new maintenance level on the entire operating system.

    # oslevel r

    The OS revision / maintenance level of our AIX host is:

    5 A tip before proceeding. There is an extremely small list of tasks for which an AIX host requires a reboot. Rest assured that not a single task that you will attempt - in this entire lab belongs in this list.

    An uptime (i.e. time since the machine last booted) of several years would not be considered unusual on an AIX host. This is a good thing; when you do reboot one, it could take a long time. A half-hour or longer for a full reboot may be normal, depending on the configuration.

    So if you find yourself stuck at some point and get the urge to reboot the AIX host dont do it. Talk to a lab instructor first.

    End of Lab Exercise

  • EMC Education Service 57

    Lab Exercise 4: Part 2 - Explore Storage Hardware and Device Configuration

    Step Action

    1 Just to be different, were going to accomplish all of Lab Exercise 3 (all four parts) with just that one original PuTTY session. So dont go opening any new login sessions now.. we have a bash shell already, and well stay with it.

    2 If youre going to be working with AIX, it would help to know your way around smit. smit stands for System Management Interface Tool, and its unique to AIX. On an X-Windows system console, it gives you a real X-based graphical utility to manage every possible aspect of an AIX system. Since were doing terminal sessions here no X were going to use smits cousin, i.e. smitty : # smitty Check out the definitions for the navigation keys at the bottom mostly using the F1 through F10 keys at the top of your keypad. Important keys to remember are (which backs you to the previous screen) and which gets you out of smitty. Lets explore the host a little. Being storage people, obviously our first questions are: Does this host have any Fiber Channel boards (HBAs, adapters) installed? How many? Hint: Follow Devices from the main screen > FC Adapter > FC Adapter > List all FC Adapters The FC stands for Fibre Channel.

  • EMC Education Service 58

    Step Action

    Whats the biggest I/O transfer these adapters have been configured to handle? We want the answer in Kbytes.

    Hint: Youre going to need a hex-to-decimal converter for this one. The desktop calculator on Windows can do it in scientific mode. Thats in case youre unsure of your hexadecimal (thats base 16) arithmetic.

    3 Next were going to find out what drivers have been installed if any for these Fiber Channel HBAs of ours. On AIX, its a safe bet you have one of the IBM-branded Emulex HBAs, which would use a native IBM-supplied Fiber Channel driver. The driver-name begins

  • EMC Education Service 59

    Step Action

    with the string df. So lets find this driver: # lslpp l | grep df What is this command doing? lslpp is the AIX command to display all installed packages. The output of lslpp is being piped here to the grep filter command. Were filtering for the string df, so we only see the small subset of packages of immediate interest to us. Typically, this command would produce a small list of AIX driver-related packages such as this:

    4 What disk devices naturally, this would include any presented from an EMC CLARiiON or Symmetrix array do we see right now, on this host? # lsdev Cc disk Hmm. This does not look too interesting. All those 16 Bit SCSI or 16 Bit LVD devices are just the internal, local disks on the AIX host were booted off one of them. Do you see any hdisks that have one of these words in their descriptions? FC is short for Fibre Channel; Symmetrix; or CLARiiON? Well, lets ask the host to go rescan its I/O buses. Perhaps it will find some new devices. Usually this would be handled by a standard AIX utility called cfgmgr . For EMC storage devices only, we supply a special script called emc_cfgmgr . The script is somewhere in /usr but were not sure where. Did you find that script? What is its full pathname? What command did you use to figure out where it was?

  • EMC Education Service 60

    Step Action

    Gee, thats a pretty long path name. We dont want to type that each time were in another directory. Lets edit the path and make life easier. # PATH=$PATH:your_directory_from_above # export PATH # which emc_cfgmgr Does which find the script? So lets run it. A word of caution on cfgmgr or its special subset, emc_cfgmgr when running these commands, dont try to do anything else on the host. Be patient until they complete. # emc_cfgmgr Do we see any new devices? # lsdev Cc disk

    5 It appears that running the config manager has helped: were seeing some new disks now. Unfortunately, we cant quite tell if theyre one of ours. Theyre all claiming to be of the type: Other FC SCSI Disk Drive. If theyve been configured properly, they would call themselves Symmetrix or CLARiiON devices. Lets try another utility and see what it says. # inq Where is the binary for this command?

  • EMC Education Service 61

    Step Action

    This is getting interesting. inq is reporting devices from vendor DGC (look at the second column). Thats a dead giveaway that we have CLARiiON LUNs on this host. The way inq figured this out is: it asked the storage array LUN directly. Technically, this is called making a SCSI inquiry.

    6 So why are the corresponding hdisk devices not showing up as CLARiiON devices? What configures a hdisk device on AIX to be one kind or another, anyway? Lets find out more about one of our Other FC hdisks: # lsattr El hdisk3 This command is just asking AIX: tell me what the current characteristics are for this device. The output looks like this:

  • EMC Education Service 62

    Step Action

    Experienced people can tell right away from two fields above the ww_name and the node_name that this is a CLARiiON device, without any doubt. But you dont need to know that, just yet. Just be aware of the lsattr command in fact, lets rerun this lsattr command, and save the output to a file, say in /var/tmp/FC_Other.txt. We want to refer to this file later. How would you do that saving? Redirection to standard output would work.

    7 Any devices on AIX - and this includes hdisk devices get their characteristics from the ODM database. The ODM database needs to have definitions for specific device types as they get added to the system. So lets check EMC-installed packages, and see if we have the ODM definitions installed on this host, for a CLARiiON. # lslpp l | grep i emc Whats the grep i doing? If you dont know, man grep has the answer. Do you see something similar to whats below?

    We see a bunch of definitions for Symmetrix support, but wheres the CLARiiON stuff?! Well, its not in there. That would explain why our CLARiiON hdisks are showing up as generic Fibre Channel devices.

  • EMC Education Service 63

    Step Action

    So lets install those CLARiiON definitions. Be careful with commands like the one below, Unix is case-sensitive. It matters if something is upper-case or lower-case. # installp agXd /usr/sys/inst.images/EMC.AIX.5.3.0.1 EMC.CLARiiON.fcp OR The above command works well if you know the name of the package you are trying to install but if you dont!? Copy the ODM definition package to the directory /usr/sys/inst.images and run this command and it will help install the package via the smit menu program

    What did this command do? Smit will bring up the menu driven interface and installp is the software installation utility on AIX. You can look up those four options with man installp theres usually no reason why you wouldnt use them. The first argument here that would be /usr/sys/inst.images tells installp where to look for the software package. The second argument, EMC.CLARiiON.fcp, is the exact name of the software set to install. Youre allowed to say all for the second argument, though we didnt do that here. That could potentially take for ever, installing things weve never heard of and will never need.

  • EMC Education Service 64

    Step Action

    Did the installp command work? How can you verify that weve in fact successfully installed the CLARiiON definitions?

    8 We still have those Fibre Channel hdisks with stale or inappropriate device definitions. Lets remove all traces of them from the host, and rebuild them with emc_cfgmgr CAUTION: In the commands below, make sure to use your Fibre Channel hdisk numbers! The Other FC ones. Dont remove the system disk! Please!! # rmdev l hdisk3 d # rmdev l hdisk4 d # rmdev .. How can we tell that all of our Fibre Channel hdisks are no longer there? Run that lsdev command of Step 4 again, and check. OK - now that we have a clean host, and CLARiiON definitions in place. Lets go discover our devices again, and have them rebuilt on AIX: # emc_cfgmgr

    9 What does lsdev show now? If weve done everything right, this is what our hdisks would look like now:

    Now we know why understanding the role of the ODM is important, in AIX. Lets re-examine the device attributes for one specific CLARiiON /Symmetrix devices again.

  • EMC Education Service 65

    Step Action

    Rerun step 6 the lsattr command on the same hdisk this time saving the output to the file /var/tmp/CLAR.txt Compare the files /var/tmp/CLAR.txt and /var/tmp/FC_Other.txt. How? Was the AIX name for the device type Other FC versus CLARiiON FCP - the only thing thats changed for the hdisk? Do you feel any of the other things that changed really matter?

    End of Lab Exercise

  • EMC Education Service 66

    Lab Exercise 4: Part 3: Install Additional Software on the AIX Host

    Step Action

    1 Since we have an open session running csh, and were logged in as root were happy. Lets stay with this PuTTY session. The goal of this part is to install another software package on the AIX host called the Unisphere Host Agent / CLI. This software is useful when you provision devices on a CLARiiON array to the host. Download the Unisphere Agent, the Navisphere/CLI and Solutions enabler depot from EMCs Powerlink website to your desktop. If there is a newer version than the one listed here please use the newer one. From http://powerlink.emc.com, follow Support then Software downloads. We want version 1.0.51.1.0038 or higher of the AIX Unisphere Agent and the Navisphere/CLI 7.30.11.0.38 or higher. We also want the latest version of Solutions enabler so we can also install it. We know that you may or may not have both types of arrays attached to your system, the installation procedures are different and you need to try both. Our first task here, of course, is to check if the software is already on the host. All we know is that the package name has the string Nav/Uni in it, and were not really sure if thats all upper-case, all lower-case or a mix. What command would you use for this? Does it look like the software is already installed on the host?

    2 Lets us assume it is not there and we need to get the software. One of our thoughtful friends we have many of them, its a big, bad world out there knew we were doing this job at short notice. Our AIX host wasnt ready at the time, so hes downloaded the Agent/CLI software we need to one of our other AIX hosts. Our first task is to get it over to this AIX host so we can proceed with installation. Along the way, were going to learn some useful remote shell features. In all the commands below, youre going to have to substitute alternate_ibm_host_name with the appropriate hostname. Lets first see if we can talk to the alternate IBM host by name; if not well fix it. Choose one of the IBM hosts that you are not using there are at least 3 others that your fellow classmates are using. Check the pdf on the Citrix login page to get the name and/or IP address to that system. # ping alternate_ibm_host_name

  • EMC Education Service 67

    Step Action

    If that didnt work, what file can we edit on this host so the problem goes away? Do whats needed. Edit this file and add the appropriate entry it will look something like this: # vi /etc/hosts csap2ibm2 10.127.12.138 Now lets try a remote shell command: # rsh alternate_ibm_host_name ls /software In the command above, were asking the IBM host to run an ls of the /software directory on a host we are not logged into. How did it work? Were not even logged on at that alternate IBM host! To answer that, lets log into the alternate IBM host on another PuTTY window. Well log in as root. On that window, do this: # cat .rhosts .rhosts is a configuration file for controlling remote shell access from other hosts. What does the line + root mean? Do a man rhosts - on the alternate IBM host. Now that we know why this is working, lets get back to our AIX host. We dont even need that PuTTY session on the alternate IBM host anymore, so go ahead and kill that. Lets ask the AIX host where that software file of ours is. All we know is: its a compressed archive, with the file extension .Z (upper-case)or it is a tar file, and our friend put it somewhere in /software .

  • EMC Education Service 68

    Step Action

    # rsh alternate_ibm_host_name find /software name *.tar You may also have to look for the ODM definitions and the solutions enabler software and the Navisphere/unisphere software. The navishpere/Unisphere software is in an lpp format not tar. Looks like weve found it, lets bring it over. # cd /var/tmp # mkdir pkg # cd pkg # pwd # rcp alternate_ibm_host_name:file_name . You put in the full path name in file_name above, beginning with /, right? How else is the Alternate_IBM host going to know where to look for the file? HINT: Were you aware that PuTTY has a copy/paste function? Its very simple, actually you select text to copy with the left mouse button, then paste it with right-click. What does that last . (period) mean in the rcp command? Remember, rcp is just a slight twist on the conventional cp command. # pwd # ls -l Looks like we have our file, so lets move on to the install step.

    3 Installation is pretty straightforward; its just the three commands below. You may want to run ls l after the first two though, so you have some idea of whats happening. # uncompress *.Z # tar xvf *.tar

  • EMC Education Service 69

    Step Action

    # installp agXd . all As usual how do we know for sure that: we have both our Agent and CLI installed? Look for packages with nav/uni in their names uppercase or lowercase, not sure.

    4 Did the Host Agent start up? # ps ef | grep i uni Looks like it didnt. How do we start it? We dont have a clue; there is a startup file for the Agent somewhere on the host, but we have no idea what its called on AIX. Perhaps we need to get the documentation for the Navisphere Agent/CLI installation procedure on AIX. To get the documentation, go to http://powerlink.emc.com, and navigate to Support>Software downloads>Navisphere Host Agent/CLI for AIX. Then follow the link at the top of the page for the documentation. Get the PDF file and figure out how to start/stop the Agent process. Did the procedure work? Verify starting and stopping the Agent. Run the ps ef command each time, and convince yourself it works.

  • EMC Education Service 70

    Lab Exercise 4: Part 4 - Clean up the AIX Host

    Step Action

    1 Cleanup is pretty straightforward we just reverse all of our steps, starting from the back. But lets first get rid of all our personal files on the /var partition. # cd /var/tmp # pwd # ls l # rm rf pkg # rm f *.txt

    2 Uninstall the Navisphere Agent and CLI. installp u takes care of the uninstall. Youll have to run this twice once for the Agent and once for the CLI. Theyre considered separate software sets. You may have to search for uni instead depending on the version of code that is installed. # lslpp l | grep i nav # installp u HOSTAGENT # installp u NAVISCLI Did it work? # lslpp l | grep -i nav Just in case the software left some files lying around, lets remove it: # cd /etc # pwd # rm rf Unisphere # cd /opt

  • EMC Education Service 71

    Step Action

    # pwd # rm rf Unisphere

    3 Remove the hdisks related to the CLARiiON only. You need to be awake for this step. Just carefully repeat Step 8 of Part 2. Be careful with rmdev, use it only on devices that youre sure are related to the CLARiiON array. And verify the results after: # lsdev Cc disk At this point, the only hdisks you should see are the internal drives.

    4 Uninstall the CLARiiON definitions in the ODM. This is just to uninstall the EMC.CLARiiON.fcp package. Step 2 shows you how to do that. This may take a while to complete; be patient. If the uninstall didnt work, chances are you didnt do a thorough job of Step 3. Revisit that. Verify that the package is really gone: # lslpp l | grep i emc Only the Symmetrix definitions should exist at this point.

    5 If we followed all instructions to the letter, wed have just one PuTTY session open on this host. Press once to exit csh; another to exit the login shell.

    End of Lab Exercise

  • EMC Education Service 72

    This page intentionally left blank.

  • EMC Education Service 73

    Lab Exercise 5: Windows 2000/2003 Server Lab

    Purpose:

    To become familiar with Microsofts server operating systems, from a storage installation and deployment perspective.

    Tasks: In this lab, you perform the following tasks:

    Perform software package installations on a Windows server

    Run various storage-centric utilities on a Windows server

    References: http://www.microsoft.com

    EMC Host Connectivity Guide for Windows

  • EMC Education Service 74

    Lab Exercise 5: Part 1 - Explore the Host System

    Step Action

    1

    Using VNC Client, open a desktop session on the Windows server. If you dont know what VNC means, read the very first section of this lab workbook on Network Client Tools.

    2 Lets start the Computer Management console on our Windows server. This is a versatile graphical utility that provides for monitoring and administering various aspects of the system. Well be using this console frequently. on the My Computer icon. Note: in some hosts this icon may have been renamed to something more appropriate, for example the server name. Select Manage.

    This brings up the main window of the Management console:

  • EMC Education Service 75

    Step Action

    3 on Computer Management, and select Properties. The manufacturer of this Windows server is: The exact model name of this server is: This is critical information when assessing a Windows environment for potential connectivity to EMC storage.

    4 Now lets get the exact operating system version were running. on My Computer, Open > Help > About Windows Our Windows Server Version is (2000, 2003 etc) : The installed Service Pack level is:

    5 Lets find out what HBAs (Host Based Adapters) have been installed. From the Management Console, select Device Manager on the left, then SCSI and RAID Controllers on the right pane:

  • EMC Education Service 76

    Step Action

    On Windows servers, the most popular Fibre Channel HBAs used for storage connectivity are Emulex and Qlogic. The number of Fibre Channel HBAs installed on our server is: You can select each HBA and examine its Properties. The manufacturer/model of our Fibre Channel HBAs is: You can then select the Driver tab and get more detail on each HBA board:

  • EMC Education Service 77

    Step Action

    Lets write down the key properties of the HBAs we see on this server:

    PCI slot number Driver version

    HBA 1

    HBA 2

    6

    The storage HBA drivers write messages to a system log on Windows called the Event log. Lets take a look at the Event log. From the Management Console, select Event Viewer > System on the left pane:

  • EMC Education Service 78

    Step Action

    Each line on the right pane represents one logged event. You may view details on any single event by clicking on it. You can also scroll through the events using the arrow keys in the detail window. By default, the most recent event appears on top, so youre scrolling back in time by moving down the list. Scroll down the event list until you find an event reported by our elxsli2 Fibre Channel driver.

  • EMC Education Service 79

    Step Action

    What does the event message from elxsli2 say? Do you think this is an error of some kind? Why or why not? When was the server last rebooted? HINT: all drivers, including our elxsli2 driver, will start up during a reboot. Just scroll back in time a bit more and look.

    7 Next well examine what CLARiiON LUNs are visible to this host, via the Fibre Channel HBAs. From the Management Console, select Device Manager on the left. Then expand the Disk Drives tab on the right pane. Were looking for CLARiiON LUNs, which are reported with the identifier DGC. How many DGC drives is the system reporting?

  • EMC Education Service 80

    Step Action

    Now lets examine each of the DGC drives in detail; explore its Properties:

  • EMC Education Service 81

    Step Action

    Fill in the entries for the following table, for each DGC drive that you see under Device Manager. They may be Symmetrix drives instead.

    Location number LUN number

    DGC drive 1

    DGC drive 2

    DGC drive 3

    DGC drive 4

    DGC drive 5

    DGC drive 6

    How many CLARiiON LUNs have actually been provisioned on this host? You should have this information from your lab instructor. How many DGC drives do you see above, in Device Manager? Why dont these two numbers match?! HINT: Take a look at the location numbers above; and also at our HBA table of Step 5. Suppose I had six LUNs provisioned from the CLARiiON, and four paths from the server to each LUN. How many CLARiiON devices should Device Manager report?

    8 Lets take a CLARiiON-provisioned device for a test-drive. We want to make sure we can actually use these things from the host.

  • EMC Education Service 82

    Step Action

    On the Management Console , select Storage > Disk Management

    You should see one Disk on the right for each of the provisioned CLARiiON LUNs. How can we tell which Disk is which LUN? Format an NTFS partition on one LUN of your choice, and copy some files over from the C: drive.

  • EMC Education Service 83

    Lab Exercise 5: Part 2 - Install Software on the Windows Host

    Step Action

    1 Our goal in this part is to install the Navisphere Agent and CLI on the Windows server. These are useful software packages to have when CLARiiON storage has been provisioned on the host, as it has in our case. Lets first make sure a (possibly older) version of the software is not already installed on the system. Start > Settings > Control Panel > Add/Remove Programs

    Were looking for two different programs one called Navisphere Agent, and the other called Navisphere CLI. If you see either or both, remove them.

    2 Our next task is to get the latest install packages for these programs. Unfortunately, we dont have access to the Internet today - we are working in a data center that is totally sealed off from the outside world, for security reasons. So no Powerlink for us today. Anticipating our problem, you have thoughtfully downloaded the two install executables on

  • EMC Education Service 84

    Step Action

    to our neighboring Sun server. We know the programs are somewhere in /var maybe in some subdirectory deep under there. And we know the root password for the Sun box. So lets go find our binaries. We know they have the string Nav (for Navisphere) in their names but of course, we dont know if its all upper-case, lower-case or both. Youre going to need PuTTY to log into the Sun box. If you have no clue what PuTTY is, go back and read the very first section of this book. What find command did you use on Solaris to find those two binaries? OK, were home free we think. Now we just need to get those files over via ftp, right? Lets try it do the following in a Command Prompt on the Windows server. C: mkdir emc ftp login: root Oops. What happened? Why does it say Connection refused, or some such? We still have our PuTTY session on the Sun box; lets go have a look there. For some reason, the Sun hosts ftp server doesnt like us logging in as root, perhaps? We vaguely remember something about ftpusers from a Unix class way back when; so lets try a man ftpusers. Did you find the configuration file for ftp security? What is it called? What edit do we have to make in this file, so we can log in as root from the ftp client? DONT EDIT IT see below!

  • EMC Education Service 85

    Step Action

    We point this out to the Sun host administrator who promptly has a fit, and says: Absolutely no editing configuration files on MY Sun server while Im around. Do whatever you want on your Windows box!!!. At this point were beginning to feel a little stuck. How do we get our files from there to here?! Maybe the Sun host has a floppy drive probably wont work too well, those files are pretty large anyway. And who knows how to format a floppy on Sun so Windows can read it? Plus, nobody knows exactly where the Sun host is. That grumpy admin says: Its in a large rack somewhere in the back room. Were now wistfully thinking of the Internet caf we spotted five miles down the road on the way in maybe we can get in there and download our files real quick from Powerlink, and be back in a half-hour. Wait a minute, were running Windows Server, right? Maybe this Windows host has an FTP server on it? How about we run ftp client on the Sun host, and push the files over from there? Lets go into our Management Console, and poke around. Did it work? The moral of this lesson is:

    1. All Unix admins are an unfriendly lot and horribly difficult to deal with 2. Its frequently a challenge in the field figuring out how to get stuff from here to

    there; so carry all software you may possibly need with you burned on CD. Hard drives do fail and always, at the worst possible moment.

    3. Learn as many ways as possible to skin a cat. Because youll never know which one is politically feasible in any given situation.

    4. All except 1. above

    3 Half the battle is over. Actually installing Navisphere Agent and CLI on Windows (or most other software, for that matter) is a piece of cake just do: Start > Run > You need to do this twice: once to install the Agent, and once to install the CLI.

  • EMC Education Service 86

    Step Action

    When installing the Agent, the program asks you for Agent configuration information. Make sure to add two entries here. Each entry will have the username system and the IP address of each CLARiiON SP. This allows the host to function as a network portal for the CLARiiON array. After installing the CLI, you want to change the Path so you can run navicli from any directory, when in a Command Prompt window. How do you do that? You didnt actually read that first section in the book on PuTTY, did you? Test your changed Path definition. How?

    4

    If the Agent is installed correctly, you should see a Windows service running called the Navisphere/Unisphere Agent. Verify this. If you see the Navisphere agent you should uninstall is before you add the Unisphere From the Management Console, select Services and Applications > Services

  • EMC Education Service 87

    Step Action

    Check if you can stop the Agent, and restart it. Did it work? In which directory is the configuration file for this Agent? What is the configuration file called? What does Automatic mean in the Startup Type field?

  • EMC Education Service 88

    Lab Exercise 5: Part 3 - Clean up the Windows host

    Step Action

    1

    Uninstall the Navisphere Agent. Make sure to specify: remove all configuration files. Uninstall the Navisphere Secure CLI. Uninstall Solutions Enabler Did the uninstall work? How can you make sure?

    2

    Where are the two install binaries we obtained from the Sun server? Delete our copies of those two files on this Windows host.

    3

    Did you format one or more CLARiiON LUNs? Delete all of those partitions. Be careful here; you dont want to delete your boot partition!

    4

    Did you change any of the settings on the FTP Server on this Windows host? Put it back exactly the way it was, thanks..

    5

    Kill your VNC client, and also any PuTTY sessions you may have open on the Sun server.

    End of Lab Exercise

  • EMC Education Service 89

    Lab Exercise 6: Linux Lab

    Purpose:

    To become familiar with Linux, from a storage installation and deployment perspective. The emphasis is on features unique to Linux, relative to other flavors of Unix.

    Tasks: In this lab, you perform the following tasks:

    Perform a software package installation on a Linux host.

    Run various storage-centric utilities on a Linux host.

    Perform a routine test on a Linux device provisioned from an EMC storage array.

    References: Linux man pages

    EMC Host Connectivity Guide for Linux

  • EMC Education Service 90

    Lab Exercise 6: Part 1 - Linux System Basics

    Step Action

    1 Using PuTTY, login as root to the Linux host. very fir If you dont know what PuTTY is, read the st section of this lab workbook on Network Client Tools. What is the current running kernel: Use command: uname -a [root@sandboxlinux root]# uname -a Linux sandboxlinux 2.6.21-4.EL #1 Fri Oct 3 18:13:58 EDT 2003 i686 i686 i386 GNU Write current running kernel:

    2 Review all the disks on your system Use the command: cat /proc/scsi/scsi # cat /proc/scsi/scsi Host: scsi2 Channel: 00 Id: 00 Lun: 00 Vendor: EMC Model: SYMMETRIX Rev: 5874 Type: Direct-Access ANSI SCSI revision: 04 Host: scsi2 Channel: 00 Id: 01 Lun: 01 Vendor: EMC Model: SYMMETRIX Rev: 5874 Type: Direct-Access ANSI SCSI revision: 04

  • EMC Education Service 91

    Step Action

    3 Use Emulex script to dynamically scan the devices. Emulex has the LUN Scan Utility which is available from the EMC-approved site on the Emulex website. You may have to download it. Usage examples # gunzip lun_scan.sh.gz # chmod a+x lun_scan

    To scan all lpfc HBAs: # lun_scan all

    To scan the lpfc HBA with scsi host number 2: # lun_scan 2

    To scan the lpfc HBAs with scsi host number 2 and 4: # lun_scan 2 4 Note: HBA driver vendors provide scripts that automate the scanning of the SCSI interface. EMC does not provide support for these scripts. Support resides solely with the HBA vendor.

    4 Use the command: inq -btl This command will display the bus target and lun for each device [root@linux1 sbin]# inq -btl Inquiry utility, Version V7.3-532 (Rev 0.0) (SIL Version V5.4.0.0 (Edit Lev el 532) Copyright (C) by EMC Corporation, all rights reserved. For help type inq -h. ------------------------------------------------------------------------------- DEVICE :VEND :PROD :REV :SER NUM :CAP(kb) :Bus :Tid :Lun ------------------------------------------------------------------------------- /dev/sda :EMC :SYMMETRIX :5568 :3103C300 : 459840 : 0: 0: 0 /dev/sdb :EMC :SYMMETRIX :5568 :3103D300 : 459840 : 0: 0: 1 /dev/sdc :EMC :SYMMETRIX :5568 :3103E300 : 459840 : 0: 0: 2 /dev/sdd :EMC :SYMMETRIX :5568 :3103F300 : 459840 : 0: 0: 3

  • EMC Education Service 92

    Step Action

    5 Using the command " inq -hba "determine the manufacture of the Fibre Channel adaptors available on your system, the state of the HBA. [root@linux1 boot]# inq -hba Inquiry utility, Version V7.3-532 (Rev 0.0) (SIL Version V5.4.0.0 (Edit Level 532) Copyright (C) by EMC Corporation, all rights reserved. For help type inq -h. --------------------------------------------------- HBA name: Emulex-LP9002-1 host WWN: 20000000C93AE357 vendor name: Emulex Corporation model: LP9002 firmware version: 3.90A7 (C2D3.90A7) driver version: 7.1.14; HBAAPI(I) v2.0.f, 12-01-03 serial number: BG40856280 vendor code: 0xc9 HBA type: Fibre Channel port count: 1 port number: 1 port WWN: 10000000C93AE357 Port OS name: /proc/scsi/lpfc/2 port type: LPORT port speed: 1GBIT supported speed: 2GBIT port state: ONLINE port FCID: 0x1

    This command could fail if the inq version and the adapter driver are not compatible. You can also find this information is you go to the /proc/scsi/lpfc directory and cat the files in that location. The files are numbers and reference the controller number of the HBA. The command would be: What is the module name of the hba. Hint refer to OS port name from above example Refer to Student Guide: Refer to : Host Bus Adapters Operation; lsmod shows information about all loaded modules

  • EMC Education Service 93

    Step Action

    6 [root@linux1 sbin]# lsmod Module Size Used by Not tainted sg 36940 0 (autoclean) ide-cd 35680 0 (autoclean) cdrom 33696 0 (autoclean) [ide-cd] agpgart 56664 7 (autoclean) parport_pc 19076 1 (autoclean) lp 9028 0 (autoclean) parport 37088 1 (autoclean) [parport_pc lp] autofs 13364 0 (autoclean) (unused) e1000 71712 1 floppy 58160 0 (autoclean) microcode 4724 0 (autoclean) lpfcdfc 144520 2 keybdev 2976 0 (unused) mousedev 5524 1 hid 22212 0 (unused) input 5888 0 [keybdev mousedev hid] ehci-hcd 20104 0 (unused) usb-uhci 26412 0 (unused) usbcore 79392