[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[cgs-wg] Agenda for today's telephone conference



Hi all,


Proposed Agenda for today's conference.

1. Agenda bashing
2. Changes in the draft (Ellen)
3. Open questions:
    - separate class for sdtatistics?
    - additional types of managed properties
    - BatchJobGroup vs. work flow
    - properties of BatchService
    - other comments on the new draft
4. any other business


Cheers,

Peter


Ellen Stokes wrote:
> Folks,
> 
> Here's the materials for the cgs call Tues Dec 3 on job submission schema 
> - sorry for the lateness...
> 
> 
> 
> The changes:
> 1.  added the associations ExecutionCandidate and ExecutionTarget colored 
> hot pink in the visio - see the mof file for their descriptions
> 2.  added multiple pages to the visio which are the relevant CIM 2.7 
> schema pages from which the job submission was derived and references
> 3.  corrected spelling of association OwningBatchJobQueue to 
> OwningBatchQueue in the visio
> 4.  deleted the association QueueForwardsBatchToSAP - not needed
> 5.  association OSServicingQueue is now derived from HostedJobDestination
> 6.  corrected cardinality on JobDestination side of JobDesintation-Job 
> from * to 0..1
> 7.  add the attributes ScheduledPriority and WallTimeUsed colored hot pink 
> in the vision - see the mof file for their descriptions
> 
> 
> Questions and Observations:
> 1.  We probably need to look at separating out the statistics from 
> BatchJob and put in statistics derived class (in keeping with CIM 
> modeling)
> 2.  On BatchJob, do we need to include any of the following additional 
> types of managed properties?
>       a.  description of task to be executed:  script/command/program, 
> parameters, recovery options, managementof output
>       b.  userid of the user to impersonate for job execution
>       c.  failure/success condition on return code
>       d.   recovery options:  stop, re-run, etc
> 3.  introduce a SIMPLE concept of job stream or BatchJobGroup (order in 
> which to run a set of jobs)? - intent here is NOT to comprehenisvely model 
> work flow
> 4.  need to brainstorm on properties of BatchService
> 
> 
> Ellen
> 
> 
> 
> ------------------------------------------------------------------------
> 
> // ===================================================================
> // Title:       batch job, based on CIM 2.7 preliminary
> // Filename:    batch job.mof
> // Version:     
> // Release:      
> // Date:        13 October 2002
> // ===================================================================
> // Description: This file defines the classes to manage batch job
> //              submission.  It builds on the CIM 2.7 preliminary
> //              schema for jobs and processing.
> // ==================================================================
> // Change Log
> // 
> // ================================================================== 
> 
> #pragma locale ("en_US")
> 
> 
> // ===================================================================
> // BatchQueue 
> // ===================================================================
> [Experimental, Version ("2.7.0"), Description (
>     "Capabilities and management of a Batch Queue. A BatchQueue "
>     "holds BatchJobs - which are placed on the Queue by a Batch"
>     "Service. Jobs can move from Queue to Queue.") ]
> class CIM_BatchQueue : CIM_JobDestination {
> 
>     [Description (
>         "Indicates that Jobs on the Queue will be passed to an "
>         "Operating System. When FALSE, a Job will remain on the "
>         "Queue and will not be passed to an Operating System for
>         "execution.") ]
>     boolean QueueEnabled;
> 
>     [Description (
>         "When FALSE, no BatchService can place BatchJobs on the "
>         "BatchQueue. The ability of an individual BatchService "
>         "to place a Job on the Queue can be specified using the "
>         "QueueAcceptingFromService property in the "
>         "QueueForBatchService Service association.") ]
>     boolean QueueAccepting;
> 
>     [Description (
>         "The current number of Jobs on the Queue."),
>         Gauge ]
>     uint32 NumberOnQueue;
> 
>    [Description (
>         "Gives Queue-specific status information, beyond the "
>         "ManagedSystemElement.Status property. This may be used to "
>         "provide further qualification as to the status of the "
>         "Queue or to indicate a secondary condition (e.g. queue "
>         "full)."), 
>         ValueMap {"0", "1", "2", "3"}, 
>         Values {"Other", "Unknown", "No Additional Status", 
>             "QueueFull"} ]
>     uint16 QueueStatus;
> 
>     [Description (
>         "Provides a textual explanation for the status of the Queue. "
>         "The settings of both QueueStatus and the Status property "
>         "inherited from ManagedSystemElement may be described by "
>          "QueueStatusInfo. For example, if \"Stopping\" is the value "
>         "assigned to Status, then this property may contain an "
>         "explanation as to why the Queue is being stopped.") ]
>     string QueueStatusInfo;
> 
>     [Description (
>         "Specifies the priority that will be assigned to a new Job "
>         "being submitted to this Queue, if the Job does not "
>         "explicitly specify a priority. The range of valid priorities "
>         "and the interpretation of priorities may be determined from "
>         "the JobPriorityHigh and JobPriorityLow properties."), 
>         ModelCorrespondence {"CIM_BatchQueue.JobPriorityHigh", 
>             "CIM_BatchQueue.JobPriorityLow"} ]
>     uint32 DefaultJobPriority;
> 
>     [Description (
>         "Specifies the numeric value that is used to represent the "
>         "highest priority Jobs that are submitted to this Queue. The "
>         "range of numeric values for priority may be inversed, e.g. "
>         "a high priority job is represented by a low integer value. "
>         "This is indicated by JobPriorityLow being greater than "
>         "JobPriorityHigh. If both values (PriorityLow and Priority"
>         "High) are assigned to zero, then the Queue does not support "
>         "Job priorities."), 
>         ModelCorrespondence {"CIM_BatchQueue.JobPriorityLow", 
>             "CIM_Job.Priority"} ]
>     uint32 JobPriorityHigh;
> 
>     [Description (
>         "Specifies the numeric value that is used to represent the "
>         "lowest priority Jobs that are submitted to this Queue. The "
>         "range of numeric values for priority may be inversed, e.g. "
>         "a low priority job is represented by a high integer value. "
>         "This is indicated by JobPriorityLow being greater than "
>         "JobPriorityHigh. If both values (PriorityLow and "
>         "PriorityHigh) are assigned to zero, then the Queue does not "
>         "support Job priorities."), 
>         ModelCorrespondence {"CIM_BatchQueue.JobPriorityHigh", 
>             "CIM_Job.Priority"} ]
>     uint32 JobPriorityLow;
> 
>     [Description (
>         "Specifies the maximum number of seconds that a job queued "
>         "to this queue must complete its execution in. "), 
>         Units("Seconds") ]
>     uint32 MaxJobWallTime;
> 
>     [Description (
>         "Specifies the maximum number of milliseconds of CPU time "
>         "that a job queued to this queue can consume to complete "
>         "its execution. "), 
>         Units("MilliSeconds") ]
>     uint32 MaxJobCPUTime;
> 
>     [Description (
>         "Specifies the maximum number of jobs that can reside in "
>         "in this queue. ") ] 
>     uint32 MaxTotalJobs;
> 
>     [Description (
>         "Specifies the maximum number of jobs from this queue that "
>         "can be in the running state. ") ]
>     uint32 MaxRunningJobs;
> 
>     [Description (
>         "Specifies the current number of jobs from this queue that "
>         "can be in the running state. "),
>         Gauge ]
>     uint32 RunningJobs;
> 
>     [Description (
>         "Specifies the current number of jobs that are waiting to "
>         "be put in the running state. "),
>         Gauge ]
>     uint32 WaitingJobs;
> };
> 
> 
> // ===================================================================
> // BatchJob
> // ===================================================================
> [Experimental, Version ("2.7.0"), Description (
>     "Description of a batch request that is either waiting on a "
>     "Queue to run, in the process of running, or that has"
>     "previously run.  BatchJobs are weak to their current "
>     "Queue, or to the last Queue that held them.") ]
> class CIM_BatchJob : CIM_Job {
> 
>     [Propagated ("CIM_BatchQueue.SystemCreationClassName"), 
>         Key, MaxLen (256), Description (
>             "The scoping System's CreationClassName.") ]
>     string SystemCreationClassName;
> 
>     [Propagated ("CIM_BatchQueue.SystemName"), 
>         Key, MaxLen (256), Description (
>             "The scoping System's Name.") ] 
>     string SystemName;
> 
>     [Propagated ("CIM_BatchQueue.CreationClassName"), 
>         Key, MaxLen (256), Description (
>             "The scoping Queue's CreationClassName.") ]
>     string QueueCreationClassName;
>  
>     [Propagated ("CIM_BatchQueue.Name"), 
>         Key, MaxLen (256), Description (
>             "The scoping Queue's Name.") ]
>     string QueueName;
> 
>     [Override("JobStatus"), Description (
>         "The inherited JobStatus is used to provide additional "
>         "information about the status of a BatchJob beyond that "
>         "enumerated by BatchJobStatus."), 
>         ModelCorrespondence {"CIM_BatchJob.BatchJobStatus"} ]
>     string JobStatus;
> 
>     [Key, Description (
>         "Uniquely identifies this Job within its scoping Queue.") ]
>     string JobID;
> 
>     [Description (
>         "Provides additional textual descriptions of how this "
>         "Job should be scheduled.") ]
>     string SchedulingInformation;
> 
>     [Description (
>         "Specifies the maximum number of milliseconds of CPU "
>         "time this job can take. "),
>         Units("MilliSeconds") ]
>     uint32 MaxCPUTime;
> 
>     [Description (
>         "Specifies the number of milliseconds of CPU that this "
>         "job has used.  This number will continue to change until "
>         "the job has finished its execution, either successfully "
>         "or unsuccessfully. "),
>         Units("MilliSeconds") ]
>     uint32 CPUTimeUsed;
> 
>     [Description (
>         "Describes the current state of this Job with respect "
>         "to the BatchQueue and the system executing this job. "
>         "Additional information may be specified in JobStatus."), 
>         ValueMap {"1", "2", "3", "4", "5", "6", "7"}, 
>         Values {"Other", "Unknown", "Pending", "Blocked", 
>             "Complete", "Completed With Error", "Running"}, 
>         ModelCorrespondence {"CIM_BatchJob.TimeCompleted", 
>             "CIM_BatchJob.JobStatus"} ]
>     uint16 BatchJobStatus;
> 
>     [Description (
>         "Time when this Job was completed. This value is only "
>         "valid if the BatchJobStatus has been assigned to "
>         "\"Complete\" (value=5) or \"Completed With Error\" "
>         "(value=6)."), 
>         ModelCorrespondence {"CIM_BatchJob.BatchJobStatus"} ]
>     datetime TimeCompleted;
> 
>     [Description (
>         "Provides additional information, beyond Job Owner "
>         "inherited from CIM_Job, to identify the origins of the "
>         "BatchJob. This property could include information such as "
>         "the System, application or Process that created the Job.") ]
>     string JobOrigination;
> };
> 
>     [Description (
>         "Priority set by the scheduler which may be different than "
>         "that in 'priority' field - which is set by user? "
>         "***Need to check this one out with DMTF*** "),
>         MappingStrings {"MIF.DMTF|Process Information|001.10"} ]
>     uint32 ScheduledPriority;
>     
>     [Description (
>         "Specifies the number of seconds that a job queued "
>         "to this queue actually completed its execution in. "), 
>         Units("Seconds") ]
>     uint32 JobWallTimeUsed;
> 
> 
> // ===================================================================
> // BatchSAP
> // ===================================================================
> [Experimental, Version ("2.7.0"), Description (
>     "The ServiceAccessPoint for a batch Service.") ]
> class CIM_BatchSAP : CIM_ServiceAccessPoint {
> 
>     [Description (
>         "Specifies the batch submission procotols that this "
>         "AccessPoint uses. "
>         "Note that each entry of this array is related to the entry in "
>         "the BatchProtocolInfo array that is located at the same "
>         "index."), 
>         ArrayType ("Indexed"), 
>         ValueMap {"0", "1", "2"},
>         Values {"Unknown", "Other", "Local"}, 
>         ModelCorrespondence {"CIM_BatchSAP.BatchProtocolInfo"} ]
>     uint16 BatchProtocol[];
> 
>     [Description (
>         "Provides clarifying or additional information about the "
>         "protocols supported by this AccessPoint. Note, each entry "
>         "of this array is related to the entry in the BatchProtocol "
>         "array that is located at the same index."), 
>         ArrayType ("Indexed"), 
>         ModelCorrespondence {"CIM_BatchSAP.BatchProtocol"} ]
>     string BatchProtocolInfo[];
> };
> 
> 
> // ===================================================================
> // BatchService
> // ===================================================================
> [Experimental, Version ("2.7.0"), Description (
>     "The Service that provides support for processing batch jobs "
>     "requests.  The basic assumption of the Batch Model is that a "
>     "BatchService accepts a BatchJob for processing, via its "
>     "BatchSAP. The Job is then placed on a BatchQueue (indicated by "
>     "the QueueForBatchService association).  OperatingSystem takes "
>     "Jobs from Queues (indicated by the OSServicingQueue "
>     "association).") ]
> class CIM_BatchService : CIM_Service {
> //  fill in additional properties of a batch service
> };
> 
> // ===================================================================
> // RecurringBatchJob
> // ===================================================================
> [Experimental, Version ("2.7.0"), Description (
>     "Concrete class for a recurring batch job.") ]
> class CIM_RecurringBatchJob : CIM_ScheduledJob {
> //  fill in additional properties of a recurring batch job
> };
> 
> // ===================================================================
> // OSServicingQueue
> // ===================================================================
> [Experimental, Association, Version ("2.7.0"), Description (
>     "This association indicates that an Operating System can be "
>     "passed BatchJobs from a particular Queue.") ]
> class CIM_BatchServicingQueue : CIM_HostedJobDestination {
> 
>     [Override ("Antecedent"), Description (
>         "A destination Operating System for Jobs enqueued on the "
>         "Dependent Queue.") ]
>     CIM_OperatingSystem REF Antecedent;
> 
>     [Override ("Dependent"), Description (
>         "A Queue that is providing Jobs to the OperatingSystem.") ]
>     CIM_BatchQueue REF Dependent;
> };
> 
> 
> // ===================================================================
> // OSServicingJob
> // ===================================================================
> [Association, Experimental, Version ("2.7.0"), Description (
>     "This association indicates that an Operating System is "
>     "currently servicing a particular BatchJob.") ]
> class CIM_OSServicingJob : CIM_Dependency {
> 
>     [Override ("Antecedent"), Description (
>         "The destination Operating System for a BatchJob.") ]
>     CIM_OperatingSystem REF Antecedent;
> 
>     [Override ("Dependent"), Description (
>         "The BatchJob.") ]
>     CIM_BatchJob REF Dependent;
> };
> 
> 
> // ===================================================================
> // QueueForBatchService 
> // ===================================================================
> [Experimental, Association, Version ("2.7.0"), Description (
>     "This association indicates that a BatchService utilizes a "
>     "particular BatchQueue.") ]
> class CIM_QueueForBatchService : CIM_Dependency {
> 
>     [Override ("Antecedent"), Description (
>         "The BatchQueue that the Service utilizes.") ]
>     CIM_BatchQueue REF Antecedent;
> 
>     [Override ("Dependent"), Description (
>         "The BatchService that puts Jobs on the Queue.") ]
>     CIM_BatchService REF Dependent;
> 
>     [Description (
>         "Indicates that the BatchService can accept Jobs and "
>         "place them on the Queue.") ]
>     boolean QueueAcceptingFromService;
> };
> 
> 
> // ===================================================================
> // OwningBatchQueue 
> // ===================================================================
> [Association, Version ("2.7.0"), Description (
>     "This association indicates which Queue holds a BatchJob and "
>     "where the Job is located within that Queue. A Job may remain on "
>     "its final Queue once it has been executed with a BatchJobStatus "
>     "of \"Complete\" or \"Completed With Error\".") ]
> class CIM_OwningBatchQueue : CIM_JobDestinationJobs {
> 
>     [Override ("Antecedent"), Min (1), Max (1), Description (
>         "The BatchQueue on which the Job is held.") ]
>     CIM_BatchQueue REF Antecedent;
> 
>     [Override ("Dependent"), Weak, Description (
>         "The batchJob.") ]
>     CIM_BatchJob REF Dependent;
> 
>     [Description (
>         "The position of the BatchJob on the Queue. The top of the "
>         "Queue is indicated by a value of 1 with higher values being "
>         "used to represent Jobs that are further away from the top of "
>         "the Queue. A QueuePosition of zero indicate that the Job has "
>         "completed (either with or without error).") ]
>     uint32 QueuePosition;
> };
> 
> // ===================================================================
> // BatchSchedulingData
> // ===================================================================
> [Association, Experimental, Version ("2.7.0"), Description (
>     "BatchSchedulingData represents the association between "
>     "the managed element BatchJob and its setting data for a "
>     "recurring batch job. This association also describes whether "
>     "this is a default or current setting (inherits from "
>     "ElementSettingData.") ]
> class CIM_BatchSchedulingData:CIM_ElementSettingData {
>     
>     [Key, Description (
>         "The managed element, BatchJob.") ]
>     CIM_ManagedElement REF BatchJob;
>     
>     [Key, Description (
>         "The SettingData object associated with the element.") ]
>     CIM_SettingData REF RecurringBatchJob;
>     
> };
> 
> // ===================================================================
> // ExecutionCandidate
> // ===================================================================
> [Association, Experimental, Version ("2.7.0"), Description (
>     "ExecutionCandidate represents the association between "
>     "the System and the BatchJob to express the relationship "
>     "between a batch job and one or more nodes capable of running "
>     "the job.")]
> class CIM_ExecutionCandidate:CIM_Dependency {
>     
>     [Key, Description (
>         "The managed element, BatchJob.") ]
>     CIM_ManagedElement REF BatchJob;
>     
>     [Key, Description (
>         "The managed element, System, associated with the element.") ]
>     CIM_ManagedElement REF System;
>     
> };
> 
> // ===================================================================
> // ExecutionTarget
> // ===================================================================
> [Association, Experimental, Version ("2.7.0"), Description (
>     "ExecutionTarget represents the association between "
>     "the System and the BatchJob to show that the job "
>     "is running on one or more nodes.")]
> class CIM_ExecutionTarget:CIM_Dependency {
>     
>     [Key, Description (
>         "The managed element, BatchJob.") ]
>     CIM_ManagedElement REF BatchJob;
>     
>     [Key, Description (
>         "The managed element, System, associated with the element.") ]
>     CIM_ManagedElement REF System;
>     
> };
> 
> // ===================================================================
> // end of file
> // ===================================================================


-- 
_______________________________________________________________________

Peter Gietz (CEO)
DAASI International GmbH                phone: +49 7071 2970336
Wilhelmstr. 106                         Fax:   +49 7071 295114
D-72074 Tübingen                        email: peter.gietz@daasi.de
Germany                                 Web:   www.daasi.de

Directory Applications for Advanced Security and Information Management
_______________________________________________________________________