audit lic
select compliance from licenses
2. Query server processes and pending requests to determine if any jobs are waiting on operator action.
q pr
q req
q se
3. Query all disk storage pools to determine if the migration process has completed.
select stgpool_name, pct_utilized from stgpools where devclass='DISK'
4. List all drives that are OFFLINE.
select drive_name from drives where not online='YES'
5. List all paths that are OFFLINE.
select source_name, source_type, destination_name, destination_type from paths where not online='YES'
6. List all locked nodes.
select node_name from nodes where not locked='NO'
7. List all non-writeable tape and disk volumes.
q v acc=unavail
q v acc=reado
q v acc=destroyed
select volume_name, read_errors, write_errors from volumes where (read_errors>0 or write_errors>0)
select volume_name from volumes where devclass_name='DISK' and not status='ONLINE'
8. Verify that the library has sufficient scratch volumes.
select library_name,status,count(*) as "VOLUMES" from libvolumes group by library_name,status
9. Verify that the database extension and reduction values are non-zero and that the Cache Hit Ration is above 99%.
q db f=d
10. Verify that the recovery log extension and reduction values are non-zero and that the Wait Percentage is zero.
q log f=d
11. Verify that database and recovery log volumes are online and synchronized.
q dbv f=d
q logv f=d
12. Inspect TSM database fragmentation level.
select cast((100 - (cast(max_reduction_mb as float) * 256 ) / (cast(usable_pages as float) - cast(used_pages as float) ) * 100) as decimal(4,2)) as PERCENT_FRAG from db
13. Verify that the scheduled database backups completed successfully.
select date (date_time) as date, time(date_time) as time, volume_name, type from volhistory where type in ('BACKUPFULL', 'BACKUPINCR', 'DBSNAPSHOT', 'DBDUMP')
14. Verify that all CLIENT schedules for the last day succeeded.
q ev * * begind=-1 endd=today begint=00:00:00 endt=00:00:00
To restrict the listing to only those nodes with non-completed status:
q ev * * begind=-1 endd=today begint=00:00:00 endt=00:00:00 ex=y
15. Verify that all ADMINISTRATIVE schedules for the last day succeeded.
q ev * t=a begind=-1 endd=today begint=00:00:00 endt=00:00:00
To restrict the listing to only those nodes with non-completed status:
q ev * t=a begind=-1 endd=today begint=00:00:00 endt=00:00:00 ex=y
16. Check the activity log for error messages.
q actl search=AN?????E begind=-1 begint=00:00 endd=today endt=00:00
17. Open files and other missed filed will often not have the schedule name in activity log error messages. This query will list these files:
select nodename,date_time,message from actlog where (date_time>currenttimestamp-1 day) and msgno in (4005,4007,4018,4037,4046,4047,4987,4973,4034,4042)
18. List nodes that are not associated with a backup schedule.
select node_name from nodes where node_name not in (select node_name from associations)
19. Cross match the TSM node name with the host name or computer name.
select node_name, tcp_address, tcp_name from nodes
20. List PRIMARY POOL volumes that have been checked out of the library.
select volume_name, stgpool_name from volumes where stgpool_name in (select stgpool_name from stgpools where devclass<>'DISK' and pooltype='PRIMARY') and volume_name not in (select volume_name from libvolumes)
21. Checkout all D/R Media for offsite storage.
move drm * wherest=mo tost=va rem=b
22. Verify that all D/R volumes have been checked out.
select volume_name from libvolumes where volume_name in (select volume_name from volumes where stgpool_name in (select stgpool_name from stgpools where devclass<>'DISK' and pooltype='COPY'))
23. Verify that all TSM database backup volumes have been checked out.
select volume_name from libvolumes where last_use='DbBackup'
24. Identify previous offsite volumes that can be recycled to scratch status and checkin the same.
q drm wherest=vaultr
move drm * wherest=vaultr tost=onsite
checki libv
25. Generate a list of unlocked TSM administrator accounts with full system privileges.
select admin_name from admins where not system_priv='No' and not locked='No'
26. List TSM Nodes and Client (BA/TDP) versions by platform.
select platform_name as OS, client_os_level as OS_VER, node_name as Node, cast(cast(client_version as char(2)) '.' cast(client_release as char(2)) '.' cast(client_level as char(2)) '.' cast(client_sublevel as char(2)) as char(15)) as "TSM Client" from nodes order by platform_name, "TSM Client", Node
27. Data backed up in the last 24 hours:
select entity, date(start_time) as DATE, time(start_time) as START_TIME, time(end_time) as END_TIME, substr(char(end_time-start_time),3,8) as DURATION, cast((bytes/1024/1024/1024) as decimal(18,2)) as GB_BACKED_UP, successful from summary where cast((current_timestamp-start_time) hours as decimal)<24>=current_timestamp-24 hours and activity='BACKUP' group by entity
28. Size and duration of archive operations for each node in the last 24 hours:
select entity as "Node Name ", cast(sum(bytes/1024/1024) as decimal(10,3)) as "Total MB", substr(cast(min(start_time) as char(26)),1,19) as "Date/Time ", cast(substr(cast(max(end_time)-min(start_time) as char(20)),3,8) as char(8)) as "Length " from summary where start_time>=current_timestamp-24 hours and activity='ARCHIVE' group by entity
29. Compare PRIMARY and COPY pool occupancy totals.
select sum(num_files) as num_of_files,sum(physical_mb) as Physical_mb,sum(logical_mb) as logical_mb from occupancy where stgpool_name in (select stgpool_name from stgpools where pooltype='PRIMARY')
select sum(num_files) as num_of_files,sum(physical_mb) as Physical_mb,sum(logical_mb) as logical_mb from occupancy where stgpool_name in (select stgpool_name from stgpools where pooltype='COPY')
For the PDF version of this document, send a blank email, with subject line "TSM Server-Side Daily Admistrator Checklist", to TSM Assist
The choice of such applications should be treated very carefully, because the software for such purposes should work very reliably. For my company, I have chosen a very good service for a long time, more info. Thanks a lot.
ReplyDelete