SlideShare uma empresa Scribd logo
1 de 120
Baixar para ler offline
Implementing TWS
Extended agent for
Tivoli Storage Manager
Insider’s guide to writing a TWS
Extended agent

Ready-to-use solution for TSM
and TWS integration

TSM Extended agent
code included




                                        Vasfi Gucer
                                      Henry Daboub
                                         Warren Gill
                                   Denise Kikumoto
                                    Tina Lamacchia



ibm.com/redbooks
SG24-6030-00

International Technical Support Organization

Implementing TWS
Extended agent for Tivoli Storage Manager


March 2001
Take Note!
  Before using this information and the product it supports, be sure to read the general information in
  Appendix C, “Special notices” on page 89.




First Edition (March 2001)

This edition applies to Tivoli Workload Scheduler 7.0 and Tivoli Storage Manager 4.1

Comments may be addressed to:
IBM Corporation, International Technical Support Organization
Dept. JN9B Building 003 Internal Zip 2834
11400 Burnet Road
Austin, Texas 78758-3493

When you send information to IBM, you grant IBM a non-exclusive right to use or distribute the
information in any way it believes appropriate without incurring any obligation to you.

© Copyright International Business Machines Corporation 2001. All rights reserved.
Note to U.S Government Users – Documentation related to restricted rights – Use, duplication or disclosure is subject
to restrictions set forth in GSA ADP Schedule Contract with IBM Corp.
Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v

Tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii

Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .ix
The team that wrote this redbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
Comments welcome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x

Chapter 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                               .   .   .   . .1
1.1 TWS overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                            .   .   .   . .1
   1.1.1 Software configurations used for this redbook . . . . . . . . . .                                                              .   .   .   . .2
   1.1.2 TWS concepts and terminology . . . . . . . . . . . . . . . . . . . . .                                                         .   .   .   . .2
   1.1.3 TWS architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                               .   .   .   . .3
   1.1.4 Extended agents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                                .   .   .   . .4
1.2 TSM overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                            .   .   .   . .7
   1.2.1 What are the benefits of a TSM Extended agent for TWS? .                                                                       .   .   .   . .9
1.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                         .   .   .   . 10

Chapter 2. Extended agent functions                         .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 13
2.1 Introduction . . . . . . . . . . . . . . . . . .        .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 13
2.2 Workstation definition . . . . . . . . . . .            .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 13
2.3 Method options file . . . . . . . . . . . . .           .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 14
2.4 Access method interface . . . . . . . .                 .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 15
   2.4.1 Method command line syntax .                       .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 15
   2.4.2 Task options . . . . . . . . . . . . . .           .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 16
   2.4.3 Example . . . . . . . . . . . . . . . . .          .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 18
2.5 Method response messages . . . . . .                    .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 20
2.6 Execution and troubleshooting . . . .                   .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 21
   2.6.1 Executing the method . . . . . . .                 .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 21
   2.6.2 Killing a job. . . . . . . . . . . . . . .         .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 21
   2.6.3 Method troubleshooting . . . . .                   .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 21
2.7 Summary . . . . . . . . . . . . . . . . . . . .         .   .   .   ..   .   .   .   .   ..   .   . . . . . . . . . . . . . . 22

Chapter 3. Case study - TSM Extended agent . . . . . . . . . . . . . . . . . . . 23
3.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Chapter 4. Sample scenarios . . . . . . .                   .   .   .   ..   .   .   .   .   ..   .   .   .   ..   .   .   .   .   ..   .   .   .   . 43
4.1 Description of the scenarios . . . . . .                .   .   .   ..   .   .   .   .   ..   .   .   .   ..   .   .   .   .   ..   .   .   .   . 43
   4.1.1 Database backup . . . . . . . . . .                .   .   .   ..   .   .   .   .   ..   .   .   .   ..   .   .   .   .   ..   .   .   .   . 43
   4.1.2 Backup device configuration . .                    .   .   .   ..   .   .   .   .   ..   .   .   .   ..   .   .   .   .   ..   .   .   .   . 63
   4.1.3 Backup volume history . . . . . .                  .   .   .   ..   .   .   .   .   ..   .   .   .   ..   .   .   .   .   ..   .   .   .   . 64
   4.1.4 Clean volume history . . . . . . .                 .   .   .   ..   .   .   .   .   ..   .   .   .   ..   .   .   .   .   ..   .   .   .   . 65
   4.1.5 Expiration process . . . . . . . . .               .   .   .   ..   .   .   .   .   ..   .   .   .   ..   .   .   .   .   ..   .   .   .   . 66
   4.1.6 Reclamation process . . . . . . .                  .   .   .   ..   .   .   .   .   ..   .   .   .   ..   .   .   .   .   ..   .   .   .   . 67



                                                                                                                                                      iii
4.1.7 Migration process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
                   4.1.8 Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
                4.2 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

                Appendix A. TSW Extended agent for TSM source code. . . . . . . . . . . . 71

                Appendix B. Using the additional material . . . . . . . .                       .......     ......     ..   87
                B.1 Locating the additional material on the Internet . . . . .                  .......     ......     ..   87
                B.2 Using the Web material. . . . . . . . . . . . . . . . . . . . . . . .       .......     ......     ..   87
                   B.2.1 How to use the Web material . . . . . . . . . . . . . . .              .......     ......     ..   87

                Appendix C. Special notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

                Appendix D. Related publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
                D.1 IBM Redbooks collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
                D.2 Other resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
                D.3 Referenced Web sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

                How to get IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
                IBM Redbooks fax order form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

                Abbreviations and acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

                IBM Redbooks review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103




iv   Implementing TWS Extended agent for Tivoli Storage Manager
Figures

          1.    Extended agent network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
          2.    Extended agent processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
          3.    Extended agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
          4.    Requesting a backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
          5.    Verifying that a backup was unsuccessful . . . . . . . . . . . . . . . . . . . . . . . . . 25
          6.    Backing up a storage pool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
          7.    Reclamation in the tape device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
          8.    Migration process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
          9.    Device configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
          10.   Maestro (TWS) Main Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
          11.   Maestro (TWS) Composer window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
          12.   List of jobs scheduled on your server . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
          13.   Changing job definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
          14.   Maestro (TWS) Console Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
          15.   Jobs scheduled on TWS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
          16.   Right-click to see the status of the job . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
          17.   Status of the job . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
          18.   Maestro (TWS) Main Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
          19.   Select Jobs to create a new job . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
          20.   Select the CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
          21.   New Job window for database backup . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
          22.   Job definition window for Database Backup . . . . . . . . . . . . . . . . . . . . . . . 47
          23.   List of jobs, including BACKUPDB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
          24.   Selecting Schedules to add a new schedule . . . . . . . . . . . . . . . . . . . . . . . 48
          25.   Creating a new schedule for database backup . . . . . . . . . . . . . . . . . . . . . 49
          26.   Defining a new schedule for database backup . . . . . . . . . . . . . . . . . . . . . 50
          27.   New schedule - backup db. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
          28.   On/Except window to definite the new schedule . . . . . . . . . . . . . . . . . . . . 51
          29.   Options to define a new schedule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
          30.   Follows Sched/Job window for database backup . . . . . . . . . . . . . . . . . . . 53
          31.   Opens Files window for database backup . . . . . . . . . . . . . . . . . . . . . . . . . 54
          32.   Needs resources window for database backup . . . . . . . . . . . . . . . . . . . . . 55
          33.   Jobs window for database backup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
          34.   Adding jobs to the Current Jobs list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
          35.   New schedule on the List of Schedules . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
          36.   Selecting Conman from the Maestro (TWS) Main Window . . . . . . . . . . . . 58
          37.   BACKUPDB schedule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
          38.   Standard output for database backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
          39.   Checking the status of a job. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
          40.   Stdlist for BACKUPDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60



                                                                                                                            v
41.   Job Definition window for storage pool backup . . . . . . . . . . . . . . . . . . . . . 62
                 42.   Job Definition window for backup device configuration . . . . . . . . . . . . . . . 64
                 43.   Job Definition window for backup volume history . . . . . . . . . . . . . . . . . . . 65
                 44.   Job Definition window for clean volume history . . . . . . . . . . . . . . . . . . . . . 66
                 45.   Job Definition window for the expiration process. . . . . . . . . . . . . . . . . . . . 67
                 46.   Job Definition window for the reclamation process . . . . . . . . . . . . . . . . . . 68
                 47.   Job Definition window for the migration process . . . . . . . . . . . . . . . . . . . . 69
                 48.   Job Definition window for restore. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70




vi   Implementing TWS Extended agent for Tivoli Storage Manager
Tables

                  1. Task types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
                  2. Task options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16




© Copyright IBM Corp. 2001                                                                                                       vii
viii   Implementing TWS Extended agent for Tivoli Storage Manager
Preface

                  Tivoli Workload Scheduler (TWS) is Tivoli’s strategic, multiplatform
                  distributed scheduling product, providing high-volume, complex scheduling
                  capability. Although TWS provides native support for many platforms and
                  applications, it is possible to extend its robust scheduling capabilities to cover
                  additional platforms and applications. Writing an Extended agent
                  accomplishes this.

                  This redbook will show you how to write a TWS Extended agent. The
                  Extended agent allows you to schedule on platforms and applications for
                  which TWS has no native agent. Using the Extended agent, you can integrate
                  Tivoli Storage Manager (TSM) with TWS. TWS’s scheduling facility allows
                  you to assign dependencies among TSM-scheduled tasks or to assign limits
                  or priorities. By extending TWS to schedule these TSM tasks, you can take
                  advantage of its advanced scheduling capabilities.

                  This redbook will be essential for those who will write a TWS Extended agent
                  or who will use TWS to schedule TSM functions.


The team that wrote this redbook
                  This redbook was produced by a team of specialists from around the world
                  working at the International Technical Support Organization (ITSO), Austin
                  Center.

                  Vasfi Gucer is a Project Leader at the ITSO, Austin Center. He worked with IBM
                  Turkey for 10 years and has been with the ITSO since January 1999. He has
                  more than eight years of experience in systems management, networking
                  hardware, and distributed platform software. He has worked on various Tivoli
                  customer projects as a systems architect in Turkey and the U.S. Vasfi is also a
                  Certified Tivoli Consultant.

                  Henry Daboub is currently a member of the Tivoli Customer Support Global
                  Response Team (GRT). The GRT provides on-site support to Tivoli
                  customers with an emphasis on large environments. Henry has more than 12
                  years of experience in software development and support, and has supported
                  IBM workload management products since 1997.

                  Warren Gill is the Product Marketing Manager for TWS and Tivoli Operations
                  Planning and Control. He has been a courseware designer and trainer for
                  TWS and its predecessor Maestro, as well as a customer support engineer.




© Copyright IBM Corp. 2001                                                                        ix
Warren has been with Tivoli Systems since December 1997, when Tivoli
                acquired Unison Software. He has been using TWS since 1990.

                Denise Kikumoto is an IT specialist working for IBM Brazil since May 1997.
                She is responsible for AIX server and Lotus Notes administration. She also
                has extensive experience with TSM. She holds a degree in systems analysis.

                Tina Lamacchia has been in the IT realm for 18 years. Her career started
                with programming, and then administrating hundreds of UNIX systems. She
                has been with Tivoli Systems for more than three years. She has worked with
                TWS for two years and managed a TWS support team. Prior to joining Tivoli
                Systems, she was a TWS customer for three years and deployed the product
                set (including SAP Extended agent) in an Enterprise Systems Management
                (ESM) environment. Currently she is working in the GRT to assist ESM
                customers with various deployments in TWS and Tivoli Management
                Environment (TME).

                Thanks to the following people for their invaluable contributions to this project:

                Tivoli Systems, International Technical Support Organization, Austin
                Center
                Sergio Juri, Richard Harrison, Cesare Pagano

                IBM, International Technical Support Organization, Austin Center
                Leah Nelson


Comments welcome
                Your comments are important to us!

                We want our redbooks to be as helpful as possible. Please send us your
                comments about this or other redbooks in one of the following ways:
                  • Fax the evaluation form found in “IBM Redbooks review” on page 103 to
                    the fax number shown on the form.
                  • Use the online evaluation form found at ibm.com/redbooks
                  • Send your comments in an Internet note to redbook@us.ibm.com




x   Implementing TWS Extended agent for Tivoli Storage Manager
Chapter 1. Introduction

                  This redbook is designed to illustrate the implementation of a Tivoli Workload
                  Scheduler (TWS) Extended agent. The implementation the redbook team
                  designed facilitates a communication between TWS V7.0and Tivoli Storage
                  Manager (TSM) V4.1 to initiate regularly scheduled tasks on the TSM server.
                  TSM’s server-prompted scheduling facility allows us to initiate client backups
                  on machines defined as TSM clients in server-prompted scheduling mode.


1.1 TWS overview
                  TWS is a multiplatform distributed scheduling system that provides
                  high-volume, complex scheduling capability. A powerful scheduling language
                  allows for precise coding of job streams with dependencies on other jobs,
                  files, virtual resources, operator prompts, and jobs in other scheduling
                  environments.

                  A Java-based graphical user interface (GUI) known as the Job Scheduling
                  Console (JSC) provides the user with the option of a dialog-based graphical
                  interface. JSC allows a user: to create/modify scheduling objects, to create
                  an execution plan for a batch workload, and to monitor/manage the plan
                  when it is executing. The more experienced user can use a command line
                  interface (CLI) for monitoring, scheduling, or troubleshooting.

                  An application programming interface (API) allows TWS to be integrated with
                  any application with a scheduling facility of its own. This redbook explores
                  that interface. Chapter 5 of the Tivoli Workload Scheduler 7.0 Reference
                  Guide, GC32-0424 provides an overview of the TWS Extended agent API.

                  There are two basic aspects to job scheduling in TWS: the database and the
                  plan. The database contains all the definitions for scheduling objects (for
                  example, jobs, job streams, resources, and workstations). It also holds
                  statistics about job and job stream execution, as well as information on the
                  user ID that created an object and when an object was last modified. The plan
                  contains all job scheduling activity planned for a one-day period. In TWS the
                  plan is created every 24 hours and consists of all the jobs, job streams,
                  dependencies, and other scheduling objects referenced in the upcoming day.
                  All job streams for which you have created a run cycle are automatically
                  scheduled and included in the plan. At the end of the day, the jobs and job
                  streams not successfully executed can be rolled over into the next day’s plan.




© Copyright IBM Corp. 2001                                                                       1
1.1.1 Software configurations used for this redbook
                An IBM RS/6000 43P workstation running AIX V4.3.3.0 was used in the
                development of this redbook. The following software was loaded onto this
                system:
                  • Tivoli Workload Scheduler V7.0
                  • Tivoli Management Framework V3.7
                  • Tivoli Job Scheduling Services V1.1
                  • Tivoli TWS Connector V7.0
                  • Tivoli Storage Manager V4.1 for AIX

1.1.2 TWS concepts and terminology
                TWS uses these important concepts:
                  • Job streams and calendars
                    The job streams created using the JSC are central to TWS’s ability to
                    manage batch job execution. Each job stream is scheduled to run on a
                    specific set of dates and times, and consists of a list of jobs that execute
                    as a unit (such as the weekly backup application), along with times,
                    priorities, and other dependencies that determine the exact order of
                    execution.
                    Job streams are dated using actual dates, days of the week, or calendars.
                    A calendar is a set of specific dates. You can create as many calendars as
                    required to meet your scheduling needs. For example, you can define a
                    calendar named PAYDAYS containing a list of pay dates, a calendar
                    named MONTHEND containing a list of each last business day of the
                    month for the current year, and a calendar named HOLIDAYS containing a
                    list of your company’s holidays. At the start of each processing day, TWS
                    automatically selects all the job streams that run on that day, and carries
                    forward uncompleted job streams from the previous day.
                  • Workstations
                    A workstation is usually an individual computer on which jobs and job
                    streams are executed. A workstation definition is required for every
                    computer that executes jobs in the TWS network. Workstation definitions
                    primarily refer to physical workstations.
                    However, in the case of Extended agents and network agents, the
                    workstations are logical definitions that must be hosted by a physical TWS
                    workstation.




2   Implementing TWS Extended agent for Tivoli Storage Manager
There are several types of workstations in a TWS network:
            • Master Domain Manager
              The Domain Manager in the topmost domain of a TWS network. It
              contains the centralized database files used to document scheduling
              objects. It creates the production plan at the start of each day, and
              performs all logging and reporting for the network.
            • Domain Manager
              A Domain Manager acts as a repeater, which allows TWS to scale to large
              numbers of machines. The Domain Manager forwards messages between
              the Master Domain Manager and the agents.
            • Backup Master
              A Fault-tolerant Agent (FTA) capable of temporarily assuming the
              responsibilities of its Domain Manager in a failover situation. This is
              enabled by marking the workstation as Full Status and Resolve
              Dependencies.
            • Fault-tolerant Agent
              A workstation capable of resolving local dependencies and launching its
              jobs in the absence of a Domain Manager. The FTA is initialized at the
              beginning of the production day with all of the scheduling objects needed
              to perform the assigned workload.
            • Standard agent
              A workstation that launches jobs only under the direction of its Domain
              Manager. Each job launch on the standard agent is directed in real time by
              the Domain Manager or Master.
            • Extended agent
              A logical workstation definition that enables you to launch and control jobs
              on other systems and applications, such as PeopleSoft, Oracle
              Applications, SAP R/3, and MVS JES2 and JES3. Users can also write
              Extended agents, as presented in this redbook.
            • Network agent
              A logical workstation definition for creating dependencies between jobs
              and job streams in separate TWS networks.

1.1.3 TWS architecture
           The Master Domain Manager contains the centralized database files used to
           store scheduling objects. It creates the production plan at the start of each
           day, distributes the plan to the FTAs and Domain Managers in the Master
           Domain, and logs all transactions on the TWS network.




                                                                    Chapter 1. Introduction   3
All communications to agents are routed through the Domain Manager, which
                is the management hub in a domain. The network can be managed by a mix
                of agents. FTAs are capable of resolving local dependencies and launching
                jobs should a network interruption cause them to lose communication with
                their Domain Managers. They can do this because each one is given a set of
                scheduling instructions at the beginning of every processing day.

                Version 7.0 introduced a new Java GUI: the Job Scheduling Console (JSC).
                The JSC provides a common interface to both TWS and Operations, Planning
                and Control (OPC).

1.1.4 Extended agents
                TWS Extended agents are programs that allow TWS to manipulate and to get
                information about objects in other scheduling environments. Extended agents
                use open scheduling APIs and protocols, and they provide an effective
                mechanism for extending TWS’s scheduling capabilities to foreign platforms
                and applications. Extended agents also allow segregation of applications at
                the workstation level by providing an alternative method other than jobmanrc
                process. This allows some applications to be treated differently using an
                alternative job scheduling method.

                The connection between TWS and an Extended agent is shown in Figure 1.
                The Extended agent is installed on one of the TWS hosts. TWS accepts
                information from the Extended agent. The interface between TWS and an
                Extended agent is called the access method. The access method is a shell
                script or program which resides in ~TWSHOME/methods directory.

                .




                Figure 1. Extended agent network




4   Implementing TWS Extended agent for Tivoli Storage Manager
Extended agent processing is explained in Figure 2. The sequence of
operations is as follows:

       Note
 This explanation does not consider network communication issues. It is
 accepted that the Extended agent resides on a TWS server. If the
 Extended agent resides on an FTA, the sequence of operations for
 communication with the Extended agent will be the same but there will be
 additional processes for communication between the TWS Master and the
 FTA.

1.    Batchman process on the FTA talks to the jobman (jobman.exe on an
      NT system), which is owned by the root user ID.
2.    Jobman invokes JOBMAN (jobmon.exe on an NT system) process in
      the context of the TWS user (maestro, for example).
3.    JOBMAN talks to the access method.
4.    The access method invokes a Remote Function Call (RFC).
5.    The access method consults with the <method.opts> file.
6.    The access method talks to the system or the application’s job.
7.    The access method and the job communicate with each other.
8.    The method passes the information back to the TWS host through
      JOBMAN.




Figure 2. Extended agent processing




                                                        Chapter 1. Introduction   5
The JOBMAN process launches the access method script to perform one of
                these tasks:
                  • Launch a job
                  • Manage a job
                  • Check for the existence of a file to satisfy an OPENS dependency
                  • Get the status of an external job

                The syntax of the method execution is as follows:

                methodname -t task options -- taskstring

                where:
                task:             Is one of the following:
                                 • Launch a job (LJ)
                                 • Manage a previously launched job (MJ)
                                 • Check availability of a file – OPENS dependency (CF)
                                 • Get the status of an external job (GS)
                options:          Are the list of job properties.
                taskstring:       Is the string to execute from the job definition.

                The following are the options (related with the job’s properties) that should be
                passed to the access method:
                  • Workstation/Host/Master
                  • Workstation’s node definition
                  • Workstation’s port definition
                  • The current production run number
                  • The job’s run number
                  • The job’s schedule name
                  • The date of the schedule (in two formats)
                  • The user ID (logon) for the job
                  • The path to the output (stdlist) file for the job
                  • The job ID
                  • The job number
                  • The string from the SCRIPTNAME or DOCOMMAND entry in the job definition



6   Implementing TWS Extended agent for Tivoli Storage Manager
An example method invocation is as follows, where job TEST is executed on
           the Extended agent workstation itso6 using the user ID itso and method
           name wgetmethod:


            wgetmethod -t LJ
            -c ITSO6,ITSO7,ITSO7
            -n ITSO6
            -p 31111 -r 143,143 -s MACDSH91
            -d 20000410,955381986 -l itso
            -o /opt/maestro/stdlist/2000.04.10/O13676.1053
            -j TEST,13676 -- /home/itso//batchjobs/killer



           The current Extended agents TWS provides are:
            • UNIX Remote Shell
            • UNIX Local
            • MVS (JES,OPC, CA7)
            • SAP R/3 Batch
            • PeopleSoft
            • Oracle Applications


                 Note
            In addition to TWS-provided Extended agents, you can always write your
            own Extended agents for platforms or applications thatare not TWS
            supported using the open API that is documented in the Tivoli Workload
            Scheduler 7.0 Reference Guide, GC32-0424.




1.2 TSM overview
           TSM is an end-to-end, scalable storage management solution spanning palm
           tops to mainframes on more than 35 platforms. Its features include:
            • Centralized storage management
            • Storage Area Network (SAN) features, such as LAN-free backup and tape
              sharing
            • Automated network incremental and subfile backup, archive, and retrieval
            • Fast recovery time
            • Space management file migration


                                                                 Chapter 1. Introduction   7
• High speed policy-based disaster recovery
                  • Data protection offered for most popular groupware, e-mail, databases,
                    and applications

                TSM is the core product of the Tivoli Storage Management product set. It
                provides a solution for distributed data and storage management in an
                enterprise network environment. It is the next generation of the product
                originally released by IBM as ADSTAR Distributed Storage Manager (ADSM).

                The base functions TSM and its complementary products provide are:
                  • Data protection, including:
                     - Operational backup and restore of data: The backup process
                       creates a copy of the data protect against the operational loss or
                       destruction of file or application data. The customer defines how often
                       to back up (frequency) and how many numbers of copies (versions) to
                       hold.
                       The restore process places the backup copy of the data into a
                       customer-designated system or workstation.
                     - Disaster recovery: All activities to organize, manage, and automate
                       the recovery process from a major loss of IT infrastructure and data
                       across the enterprise. This includes processes to move data offsite into
                       a secure vault location, to rebuilt IT infrastructure, and to reload data
                       successfully in an acceptable time frame.
                  • Storage resource management, including:
                     - Vital record retention, archive, and retrieval: The archive process
                       creates a copy of a file or a set of files representing an endpoint of a
                       process for long-term storage. Files can remain on the local storage
                       media or can be deleted. The customer controls how long (retention
                       period) an archive copy is to be retained.
                       The retrieval process locates the copies within the archival storage and
                       places them into a costumer designated system or workstation.
                     - Hierarchical space management: This process provides the
                       automatic and transparent movement of operational data from the user
                       system disk space to a central storage repository. If the user accesses
                       this data, it is dynamically and transparently restored to the client
                       storage.




8   Implementing TWS Extended agent for Tivoli Storage Manager
1.2.1 What are the benefits of a TSM Extended agent for TWS?
            TSM administrators must perform several types of operations regularly each
            day. TSM contains a built-in scheduling facility, which provides a simple
            mechanism to automate routine tasks. This scheduling facility does not
            provide the ability to assign dependencies among scheduled tasks or to
            assign limits or priorities. By extending TWS to schedule these tasks, you can
            take advantage of its advanced scheduling capabilities.

            The following common TSM tasks were implemented for this example:
             • Database backup (BACKUP DB)
             • Volume history backup (BACKUP VOLHISTORY)
             • Device configuration backup ( BACKUP DEVCONFIG)
             • Delete volume history ( DELETE VOLHISTORY)
             • Inventory expiration ( EXPIRE INVENTORY)
             • Client backup

            All TSM tasks executed by the TSM Extended agent ( tsmxagent), use the TSM
            Administrative Client Interface ( dsmadmc). The user ID used to log in to the
            dsmadmc interface is fetched from the tsmAdmin variable in the
            tsmxagent.opts file in the TWS methods directory. The password is retrieved
            from the TWS parameter object named TSMPASS.

            Client backups are performed as follows:
             • A schedule is defined to run a backup immediately (DEFINE SCHEDULE).
             • The schedule is associated with the client specified (DEFINE ASSOCIATION).
             • The schedule is monitored until completion or timeout ( QUERY EVENT).
             • The schedule is deleted ( DELETE SCHEDULE).
             • The status is reported to TWS.

            As shown in Figure 3 on page 10, Extended agents are used to extend the
            job scheduling functions of TWS to other systems and applications.




                                                                    Chapter 1. Introduction   9
Extended agent            External
                 Host                                                          system or
                                                                               application




                    TWS network

                Figure 3. Extended agent

                An Extended agent is defined as a workstation that has a host and an access
                method. The host is any other workstation, except another Extended agent.
                The access method is a Tivoli-supplied or user-supplied script or program
                that the host executes whenever the Extended agent is referenced in the
                production plan. For example, to launch a job on an Extended agent, the host
                executes the access method, passing it job details as command line options.
                The access method communicates with the external system or application to
                launch the job and return the status of the job.

                Each Extended agent must have a logical workstation definition. This logical
                workstation must be hosted by a TWS physical workstation, either a Master,
                Domain Manager, or FTA workstation. The Extended agent workstation
                definition references the name of the access method and the host
                workstation. When jobs are launched on the Extended agent workstation, the
                access method is called and passes the job information to the external
                system. For an example of defining an Extended agent workstation, see the
                Tivoli Workload Scheduler 7.0 User’s Guide, GC32-0423.


1.3 Summary
                TWS is a multiplatform distributed scheduling program that provides
                high-volume, complex scheduling capability for many systems and
                applications. Master Domain Manager, Domain Manager, Backup Master,
                Fault-tolerant Agent and standard agent are various types of workstations in
                a TWS network.

                You can extend the number of platforms and applications TWS supports by
                writing TWS Extended agents which allow TWS to manipulate and to get
                information about objects in other scheduling environments.


10   Implementing TWS Extended agent for Tivoli Storage Manager
TSM is a scalable storage management solution spanning palm tops to
mainframes on more than 35 platforms. Centralized storage management,
LAN-free backup and tape sharing, and automated network incremental and
subfile backup, archive, and retrieval are some of the important functions that
TSM provides.




                                                       Chapter 1. Introduction   11
12   Implementing TWS Extended agent for Tivoli Storage Manager
Chapter 2. Extended agent functions

                  This chapter describes the functions of the Tivoli Workload Scheduler (TWS)
                  Extended agent method, the access method interface and the
                  communications protocols between jobs running within an access method.


2.1 Introduction
                  The Extended agent is defined as a workstation that has a host and an
                  access method. The host is any other TWS workstation, except another
                  Extended agent. The access method is a Tivoli-supplied or user-supplied
                  script or program that the host executes whenever the Extended agent is
                  referenced in the production plan.

                  For example, to launch a job on an Extended agent, the host executes the
                  access method, passing it job details as command line options. The access
                  method communicates with the external system or application to launch the
                  job and return the status of the job.


2.2 Workstation definition
                  Each Extended agent must have a logical workstation definition. This logical
                  workstation must be hosted by a TWS physical workstation, either a Master,
                  Domain Manager, or FTA workstation. The Extended agent workstation
                  definition references the name of the access method and the host
                  workstation. Workstation definitions are created using the command line
                  interface, Composer, or Job Scheduling Console (JSC). When jobs are
                  launched on the Extended agent workstation, the access method is called
                  and passes the job information to the external system.

                  Suppose, for the purpose of illustration, that you have a TWS network
                  comprised of three workstations: a Master workstation (called Copernicus), a
                  Fault-tolerant Agent (FTA) workstation (Kepler), and an Extended agent
                  workstation (Galileo). The following is an example of the Extended agent
                  workstation definition:
                  CPUNAME galileo
                  OS OTHER
                  NODE focus
                  TCPADDR 1609
                  FOR MAESTRO
                     HOST kepler
                     ACCESS nuncius



© Copyright IBM Corp. 2001                                                                  13
END

                In this case, Galileo is the name of the Extended agent workstation, focus is
                the node name, 1609 is the TCP address, Kepler is the host, and nuncius is
                the name of the access method. An executable file (script or program) named
                nuncius must reside in the /methods subdirectory of the TWS installation. For
                Extended agents only, the node and tcpaddr definitions are left to the method
                developer to define. In other words, depending on the nature of the access
                method, node might have different uses.


2.3 Method options file
                By default, when executing an Extended agent job, TWS tries to execute the
                method file as the logon defined for each job to be run by the method. When
                executing the method script to check for an OPENS dependency (using the
                check file [CF] task) TWS executes the method as root by default. You can
                change this behavior by using a method options file to specify special login
                information and other options for your access method. For example, you may
                wish to use the logon field of your agent’s job definitions to represent a logon
                to a foreign system that does not exist on the Extended agent’s host.

                TWS reads the file, if it exists, before executing a method. If the file is
                modified after TWS is started, the changes take effect when it is stopped and
                restarted. The file can contain TWS options and any other method
                information you wish to include. The options recognized by TWS are:
                LJuser=username
                CFuser=username

                where:
                LJuser=username:        Specifies the login to use for the launch job (LJ) and
                                        manage job (MJ) tasks. The default is the login from the
                                        job definition.
                CFuser=username:        Specifies the login to use for the CF task. The default is
                                        root for UNIX, and for Windows NT it is the user name of
                                        the account in which TWS was installed.




14   Implementing TWS Extended agent for Tivoli Storage Manager
Note
            If the Extended agent’s host is a Windows NT computer, these users must
            be defined as TWS user objects. The options file must have the same path
            name as its access method, with an .opts file extension. For example, the
            Windows NT path name of an options file for a method named nuncius is
            WShomemethodsnuncius.opts.




2.4 Access method interface
           The interface between TWS and an access method consists of information
           passed to the method on the command line, and messages returned to TWS
           in stdout.

2.4.1 Method command line syntax
           The TWS host runs an access method using the following command line
           syntax:
           methodname -t task options -- taskstring

           where:

           methodname:   Specifies the file name of the access method. In our example,
                         this is nuncius. All access methods must be stored in the
                         WShome/methods directory.

           -t task:      Specifies the task to be performed, where task is one of the
                         options listed in Table 1 on page 16:




                                                      Chapter 2. Extended agent functions   15
Table 1. Task types

                 Task      Description

                 LJ        Launches a job. The access method is called with this task option when
                           TWS launches a job. TWS will expect the access method to continue
                           running until the job it executes is complete.

                 MJ        Manages a previously launched job. Use this option to synchronize job(s)
                           if a prior LJ task terminated unexpectedly. The MJ method is called for
                           under only a few circumstances. For example, TWS or its batchman
                           process terminates (an operator issues a Conman STOP command to the
                           agent’s host) while an Extended agent job is running. When the TWS
                           processing is restarted, it will execute the Extended agent’s access method
                           for each job that was previously running, passing it the MJ task and the
                           same arguments initially sent to the job. The access method should use the
                           MJ task to determine the state of the previously running job and report that
                           state back to TWS.

                 CF        Checks the availability of a file. Use this option to check file OPENS
                           dependencies. Using the Galileo workstation example, if a schedule
                           contained the dependency (OPENS GALILEO#/this/is/my/file) TWS
                           would call the access method for Galileo and pass it the CF task and the
                           path (/this/is/my/file).



                options:          Specifies the options associated with the task. See
                                  Section 2.4.2, “Task options” on page 16 for more information.

                taskstring:       A string of up to 255 characters associated with the task. See
                                  Section 2.4.2, “Task options” on page 16 for more information.

2.4.2 Task options
                The task options are listed in Table 2. An “x” means the option is valid for the
                task.
                Table 2. Task options

                 Task      Options                                                          Task string

                 -t        -c    -n     -p    -r    -s     -d     -l    -o     -j    -q

                 LJ        x     x      x     x     x      x      x     x      x            ljstring

                 MJ        x     x      x     x     x      x      x     x      x            mjstring

                 CF        x     x      x                                            x      cfstring




16   Implementing TWS Extended agent for Tivoli Storage Manager
-c xagent,host,master:       Specifies the TWS names of the Extended
                             agent, the host, and the Master Domain
                             Manager, separated by commas.
-n nodename:                 Specifies the node name of the computer
                             associated with the Extended agent, if any.
                             This is defined in the Extended agent’s
                             workstation definition node field.
-p portnumber:               Specifies the TCP port number associated
                             with the Extended agent, if any. This is
                             defined in the Extended agent’s workstation
                             definition TCP Address field.
-r currentrun,specificrun:   Specifies the current run number of TWS
                             and the specific run number associated with
                             the job, separated by a comma. The current
                             and specific run numbers might be different
                             if the job is carried forward from an earlier
                             run.
-s jstream:                  Specifies the name of the job’s job stream.
-d scheddate,epoch:          Specifies the schedule date (yymmdd) and
                             the epoch equivalent, separated by a
                             comma.
-l user:                     Specifies the job’s user name. This is
                             defined in the job definition Logon field.
-o stdlist:                  Specifies the full path name of the job’s
                             standard list file. Any output from the job
                             must be written to this file.
-j jobname,id:               Specifies the job’s name and the unique
                             identifier assigned by TWS, separated by a
                             comma. The name is defined in the job
                             definition Job Name field.
-q qualifier:                Specifies the qualifier to be used in a test
                             command issued by the method against the
                             file.
-- ljstring:                 Used with the LJ task. The string from the
                             script file or command field of the job
                             definition.




                                        Chapter 2. Extended agent functions   17
-- mjstring:                          Used with the MJ task. The information
                                                      provided to TWS by the method in a %CJ
                                                      response to an LJ task. Usually, this
                                                      identifies the job that was launched. For
                                                      example, a UNIX method can provide the
                                                      process identification (PID) of the job it
                                                      launched, which TWS sends as part of an
                                                      MJ task.
                -- cfstring:                          Used with the CF task. For a file OPENS
                                                      dependency, the string from the Opens Files
                                                      field of the job stream definition.

2.4.3 Example
                Using our previous workstation definition and the options previously listed,
                here is an example of how your access method would be called from TWS. In
                this example, a job defined as tsmjob1 runs the command ADMIN VHBACKUP
                /opt/tsm/dat/fa20001020 in the job stream (schedule) DAILYBAK:
                /opt/maestro/methods/nuncius -t LJ -c GALILEO,KEPLER,COPERNICUS -n focus -p
                1609 -r 109,109 -s DAILYBAK -d 20001207,976147200 -l root -o
                /opt/maestro/stdlist/2000.12.07/O9041.1414 -j TSMJOB1,9041-- ADMIN VHBACKUP
                /opt/tsm/dat/fa20001020

                Let us examine the command structure from the example.

                /opt/maestro/methods/nuncius

                This is the directory to the access method script.

                -t LJ

                The task option LJ was sent, indicating that a job is being run.

                -c GALILEO,KEPLER,COPERNICUS

                This option shows that Galileo is the Extended agent’s name, Kepler is the
                agent’s host’s name, and Copernicus is the TWS Master’s name.

                -n focus

                Focus is the node name of the Extended agent. This name comes directly
                from the workstation definition for Galileo.




18   Implementing TWS Extended agent for Tivoli Storage Manager
-p 1609

The number 1609 is the tcpaddr port definition from the workstation definition
for Galileo.

-r 109,109

The current run number (TWS production day) is 109, as is the job’s run
number. If, for example this option was “-r 110,109”, it would signify that the
job stream (schedule) from which this job is running has been carried forward
from a previous day.

-s DAILYBAK

The job stream (schedule) name from which this job is running is DAILYBAK.

-d 20001207,976147200

The current scheduling production run date is December 7, 2000. Remember
that the scheduling production run date may be different than the actual
calendar run date.

-l root

The job run by this method should log on to the system as root. This
information comes from the job definition.

-o /opt/maestro/stdlist/2000.12.07/O9041.1414

All output (stdout and stderr) is being redirected to the file
/opt/maestro/stdlist/2000.12.07/O9041.1414 on the host workstation.

-j TSMJOB1,9041

The name of the job being run is TSMJOB1, and its job number (as seen in the
Conman SHOWJOBS command) is 9041. On UNIX systems only, 9041 is also
the parent process ID for this job.

-- ADMIN VHBACKUP /opt/tsm/dat/fa20001020

The rest of the arguments after a double-hyphen are directly from the
SCRIPTNAME or DOCOMMAND entry in the TWS job definition. In this case,
the application understands the command ADMIN VHBACKUP and processes the
command appropriately. Typically the access method ignores any options
after the double hyphen and passes them directly to the target application.
This is, of course, up to the method’s author to determine.




                                            Chapter 2. Extended agent functions   19
Upon execution of this job, its status would be shown in the Console Manager
                as:


                  Est)    (Est)
                  CPU      Schedule   Job    State Pr Start Elapse Dependencies

                  GALILEO #DAILYBAK ******** SUCC 10 14:14 01:10
                                    TSMJOB1 SUCC 10 14:14 01:10 #J9041
                  %




2.5 Method response messages
                Methods returns information to TWS in messages written to stdout. Each line
                starting with a percent sign (%) and ending with a new line is interpreted as a
                message. The messages have the following format:
                %CJ state [mjstring]
                %JS [cputime]
                %UT [errormessage]

                where:
                CJ:                     Changes the job state.
                state:                  The state to which the job is changed. All TWS job
                                        states are valid except hold and ready.
                mjstring:               A string of up to 255 characters that TWS will include in
                                        any MJ task associated with the job.
                JS [cputime]:           Indicates successful completion of a job and provides its
                                        elapsed run time in seconds. This message must be
                                        presented (usually with an echo statement) before the
                                        method ends in order for the job to be considered
                                        successful.
                UT [errormessage]:      Indicates that the requested task is not supported by the
                                        method. Displays a string of up to 255 characters that
                                        TWS will include in its error message (stored in the TWS
                                        standard list file; typically this file is
                                        ~maestro/stdlist/yyyy.mm.dd/MAESTRO).

                You can use these messages within your access method to relay information
                to the TWS Console Manager. By changing the status of your job, operators
                can pay special attention to your jobs by filtering their console windows by job
                status. For example, you might have jobs toggle between wait and exec


20   Implementing TWS Extended agent for Tivoli Storage Manager
states by issuing an echo %CJ WAIT or echo %CJ EXEC while the job connects to
             the application and executes its function.


2.6 Execution and troubleshooting
             The Extended agent’s access method is executed by TWS’s jobman process,
             much as a standard job is launched through jobmanrc.

2.6.1 Executing the method
             Before the method is launched, TWS establishes an execution environment
             for the method:
              • The LJuser parameter is read from the method options file to determine
                the user account with which to run the method. If the parameter is not
                present or the options file does not exist, the user account specified in the
                Logon field of the job’s definition is used. In addition, the following
                environment variables are set:
                 - HOME: User’s home directory
                 - LOGNAME: Login user’s name (from the job definition)
                 - PATH: For UNIX, /bin:/usr/bin; for Windows, %SYSTEM%SYSTEM32
                 - TZ: Time zone

2.6.2 Killing a job
             While an access method is running an MJ or LJ task, it should trap a
             SIGTERM signal (signal 15). This is the signal sent to the job when an
             operator issues a kill command from the user interface. When a kill signal is
             caught, the method should attempt to stop or kill the job and exit without
             writing a %JS message.

2.6.3 Method troubleshooting
             If the method cannot be executed, its state is set to fail. All output messages
             from an access method, except those that start with a percent sign (%), are
             written to the job’s standard list (stdlist) file. For GS and CF tasks that are not
             associated with TWS jobs, messages are written to TWS’s standard list file.
             For information regarding a problem of any kind, check these files.

             For Extended agents, error, warning, and information messages are written to
             TWS’s stdlist file.




                                                            Chapter 2. Extended agent functions   21
• A successful job launch generates the following message:
                       Launched job jobname for wkstation ,#J jobid for user username .
                 • Failure to launch a job generates the following message:
                       Error launching jobname for wkstation :errortext
                 • Failure of a CF task generates the following message:
                       Error invoking methodname for wkstation :errortext
                 • Failure of an MJ task generates the following message:
                       Error managing jobname for wkstation using methodname :errortext
                 • When a method sends a message to Jobman that is not recognized, the
                   following message is generated:
                       Error:message invalid for jobname ,#j jobnumber for wkstation using
                       methodname ."first 64 characters of the offending message "



2.7 Summary
                In this chapter we covered the functions of the TWS Extended agent method,
                the Access Method Interface and the communications protocols between jobs
                running within an access method.

                The main functions used in an Extended agent method are:
                 • LJ: Launch job
                 • MJ: Manage job
                 • CF: Check file dependency

                The Extended agent’s access method is executed by the jobman process,
                much as a standard job is launched through jobmanrc.




22   Implementing TWS Extended agent for Tivoli Storage Manager
Chapter 3. Case study - TSM Extended agent

                  This chapter describes scripts that will be useful to Tivoli Workload Scheduler
                  (TWS) and Tivoli Storage Manager (TSM) administrators.

                  These scripts are about TSM processes such as backup, storage pools,
                  migration, reclamation, volume history, and device configuration. Because, in
                  practice, TSM administrators generally schedule these process, it makes
                  sense to write a TSM Extended agent for TWS that incorporates these
                  functions. Using the TSM Extended agent, administrators can schedule these
                  TSM operations through TWS.

                  First, here is some background information about these operations. The
                  following sections should be especially useful if you are not familiar with TSM
                  scheduling operations.
                    • Backup database: Use this command to back up a TSM database to
                      sequential access volumes (Figure 4 on page 24). To determine how much
                      additional storage space a backup will require, use the QUERY DB command.
                      This command displays the database pages (in megabytes) that have
                      changed since the last backup.
                      The syntax of the command is:


                    backup db devclass=dbbackup type=full sctatch=yes wait=yes

                      where:
                      backupdb:         Is the name of the devclass defined on the TSM server.
                      type=full:        Specifies that you can run the full backup on the TSM
                                        database. This parameter is optional. Possible options
                                        are: incremental, full and dbsnapshot. The default is
                                        incremental.
                      scratch=yes:      To take the device that is scratch. The default value is yes.
                                        This parameter is optional. If you put scratch=no, then it
                                        will specify that scratch volume cannot be used.
                      wait:             Specifies whether to wait for the server to complete
                                        processing this command in the foreground. The default is
                                        no. Possible options are: yes (the server processes the
                                        command in foreground), and no (the server processes the
                                        command in background).
                      You can find more details about the syntax of the commands in the Tivoli
                      Storage Manager for AIX Administrator’s Reference, GC35-0404.


© Copyright IBM Corp. 2001                                                                        23
Backup process


                                         Requests a
                                          backup



                                                       TSM server               Library
                        User

                Figure 4. Requesting a backup

                If a backup completes unsuccessfully, you can verify and restart it. For
                example, in Figure 5 on page 25 the backup was unsuccessful for some files
                and restarted.




24   Implementing TWS Extended agent for Tivoli Storage Manager
Check .NSF files

                             Adminstration
                               Server




      vasfi.nsf                        vasfi.nsf

    desinha.nsf                      desinha.nsf                      vasfi.nsf

     danes.nsf        Backup          danes.nsf                      mcelo.nsf

      mcelo.nsf                       mcelo.nsf

      luisv.nsf                        luisv.nsf




                                                                                           Library

Figure 5. Verifying that a backup was unsuccessful

                    • Backup storage pool: Use this command to back up primary storage pool
                      files to a copy storage pool. The operation is shown in Figure 6 on
                      page 26.
                      If a file already exists in the copy storage pool, the file is not backed up
                      unless the copy is marked as damaged. However, a new copy is not
                      created if the file in the primary storage pool is also marked as damaged.
                      In a random-access storage pool, neither cached copies of migrated files
                      nor damaged files are backed up.
                      If migration for a storage pool starts during a storage pool backup, some
                      files may be migrated before they are backed up. You may want to back up
                      storage pools that are higher in the migration hierarchy before backing up
                      storage pools that are lower. For example, when performing a storage
                      pool backup to copy the contents of a storage pool offsite, if the process is
                      not done according to the existing storage pool hierarchy, some files may



                                                         Chapter 3. Case study - TSM Extended agent   25
not be copied to the copy storage pool. This could be critical for disaster
                   recovery purposes. When performing a storage pool backup on multiple
                   storage pools, the primary storage pool should be completed before the
                   backup process on the next storage pool.
                   The syntax of the command is as follows:


                  backup stgpool spacemgtpool copypool


                   where:
                   spacemgtpool:      Is the primary backup that you want to back up.
                   copypool:          Is the copy storage pool defined on TSM server.




                Figure 6. Backing up a storage pool

                 • Reclamation: Specifies when the server reclaims a volume, based on the
                   percentage of reclaimable space on a volume (Figure 7 on page 27).
                   Reclamation makes the fragmented space on volumes usable again by
                   moving any remaining active files from one volume to another volume,
                   thus making the original volume available for reuse. You can specify an
                   integer from one to 100. The value 100 means that reclamation is not
                   performed.
                   If you change the value from the default of 100, specify a value of 50
                   percent or greater so that files stored on two volumes can be combined
                   into a single output volume.
                   To move data from the reclaim storage pool back to the original storage
                   pool, use the storage pool hierarchy. Specify the original storage pool as
                   the next storage pool for the reclaim storage pool.
                   The syntax of the command is as follows:


                  update stgpool copypool reclaim=50




26   Implementing TWS Extended agent for Tivoli Storage Manager
where:
   reclaim:       Is the percentage of the reclamation in copypool.




Figure 7. Reclamation in the tape device

 • Migration: You can use a primary storage pool as the destination for
   backup files, archive files, or files migrated from client nodes.
   The following command is used for this purpose:


  define stgpool somepool dbbackup pooltype=primary access=readwrite maxsize=nolimt
  highmigh=90 lowmig=70 migprocess=1 collocate=no migcontinue=yes reusedelay=0
  migdelay=0


   where:
   somepool:           Is the pool name defined on the TSM server.
   dbbackup:           Is the device class name defined on the TSM server.
   pooltype:           Specifies that you want to define a primary storage pool.
                       The default value is primary.



                                           Chapter 3. Case study - TSM Extended agent   27
access:            Specifies how client nodes and server processes (such as
                                      migration and reclamation) can access files in the storage
                                      pool. The default value is readwrite, but you can also
                                      define as readonly and unavailable.
                   maxsize:           Specifies the maximum size for a physical file size that the
                                      server can store in the storage pool during a session with
                                      a client. The default value is nolimit.
                   highmig:           Specifies that the server starts migration for this storage
                                      pool when the amount of data in the pool reaches this
                                      percentage of the pool’s estimated capacity. You can
                                      specify an integer from zero to 100. The default value is
                                      90. When the storage pool exceeds the high migration
                                      threshold, the server can start migration of files by node,
                                      to the next storage pool, as defined with the
                                      NEXTSTGPOOL parameter. You can specify highmig=100
                                      to prevent migration for this storage pool.
                   lowmig:            Specifies that the server stops migration for this storage
                                      pool when the amount of data in the pool reaches this
                                      percentage of the pool’s estimated capacity. You can
                                      specify an integer from zero to 99. The default value is 70.
                                      When the storage pool reaches the low migration
                                      threshold, the server does not start migration of another
                                      node’s files. Because all file spaces that belong to a node
                                      are migrated together, the occupancy of the storage pool
                                      can fall below the value you specified for this parameter.
                                      You can set lowmig=0 to permit migration to empty the
                                      storage pool.
                   migprocess:        Specifies the number of processes the server uses for
                                      migrating files from this storage pool. You can specify an
                                      integer from one to 999. The default value is one. During
                                      the migration the server runs this number of processes in
                                      parallel to provide the potential for improved migration
                                      rates.
                   migdelay:          Specifies the minimum number of days a file must remain
                                      in a storage pool before the file becomes eligible for
                                      migration from the storage pool. The server counts the
                                      number of days from the day the file was stored in the
                                      storage pool or retrieved by a client, whichever is more
                                      recent. The default is zero, which means you do not want
                                      to delay migration.




28   Implementing TWS Extended agent for Tivoli Storage Manager
migcontinue:        Specifies whether you allow the server to migrate files that
                       do not satisfy the migration delay time. The default value
                       is yes. Because you can require that files remain in the
                       storage pool for a minimum number of days, the server
                       may migrate all eligible files to the next storage pool yet
                       not meet the low migration threshold. This parameter
                       allows you to specify whether the server is allowed to
                       continue the migration process by migrating the files that
                       do not satisfy the migration delay time.
   Figure 8 shows the migration process.



                        Migration process




   Client                         Client
                                                                    TSM server




                                                             Disk                Disk

                                                                                Backup


             Library

Figure 8. Migration process

 • Backup device configuration: Use this command to back up the
   following information in one or more files:
     - Device class definitions
     - Library definitions


                                           Chapter 3. Case study - TSM Extended agent   29
- Drive definitions
                   To restore the TSM database, the device configurations must be available.
                   You can use the devconfig server option to specify one or more files in
                   which to store device configuration information. TSM updates the files
                   whenever a device class, library, or drive is defined, updated, or deleted
                   (Figure 9).
                   The syntax of the command is as follows:


                  backup devconfig filenames=device

                   where:
                   device:        Is the directory that it will back up the information about
                                  devconfig.




                               Device class definitions


                               Drive definitions

                                                                                Devices


                                             Library definitions


                Figure 9. Device configuration

                 • Backup volume history: Use this command to back up sequential
                   volume history information to one or more files. You can use volume
                   history information when you reload the database and audit affected
                   storage pool volumes. If you cannot start the server, you can use the
                   volume history file to query the database about these volumes. The
                   volume history includes information about the following types of volumes:
                     - Database backup volumes
                     - Database dump volumes
                     - Export volumes




30   Implementing TWS Extended agent for Tivoli Storage Manager
- The following sequential access storage pool volumes:
      • Volumes added to storage pools
      • Volumes reused through reclamation or move-data operations
      • Volumes removed by using the delete volume command or during
        reclamation of scratch volumes
 The syntax of the command is:


backup volhistory filenames=volhist


 where:
 volhist:      Is the name of the filename that will contain information about
               the volhistory backup.
• Delete volume history: Use this command to delete volume history file
  records that are no longer needed (for example, records for obsolete
  database backup volumes).
 When you delete records for volumes that are not in storage pools (for
 example, database backup or export volumes), the volumes return to
 Source Manager, which acquires them as scratch volumes. Scratch
 volumes of device-type files are deleted. When you delete the records for
 storage pools volumes remain in the TSM database. When you delete
 records for recovery-plan file objects from a source server, the objects on
 the target server are marked for deletion.
 The syntax of the command is as follows:


delete volhistory type=rpfile todate=11/31/00

 where:
 type:         Specifies the type of records, which also meet the date and
               their criteria, to delete from the volume history file. Rpfile
               specifies to delete only records that contain information about
               full and incremental database backup volumes and recovery
               plan file volumes.
 todate:       Specifies the date to use to select sequential volume history
               information to be deleted. TSM deletes only those records
               with a date on or before the date you specify.
 For more details, you can see the Tivoli Storage Manager for AIX
 Administrator’s Reference , GC35-0404.



                                        Chapter 3. Case study - TSM Extended agent   31
• Expire inventory : Use this command to manually start inventory
                   expiration processing. This inventory expiration process removes the
                   client backup and archive file copies from server storage based on the
                   policy specified in the backup and archive copy groups of the
                   management classes to which the files are bound. The inventory
                   expiration process that runs during server initialization does not remove
                   these virtual volumes.
                   Only one expiration process is allowed at any time. If an expiration
                   process is currently running you can not start another process.
                   The syntax of the command is as follows:


                  expire inventory quiet=no wait=no skipdirs=no duration=40

                   where:
                   quiet:        Specifies whether the server suppresses detailed messages
                                 about the policy changes during the expiration processing.
                                 This parameter is optional. The default value is no, which
                                 specifies that the server sends detailed informational
                                 messages. You can also put the value yes, which specifies
                                 that the server sends only summary messages.
                   wait:         Specifies whether to wait for the server to complete
                                 processing this command in the foreground. This parameter is
                                 optional. Possible values are no, which specifies that the
                                 server processes this command in the background, and yes,
                                 which specifies that the server processes this command in the
                                 foreground.
                   skipdirs:     Specifies whether the server skips directory type during the
                                 expiration processing. Possible values are: no, which specifies
                                 that the server will expire files and directories based upon the
                                 appropriate policy criteria, and yes, which specifies that the
                                 server will skip directory type objects during expiration
                                 processing even if the directories are eligible for expiration.
                   duration:     Specifies the maximum number of minutes for the expiration
                                 process to run. The process stops when the specified number
                                 of minutes have passed or when all eligible expired objects
                                 are deleted, whichever comes first. You can specify a number
                                 from one to 999,999 (optional).
                 • Restore database : To restore a database or volume to its most current
                   state, the log mode must have been set to roll-forward continuously from
                   the time that the last backup series was created.


32   Implementing TWS Extended agent for Tivoli Storage Manager
If the log mode is set to roll-forward after a point-in-time database
 restoration, a database backup starts when the server is brought up for the
 first time. This can cause loss of data: A tape can have current data on it,
 but because of the point-in-time restoration, it can be marked as scratch.
 When the server starts for the first time, TSM may use this tape to write
 the database backup, thus destroying the original data on this tape.
 You can restore a database if the following are true:
   - The log mode was set to roll-forward continuously from the time the last
     backup series was created.
   - An intact recovery log is available.
   - An intact volume history file is available.
 TSM requests volume mounts to load the most recent backup series and
 then uses the recovery log to update the databases to its most current
 state.
 If the volume history file is unavailable, you can use one or more dsmc
 restore db commands to restore the database to a specific point in time.
 For example, to load a full backup and one or more incremental backups,
 issue a dsmc restore db command for the full backup and an additional
 dsmc restore db command for each incremental backup. When you use
 multiple dsmc restore db commands, specify commit=no for each command
 except the last one. For the last command, specify commit=yes. The
 database remains in an inconsistent and unusable state until you issue a
 dsmc restore db command with a commit=yes.
 The syntax of the command is as follows:


dsmc restore db devclass=device_class_name volumename=volume_name commit=no

 where:
 devclass:     Specifies the name of the sequential access device class to
               use. The device class must be defined in a device
               configuration file.
 volumename: Specifies the backup volume to use to restore the database.
               Possible values are:
               volume_name:      Specifies the names of the volumes. To
                                 specify multiple volumes, separate the names
                                 with commas without intervening spaces.
               file:file_name: Specifies the name of a file that contains a list
                                 of the volumes.



                                        Chapter 3. Case study - TSM Extended agent   33
commit:       Specifies whether this is the last restore command needed to
                                 restore the database. This parameter is optional. The default
                                 value is no (specifies that you will issue one or more additional
                                 dsmc restore db commands), but you can also define the value
                                 yes (specifies that this is the last restore command to restore
                                 the database).

                After you analyze all the scripts, you can also test the environment and
                commands in the TWS structure.

                Initially install the TWS software on your system. Decide on which system
                your Master will be (this is the system on which the TWS database resides,
                as well as the system on which all updates are received). Please follow the
                installation steps in the Tivoli Workload Scheduler 7.0 Planning and
                Installation Guide, GC32-0422. Once the software is installed correctly, make
                sure your display and path are setup as well.

                To access the TWS database, execute the gmaestro command (which should
                be located in the TWShome/bin directory). Make sure you are logged on with
                the user maestro (default TWS user), or the name of the maestro user you
                have chosen. Gmaestro contains the Composer screen and the Conman
                screen. Further details on their functionality is explained in the document.

                Figure 10 shows the Maestro Main Window the gmaestro command launched.




                Figure 10. Maestro (TWS) Main Window




34   Implementing TWS Extended agent for Tivoli Storage Manager
You can choose the Database Manager (Composer), which will allow you to
enter the CPU, CPU classes, domains, calendars, jobs, and users, or
Console Manager (Conman), which displays information about schedules,
jobs, CPUs, and parameters.

Composer can be accessed from the Master only or wherever the mozart
directory is accessible. We do not recommend that the mozart directory is
mounted or mapped as the TWS database should not be accessible to all
users. Composer reads the mozart directory and the corresponding file
pertaining to your choice. At this point you can add, modify, copy, and delete
data. Make sure you have the proper security access when performing such
operations.

Conman displays job status, allows for ad hoc submission, and allows you to
display previous production days and their status. Again, all features may be
performed if the proper access is given.

When you click the Composer button, a window (Figure 11) will appear:




Figure 11. Maestro (TWS) Composer window

You can display, add, and modify information about CPU, CPU classes,
domains, and users by clicking the corresponding button.

If you choose the Jobs button, you may use the filter feature to list all jobs
according to the chosen CPU or you can display all jobs in the TWS




                                           Chapter 3. Case study - TSM Extended agent   35
database. Clicking the Jobs button, you will see a list of jobs, as seen in
                Figure 12 on page 36.




                Figure 12. List of jobs scheduled on your server

                You can execute modifications, additions, deletions, and/or replication (Save
                As choice) on an existing job. To do that, right-click the desired job, and
                select Modify. The following window (Figure 13 on page 37) will appear.
                Follow the instructions to make your changes or just display the job.




36   Implementing TWS Extended agent for Tivoli Storage Manager
Figure 13. Changing job definitions

As illustrated, adding a new job should be relatively easy. However, a few
explanations are needed in order for you to take full advantage of TWS.

With TSM and TWS, you can take advantage of several options to ensure
your TSM jobs are successful. The Recovery Options, for instance can be
used to ensure that a backup is successfully executed every time. By
choosing the Continue option or Rerun option, the Recovery Job and/or
Recovery Prompt can be used to ensure backups are always successful. You
can key in the recovery job, which may be, for example, another set of tapes
to back up to if the primary tapes are not available or a different
directory/system if a file system full occurs. Whichever you chose, a backup
should always be successful. Also, you can use the Recovery Prompt as a
messaging vehicle to the operations staff on the proper execution of the
recovery job.

The Interactive option is for NT systems within your TWS environment. This
option is used if the scheduled job requires manual intervention.

In Conman (Console Manager), you can display various information as well
as submit ad hoc jobs and schedules. The information is retrieved from the
Symphony file located in the maestrohome directory.

When you click this button, a window (Figure 14 on page 38) will appear:



                                      Chapter 3. Case study - TSM Extended agent   37
Figure 14. Maestro (TWS) Console Manager

                By double-clicking the buttons, the corresponding information is displayed, as
                summarized here:
                 • CPUs: Status on each TWS system is displayed. The information on its
                   connectivity with the Master, the run number, and the node name are
                   displayed. The exact information can be accessed from the command line
                   interface through the command conman -v.
                 • Domains: Displays the Master Domain, the associated Domain Manager,
                   and its parent.
                 • Schedules: Displays all schedules along with their status, priority, start
                   times, and dependencies
                 • Jobs: Displays all jobs along with their status, priority, start times, and
                   dependencies.
                 • Resources: Displays resources and their associated CPUs. Resources
                   can be used when two or more jobs require the use of the same resource,
                   for example a set of tapes (the tape is the resource). Once one job is
                   finished utilizing the one set of tapes or a resource, TWS releases the
                   resource and then next job commences.
                 • Prompts: Displays the prompt’s description, and its associated CPU,
                   schedule, and job.


38   Implementing TWS Extended agent for Tivoli Storage Manager
• Files: Displays the files with their associated CPUs, schedules, and jobs.

All of these features can be used to compliment any Tivoli product, especially
TSM. Each feature will be discussed in more detail in Chapter 4, “Sample
scenarios” on page 43.

Figure 15 shows you the scheduled jobs.




Figure 15. Jobs scheduled on TWS

You can see the status of the scheduled job by right-clicking. This shows you
whether the job was successful, or abended or failed. Also the screen can
show you if the job and/or schedule is ready and when it will start, according
to start time or dependency columns, which can include resources, files, or
other jobs and/or schedules.

If a job fails or abends, you can see the reason why it was unsuccessful by
right-clicking on the job (Figure 16 on page 40).




                                     Chapter 3. Case study - TSM Extended agent   39
Figure 16. Right-click to see the status of the job

                The Stdlist option allows you to read the log (located in the
                maestrohome/stdlist/MM.DD.YYYY directory) associated with that job. For
                further explanation on various other options, please refer to the Tivoli
                Workload Scheduler 7.0 User's Guide, GC32-0423. Figure 17 shows a
                sample stdlist output.




                Figure 17. Status of the job




40   Implementing TWS Extended agent for Tivoli Storage Manager
The stdlist header contains the job name, and associated schedule and CPU
          names, as well as the login name and the script location. As also shown, it
          displays the process ID, and the date and time of the job execution.

          The body of the stdlist contains the steps executed for the job to became
          successful or unsuccessful. The information contained depends solely on its
          script and the information to standard out (stdout). You can also print this
          output.


3.1 Summary
          In this chapter we described the following TSM functions that can be
          scheduled with the TWS:
              • Backup database: To backup a TSM database to sequential access
                volumes.
              • Backup storage pool: To backup primary storage pool files to a copy
                storage pool.
              • Reclamation: To reclaim a volume, based on the percentage of
                reclaimable space on a volume.
              • Migration: To copy files to a library when a threshold is reached on the
                disk.
              • Backup device configuration: To backup the device class, library and
                drive definitions.
              • Backup volume history: To backup sequential volume history information
                to one or more files.
              • Expire inventory: To manually start inventory expiration processing.
              • Restore database: To restore a database or volume to its most current
                state.

          The information in this chapter will be especially useful if you are not familiar
          with TSM scheduling operations.




                                                 Chapter 3. Case study - TSM Extended agent   41
42   Implementing TWS Extended agent for Tivoli Storage Manager
Chapter 4. Sample scenarios

                  This chapter will address several scenarios when utilizing Tivoli Workload
                  Scheduler (TWS) with Tivoli Storage Manager (TSM) product sets.

                  This chapter will demonstrate how to schedule TSM functions within TWS.
                  Primarily we will create jobs and schedules in TWS to handle such functions.
                  We will address dependency options and display jobs/schedules output.

                        Note
                    In these scenarios we used the legacy TWS user interface (Composer and
                    Conman) instead of the new Job Scheduling Console (JSC), which was
                    available with the TWS V7.0. The TWS Extended agent for the TSM code
                    we introduce in this redbook is valid for TWS V7.0, and for TWS versions
                    prior to 7.0, in which JSC is not supported.




4.1 Description of the scenarios
                  The scenarios described involve information about backup databases,
                  backup storage pools, migration, and various other typical scenarios.

4.1.1 Database backup
                  Our first scenario is database backup. You can specify the type of backup that
                  your company requires. This depends on the necessary data’s level of
                  availability for recovery purposes, as well as addressing service level
                  agreements (SLAs) between your company and third party vendors.

                  We will start with scheduling a TSM function in TWS:
                  1.     Execute the TWS interface and choose Composer from the main menu
                         (Figure 18 on page 44).




© Copyright IBM Corp. 2001                                                                     43
.




                Figure 18. Maestro (TWS) Main Window

                2.    From the Scheduling Objects selections, choose Jobs (Figure 19 on
                      page 45).




44   Implementing TWS Extended agent for Tivoli Storage Manager
.




Figure 19. Select Jobs to create a new job

3.    From the Actions menu, choose New Job.
4.    Select the CPU definition in which the new job will reside (Figure 20). In
      TWS, a CPU must be identified with the job or where the backup script
      resides.




Figure 20. Select the CPU




                                                   Chapter 4. Sample scenarios   45
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030
Implementing tws extended agent for tivoli storage manager   sg246030

Mais conteúdo relacionado

Mais procurados

The C Preprocessor
The C PreprocessorThe C Preprocessor
The C Preprocessoriuui
 
Disaster recovery strategies with tivoli storage management sg246844
Disaster recovery strategies with tivoli storage management sg246844Disaster recovery strategies with tivoli storage management sg246844
Disaster recovery strategies with tivoli storage management sg246844Banking at Ho Chi Minh city
 
Nvidia cuda programming_guide_0.8.2
Nvidia cuda programming_guide_0.8.2Nvidia cuda programming_guide_0.8.2
Nvidia cuda programming_guide_0.8.2Piyush Mittal
 
Operating Systems (printouts)
Operating Systems (printouts)Operating Systems (printouts)
Operating Systems (printouts)wx672
 
Ibm system storage productivity center deployment guide sg247560
Ibm system storage productivity center deployment guide sg247560Ibm system storage productivity center deployment guide sg247560
Ibm system storage productivity center deployment guide sg247560Banking at Ho Chi Minh city
 
Deployment guide series ibm tivoli usage and accounting manager v7.1 sg247569
Deployment guide series ibm tivoli usage and accounting manager v7.1 sg247569Deployment guide series ibm tivoli usage and accounting manager v7.1 sg247569
Deployment guide series ibm tivoli usage and accounting manager v7.1 sg247569Banking at Ho Chi Minh city
 
0802 python-tutorial
0802 python-tutorial0802 python-tutorial
0802 python-tutorialZahid Hasan
 
Backing up db2 using ibm tivoli storage management sg246247
Backing up db2 using ibm tivoli storage management sg246247Backing up db2 using ibm tivoli storage management sg246247
Backing up db2 using ibm tivoli storage management sg246247Banking at Ho Chi Minh city
 
Ibm total storage productivity center v2.3 getting started sg246490
Ibm total storage productivity center v2.3 getting started sg246490Ibm total storage productivity center v2.3 getting started sg246490
Ibm total storage productivity center v2.3 getting started sg246490Banking at Ho Chi Minh city
 

Mais procurados (17)

Javanotes6 linked
Javanotes6 linkedJavanotes6 linked
Javanotes6 linked
 
Assembly
AssemblyAssembly
Assembly
 
The C Preprocessor
The C PreprocessorThe C Preprocessor
The C Preprocessor
 
Disaster recovery strategies with tivoli storage management sg246844
Disaster recovery strategies with tivoli storage management sg246844Disaster recovery strategies with tivoli storage management sg246844
Disaster recovery strategies with tivoli storage management sg246844
 
Nvidia cuda programming_guide_0.8.2
Nvidia cuda programming_guide_0.8.2Nvidia cuda programming_guide_0.8.2
Nvidia cuda programming_guide_0.8.2
 
Operating Systems (printouts)
Operating Systems (printouts)Operating Systems (printouts)
Operating Systems (printouts)
 
Ibm system storage productivity center deployment guide sg247560
Ibm system storage productivity center deployment guide sg247560Ibm system storage productivity center deployment guide sg247560
Ibm system storage productivity center deployment guide sg247560
 
Di11 1
Di11 1Di11 1
Di11 1
 
Netfinity tape solutions sg245218
Netfinity tape solutions sg245218Netfinity tape solutions sg245218
Netfinity tape solutions sg245218
 
Wu dis
Wu disWu dis
Wu dis
 
Deployment guide series ibm tivoli usage and accounting manager v7.1 sg247569
Deployment guide series ibm tivoli usage and accounting manager v7.1 sg247569Deployment guide series ibm tivoli usage and accounting manager v7.1 sg247569
Deployment guide series ibm tivoli usage and accounting manager v7.1 sg247569
 
0802 python-tutorial
0802 python-tutorial0802 python-tutorial
0802 python-tutorial
 
Tutorial edit
Tutorial editTutorial edit
Tutorial edit
 
Backing up db2 using ibm tivoli storage management sg246247
Backing up db2 using ibm tivoli storage management sg246247Backing up db2 using ibm tivoli storage management sg246247
Backing up db2 using ibm tivoli storage management sg246247
 
10.1.1.652.4894
10.1.1.652.489410.1.1.652.4894
10.1.1.652.4894
 
Ibm total storage productivity center v2.3 getting started sg246490
Ibm total storage productivity center v2.3 getting started sg246490Ibm total storage productivity center v2.3 getting started sg246490
Ibm total storage productivity center v2.3 getting started sg246490
 
Oracle
OracleOracle
Oracle
 

Semelhante a Implementing tws extended agent for tivoli storage manager sg246030

Implementing ibm tivoli workload scheduler v 8.2 extended agent for ibm tivol...
Implementing ibm tivoli workload scheduler v 8.2 extended agent for ibm tivol...Implementing ibm tivoli workload scheduler v 8.2 extended agent for ibm tivol...
Implementing ibm tivoli workload scheduler v 8.2 extended agent for ibm tivol...Banking at Ho Chi Minh city
 
Implementing ibm tivoli service request manager v7.1 service catalog sg247613
Implementing ibm tivoli service request manager v7.1 service catalog sg247613Implementing ibm tivoli service request manager v7.1 service catalog sg247613
Implementing ibm tivoli service request manager v7.1 service catalog sg247613Banking at Ho Chi Minh city
 
Solution deployment guide for ibm tivoli composite application manager for we...
Solution deployment guide for ibm tivoli composite application manager for we...Solution deployment guide for ibm tivoli composite application manager for we...
Solution deployment guide for ibm tivoli composite application manager for we...Banking at Ho Chi Minh city
 
Ibm total storage tape selection and differentiation guide sg246946
Ibm total storage tape selection and differentiation guide sg246946Ibm total storage tape selection and differentiation guide sg246946
Ibm total storage tape selection and differentiation guide sg246946Banking at Ho Chi Minh city
 
Ibm total storage tape selection and differentiation guide sg246946
Ibm total storage tape selection and differentiation guide sg246946Ibm total storage tape selection and differentiation guide sg246946
Ibm total storage tape selection and differentiation guide sg246946Banking at Ho Chi Minh city
 
BOOK - IBM zOS V1R10 communications server TCP / IP implementation volume 1 b...
BOOK - IBM zOS V1R10 communications server TCP / IP implementation volume 1 b...BOOK - IBM zOS V1R10 communications server TCP / IP implementation volume 1 b...
BOOK - IBM zOS V1R10 communications server TCP / IP implementation volume 1 b...Satya Harish
 
Tivoli business systems manager v2.1 end to-end business impact management sg...
Tivoli business systems manager v2.1 end to-end business impact management sg...Tivoli business systems manager v2.1 end to-end business impact management sg...
Tivoli business systems manager v2.1 end to-end business impact management sg...Banking at Ho Chi Minh city
 
Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531Banking at Ho Chi Minh city
 
Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531Banking at Ho Chi Minh city
 
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207Banking at Ho Chi Minh city
 
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207Banking at Ho Chi Minh city
 
Sg247692 Websphere Accounting Chargeback For Tuam Guide
Sg247692 Websphere Accounting Chargeback For Tuam GuideSg247692 Websphere Accounting Chargeback For Tuam Guide
Sg247692 Websphere Accounting Chargeback For Tuam Guidebrzaaap
 
Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...Banking at Ho Chi Minh city
 
Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...Banking at Ho Chi Minh city
 

Semelhante a Implementing tws extended agent for tivoli storage manager sg246030 (20)

Implementing ibm tivoli workload scheduler v 8.2 extended agent for ibm tivol...
Implementing ibm tivoli workload scheduler v 8.2 extended agent for ibm tivol...Implementing ibm tivoli workload scheduler v 8.2 extended agent for ibm tivol...
Implementing ibm tivoli workload scheduler v 8.2 extended agent for ibm tivol...
 
Implementing ibm tivoli service request manager v7.1 service catalog sg247613
Implementing ibm tivoli service request manager v7.1 service catalog sg247613Implementing ibm tivoli service request manager v7.1 service catalog sg247613
Implementing ibm tivoli service request manager v7.1 service catalog sg247613
 
Solution deployment guide for ibm tivoli composite application manager for we...
Solution deployment guide for ibm tivoli composite application manager for we...Solution deployment guide for ibm tivoli composite application manager for we...
Solution deployment guide for ibm tivoli composite application manager for we...
 
Ibm total storage tape selection and differentiation guide sg246946
Ibm total storage tape selection and differentiation guide sg246946Ibm total storage tape selection and differentiation guide sg246946
Ibm total storage tape selection and differentiation guide sg246946
 
Ibm total storage tape selection and differentiation guide sg246946
Ibm total storage tape selection and differentiation guide sg246946Ibm total storage tape selection and differentiation guide sg246946
Ibm total storage tape selection and differentiation guide sg246946
 
BOOK - IBM zOS V1R10 communications server TCP / IP implementation volume 1 b...
BOOK - IBM zOS V1R10 communications server TCP / IP implementation volume 1 b...BOOK - IBM zOS V1R10 communications server TCP / IP implementation volume 1 b...
BOOK - IBM zOS V1R10 communications server TCP / IP implementation volume 1 b...
 
Tivoli business systems manager v2.1 end to-end business impact management sg...
Tivoli business systems manager v2.1 end to-end business impact management sg...Tivoli business systems manager v2.1 end to-end business impact management sg...
Tivoli business systems manager v2.1 end to-end business impact management sg...
 
Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531
 
Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531Deployment guide series ibm tivoli compliance insight manager sg247531
Deployment guide series ibm tivoli compliance insight manager sg247531
 
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
 
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
Deployment guide series ibm tivoli access manager for e business v6.0 sg247207
 
Sg247692 Websphere Accounting Chargeback For Tuam Guide
Sg247692 Websphere Accounting Chargeback For Tuam GuideSg247692 Websphere Accounting Chargeback For Tuam Guide
Sg247692 Websphere Accounting Chargeback For Tuam Guide
 
Batch Modernization on z/OS
Batch Modernization on z/OSBatch Modernization on z/OS
Batch Modernization on z/OS
 
Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...
 
Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...
 
IBM Streams - Redbook
IBM Streams - RedbookIBM Streams - Redbook
IBM Streams - Redbook
 
test6
test6test6
test6
 
AIX 5L Differences Guide Version 5.3 Edition
AIX 5L Differences Guide Version 5.3 EditionAIX 5L Differences Guide Version 5.3 Edition
AIX 5L Differences Guide Version 5.3 Edition
 
Gdbint
GdbintGdbint
Gdbint
 
Swi prolog-6.2.6
Swi prolog-6.2.6Swi prolog-6.2.6
Swi prolog-6.2.6
 

Mais de Banking at Ho Chi Minh city

IBM MobileFirst Platform v7.0 POT Offers Lab v1.0
IBM MobileFirst Platform v7.0 POT Offers Lab v1.0IBM MobileFirst Platform v7.0 POT Offers Lab v1.0
IBM MobileFirst Platform v7.0 POT Offers Lab v1.0Banking at Ho Chi Minh city
 
IBM MobileFirst Platform v7.0 POT App Mgmt Lab v1.1
IBM MobileFirst Platform  v7.0 POT App Mgmt Lab v1.1IBM MobileFirst Platform  v7.0 POT App Mgmt Lab v1.1
IBM MobileFirst Platform v7.0 POT App Mgmt Lab v1.1Banking at Ho Chi Minh city
 
IBM MobileFirst Platform v7.0 POT Analytics v1.1
IBM MobileFirst Platform v7.0 POT Analytics v1.1IBM MobileFirst Platform v7.0 POT Analytics v1.1
IBM MobileFirst Platform v7.0 POT Analytics v1.1Banking at Ho Chi Minh city
 
IBM MobileFirst Platform Pot Sentiment Analysis v3
IBM MobileFirst Platform Pot Sentiment Analysis v3IBM MobileFirst Platform Pot Sentiment Analysis v3
IBM MobileFirst Platform Pot Sentiment Analysis v3Banking at Ho Chi Minh city
 
IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1
IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1
IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1Banking at Ho Chi Minh city
 
Tme 10 cookbook for aix systems management and networking sg244867
Tme 10 cookbook for aix systems management and networking sg244867Tme 10 cookbook for aix systems management and networking sg244867
Tme 10 cookbook for aix systems management and networking sg244867Banking at Ho Chi Minh city
 
Tivoli data warehouse version 1.3 planning and implementation sg246343
Tivoli data warehouse version 1.3 planning and implementation sg246343Tivoli data warehouse version 1.3 planning and implementation sg246343
Tivoli data warehouse version 1.3 planning and implementation sg246343Banking at Ho Chi Minh city
 
Tivoli data warehouse 1.2 and business objects redp9116
Tivoli data warehouse 1.2 and business objects redp9116Tivoli data warehouse 1.2 and business objects redp9116
Tivoli data warehouse 1.2 and business objects redp9116Banking at Ho Chi Minh city
 
Tape automation with ibm e server xseries servers redp0415
Tape automation with ibm e server xseries servers redp0415Tape automation with ibm e server xseries servers redp0415
Tape automation with ibm e server xseries servers redp0415Banking at Ho Chi Minh city
 
Tivoli storage productivity center v4.2 release guide sg247894
Tivoli storage productivity center v4.2 release guide sg247894Tivoli storage productivity center v4.2 release guide sg247894
Tivoli storage productivity center v4.2 release guide sg247894Banking at Ho Chi Minh city
 
Synchronizing data with ibm tivoli directory integrator 6.1 redp4317
Synchronizing data with ibm tivoli directory integrator 6.1 redp4317Synchronizing data with ibm tivoli directory integrator 6.1 redp4317
Synchronizing data with ibm tivoli directory integrator 6.1 redp4317Banking at Ho Chi Minh city
 
Storage migration and consolidation with ibm total storage products redp3888
Storage migration and consolidation with ibm total storage products redp3888Storage migration and consolidation with ibm total storage products redp3888
Storage migration and consolidation with ibm total storage products redp3888Banking at Ho Chi Minh city
 

Mais de Banking at Ho Chi Minh city (20)

Postgresql v15.1
Postgresql v15.1Postgresql v15.1
Postgresql v15.1
 
Postgresql v14.6 Document Guide
Postgresql v14.6 Document GuidePostgresql v14.6 Document Guide
Postgresql v14.6 Document Guide
 
IBM MobileFirst Platform v7.0 Pot Intro v0.1
IBM MobileFirst Platform v7.0 Pot Intro v0.1IBM MobileFirst Platform v7.0 Pot Intro v0.1
IBM MobileFirst Platform v7.0 Pot Intro v0.1
 
IBM MobileFirst Platform v7 Tech Overview
IBM MobileFirst Platform v7 Tech OverviewIBM MobileFirst Platform v7 Tech Overview
IBM MobileFirst Platform v7 Tech Overview
 
IBM MobileFirst Foundation Version Flyer v1.0
IBM MobileFirst Foundation Version Flyer v1.0IBM MobileFirst Foundation Version Flyer v1.0
IBM MobileFirst Foundation Version Flyer v1.0
 
IBM MobileFirst Platform v7.0 POT Offers Lab v1.0
IBM MobileFirst Platform v7.0 POT Offers Lab v1.0IBM MobileFirst Platform v7.0 POT Offers Lab v1.0
IBM MobileFirst Platform v7.0 POT Offers Lab v1.0
 
IBM MobileFirst Platform v7.0 pot intro v0.1
IBM MobileFirst Platform v7.0 pot intro v0.1IBM MobileFirst Platform v7.0 pot intro v0.1
IBM MobileFirst Platform v7.0 pot intro v0.1
 
IBM MobileFirst Platform v7.0 POT App Mgmt Lab v1.1
IBM MobileFirst Platform  v7.0 POT App Mgmt Lab v1.1IBM MobileFirst Platform  v7.0 POT App Mgmt Lab v1.1
IBM MobileFirst Platform v7.0 POT App Mgmt Lab v1.1
 
IBM MobileFirst Platform v7.0 POT Analytics v1.1
IBM MobileFirst Platform v7.0 POT Analytics v1.1IBM MobileFirst Platform v7.0 POT Analytics v1.1
IBM MobileFirst Platform v7.0 POT Analytics v1.1
 
IBM MobileFirst Platform Pot Sentiment Analysis v3
IBM MobileFirst Platform Pot Sentiment Analysis v3IBM MobileFirst Platform Pot Sentiment Analysis v3
IBM MobileFirst Platform Pot Sentiment Analysis v3
 
IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1
IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1
IBM MobileFirst Platform 7.0 POT InApp Feedback V0.1
 
Tme 10 cookbook for aix systems management and networking sg244867
Tme 10 cookbook for aix systems management and networking sg244867Tme 10 cookbook for aix systems management and networking sg244867
Tme 10 cookbook for aix systems management and networking sg244867
 
Tivoli firewall magic redp0227
Tivoli firewall magic redp0227Tivoli firewall magic redp0227
Tivoli firewall magic redp0227
 
Tivoli data warehouse version 1.3 planning and implementation sg246343
Tivoli data warehouse version 1.3 planning and implementation sg246343Tivoli data warehouse version 1.3 planning and implementation sg246343
Tivoli data warehouse version 1.3 planning and implementation sg246343
 
Tivoli data warehouse 1.2 and business objects redp9116
Tivoli data warehouse 1.2 and business objects redp9116Tivoli data warehouse 1.2 and business objects redp9116
Tivoli data warehouse 1.2 and business objects redp9116
 
Tec implementation examples sg245216
Tec implementation examples sg245216Tec implementation examples sg245216
Tec implementation examples sg245216
 
Tape automation with ibm e server xseries servers redp0415
Tape automation with ibm e server xseries servers redp0415Tape automation with ibm e server xseries servers redp0415
Tape automation with ibm e server xseries servers redp0415
 
Tivoli storage productivity center v4.2 release guide sg247894
Tivoli storage productivity center v4.2 release guide sg247894Tivoli storage productivity center v4.2 release guide sg247894
Tivoli storage productivity center v4.2 release guide sg247894
 
Synchronizing data with ibm tivoli directory integrator 6.1 redp4317
Synchronizing data with ibm tivoli directory integrator 6.1 redp4317Synchronizing data with ibm tivoli directory integrator 6.1 redp4317
Synchronizing data with ibm tivoli directory integrator 6.1 redp4317
 
Storage migration and consolidation with ibm total storage products redp3888
Storage migration and consolidation with ibm total storage products redp3888Storage migration and consolidation with ibm total storage products redp3888
Storage migration and consolidation with ibm total storage products redp3888
 

Último

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dashnarutouzumaki53779
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 

Último (20)

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dash
 
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate AgentsRyan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
Ryan Mahoney - Will Artificial Intelligence Replace Real Estate Agents
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 

Implementing tws extended agent for tivoli storage manager sg246030

  • 1. Implementing TWS Extended agent for Tivoli Storage Manager Insider’s guide to writing a TWS Extended agent Ready-to-use solution for TSM and TWS integration TSM Extended agent code included Vasfi Gucer Henry Daboub Warren Gill Denise Kikumoto Tina Lamacchia ibm.com/redbooks
  • 2.
  • 3. SG24-6030-00 International Technical Support Organization Implementing TWS Extended agent for Tivoli Storage Manager March 2001
  • 4. Take Note! Before using this information and the product it supports, be sure to read the general information in Appendix C, “Special notices” on page 89. First Edition (March 2001) This edition applies to Tivoli Workload Scheduler 7.0 and Tivoli Storage Manager 4.1 Comments may be addressed to: IBM Corporation, International Technical Support Organization Dept. JN9B Building 003 Internal Zip 2834 11400 Burnet Road Austin, Texas 78758-3493 When you send information to IBM, you grant IBM a non-exclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you. © Copyright International Business Machines Corporation 2001. All rights reserved. Note to U.S Government Users – Documentation related to restricted rights – Use, duplication or disclosure is subject to restrictions set forth in GSA ADP Schedule Contract with IBM Corp.
  • 5. Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v Tables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .ix The team that wrote this redbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix Comments welcome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x Chapter 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 1.1 TWS overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 1.1.1 Software configurations used for this redbook . . . . . . . . . . . . . . .2 1.1.2 TWS concepts and terminology . . . . . . . . . . . . . . . . . . . . . . . . . .2 1.1.3 TWS architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 1.1.4 Extended agents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4 1.2 TSM overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7 1.2.1 What are the benefits of a TSM Extended agent for TWS? . . . . . .9 1.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Chapter 2. Extended agent functions . . . .. . . . . .. . . . . . . . . . . . . . . . 13 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . .. . . . . .. . . . . . . . . . . . . . . . 13 2.2 Workstation definition . . . . . . . . . . . . . . .. . . . . .. . . . . . . . . . . . . . . . 13 2.3 Method options file . . . . . . . . . . . . . . . . .. . . . . .. . . . . . . . . . . . . . . . 14 2.4 Access method interface . . . . . . . . . . . .. . . . . .. . . . . . . . . . . . . . . . 15 2.4.1 Method command line syntax . . . . .. . . . . .. . . . . . . . . . . . . . . . 15 2.4.2 Task options . . . . . . . . . . . . . . . . . .. . . . . .. . . . . . . . . . . . . . . . 16 2.4.3 Example . . . . . . . . . . . . . . . . . . . . .. . . . . .. . . . . . . . . . . . . . . . 18 2.5 Method response messages . . . . . . . . . .. . . . . .. . . . . . . . . . . . . . . . 20 2.6 Execution and troubleshooting . . . . . . . .. . . . . .. . . . . . . . . . . . . . . . 21 2.6.1 Executing the method . . . . . . . . . . .. . . . . .. . . . . . . . . . . . . . . . 21 2.6.2 Killing a job. . . . . . . . . . . . . . . . . . .. . . . . .. . . . . . . . . . . . . . . . 21 2.6.3 Method troubleshooting . . . . . . . . .. . . . . .. . . . . . . . . . . . . . . . 21 2.7 Summary . . . . . . . . . . . . . . . . . . . . . . . .. . . . . .. . . . . . . . . . . . . . . . 22 Chapter 3. Case study - TSM Extended agent . . . . . . . . . . . . . . . . . . . 23 3.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Chapter 4. Sample scenarios . . . . . . . . . . .. . . . . .. . . . .. . . . . .. . . . . 43 4.1 Description of the scenarios . . . . . . . . . .. . . . . .. . . . .. . . . . .. . . . . 43 4.1.1 Database backup . . . . . . . . . . . . . .. . . . . .. . . . .. . . . . .. . . . . 43 4.1.2 Backup device configuration . . . . . .. . . . . .. . . . .. . . . . .. . . . . 63 4.1.3 Backup volume history . . . . . . . . . .. . . . . .. . . . .. . . . . .. . . . . 64 4.1.4 Clean volume history . . . . . . . . . . .. . . . . .. . . . .. . . . . .. . . . . 65 4.1.5 Expiration process . . . . . . . . . . . . .. . . . . .. . . . .. . . . . .. . . . . 66 4.1.6 Reclamation process . . . . . . . . . . .. . . . . .. . . . .. . . . . .. . . . . 67 iii
  • 6. 4.1.7 Migration process . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 4.1.8 Restore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 4.2 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 Appendix A. TSW Extended agent for TSM source code. . . . . . . . . . . . 71 Appendix B. Using the additional material . . . . . . . . ....... ...... .. 87 B.1 Locating the additional material on the Internet . . . . . ....... ...... .. 87 B.2 Using the Web material. . . . . . . . . . . . . . . . . . . . . . . . ....... ...... .. 87 B.2.1 How to use the Web material . . . . . . . . . . . . . . . ....... ...... .. 87 Appendix C. Special notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Appendix D. Related publications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 D.1 IBM Redbooks collections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 D.2 Other resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 D.3 Referenced Web sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 How to get IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 IBM Redbooks fax order form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 Abbreviations and acronyms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 IBM Redbooks review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 iv Implementing TWS Extended agent for Tivoli Storage Manager
  • 7. Figures 1. Extended agent network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Extended agent processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3. Extended agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 4. Requesting a backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 5. Verifying that a backup was unsuccessful . . . . . . . . . . . . . . . . . . . . . . . . . 25 6. Backing up a storage pool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 7. Reclamation in the tape device . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 8. Migration process. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 9. Device configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 10. Maestro (TWS) Main Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 11. Maestro (TWS) Composer window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 12. List of jobs scheduled on your server . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 13. Changing job definitions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 14. Maestro (TWS) Console Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 15. Jobs scheduled on TWS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 16. Right-click to see the status of the job . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 17. Status of the job . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 18. Maestro (TWS) Main Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 19. Select Jobs to create a new job . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 20. Select the CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 21. New Job window for database backup . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 22. Job definition window for Database Backup . . . . . . . . . . . . . . . . . . . . . . . 47 23. List of jobs, including BACKUPDB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 24. Selecting Schedules to add a new schedule . . . . . . . . . . . . . . . . . . . . . . . 48 25. Creating a new schedule for database backup . . . . . . . . . . . . . . . . . . . . . 49 26. Defining a new schedule for database backup . . . . . . . . . . . . . . . . . . . . . 50 27. New schedule - backup db. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 28. On/Except window to definite the new schedule . . . . . . . . . . . . . . . . . . . . 51 29. Options to define a new schedule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 30. Follows Sched/Job window for database backup . . . . . . . . . . . . . . . . . . . 53 31. Opens Files window for database backup . . . . . . . . . . . . . . . . . . . . . . . . . 54 32. Needs resources window for database backup . . . . . . . . . . . . . . . . . . . . . 55 33. Jobs window for database backup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 34. Adding jobs to the Current Jobs list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 35. New schedule on the List of Schedules . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 36. Selecting Conman from the Maestro (TWS) Main Window . . . . . . . . . . . . 58 37. BACKUPDB schedule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 38. Standard output for database backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 39. Checking the status of a job. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 40. Stdlist for BACKUPDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 v
  • 8. 41. Job Definition window for storage pool backup . . . . . . . . . . . . . . . . . . . . . 62 42. Job Definition window for backup device configuration . . . . . . . . . . . . . . . 64 43. Job Definition window for backup volume history . . . . . . . . . . . . . . . . . . . 65 44. Job Definition window for clean volume history . . . . . . . . . . . . . . . . . . . . . 66 45. Job Definition window for the expiration process. . . . . . . . . . . . . . . . . . . . 67 46. Job Definition window for the reclamation process . . . . . . . . . . . . . . . . . . 68 47. Job Definition window for the migration process . . . . . . . . . . . . . . . . . . . . 69 48. Job Definition window for restore. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 vi Implementing TWS Extended agent for Tivoli Storage Manager
  • 9. Tables 1. Task types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2. Task options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 © Copyright IBM Corp. 2001 vii
  • 10. viii Implementing TWS Extended agent for Tivoli Storage Manager
  • 11. Preface Tivoli Workload Scheduler (TWS) is Tivoli’s strategic, multiplatform distributed scheduling product, providing high-volume, complex scheduling capability. Although TWS provides native support for many platforms and applications, it is possible to extend its robust scheduling capabilities to cover additional platforms and applications. Writing an Extended agent accomplishes this. This redbook will show you how to write a TWS Extended agent. The Extended agent allows you to schedule on platforms and applications for which TWS has no native agent. Using the Extended agent, you can integrate Tivoli Storage Manager (TSM) with TWS. TWS’s scheduling facility allows you to assign dependencies among TSM-scheduled tasks or to assign limits or priorities. By extending TWS to schedule these TSM tasks, you can take advantage of its advanced scheduling capabilities. This redbook will be essential for those who will write a TWS Extended agent or who will use TWS to schedule TSM functions. The team that wrote this redbook This redbook was produced by a team of specialists from around the world working at the International Technical Support Organization (ITSO), Austin Center. Vasfi Gucer is a Project Leader at the ITSO, Austin Center. He worked with IBM Turkey for 10 years and has been with the ITSO since January 1999. He has more than eight years of experience in systems management, networking hardware, and distributed platform software. He has worked on various Tivoli customer projects as a systems architect in Turkey and the U.S. Vasfi is also a Certified Tivoli Consultant. Henry Daboub is currently a member of the Tivoli Customer Support Global Response Team (GRT). The GRT provides on-site support to Tivoli customers with an emphasis on large environments. Henry has more than 12 years of experience in software development and support, and has supported IBM workload management products since 1997. Warren Gill is the Product Marketing Manager for TWS and Tivoli Operations Planning and Control. He has been a courseware designer and trainer for TWS and its predecessor Maestro, as well as a customer support engineer. © Copyright IBM Corp. 2001 ix
  • 12. Warren has been with Tivoli Systems since December 1997, when Tivoli acquired Unison Software. He has been using TWS since 1990. Denise Kikumoto is an IT specialist working for IBM Brazil since May 1997. She is responsible for AIX server and Lotus Notes administration. She also has extensive experience with TSM. She holds a degree in systems analysis. Tina Lamacchia has been in the IT realm for 18 years. Her career started with programming, and then administrating hundreds of UNIX systems. She has been with Tivoli Systems for more than three years. She has worked with TWS for two years and managed a TWS support team. Prior to joining Tivoli Systems, she was a TWS customer for three years and deployed the product set (including SAP Extended agent) in an Enterprise Systems Management (ESM) environment. Currently she is working in the GRT to assist ESM customers with various deployments in TWS and Tivoli Management Environment (TME). Thanks to the following people for their invaluable contributions to this project: Tivoli Systems, International Technical Support Organization, Austin Center Sergio Juri, Richard Harrison, Cesare Pagano IBM, International Technical Support Organization, Austin Center Leah Nelson Comments welcome Your comments are important to us! We want our redbooks to be as helpful as possible. Please send us your comments about this or other redbooks in one of the following ways: • Fax the evaluation form found in “IBM Redbooks review” on page 103 to the fax number shown on the form. • Use the online evaluation form found at ibm.com/redbooks • Send your comments in an Internet note to redbook@us.ibm.com x Implementing TWS Extended agent for Tivoli Storage Manager
  • 13. Chapter 1. Introduction This redbook is designed to illustrate the implementation of a Tivoli Workload Scheduler (TWS) Extended agent. The implementation the redbook team designed facilitates a communication between TWS V7.0and Tivoli Storage Manager (TSM) V4.1 to initiate regularly scheduled tasks on the TSM server. TSM’s server-prompted scheduling facility allows us to initiate client backups on machines defined as TSM clients in server-prompted scheduling mode. 1.1 TWS overview TWS is a multiplatform distributed scheduling system that provides high-volume, complex scheduling capability. A powerful scheduling language allows for precise coding of job streams with dependencies on other jobs, files, virtual resources, operator prompts, and jobs in other scheduling environments. A Java-based graphical user interface (GUI) known as the Job Scheduling Console (JSC) provides the user with the option of a dialog-based graphical interface. JSC allows a user: to create/modify scheduling objects, to create an execution plan for a batch workload, and to monitor/manage the plan when it is executing. The more experienced user can use a command line interface (CLI) for monitoring, scheduling, or troubleshooting. An application programming interface (API) allows TWS to be integrated with any application with a scheduling facility of its own. This redbook explores that interface. Chapter 5 of the Tivoli Workload Scheduler 7.0 Reference Guide, GC32-0424 provides an overview of the TWS Extended agent API. There are two basic aspects to job scheduling in TWS: the database and the plan. The database contains all the definitions for scheduling objects (for example, jobs, job streams, resources, and workstations). It also holds statistics about job and job stream execution, as well as information on the user ID that created an object and when an object was last modified. The plan contains all job scheduling activity planned for a one-day period. In TWS the plan is created every 24 hours and consists of all the jobs, job streams, dependencies, and other scheduling objects referenced in the upcoming day. All job streams for which you have created a run cycle are automatically scheduled and included in the plan. At the end of the day, the jobs and job streams not successfully executed can be rolled over into the next day’s plan. © Copyright IBM Corp. 2001 1
  • 14. 1.1.1 Software configurations used for this redbook An IBM RS/6000 43P workstation running AIX V4.3.3.0 was used in the development of this redbook. The following software was loaded onto this system: • Tivoli Workload Scheduler V7.0 • Tivoli Management Framework V3.7 • Tivoli Job Scheduling Services V1.1 • Tivoli TWS Connector V7.0 • Tivoli Storage Manager V4.1 for AIX 1.1.2 TWS concepts and terminology TWS uses these important concepts: • Job streams and calendars The job streams created using the JSC are central to TWS’s ability to manage batch job execution. Each job stream is scheduled to run on a specific set of dates and times, and consists of a list of jobs that execute as a unit (such as the weekly backup application), along with times, priorities, and other dependencies that determine the exact order of execution. Job streams are dated using actual dates, days of the week, or calendars. A calendar is a set of specific dates. You can create as many calendars as required to meet your scheduling needs. For example, you can define a calendar named PAYDAYS containing a list of pay dates, a calendar named MONTHEND containing a list of each last business day of the month for the current year, and a calendar named HOLIDAYS containing a list of your company’s holidays. At the start of each processing day, TWS automatically selects all the job streams that run on that day, and carries forward uncompleted job streams from the previous day. • Workstations A workstation is usually an individual computer on which jobs and job streams are executed. A workstation definition is required for every computer that executes jobs in the TWS network. Workstation definitions primarily refer to physical workstations. However, in the case of Extended agents and network agents, the workstations are logical definitions that must be hosted by a physical TWS workstation. 2 Implementing TWS Extended agent for Tivoli Storage Manager
  • 15. There are several types of workstations in a TWS network: • Master Domain Manager The Domain Manager in the topmost domain of a TWS network. It contains the centralized database files used to document scheduling objects. It creates the production plan at the start of each day, and performs all logging and reporting for the network. • Domain Manager A Domain Manager acts as a repeater, which allows TWS to scale to large numbers of machines. The Domain Manager forwards messages between the Master Domain Manager and the agents. • Backup Master A Fault-tolerant Agent (FTA) capable of temporarily assuming the responsibilities of its Domain Manager in a failover situation. This is enabled by marking the workstation as Full Status and Resolve Dependencies. • Fault-tolerant Agent A workstation capable of resolving local dependencies and launching its jobs in the absence of a Domain Manager. The FTA is initialized at the beginning of the production day with all of the scheduling objects needed to perform the assigned workload. • Standard agent A workstation that launches jobs only under the direction of its Domain Manager. Each job launch on the standard agent is directed in real time by the Domain Manager or Master. • Extended agent A logical workstation definition that enables you to launch and control jobs on other systems and applications, such as PeopleSoft, Oracle Applications, SAP R/3, and MVS JES2 and JES3. Users can also write Extended agents, as presented in this redbook. • Network agent A logical workstation definition for creating dependencies between jobs and job streams in separate TWS networks. 1.1.3 TWS architecture The Master Domain Manager contains the centralized database files used to store scheduling objects. It creates the production plan at the start of each day, distributes the plan to the FTAs and Domain Managers in the Master Domain, and logs all transactions on the TWS network. Chapter 1. Introduction 3
  • 16. All communications to agents are routed through the Domain Manager, which is the management hub in a domain. The network can be managed by a mix of agents. FTAs are capable of resolving local dependencies and launching jobs should a network interruption cause them to lose communication with their Domain Managers. They can do this because each one is given a set of scheduling instructions at the beginning of every processing day. Version 7.0 introduced a new Java GUI: the Job Scheduling Console (JSC). The JSC provides a common interface to both TWS and Operations, Planning and Control (OPC). 1.1.4 Extended agents TWS Extended agents are programs that allow TWS to manipulate and to get information about objects in other scheduling environments. Extended agents use open scheduling APIs and protocols, and they provide an effective mechanism for extending TWS’s scheduling capabilities to foreign platforms and applications. Extended agents also allow segregation of applications at the workstation level by providing an alternative method other than jobmanrc process. This allows some applications to be treated differently using an alternative job scheduling method. The connection between TWS and an Extended agent is shown in Figure 1. The Extended agent is installed on one of the TWS hosts. TWS accepts information from the Extended agent. The interface between TWS and an Extended agent is called the access method. The access method is a shell script or program which resides in ~TWSHOME/methods directory. . Figure 1. Extended agent network 4 Implementing TWS Extended agent for Tivoli Storage Manager
  • 17. Extended agent processing is explained in Figure 2. The sequence of operations is as follows: Note This explanation does not consider network communication issues. It is accepted that the Extended agent resides on a TWS server. If the Extended agent resides on an FTA, the sequence of operations for communication with the Extended agent will be the same but there will be additional processes for communication between the TWS Master and the FTA. 1. Batchman process on the FTA talks to the jobman (jobman.exe on an NT system), which is owned by the root user ID. 2. Jobman invokes JOBMAN (jobmon.exe on an NT system) process in the context of the TWS user (maestro, for example). 3. JOBMAN talks to the access method. 4. The access method invokes a Remote Function Call (RFC). 5. The access method consults with the <method.opts> file. 6. The access method talks to the system or the application’s job. 7. The access method and the job communicate with each other. 8. The method passes the information back to the TWS host through JOBMAN. Figure 2. Extended agent processing Chapter 1. Introduction 5
  • 18. The JOBMAN process launches the access method script to perform one of these tasks: • Launch a job • Manage a job • Check for the existence of a file to satisfy an OPENS dependency • Get the status of an external job The syntax of the method execution is as follows: methodname -t task options -- taskstring where: task: Is one of the following: • Launch a job (LJ) • Manage a previously launched job (MJ) • Check availability of a file – OPENS dependency (CF) • Get the status of an external job (GS) options: Are the list of job properties. taskstring: Is the string to execute from the job definition. The following are the options (related with the job’s properties) that should be passed to the access method: • Workstation/Host/Master • Workstation’s node definition • Workstation’s port definition • The current production run number • The job’s run number • The job’s schedule name • The date of the schedule (in two formats) • The user ID (logon) for the job • The path to the output (stdlist) file for the job • The job ID • The job number • The string from the SCRIPTNAME or DOCOMMAND entry in the job definition 6 Implementing TWS Extended agent for Tivoli Storage Manager
  • 19. An example method invocation is as follows, where job TEST is executed on the Extended agent workstation itso6 using the user ID itso and method name wgetmethod: wgetmethod -t LJ -c ITSO6,ITSO7,ITSO7 -n ITSO6 -p 31111 -r 143,143 -s MACDSH91 -d 20000410,955381986 -l itso -o /opt/maestro/stdlist/2000.04.10/O13676.1053 -j TEST,13676 -- /home/itso//batchjobs/killer The current Extended agents TWS provides are: • UNIX Remote Shell • UNIX Local • MVS (JES,OPC, CA7) • SAP R/3 Batch • PeopleSoft • Oracle Applications Note In addition to TWS-provided Extended agents, you can always write your own Extended agents for platforms or applications thatare not TWS supported using the open API that is documented in the Tivoli Workload Scheduler 7.0 Reference Guide, GC32-0424. 1.2 TSM overview TSM is an end-to-end, scalable storage management solution spanning palm tops to mainframes on more than 35 platforms. Its features include: • Centralized storage management • Storage Area Network (SAN) features, such as LAN-free backup and tape sharing • Automated network incremental and subfile backup, archive, and retrieval • Fast recovery time • Space management file migration Chapter 1. Introduction 7
  • 20. • High speed policy-based disaster recovery • Data protection offered for most popular groupware, e-mail, databases, and applications TSM is the core product of the Tivoli Storage Management product set. It provides a solution for distributed data and storage management in an enterprise network environment. It is the next generation of the product originally released by IBM as ADSTAR Distributed Storage Manager (ADSM). The base functions TSM and its complementary products provide are: • Data protection, including: - Operational backup and restore of data: The backup process creates a copy of the data protect against the operational loss or destruction of file or application data. The customer defines how often to back up (frequency) and how many numbers of copies (versions) to hold. The restore process places the backup copy of the data into a customer-designated system or workstation. - Disaster recovery: All activities to organize, manage, and automate the recovery process from a major loss of IT infrastructure and data across the enterprise. This includes processes to move data offsite into a secure vault location, to rebuilt IT infrastructure, and to reload data successfully in an acceptable time frame. • Storage resource management, including: - Vital record retention, archive, and retrieval: The archive process creates a copy of a file or a set of files representing an endpoint of a process for long-term storage. Files can remain on the local storage media or can be deleted. The customer controls how long (retention period) an archive copy is to be retained. The retrieval process locates the copies within the archival storage and places them into a costumer designated system or workstation. - Hierarchical space management: This process provides the automatic and transparent movement of operational data from the user system disk space to a central storage repository. If the user accesses this data, it is dynamically and transparently restored to the client storage. 8 Implementing TWS Extended agent for Tivoli Storage Manager
  • 21. 1.2.1 What are the benefits of a TSM Extended agent for TWS? TSM administrators must perform several types of operations regularly each day. TSM contains a built-in scheduling facility, which provides a simple mechanism to automate routine tasks. This scheduling facility does not provide the ability to assign dependencies among scheduled tasks or to assign limits or priorities. By extending TWS to schedule these tasks, you can take advantage of its advanced scheduling capabilities. The following common TSM tasks were implemented for this example: • Database backup (BACKUP DB) • Volume history backup (BACKUP VOLHISTORY) • Device configuration backup ( BACKUP DEVCONFIG) • Delete volume history ( DELETE VOLHISTORY) • Inventory expiration ( EXPIRE INVENTORY) • Client backup All TSM tasks executed by the TSM Extended agent ( tsmxagent), use the TSM Administrative Client Interface ( dsmadmc). The user ID used to log in to the dsmadmc interface is fetched from the tsmAdmin variable in the tsmxagent.opts file in the TWS methods directory. The password is retrieved from the TWS parameter object named TSMPASS. Client backups are performed as follows: • A schedule is defined to run a backup immediately (DEFINE SCHEDULE). • The schedule is associated with the client specified (DEFINE ASSOCIATION). • The schedule is monitored until completion or timeout ( QUERY EVENT). • The schedule is deleted ( DELETE SCHEDULE). • The status is reported to TWS. As shown in Figure 3 on page 10, Extended agents are used to extend the job scheduling functions of TWS to other systems and applications. Chapter 1. Introduction 9
  • 22. Extended agent External Host system or application TWS network Figure 3. Extended agent An Extended agent is defined as a workstation that has a host and an access method. The host is any other workstation, except another Extended agent. The access method is a Tivoli-supplied or user-supplied script or program that the host executes whenever the Extended agent is referenced in the production plan. For example, to launch a job on an Extended agent, the host executes the access method, passing it job details as command line options. The access method communicates with the external system or application to launch the job and return the status of the job. Each Extended agent must have a logical workstation definition. This logical workstation must be hosted by a TWS physical workstation, either a Master, Domain Manager, or FTA workstation. The Extended agent workstation definition references the name of the access method and the host workstation. When jobs are launched on the Extended agent workstation, the access method is called and passes the job information to the external system. For an example of defining an Extended agent workstation, see the Tivoli Workload Scheduler 7.0 User’s Guide, GC32-0423. 1.3 Summary TWS is a multiplatform distributed scheduling program that provides high-volume, complex scheduling capability for many systems and applications. Master Domain Manager, Domain Manager, Backup Master, Fault-tolerant Agent and standard agent are various types of workstations in a TWS network. You can extend the number of platforms and applications TWS supports by writing TWS Extended agents which allow TWS to manipulate and to get information about objects in other scheduling environments. 10 Implementing TWS Extended agent for Tivoli Storage Manager
  • 23. TSM is a scalable storage management solution spanning palm tops to mainframes on more than 35 platforms. Centralized storage management, LAN-free backup and tape sharing, and automated network incremental and subfile backup, archive, and retrieval are some of the important functions that TSM provides. Chapter 1. Introduction 11
  • 24. 12 Implementing TWS Extended agent for Tivoli Storage Manager
  • 25. Chapter 2. Extended agent functions This chapter describes the functions of the Tivoli Workload Scheduler (TWS) Extended agent method, the access method interface and the communications protocols between jobs running within an access method. 2.1 Introduction The Extended agent is defined as a workstation that has a host and an access method. The host is any other TWS workstation, except another Extended agent. The access method is a Tivoli-supplied or user-supplied script or program that the host executes whenever the Extended agent is referenced in the production plan. For example, to launch a job on an Extended agent, the host executes the access method, passing it job details as command line options. The access method communicates with the external system or application to launch the job and return the status of the job. 2.2 Workstation definition Each Extended agent must have a logical workstation definition. This logical workstation must be hosted by a TWS physical workstation, either a Master, Domain Manager, or FTA workstation. The Extended agent workstation definition references the name of the access method and the host workstation. Workstation definitions are created using the command line interface, Composer, or Job Scheduling Console (JSC). When jobs are launched on the Extended agent workstation, the access method is called and passes the job information to the external system. Suppose, for the purpose of illustration, that you have a TWS network comprised of three workstations: a Master workstation (called Copernicus), a Fault-tolerant Agent (FTA) workstation (Kepler), and an Extended agent workstation (Galileo). The following is an example of the Extended agent workstation definition: CPUNAME galileo OS OTHER NODE focus TCPADDR 1609 FOR MAESTRO HOST kepler ACCESS nuncius © Copyright IBM Corp. 2001 13
  • 26. END In this case, Galileo is the name of the Extended agent workstation, focus is the node name, 1609 is the TCP address, Kepler is the host, and nuncius is the name of the access method. An executable file (script or program) named nuncius must reside in the /methods subdirectory of the TWS installation. For Extended agents only, the node and tcpaddr definitions are left to the method developer to define. In other words, depending on the nature of the access method, node might have different uses. 2.3 Method options file By default, when executing an Extended agent job, TWS tries to execute the method file as the logon defined for each job to be run by the method. When executing the method script to check for an OPENS dependency (using the check file [CF] task) TWS executes the method as root by default. You can change this behavior by using a method options file to specify special login information and other options for your access method. For example, you may wish to use the logon field of your agent’s job definitions to represent a logon to a foreign system that does not exist on the Extended agent’s host. TWS reads the file, if it exists, before executing a method. If the file is modified after TWS is started, the changes take effect when it is stopped and restarted. The file can contain TWS options and any other method information you wish to include. The options recognized by TWS are: LJuser=username CFuser=username where: LJuser=username: Specifies the login to use for the launch job (LJ) and manage job (MJ) tasks. The default is the login from the job definition. CFuser=username: Specifies the login to use for the CF task. The default is root for UNIX, and for Windows NT it is the user name of the account in which TWS was installed. 14 Implementing TWS Extended agent for Tivoli Storage Manager
  • 27. Note If the Extended agent’s host is a Windows NT computer, these users must be defined as TWS user objects. The options file must have the same path name as its access method, with an .opts file extension. For example, the Windows NT path name of an options file for a method named nuncius is WShomemethodsnuncius.opts. 2.4 Access method interface The interface between TWS and an access method consists of information passed to the method on the command line, and messages returned to TWS in stdout. 2.4.1 Method command line syntax The TWS host runs an access method using the following command line syntax: methodname -t task options -- taskstring where: methodname: Specifies the file name of the access method. In our example, this is nuncius. All access methods must be stored in the WShome/methods directory. -t task: Specifies the task to be performed, where task is one of the options listed in Table 1 on page 16: Chapter 2. Extended agent functions 15
  • 28. Table 1. Task types Task Description LJ Launches a job. The access method is called with this task option when TWS launches a job. TWS will expect the access method to continue running until the job it executes is complete. MJ Manages a previously launched job. Use this option to synchronize job(s) if a prior LJ task terminated unexpectedly. The MJ method is called for under only a few circumstances. For example, TWS or its batchman process terminates (an operator issues a Conman STOP command to the agent’s host) while an Extended agent job is running. When the TWS processing is restarted, it will execute the Extended agent’s access method for each job that was previously running, passing it the MJ task and the same arguments initially sent to the job. The access method should use the MJ task to determine the state of the previously running job and report that state back to TWS. CF Checks the availability of a file. Use this option to check file OPENS dependencies. Using the Galileo workstation example, if a schedule contained the dependency (OPENS GALILEO#/this/is/my/file) TWS would call the access method for Galileo and pass it the CF task and the path (/this/is/my/file). options: Specifies the options associated with the task. See Section 2.4.2, “Task options” on page 16 for more information. taskstring: A string of up to 255 characters associated with the task. See Section 2.4.2, “Task options” on page 16 for more information. 2.4.2 Task options The task options are listed in Table 2. An “x” means the option is valid for the task. Table 2. Task options Task Options Task string -t -c -n -p -r -s -d -l -o -j -q LJ x x x x x x x x x ljstring MJ x x x x x x x x x mjstring CF x x x x cfstring 16 Implementing TWS Extended agent for Tivoli Storage Manager
  • 29. -c xagent,host,master: Specifies the TWS names of the Extended agent, the host, and the Master Domain Manager, separated by commas. -n nodename: Specifies the node name of the computer associated with the Extended agent, if any. This is defined in the Extended agent’s workstation definition node field. -p portnumber: Specifies the TCP port number associated with the Extended agent, if any. This is defined in the Extended agent’s workstation definition TCP Address field. -r currentrun,specificrun: Specifies the current run number of TWS and the specific run number associated with the job, separated by a comma. The current and specific run numbers might be different if the job is carried forward from an earlier run. -s jstream: Specifies the name of the job’s job stream. -d scheddate,epoch: Specifies the schedule date (yymmdd) and the epoch equivalent, separated by a comma. -l user: Specifies the job’s user name. This is defined in the job definition Logon field. -o stdlist: Specifies the full path name of the job’s standard list file. Any output from the job must be written to this file. -j jobname,id: Specifies the job’s name and the unique identifier assigned by TWS, separated by a comma. The name is defined in the job definition Job Name field. -q qualifier: Specifies the qualifier to be used in a test command issued by the method against the file. -- ljstring: Used with the LJ task. The string from the script file or command field of the job definition. Chapter 2. Extended agent functions 17
  • 30. -- mjstring: Used with the MJ task. The information provided to TWS by the method in a %CJ response to an LJ task. Usually, this identifies the job that was launched. For example, a UNIX method can provide the process identification (PID) of the job it launched, which TWS sends as part of an MJ task. -- cfstring: Used with the CF task. For a file OPENS dependency, the string from the Opens Files field of the job stream definition. 2.4.3 Example Using our previous workstation definition and the options previously listed, here is an example of how your access method would be called from TWS. In this example, a job defined as tsmjob1 runs the command ADMIN VHBACKUP /opt/tsm/dat/fa20001020 in the job stream (schedule) DAILYBAK: /opt/maestro/methods/nuncius -t LJ -c GALILEO,KEPLER,COPERNICUS -n focus -p 1609 -r 109,109 -s DAILYBAK -d 20001207,976147200 -l root -o /opt/maestro/stdlist/2000.12.07/O9041.1414 -j TSMJOB1,9041-- ADMIN VHBACKUP /opt/tsm/dat/fa20001020 Let us examine the command structure from the example. /opt/maestro/methods/nuncius This is the directory to the access method script. -t LJ The task option LJ was sent, indicating that a job is being run. -c GALILEO,KEPLER,COPERNICUS This option shows that Galileo is the Extended agent’s name, Kepler is the agent’s host’s name, and Copernicus is the TWS Master’s name. -n focus Focus is the node name of the Extended agent. This name comes directly from the workstation definition for Galileo. 18 Implementing TWS Extended agent for Tivoli Storage Manager
  • 31. -p 1609 The number 1609 is the tcpaddr port definition from the workstation definition for Galileo. -r 109,109 The current run number (TWS production day) is 109, as is the job’s run number. If, for example this option was “-r 110,109”, it would signify that the job stream (schedule) from which this job is running has been carried forward from a previous day. -s DAILYBAK The job stream (schedule) name from which this job is running is DAILYBAK. -d 20001207,976147200 The current scheduling production run date is December 7, 2000. Remember that the scheduling production run date may be different than the actual calendar run date. -l root The job run by this method should log on to the system as root. This information comes from the job definition. -o /opt/maestro/stdlist/2000.12.07/O9041.1414 All output (stdout and stderr) is being redirected to the file /opt/maestro/stdlist/2000.12.07/O9041.1414 on the host workstation. -j TSMJOB1,9041 The name of the job being run is TSMJOB1, and its job number (as seen in the Conman SHOWJOBS command) is 9041. On UNIX systems only, 9041 is also the parent process ID for this job. -- ADMIN VHBACKUP /opt/tsm/dat/fa20001020 The rest of the arguments after a double-hyphen are directly from the SCRIPTNAME or DOCOMMAND entry in the TWS job definition. In this case, the application understands the command ADMIN VHBACKUP and processes the command appropriately. Typically the access method ignores any options after the double hyphen and passes them directly to the target application. This is, of course, up to the method’s author to determine. Chapter 2. Extended agent functions 19
  • 32. Upon execution of this job, its status would be shown in the Console Manager as: Est) (Est) CPU Schedule Job State Pr Start Elapse Dependencies GALILEO #DAILYBAK ******** SUCC 10 14:14 01:10 TSMJOB1 SUCC 10 14:14 01:10 #J9041 % 2.5 Method response messages Methods returns information to TWS in messages written to stdout. Each line starting with a percent sign (%) and ending with a new line is interpreted as a message. The messages have the following format: %CJ state [mjstring] %JS [cputime] %UT [errormessage] where: CJ: Changes the job state. state: The state to which the job is changed. All TWS job states are valid except hold and ready. mjstring: A string of up to 255 characters that TWS will include in any MJ task associated with the job. JS [cputime]: Indicates successful completion of a job and provides its elapsed run time in seconds. This message must be presented (usually with an echo statement) before the method ends in order for the job to be considered successful. UT [errormessage]: Indicates that the requested task is not supported by the method. Displays a string of up to 255 characters that TWS will include in its error message (stored in the TWS standard list file; typically this file is ~maestro/stdlist/yyyy.mm.dd/MAESTRO). You can use these messages within your access method to relay information to the TWS Console Manager. By changing the status of your job, operators can pay special attention to your jobs by filtering their console windows by job status. For example, you might have jobs toggle between wait and exec 20 Implementing TWS Extended agent for Tivoli Storage Manager
  • 33. states by issuing an echo %CJ WAIT or echo %CJ EXEC while the job connects to the application and executes its function. 2.6 Execution and troubleshooting The Extended agent’s access method is executed by TWS’s jobman process, much as a standard job is launched through jobmanrc. 2.6.1 Executing the method Before the method is launched, TWS establishes an execution environment for the method: • The LJuser parameter is read from the method options file to determine the user account with which to run the method. If the parameter is not present or the options file does not exist, the user account specified in the Logon field of the job’s definition is used. In addition, the following environment variables are set: - HOME: User’s home directory - LOGNAME: Login user’s name (from the job definition) - PATH: For UNIX, /bin:/usr/bin; for Windows, %SYSTEM%SYSTEM32 - TZ: Time zone 2.6.2 Killing a job While an access method is running an MJ or LJ task, it should trap a SIGTERM signal (signal 15). This is the signal sent to the job when an operator issues a kill command from the user interface. When a kill signal is caught, the method should attempt to stop or kill the job and exit without writing a %JS message. 2.6.3 Method troubleshooting If the method cannot be executed, its state is set to fail. All output messages from an access method, except those that start with a percent sign (%), are written to the job’s standard list (stdlist) file. For GS and CF tasks that are not associated with TWS jobs, messages are written to TWS’s standard list file. For information regarding a problem of any kind, check these files. For Extended agents, error, warning, and information messages are written to TWS’s stdlist file. Chapter 2. Extended agent functions 21
  • 34. • A successful job launch generates the following message: Launched job jobname for wkstation ,#J jobid for user username . • Failure to launch a job generates the following message: Error launching jobname for wkstation :errortext • Failure of a CF task generates the following message: Error invoking methodname for wkstation :errortext • Failure of an MJ task generates the following message: Error managing jobname for wkstation using methodname :errortext • When a method sends a message to Jobman that is not recognized, the following message is generated: Error:message invalid for jobname ,#j jobnumber for wkstation using methodname ."first 64 characters of the offending message " 2.7 Summary In this chapter we covered the functions of the TWS Extended agent method, the Access Method Interface and the communications protocols between jobs running within an access method. The main functions used in an Extended agent method are: • LJ: Launch job • MJ: Manage job • CF: Check file dependency The Extended agent’s access method is executed by the jobman process, much as a standard job is launched through jobmanrc. 22 Implementing TWS Extended agent for Tivoli Storage Manager
  • 35. Chapter 3. Case study - TSM Extended agent This chapter describes scripts that will be useful to Tivoli Workload Scheduler (TWS) and Tivoli Storage Manager (TSM) administrators. These scripts are about TSM processes such as backup, storage pools, migration, reclamation, volume history, and device configuration. Because, in practice, TSM administrators generally schedule these process, it makes sense to write a TSM Extended agent for TWS that incorporates these functions. Using the TSM Extended agent, administrators can schedule these TSM operations through TWS. First, here is some background information about these operations. The following sections should be especially useful if you are not familiar with TSM scheduling operations. • Backup database: Use this command to back up a TSM database to sequential access volumes (Figure 4 on page 24). To determine how much additional storage space a backup will require, use the QUERY DB command. This command displays the database pages (in megabytes) that have changed since the last backup. The syntax of the command is: backup db devclass=dbbackup type=full sctatch=yes wait=yes where: backupdb: Is the name of the devclass defined on the TSM server. type=full: Specifies that you can run the full backup on the TSM database. This parameter is optional. Possible options are: incremental, full and dbsnapshot. The default is incremental. scratch=yes: To take the device that is scratch. The default value is yes. This parameter is optional. If you put scratch=no, then it will specify that scratch volume cannot be used. wait: Specifies whether to wait for the server to complete processing this command in the foreground. The default is no. Possible options are: yes (the server processes the command in foreground), and no (the server processes the command in background). You can find more details about the syntax of the commands in the Tivoli Storage Manager for AIX Administrator’s Reference, GC35-0404. © Copyright IBM Corp. 2001 23
  • 36. Backup process Requests a backup TSM server Library User Figure 4. Requesting a backup If a backup completes unsuccessfully, you can verify and restart it. For example, in Figure 5 on page 25 the backup was unsuccessful for some files and restarted. 24 Implementing TWS Extended agent for Tivoli Storage Manager
  • 37. Check .NSF files Adminstration Server vasfi.nsf vasfi.nsf desinha.nsf desinha.nsf vasfi.nsf danes.nsf Backup danes.nsf mcelo.nsf mcelo.nsf mcelo.nsf luisv.nsf luisv.nsf Library Figure 5. Verifying that a backup was unsuccessful • Backup storage pool: Use this command to back up primary storage pool files to a copy storage pool. The operation is shown in Figure 6 on page 26. If a file already exists in the copy storage pool, the file is not backed up unless the copy is marked as damaged. However, a new copy is not created if the file in the primary storage pool is also marked as damaged. In a random-access storage pool, neither cached copies of migrated files nor damaged files are backed up. If migration for a storage pool starts during a storage pool backup, some files may be migrated before they are backed up. You may want to back up storage pools that are higher in the migration hierarchy before backing up storage pools that are lower. For example, when performing a storage pool backup to copy the contents of a storage pool offsite, if the process is not done according to the existing storage pool hierarchy, some files may Chapter 3. Case study - TSM Extended agent 25
  • 38. not be copied to the copy storage pool. This could be critical for disaster recovery purposes. When performing a storage pool backup on multiple storage pools, the primary storage pool should be completed before the backup process on the next storage pool. The syntax of the command is as follows: backup stgpool spacemgtpool copypool where: spacemgtpool: Is the primary backup that you want to back up. copypool: Is the copy storage pool defined on TSM server. Figure 6. Backing up a storage pool • Reclamation: Specifies when the server reclaims a volume, based on the percentage of reclaimable space on a volume (Figure 7 on page 27). Reclamation makes the fragmented space on volumes usable again by moving any remaining active files from one volume to another volume, thus making the original volume available for reuse. You can specify an integer from one to 100. The value 100 means that reclamation is not performed. If you change the value from the default of 100, specify a value of 50 percent or greater so that files stored on two volumes can be combined into a single output volume. To move data from the reclaim storage pool back to the original storage pool, use the storage pool hierarchy. Specify the original storage pool as the next storage pool for the reclaim storage pool. The syntax of the command is as follows: update stgpool copypool reclaim=50 26 Implementing TWS Extended agent for Tivoli Storage Manager
  • 39. where: reclaim: Is the percentage of the reclamation in copypool. Figure 7. Reclamation in the tape device • Migration: You can use a primary storage pool as the destination for backup files, archive files, or files migrated from client nodes. The following command is used for this purpose: define stgpool somepool dbbackup pooltype=primary access=readwrite maxsize=nolimt highmigh=90 lowmig=70 migprocess=1 collocate=no migcontinue=yes reusedelay=0 migdelay=0 where: somepool: Is the pool name defined on the TSM server. dbbackup: Is the device class name defined on the TSM server. pooltype: Specifies that you want to define a primary storage pool. The default value is primary. Chapter 3. Case study - TSM Extended agent 27
  • 40. access: Specifies how client nodes and server processes (such as migration and reclamation) can access files in the storage pool. The default value is readwrite, but you can also define as readonly and unavailable. maxsize: Specifies the maximum size for a physical file size that the server can store in the storage pool during a session with a client. The default value is nolimit. highmig: Specifies that the server starts migration for this storage pool when the amount of data in the pool reaches this percentage of the pool’s estimated capacity. You can specify an integer from zero to 100. The default value is 90. When the storage pool exceeds the high migration threshold, the server can start migration of files by node, to the next storage pool, as defined with the NEXTSTGPOOL parameter. You can specify highmig=100 to prevent migration for this storage pool. lowmig: Specifies that the server stops migration for this storage pool when the amount of data in the pool reaches this percentage of the pool’s estimated capacity. You can specify an integer from zero to 99. The default value is 70. When the storage pool reaches the low migration threshold, the server does not start migration of another node’s files. Because all file spaces that belong to a node are migrated together, the occupancy of the storage pool can fall below the value you specified for this parameter. You can set lowmig=0 to permit migration to empty the storage pool. migprocess: Specifies the number of processes the server uses for migrating files from this storage pool. You can specify an integer from one to 999. The default value is one. During the migration the server runs this number of processes in parallel to provide the potential for improved migration rates. migdelay: Specifies the minimum number of days a file must remain in a storage pool before the file becomes eligible for migration from the storage pool. The server counts the number of days from the day the file was stored in the storage pool or retrieved by a client, whichever is more recent. The default is zero, which means you do not want to delay migration. 28 Implementing TWS Extended agent for Tivoli Storage Manager
  • 41. migcontinue: Specifies whether you allow the server to migrate files that do not satisfy the migration delay time. The default value is yes. Because you can require that files remain in the storage pool for a minimum number of days, the server may migrate all eligible files to the next storage pool yet not meet the low migration threshold. This parameter allows you to specify whether the server is allowed to continue the migration process by migrating the files that do not satisfy the migration delay time. Figure 8 shows the migration process. Migration process Client Client TSM server Disk Disk Backup Library Figure 8. Migration process • Backup device configuration: Use this command to back up the following information in one or more files: - Device class definitions - Library definitions Chapter 3. Case study - TSM Extended agent 29
  • 42. - Drive definitions To restore the TSM database, the device configurations must be available. You can use the devconfig server option to specify one or more files in which to store device configuration information. TSM updates the files whenever a device class, library, or drive is defined, updated, or deleted (Figure 9). The syntax of the command is as follows: backup devconfig filenames=device where: device: Is the directory that it will back up the information about devconfig. Device class definitions Drive definitions Devices Library definitions Figure 9. Device configuration • Backup volume history: Use this command to back up sequential volume history information to one or more files. You can use volume history information when you reload the database and audit affected storage pool volumes. If you cannot start the server, you can use the volume history file to query the database about these volumes. The volume history includes information about the following types of volumes: - Database backup volumes - Database dump volumes - Export volumes 30 Implementing TWS Extended agent for Tivoli Storage Manager
  • 43. - The following sequential access storage pool volumes: • Volumes added to storage pools • Volumes reused through reclamation or move-data operations • Volumes removed by using the delete volume command or during reclamation of scratch volumes The syntax of the command is: backup volhistory filenames=volhist where: volhist: Is the name of the filename that will contain information about the volhistory backup. • Delete volume history: Use this command to delete volume history file records that are no longer needed (for example, records for obsolete database backup volumes). When you delete records for volumes that are not in storage pools (for example, database backup or export volumes), the volumes return to Source Manager, which acquires them as scratch volumes. Scratch volumes of device-type files are deleted. When you delete the records for storage pools volumes remain in the TSM database. When you delete records for recovery-plan file objects from a source server, the objects on the target server are marked for deletion. The syntax of the command is as follows: delete volhistory type=rpfile todate=11/31/00 where: type: Specifies the type of records, which also meet the date and their criteria, to delete from the volume history file. Rpfile specifies to delete only records that contain information about full and incremental database backup volumes and recovery plan file volumes. todate: Specifies the date to use to select sequential volume history information to be deleted. TSM deletes only those records with a date on or before the date you specify. For more details, you can see the Tivoli Storage Manager for AIX Administrator’s Reference , GC35-0404. Chapter 3. Case study - TSM Extended agent 31
  • 44. • Expire inventory : Use this command to manually start inventory expiration processing. This inventory expiration process removes the client backup and archive file copies from server storage based on the policy specified in the backup and archive copy groups of the management classes to which the files are bound. The inventory expiration process that runs during server initialization does not remove these virtual volumes. Only one expiration process is allowed at any time. If an expiration process is currently running you can not start another process. The syntax of the command is as follows: expire inventory quiet=no wait=no skipdirs=no duration=40 where: quiet: Specifies whether the server suppresses detailed messages about the policy changes during the expiration processing. This parameter is optional. The default value is no, which specifies that the server sends detailed informational messages. You can also put the value yes, which specifies that the server sends only summary messages. wait: Specifies whether to wait for the server to complete processing this command in the foreground. This parameter is optional. Possible values are no, which specifies that the server processes this command in the background, and yes, which specifies that the server processes this command in the foreground. skipdirs: Specifies whether the server skips directory type during the expiration processing. Possible values are: no, which specifies that the server will expire files and directories based upon the appropriate policy criteria, and yes, which specifies that the server will skip directory type objects during expiration processing even if the directories are eligible for expiration. duration: Specifies the maximum number of minutes for the expiration process to run. The process stops when the specified number of minutes have passed or when all eligible expired objects are deleted, whichever comes first. You can specify a number from one to 999,999 (optional). • Restore database : To restore a database or volume to its most current state, the log mode must have been set to roll-forward continuously from the time that the last backup series was created. 32 Implementing TWS Extended agent for Tivoli Storage Manager
  • 45. If the log mode is set to roll-forward after a point-in-time database restoration, a database backup starts when the server is brought up for the first time. This can cause loss of data: A tape can have current data on it, but because of the point-in-time restoration, it can be marked as scratch. When the server starts for the first time, TSM may use this tape to write the database backup, thus destroying the original data on this tape. You can restore a database if the following are true: - The log mode was set to roll-forward continuously from the time the last backup series was created. - An intact recovery log is available. - An intact volume history file is available. TSM requests volume mounts to load the most recent backup series and then uses the recovery log to update the databases to its most current state. If the volume history file is unavailable, you can use one or more dsmc restore db commands to restore the database to a specific point in time. For example, to load a full backup and one or more incremental backups, issue a dsmc restore db command for the full backup and an additional dsmc restore db command for each incremental backup. When you use multiple dsmc restore db commands, specify commit=no for each command except the last one. For the last command, specify commit=yes. The database remains in an inconsistent and unusable state until you issue a dsmc restore db command with a commit=yes. The syntax of the command is as follows: dsmc restore db devclass=device_class_name volumename=volume_name commit=no where: devclass: Specifies the name of the sequential access device class to use. The device class must be defined in a device configuration file. volumename: Specifies the backup volume to use to restore the database. Possible values are: volume_name: Specifies the names of the volumes. To specify multiple volumes, separate the names with commas without intervening spaces. file:file_name: Specifies the name of a file that contains a list of the volumes. Chapter 3. Case study - TSM Extended agent 33
  • 46. commit: Specifies whether this is the last restore command needed to restore the database. This parameter is optional. The default value is no (specifies that you will issue one or more additional dsmc restore db commands), but you can also define the value yes (specifies that this is the last restore command to restore the database). After you analyze all the scripts, you can also test the environment and commands in the TWS structure. Initially install the TWS software on your system. Decide on which system your Master will be (this is the system on which the TWS database resides, as well as the system on which all updates are received). Please follow the installation steps in the Tivoli Workload Scheduler 7.0 Planning and Installation Guide, GC32-0422. Once the software is installed correctly, make sure your display and path are setup as well. To access the TWS database, execute the gmaestro command (which should be located in the TWShome/bin directory). Make sure you are logged on with the user maestro (default TWS user), or the name of the maestro user you have chosen. Gmaestro contains the Composer screen and the Conman screen. Further details on their functionality is explained in the document. Figure 10 shows the Maestro Main Window the gmaestro command launched. Figure 10. Maestro (TWS) Main Window 34 Implementing TWS Extended agent for Tivoli Storage Manager
  • 47. You can choose the Database Manager (Composer), which will allow you to enter the CPU, CPU classes, domains, calendars, jobs, and users, or Console Manager (Conman), which displays information about schedules, jobs, CPUs, and parameters. Composer can be accessed from the Master only or wherever the mozart directory is accessible. We do not recommend that the mozart directory is mounted or mapped as the TWS database should not be accessible to all users. Composer reads the mozart directory and the corresponding file pertaining to your choice. At this point you can add, modify, copy, and delete data. Make sure you have the proper security access when performing such operations. Conman displays job status, allows for ad hoc submission, and allows you to display previous production days and their status. Again, all features may be performed if the proper access is given. When you click the Composer button, a window (Figure 11) will appear: Figure 11. Maestro (TWS) Composer window You can display, add, and modify information about CPU, CPU classes, domains, and users by clicking the corresponding button. If you choose the Jobs button, you may use the filter feature to list all jobs according to the chosen CPU or you can display all jobs in the TWS Chapter 3. Case study - TSM Extended agent 35
  • 48. database. Clicking the Jobs button, you will see a list of jobs, as seen in Figure 12 on page 36. Figure 12. List of jobs scheduled on your server You can execute modifications, additions, deletions, and/or replication (Save As choice) on an existing job. To do that, right-click the desired job, and select Modify. The following window (Figure 13 on page 37) will appear. Follow the instructions to make your changes or just display the job. 36 Implementing TWS Extended agent for Tivoli Storage Manager
  • 49. Figure 13. Changing job definitions As illustrated, adding a new job should be relatively easy. However, a few explanations are needed in order for you to take full advantage of TWS. With TSM and TWS, you can take advantage of several options to ensure your TSM jobs are successful. The Recovery Options, for instance can be used to ensure that a backup is successfully executed every time. By choosing the Continue option or Rerun option, the Recovery Job and/or Recovery Prompt can be used to ensure backups are always successful. You can key in the recovery job, which may be, for example, another set of tapes to back up to if the primary tapes are not available or a different directory/system if a file system full occurs. Whichever you chose, a backup should always be successful. Also, you can use the Recovery Prompt as a messaging vehicle to the operations staff on the proper execution of the recovery job. The Interactive option is for NT systems within your TWS environment. This option is used if the scheduled job requires manual intervention. In Conman (Console Manager), you can display various information as well as submit ad hoc jobs and schedules. The information is retrieved from the Symphony file located in the maestrohome directory. When you click this button, a window (Figure 14 on page 38) will appear: Chapter 3. Case study - TSM Extended agent 37
  • 50. Figure 14. Maestro (TWS) Console Manager By double-clicking the buttons, the corresponding information is displayed, as summarized here: • CPUs: Status on each TWS system is displayed. The information on its connectivity with the Master, the run number, and the node name are displayed. The exact information can be accessed from the command line interface through the command conman -v. • Domains: Displays the Master Domain, the associated Domain Manager, and its parent. • Schedules: Displays all schedules along with their status, priority, start times, and dependencies • Jobs: Displays all jobs along with their status, priority, start times, and dependencies. • Resources: Displays resources and their associated CPUs. Resources can be used when two or more jobs require the use of the same resource, for example a set of tapes (the tape is the resource). Once one job is finished utilizing the one set of tapes or a resource, TWS releases the resource and then next job commences. • Prompts: Displays the prompt’s description, and its associated CPU, schedule, and job. 38 Implementing TWS Extended agent for Tivoli Storage Manager
  • 51. • Files: Displays the files with their associated CPUs, schedules, and jobs. All of these features can be used to compliment any Tivoli product, especially TSM. Each feature will be discussed in more detail in Chapter 4, “Sample scenarios” on page 43. Figure 15 shows you the scheduled jobs. Figure 15. Jobs scheduled on TWS You can see the status of the scheduled job by right-clicking. This shows you whether the job was successful, or abended or failed. Also the screen can show you if the job and/or schedule is ready and when it will start, according to start time or dependency columns, which can include resources, files, or other jobs and/or schedules. If a job fails or abends, you can see the reason why it was unsuccessful by right-clicking on the job (Figure 16 on page 40). Chapter 3. Case study - TSM Extended agent 39
  • 52. Figure 16. Right-click to see the status of the job The Stdlist option allows you to read the log (located in the maestrohome/stdlist/MM.DD.YYYY directory) associated with that job. For further explanation on various other options, please refer to the Tivoli Workload Scheduler 7.0 User's Guide, GC32-0423. Figure 17 shows a sample stdlist output. Figure 17. Status of the job 40 Implementing TWS Extended agent for Tivoli Storage Manager
  • 53. The stdlist header contains the job name, and associated schedule and CPU names, as well as the login name and the script location. As also shown, it displays the process ID, and the date and time of the job execution. The body of the stdlist contains the steps executed for the job to became successful or unsuccessful. The information contained depends solely on its script and the information to standard out (stdout). You can also print this output. 3.1 Summary In this chapter we described the following TSM functions that can be scheduled with the TWS: • Backup database: To backup a TSM database to sequential access volumes. • Backup storage pool: To backup primary storage pool files to a copy storage pool. • Reclamation: To reclaim a volume, based on the percentage of reclaimable space on a volume. • Migration: To copy files to a library when a threshold is reached on the disk. • Backup device configuration: To backup the device class, library and drive definitions. • Backup volume history: To backup sequential volume history information to one or more files. • Expire inventory: To manually start inventory expiration processing. • Restore database: To restore a database or volume to its most current state. The information in this chapter will be especially useful if you are not familiar with TSM scheduling operations. Chapter 3. Case study - TSM Extended agent 41
  • 54. 42 Implementing TWS Extended agent for Tivoli Storage Manager
  • 55. Chapter 4. Sample scenarios This chapter will address several scenarios when utilizing Tivoli Workload Scheduler (TWS) with Tivoli Storage Manager (TSM) product sets. This chapter will demonstrate how to schedule TSM functions within TWS. Primarily we will create jobs and schedules in TWS to handle such functions. We will address dependency options and display jobs/schedules output. Note In these scenarios we used the legacy TWS user interface (Composer and Conman) instead of the new Job Scheduling Console (JSC), which was available with the TWS V7.0. The TWS Extended agent for the TSM code we introduce in this redbook is valid for TWS V7.0, and for TWS versions prior to 7.0, in which JSC is not supported. 4.1 Description of the scenarios The scenarios described involve information about backup databases, backup storage pools, migration, and various other typical scenarios. 4.1.1 Database backup Our first scenario is database backup. You can specify the type of backup that your company requires. This depends on the necessary data’s level of availability for recovery purposes, as well as addressing service level agreements (SLAs) between your company and third party vendors. We will start with scheduling a TSM function in TWS: 1. Execute the TWS interface and choose Composer from the main menu (Figure 18 on page 44). © Copyright IBM Corp. 2001 43
  • 56. . Figure 18. Maestro (TWS) Main Window 2. From the Scheduling Objects selections, choose Jobs (Figure 19 on page 45). 44 Implementing TWS Extended agent for Tivoli Storage Manager
  • 57. . Figure 19. Select Jobs to create a new job 3. From the Actions menu, choose New Job. 4. Select the CPU definition in which the new job will reside (Figure 20). In TWS, a CPU must be identified with the job or where the backup script resides. Figure 20. Select the CPU Chapter 4. Sample scenarios 45