Sunteți pe pagina 1din 10

symcfg discover

symcfg sync -local


symcfg sync -vpdata
symcfg sync -fast
symcli -def
symrdf sync

Now that the database has been updated, simply copy it to an offline location (e.g.
your laptop).
For Windows, the default SYMAPI DB path is C:\Program
Files\EMC\SYMAPI\db\symapi_db.bin.
For UNIX/Linux, you�ll most likely find it at /usr/emc/API/symapi/db/symapi_db.bin.

symcfg list -v
Detailed info on the arrays in the DB

symcfg list �thin �pool �detail �gb


Info about thin pool capacity (optional �v for verbose)

symdisk list �dskgrp_summary


Physical disk info

symcfg �dir all list �v


Info about Symm directors (optional �v for verbose)

symsg list
List storage groups (optional �v for verbose)

symtier �sid xxx list �offline


List tier info (optional �v)

symfast �sid xxx list �vp


List fast policies (optional �v)

symfast �sid xxx list �demand �assoc


FAST Demand report by SG Association � shows the potential for each SG to tier up
based on assigned policies

http://blog.scummins.com/?p=68

These examples commands are running against a VMAX with a symmetrix ID of 123

Query VMAX 123 to see what total freespace is available

symconfigure -sid 123 -freespace -unit mb list


Display the version number of the SYMCLI, SYMAPI and the configuration server. -sid
is optional, leave it off and the versions for all attached symms are displayed.

symconfigure -sid 123 -version -v


The query command will check for any existing active configuration activity. If
this command cannot get the information, it will keep retrying. You can control
this with the -i and -c options which are interval between retries and number of
retries.
Query a VMAX 8 times at 5 second intervals to see if any updates are running
symconfigure -sid 123 -i 5 -c 8 -v query
Query a VMAX for reserves

symconfigure -sid 123 -reserved list


Query a given reserve to get more details

symconfigure -sid 123 -reserve-id 4567 show


Safely attempt to release reserve 4567

symconfigure -sid 123 -reserve-id 4567 -noprompt release


Symconfigure examples using the command file
If you are planning updates to your VMAX configuration, then generally the best way
to do this is to put all your updates into a command file, then run that file
through the symconfigure command. The advantages of doing this is that you can get
your commands peer checked by a colleague and syntax checked by the system before
you run them. Each command has three options,
'preview' which checks the syntax of your command list;
'prepare', which also checks your syntax, then checks that the VMAX is in a healthy
enough state to process the commands, with enough free resources to process the
command,
'commit' which does the first two, then applies the updates.

The basic syntax for running symconfigure updates using a command file called
command.txt is

symconfigure -sid 123 -v -file command.txt preview


symconfigure -sid 123 -v -file command.txt prepare
symconfigure -sid 123 -v -file command.txt commit
Some optional parameters are -noprompt which suppresses the 'do you really want
to ...' messages and -v for verbose which means echo results back to the terminal

Command file examples


Click to See Examples
Changing devices
Create 2 small Gatekeeper devices. Gatekeepers are used to communicate with the
VMAX. EMC recommends 4 gatekeepers per port and they are typically created with
just 6 cylinders.

create dev count=2 size=6 emulation=fba;


Create 20 bigger Standard devices

create dev count=20,


SIZE=50 GB,
eMulation=FBA;
Note that the commands are not case sensitive, parameters can be separated by
commas or spaces, can span more than one line, can contain extra white space, but
must end with a semicolon ';' .

Add 6 a new spare devices

create spare count=4, format = 520;

Older symmetrix devices has 512 bytes in a block, new devices have 520 bytes in a
block.

To delete disks use

delete dev Device-name


Working with Metas
EMC split a physical device into between 1 and 128 hyper volumes, which are then
combined together to form meta devices. A meta corresponds to a LUN as presented to
a host, so a LUN can be bigger than a physical device. A meta-device can consist of
up to 1024 hypers, but all the hypers must be the same size and type and have the
same protection. Valid hyper sizes range from between 0.5 and 32GB. A Meta can be
concatenated, that is, it can consist of hypers strung together, or it can be
striped, when the data is striped across the hypers. The first device in a meta is
known as the meta head.

The starting point is to find any unmapped devices using the command symdev list
-noport. If any of these devices are allocated as BCV pairs or defined to device
groups, then split them out using commands like this

symmir -g group_name split


symmir -g group_name rmall
Examples of symconfigure command files working with metas
Click to See Examples
define a concatenated meta and add 2 more devices to it. Concatenated metas are
best for sequential data access, and they are easier to gorw or shrink that striped
metas.

form meta from device 028


config=concatenated;
add dev 015:016 to meta 028;
define a striped meta and add 2 more devices to it. Striped metas are best for
random data access, but they can't be shrunk and are more difficult to grow.

form meta from device 02b


config=striped
stripe-size=1920;
add dev 017:018 to meta 02b;
Split meta 02b back into it's constituent hypers - this will destroy any data on
the meta!

dissolve meta dev 02b;


remove device 016 from meta 028

remove dev 016 from meta 028;


Using SYMTIER to work with FAST tiering
Two types of FAST tier exist, disk provisioned virtual tiers and virtual
provisioned storage tiers. 'Disk provisioned' is also split into static and
dynamic. The following command will list all the storage tiers in array '123',
including DiskGroup and Virtual Pool Tiers. If you just wanted to list DiskGroups
or Virtual Pools you would add the switch -dp or -vp as appropriate.

symtier -sid 123 list


To get more detailed information about a specific tier use this command - obviously
with your subsystem id and tier name.

symtier -sid 124 show -tier_name TEFD1


SYMTIER EXAMPLES
Click to See Examples
To work with FAST tiers, you need to be able to create and delete them, and also
add and remove disks from them. The following command will create a static, disk
provisioned pool called 'TSDP1', configured in RAID5, 3+1 format in disk array
'123' from SATA disks. Alternative disk tecnology options are FC (Fiber Channel) or
EFD (Enterprise Flash Drive). -dsk_grp is the disk groups to be added to the tier.
In this case we are allocating a single disk group ID=2, but you can allocate a
list of disk groups, and you can allocate them by name.

symtier -sid 123 create -name TSDP1 -inc_type static -tgt_raid5 -tgt_prot 3+1
-technology SATA -dsk_grp 2
This command will create a flash disk tier in RAID1 format. -vp means this tier
will be allocated using virtual provisioning

symtier -sid 123 create -name TEFD1 -tgt_raid1 -technology EFD -vp
To add a disk group to an exisiting tier use the following command. This adds 'disk
group 3' to existing Storage Tier 'TSDP1'.

symtier -sid 123 -tier_name TSDP1 add -dsk_grp 3


and to remove it again use

symtier -sid 123 -tier_name TSDP1 remove -dsk_grp 3


You can also rename a tier if you did not like the existing naming standard, so
'TSDP1' becomes 'Tier_qxy29p

1'
symtier -sid 123 rename -tier_name TSDP1 -name Tier_qxy29p1
and finally, to delete a tier use this command.

symtier -sid 123 delete -tier_name Tier_qxy29p1


Examples of symconfigure command files for mainframe disks
Click to See Examples
Create a mainframe striped meta. This must include at least 4 meta devices. This
example creates 4 * 500 cylinder metas, then uses them to create a 2000 cylinder
striped CKD meta in a RAID1 configuration.

create dev count=4 size=2000


emulation=CKD-3390 config=2-way-mir
attribute=CKD-meta;
PAV aliases are used to allow multiple concurrent access to mainframe devices. See
the PAV section for details. The following commands can be used to allocate PAV
aliases. The first command will add 4 aliases to a specific symm. device. The
second command allocates a range of aliases to a sub system

add pav alias to dev 02b alias count=4


add pav alias range 127:255 to mvs ssid=B000
Some other useful commands
symdev
One of the main uses of the symdev command is to see what free hypers are
available. The command to do this is

symdev list -noport

symdev list -da all space

symdev list -meta

symdev show meta head address


The second command will show all backend space available
The third command will list out all the meta heads, and also tell you how many
hypers are associated with each meta head.
The last command will list out all the details for one meta. The show command
usually gives more detail than list, as it reads its information from the host
database.

symapierr
Returns a string with a detailed description of any return code generated by any
SYMAPI function
To return a string for error number 10, enter:

symapierr 10
The following will be output:

SYMAPI Error Symbol : SYMAPI-C-NO-DEVS-FND-UPGRADE


SYMAPI Error Message: No Symmetrix devices found with microcode version 5x63 or
up.
syminq
This command checks which devices are mapped to a host
To work out directory and port mappings enter:

syminq -pdevfile
back to top

symsg -sid <serial> list -v' will display all storage groups and their member
devices.

symconfigure -sid 33 -cmd "CONFIGURE 1 DEVICES COPYING DEV 49D7;" commit

List which devices are mapped to FA ports


# symdev -sid 1234 list -sa 09c -p 0

ist of FA ports/WWN on given array


# symcfg -sid 1234 -FA all list
# symcfg -sid 1234 -FA 8C list

List detailed information on a FA port


# symcfg �sid 1234 -FA 11E list -v

Find out the failed director (front end FA and disk DA)
# symcfg -sid 1234 list -dir all => get the FA or DA number from here
# symcfg -sid 1234 list -fa 5g -v | egrep "Negotiated Speed (GB/Second)" => speed
should be a number
# symcfg -sid 1234 list -da 5d -v | egrep "Director Status"

Display details about array


# symcfg �sid 1234 list -v

List which applications (symcfg/stpdaemon etc) are running the commands against
given array
# symcfg �sid 1234 -application list

Display details (OS/IP/Hardware/hostname) about hosts that are accessing given


array
# symcfg �sid 1234 -connections list

Check the consumed capacity of TDEV (space consumed by a TDEV)


# symcfg -sid 1234 list -pool poolname -tdev -detail -gb | grep 1C4B
# symcfg -sid 1234 list -pool poolname -tdev -range 1A11:1A1B -detail -gb
SYMDISK
=======
Display the summary information about diskgroups on given array
# symdisk -sid 1234 list -dskgrp_summary -disk_group all
# symdisk -sid 1234 list -dskgrp_summary -disk_group 1
# symdisk -sid 1234 list -dskgrp_summary
Display details about disks in array separated by disk groups
# symdisk -sid 1234 list -by_diskgroup

Display details about disks in given diskgroup


# symdisk -sid 1234 list -disk_group 1

Display the list of disks configured as hotspares in the array


# symdisk -sid 1234 list -hotspare

Display the details of all hotspares in the array


# symdisk -sid 1234 list -v -spare_info

Display the list of failed drives in the array


# symdisk -sid 1234 list -failed

Display list of all disks installed in the array


# symdisk -sid 1234 list
Ident Symb Int TID Vendor Type Hypr Total Free Actual
------ ---- --- --- ---------- ---------- ---- ---------- ---------- ----------
DF-5A 05A C 0 SATAHGST C02THJK 24 953870 32940 1823565

Disk ID would be 5A:C0


Display the detailed information such as speed/make/model/diskgroup/hypers on disk
# symdisk -sid 1234 show 5A:C0

Display the gaps (available space) on given disk


# symdisk -sid 1234 show 5A:C0 -gaps

Display only the gaps (available space) on given disk


# symdisk -sid 1234 show 5A:C0 -gaps_only

How to find out datadevs in degraded status


# symdev -sid 1234 -datadev -service_state notnormal list

SYMMASK
=======

Set or clear the FC ID lockdown


# symmask set lockdown

Set or clear visibility in masking database so that host should find all devices,
even if they are noncontiguous LUNs
# symmask set visibility

Set or clear LUN base/offset skip for noncontiguous LUNs


# symmask set lunoffset

Set the record in the database to hold information on the host type that may differ
than the current setting on the corresponding FA
# symmask set heterogeneous
Discover the WWN or iSCSI names of the HBAs on the host and writes the ASCII names
to the login history table, if empty
# symmask discover hba

Display list of devices seen by WWN of given HBA for given host
# symmask list hba
# symmask list hba -v
Display WWNs logged into given FA port (displays the login history table contents)
# symmask -sid 1234 list logins (for the whole array)
# symmask -sid 1234 list logins -dir 3a -p 0 (on given port)
# symaccess �sid 1234 list logins �dirport 5e:0 (on VMAX)

Turn on the flag for different OSs (D for Solaris; C,SC3,OS2007,SPC2 for
Windows/VMWare, SPC2 for linux)
On DMX
# symmask -sid 1234 set hba_flags on D �enable -wwn 10000001234567 -dir 8C -p 1
(DMX)
# symmask �sid 1234 refresh
On VMAX
# symaccess �sid 1234 �type init show hostname_ig -detail
# symaccess -sid 1234 set hba_flags on C,SC3,OS2007,SPC2 -enable �wwn
100000000123456
# symaccess -sid 1234 set hba_flags on C,SC3,OS2007,SPC2 -enable �name hostname_ig
�type init

Globally on FA port
set port 1d:0 SCSI_3=enable,SPC2_Protocol_Version=enable,SCSI_Support1=enable;

SYMCONFIGURE
============

Verify that the changes can be made to the array


# symconfigure -sid <sid> -f <filename> verify

Create raid5 (7+1) thick device (when emulation mode is disabled number of
cylinders should be halved to achieve the same size)
# symconfigure -sid 1234 -cmd "create dev count=64, size=49604 cyl,
emulation=FBA, data_member_count=7, config=raid-5 disk_group=3;" prepare
# symconfigure -sid 1234 -cmd "create dev count=64, size=24802 cyl,
emulation=FBA, data_member_count=7, config=raid-5 disk_group=3;" prepare

Create new replicated tdevs on local and remote arrays, bind them to pool, srdf
pairing relationship between them
# symconfigure -sid 1234 -cmd "create dev count=64, size=24802, emulation=FBA,
config=RDF1+TDEV, dynamic_capability=dyn_rdf, remote_config=RDF2+TDEV, ra_group=1,
binding to pool=source_rep_pool, remote_pool=target_rep_pool;" prepare

Modify FA Port settings


# symconfigure -sid 1234 �cmd �set port1C:1 volume_set_addressing=enabled;� prepare
(this is a setting for HP systems)

How to reclaim wasted space from a TDEV (Zero Space Reclaim)


# symconfigure -sid 1234 -cmd 'free tdev 1A1B start_cyl=0 end_cyl=last_cyl
type=zero;' prepare

Set the maximum subscription of a pool


# symconfigure -sid 1234 -cmd "set pool fast_pool, type=thin,
max_subs_percent=100;" prepare

How to list the groups created on the array


# symaccess -sid 1234 list -type storage|port|initiator

How to rename a group


# symaccess -sid 1234 rename -name hostname_sga -type storage -new_name newhost_sga

How to rename a view


# symaccess -sid 1234 rename view -name hostname_vwa -new_name newviewname_vwa

How to delete a view (unmapping the devs at the same time)


# symaccess -sid 1234 delete view -name hostname_vwa -unmap

How to delete a initiator group


# symaccess -sid 1234 delete -name hostname_iga -type initiator
Error: Cannot perform the requested operation because the group is not empty
# symaccess -sid 1234 delete -name hostname_iga -type initiator -nop -force

How to delete a storage group


# symaccess -sid 1234 delete -name hostname_sga -type storage
Error: Cannot perform the requested operation because the group is not empty
# symaccess -sid 1234 delete -name hostname_sga -type storage -nop -force
How to replace a wwn in a initiator group
# symaccess -sid 1234 replace -wwn 100000000000001 -new_wwn 2000000000000002

How to check which storage group a device belongs to


# symaccess �sid 1234 list -type storage �dev 1001

How to check which initiator group a wwn belongs to


# symaccess �sid 1234 list -type initiator -wwn 100000000000001
How to check which port group a FA port belongs to
# symaccess �sid 1234 list -type port -dirport 7f:1

How to list all tdevs defined on the array


# symdev -sid 1234 -tdev list

How to check the consumed capacity of a given tdev


# symcfg -sid 1234 list -pool poolname -tdev -detail -gb | grep 1C4B
# symcfg -sid 1234 list -pool poolname -tdev -range 1A11:1A1B -detail -gb

How to list all datadevs defined on the array


# symdev �sid 1234 �datadev list

How to list all tdevs not bound to any pool


# symdev -sid 1234 -tdev list -unbound

How to list all tdevs bound to given pool


# symcfg -sid 1234 -tdev -pool testpool

How to list all tdevs not assigned to any host


# symdev -sid 1234 -tdev list -noport -unbound
# symdev -sid 1234 -tdev list -noport -bound
How to see details of a pool (or list all tdevs bound to a pool or list all
datadevs constituting the pool)
# symcfg -sid 1234 show -pool fast_pool -thin -detail

How to check the status of device being unbound


# symcfg -sid 1234 show -pool fast_pool -thin -detail | grep Unbind

How to rebalance the pool after adding extra datadevs


# symconfigure -sid 1234 -cmd "start balancing on pool fast_pool type=thin;"
prepare
# symconfigure -sid 1234 -cmd "stop balancing on pool fast_pool type=thin;" prepare

SYMLMF
========

Display the array based license


# symlmf �sid 1234 list -type emclm

Display the host based license


# symlmf list �type host

Display host based and array based licenses that apply to Symm array
# symlmf �sid 1234 list �type sym

Display the state and usage number for all activated licenses on Symm 1234
# symlmf �sid 1234 query �type emclm

Install the array based license


# symlmf �sid 1234 add �type emclm �file <filename> -v

Install the host based license


# symlmf add �type se �license LicenseNumber

Delete the license


# symlmf delete �type se �license <licensename> where <licensename> is FAST, SRDF,
SRDf/Async etc

S-ar putea să vă placă și