/[pdpsoft]/trunk/grid-mw-security/ees/thesis/appendices.tex
ViewVC logotype

Contents of /trunk/grid-mw-security/ees/thesis/appendices.tex

Parent Directory Parent Directory | Revision Log Revision Log


Revision 953 - (show annotations) (download) (as text)
Wed Oct 21 08:40:48 2009 UTC (12 years, 3 months ago) by aramv
File MIME type: text/x-latex
File size: 7562 byte(s)
One to beam up
1 \appendix
2 \addappheadtotoc
3
4 \chapter{Grid computing use cases}
5 \label{use_cases}
6 \section{Grid job}
7 \label{use_case_job}
8 \begin{itemize}
9 \item A user describes his computing task along with required resources, execution limits and file staging in a text file using the \textit{Job Submission Description Language} (JSDL) \cite{jsdl} format
10 \item The user uploads this file to a \textit{Workload Management Server} (WMS) through the internet
11 \item The WMS reads the JSDL file, determines the requirements and chooses a grid site which meets the user's demands as closely as possible
12 \item The WMS forwards the job to a \textit{Compute Element} (CE) through the internet. This is the entry point of a Grid site, where the user credentials are mapped to those of a local user account.
13 \item After switching the credentials, the CE submits the job to a \textit{Local Resource Management System} (LRMS), in which it is queued for execution on a \textit{Worker Node} (WN).
14 % LRMS is bijv PBS
15 \item Once a WN becomes available a daemon retrieves the job from the LRMS, switches its credentials to those associated with the job and can start its execution
16 \end{itemize}
17
18 Please see figure \ref{fig:gridjob}.
19 \glossary{name={JSDL}, description={Job Submission Description Language}}
20 \glossary{name={WMS}, description={Workload Management Server}}
21 \glossary{name={CE}, description={Compute Element}}
22 \glossary{name={PBS}, description={Portable Batch System}}
23 \glossary{name={WN}, description={Worker Node}}
24
25 \begin{figure}[hp]
26 \centering
27 \includegraphics[width=\textwidth]{grid_job_diagram}
28 \caption[Grid job diagram]%
29 {A diagram showing the path a Grid job travels to reach its computing resources}
30 \label{fig:gridjob}
31 \end{figure}
32
33 \pagebreak
34
35 %This relatively new use case involves the late binding of the \textit{Worker Node} (WN) resources by sending pilot jobs to all the compute clusters by a production manager.
36 %When the pilot jobs come out of the queue and have started their run, they'll discover if the Worker Node on which they have acquired a job slot meets the criteria specified by the user.
37 %If the job slot criteria can be satisfied the pilot job framework will download the payload from a VO central job repository queue, unpack the payload and start executing the actual job.
38
39 %In this use case there are two actors: a user and a VO production manager.
40 %The VO production manager who has the responsibility to fill all the queues on the clusters according to the used quotas and taking into account what kind of data is stored nearby the compute cluster.
41 %The user had to submit their analysis jobs to the central queue.
42 %The pilot jobs submitted by the VO production managers will pick up the analysis jobs from the central queue.
43
44 %As this use case has two actors into play two sets of credentials will need to be authorized.
45 %The gLExec and SCAS are able to do this.
46
47 % cite OASIS standard saml2-xacml2 .
48
49 % oscar
50
51 \section{Grid pilot job}
52 \label{use_case_pilot_job}
53 \begin{itemize}
54 \item A user describes his computing task along with required resources, execution limits and file staging in a text file using the \textit{Job Submission Description Language} (JSDL) \cite{jsdl} format
55 \item The user uploads this file to a \textit{Pilot job framework repository} through the internet
56 \item The VO production manager submits a number of pilot jobs to the WMS, taking care not to exceed their project's quota limits
57 \item The WMS forwards the job to a \textit{Compute Element} (CE) through the internet. This is the entry point of a Grid site, where the user credentials are mapped to those of a local user account.
58 \item After switching the credentials, the CE submits the job to a \textit{Local Resource Management System} (LRMS), in which it is queued for execution on a \textit{Worker Node} (WN).
59 \item Once a WN becomes available a daemon retrieves the job from the LRMS, switches its credentials to those associated with the job and can start its execution
60 \item At run-time, the pilot job retrieves its payload from the Pilot job framework repository.
61 \item After the payload has been retrieved, the pilot job switches its user credentials from the VO production manager to the credentials of the user the job is associated with, and starts its execution
62 \end{itemize}
63 Please see figure \ref{fig:gridpilotjob}.
64
65 \begin{figure}[hp]
66 \centering
67 \includegraphics[width=\textwidth]{grid_pilot_job_diagram}
68 \caption[Grid pilot job diagram]%
69 {A diagram showing the path a Grid pilot job travels to reach its computing resources}
70 \label{fig:gridpilotjob}
71 \end{figure}
72
73
74 % USE CASES
75
76 % scenario 1
77 % User interface (laptop)
78 % -> job (J(S)DL) ->
79 % WMS
80 % -> job (JDL) -> (hangt af van CE - GRAM, BE)
81 % Compute element
82 % -> qsub:job ->
83 % PBS server (zoekt beste node)
84 % -> task ->
85 % Worker node
86 % voert uit
87
88 % scenario 2
89 % User interface (laptop)
90 % -> job (J(S)DL) ->
91 % Pilot job framework repo
92 % VO Production manager is iemand die pilot jobs inschiet bij het WMS.
93 % WMS vindt het beste CE
94 % Hier zoekt een compute element de beste workernode via PBS server
95 % Pilot jobs kunnen hun payload van de Pilot Job Framework repo ophalen als ze eenmaal op de WN draaien.
96 % Pilot job doet userswitch dmv glexec & scas en voert de job uit
97
98 % Worker node in depth
99 % WN krijgt een pilot job binnen van de PBS server
100 % Pilot job haalt een job op uit de Pilot Job Framework Repository
101 % Pilot job framework roept glexec aan
102 % Glexec doet userswitch naar
103 % Glexec pakt 2 certificates (het user certificaat zit inbegrepen bij de payload, het VO production manager certificaat wordt op de normale manier opgehaald)
104
105 % scenario 3
106 % User interface (laptop)
107 % -> job (J(S)DL) ->
108 % Pilot job framework repo
109 % VO Production manager is iemand die pilot jobs inschiet bij het WMS.
110 % WMS vindt het beste CE
111 % Hier zoekt een compute element de beste workernode via PBS server
112 % Pilot jobs kunnen hun payload van de Pilot Job Framework repo ophalen als ze eenmaal op de WN draaien.
113 % Pilot job doet userswitch dmv glexec & scas en voert de job uit
114
115 % Job -> WMS
116 % WMS zoekt resources en stuurt door naar compute element.
117 % WMS heeft jou creds doorgegeven aan compute element.
118 % Compute element authenticeert jou.
119 % Compute element queriet de SCAS service met jouw credentials en dat hij een compute elementis.
120 % Compute element = voordeur grid cluster.
121 % Als antwoord van de SCAS service okay is kunnen er nog extra attributen worden teruggegeven die verwerkt moeten worden.
122 % Voorbeelden van extra attributen die door de SCAS worden teruggegeven (XACML response) zijn: pool accounts (unix credentials die door de SCAS zijn gekoppeld aan de user en zijn huidige rol), incentives om bepaalde extra gegevens mee te kunnen geven aan de scheduler (zoals prioriteits informatie).
123 % Bijv: Higgs groep bij LHC krijgt meer tijd dan de Muon groep.
124 % Andere extra attributen die door de SCAS worden teruggegeven zijn: specifieke virtuele machines.
125
126 \chapter{EES design documents}
127
128
129 \section{EES architecture diagram}
130 \label{ees_class_diagram}
131
132 \begin{figure}[hp]
133 \centering
134 \includegraphics[width=\textwidth]{ees}
135 \caption[EES architecture diagram]
136 {A diagram showing the architecture of the Environment Execution Service}
137 \label{fig:ees}
138 \end{figure}
139
140 \pagebreak
141
142 \section{EES sequence diagram}
143 \label{ees_sequence_diagram}
144
145 \begin{figure}[hp]
146 \centering
147 \includegraphics[width=\textwidth]{ees_sequence_diagram}
148 \caption[Sequence diagram of the EES execution framework]%
149 {Sequence diagram of the EES execution framework, which shows the different pseudo-classes interacting.}
150 \end{figure}
151
152

grid.support@nikhef.nl
ViewVC Help
Powered by ViewVC 1.1.28