Presentation is loading. Please wait.

Presentation is loading. Please wait.

Process Manager Interface Narayan Desai, Rusty Lusk, Rick Bradshaw.

Similar presentations


Presentation on theme: "Process Manager Interface Narayan Desai, Rusty Lusk, Rick Bradshaw."— Presentation transcript:

1 Process Manager Interface Narayan Desai, Rusty Lusk, Rick Bradshaw

2 2 Outline PM Functionality PM Syntax PM Commands PM Datatypes PM Events PM Examples PM BNF PM Schema

3 3 Process Manager Functionality Starts process groups, with specification of environments of application processes, either collectively or on a process-by- process basis –Executable –Arguments –Environment variables –User –Resource limits –Hosts for each process –Working directory Queries the state of a running process group, returning some startup parameters Delivers signals to all processes in a process group Terminates a process group After process group exit, can wait on the group to collect exit codes and output.

4 4 Process Manager Syntax The Process Manager uses the “less restricted syntax” style presented elsewhere Each message to it does three things: 1.Describes a process group specification to be matched or created 2.Conveys a command, with arguments 3.Specifies an object to be returned

5 5 Process Manager Commands CreateProcessGroup –Takes as input a ProcessGroupSpecification object –Returns a PGID GetProcessGroup –Takes as input a ProcessGroup object which is matched against –Returns a ProcessGroups container object containing requested fields from matched process group instances SignalProcessGroup –Takes as input a Process Group object which is matched against –Takes as argument a signal name and the scope of the signal (top- level processes or also forkees) –Returns requested fields from the process groups signaled

6 6 Process Manager Commands (cont.) KillProcessGroup –Terminates matching process groups Best effort to really kill processes, which may require repeated signalling –Returns the process groups matched WaitProcessGroup –Returns exit code information and stream output from matching completed process groups –Purges such information from the Process Manager state

7 7 Process Manager Datatypes ProcessGroupSpecification –Used as input to CreateProcessGroup ProcessGroup –Used as matching description and returned description in other commands

8 8 Process Manager Events Generated when a process group is successfully started: process-manager ProcessStart 29 Generated when a process group terminates: process-manager ProcessEnd 29

9 9 Process Manager Examples - 1 desai 8 /bin/false /tmp 6-7 /bin/true LD_LIBRARY_PATH /local/lib

10 10 Process Manager Examples - 2 -v Unordered ccn1 ccn2 ccn3 ccn4 ccn5 ccn6 ccn7 ccn8

11 11 Process Manager Examples - 3 29

12 12 Process Manager Examples - 4 ProcessGroups> 29 ccn1 ccn2 ccn3 ccn4 ccn5 ccn6 ccn7 ccn8

13 13 Process Manager Examples - 5 29 29 Finished

14 14 Process Manager Examples - 6 29 0 stdout | stderr

15 15 Process Manager Examples - 7 29 ccn2 1 ccn6 255 stdout

16 16 Process Manager Examples - 8 process 0 on ccn1 process 1 on ccn2 process 2 on ccn3 process 3 on ccn4 process 4 on ccn5 process 5 on ccn6 process 6 on ccn7 process 7 on ccn8 stderr

17 17 Process Manager BNF - 1 [InMsg] ::= [CreateCommand] | [Query] [CreateCommand] ::= [PGSpecification] [PGSpecification] ::= [PGSattrs] [PGSattrs] ::= [PGSattr] | [PGSattr] [PGSattrs] [PGSattr] ::= [FieldValue] [Query] ::= [ProcessGroup] | [ProcessGroup] [Command] ::= KillProcessGroup | GetProcessGroup | WaitProcessGroup [ArgCmd] ::= SignalProcessGroup [Arguments] ::= [] | [Argument] | [Argument] [Arguments] [Argument] ::= [identifier]=[identifier] [ProcessGroup] ::= [Fields] [Fields] ::= [Field] | [Field] [Fields]| [MultiField] | [MultiField] [Fields]

18 18 Process Manager BNF - 2 [Field] ::= [FieldValue] [FieldName] ::= PGID|User|Size|Executable [FieldValue] ::= identifier [MultiField] ::= [MFields] [MFields] ::= [MField] | [MField] [MFields] [MField] ::= [MFValue] [Qualifiers] ::= [] | [Qualifier] [Qualifiers] [Qualifier] ::= [BooleanKey]=[BooleanValue]| [StringKey]=[StringValue] [BooleanKey] ::= 'negate' | 'match' | 'return' [BooleanValue] ::= 'true' | 'false' [StringKey] ::= 'op' [StringValue] ::= 'eq' | 'ne' | 'lt' | 'gt' | 'le' | 'ge' | 'range' | 're' [MFName] ::= HostSpec | Environment | Diversions [MFValue] :: identifier

19 19 Process Manager Schema - 1 http://www.w3.org/2001/XMLSchema Process Manager component schema SciDAC SSS project, 2004 Andrew Lusk alusk@mcs.anl.gov Narayan Desai desai@mcs.anl.gov

20 20 Process Manager Schema - 2 <xsd:pattern value='ABRT|ALRM|BUS|CHLD|CLD|CONT|FPE|HUP|ILL|INT|IO|IOT|KILL|PIPE|POLL|PROF|PWR|QUIT|SEGV|STOP|SYS|TE RM|TRAP|TSTP|TTIN|TTOU|URG|USR1|USR2|VTALRM|WINCH|XCPU|XFSZ'/>

21 21 Process Manager Schema - 3

22 22 Process Manager Schema - 4

23 23 Notes


Download ppt "Process Manager Interface Narayan Desai, Rusty Lusk, Rick Bradshaw."

Similar presentations


Ads by Google