root / doc / manual / source / unicase.rst @ 2bc88961
History | View | Annotate | Download (5.6 kB)
1 |
A typical university |
---|---|
2 |
^^^^^^^^^^^^^^^^^^^^ |
3 |
|
4 |
A university wants to setup a cloud for use by their Network Operation Services, |
5 |
in order to streamline machine provisioning operations for both the NOC's needs |
6 |
and university department, laboratory and individual persons requests. |
7 |
|
8 |
The university under examination is organized as a typical high education |
9 |
organisation: It has schools, which are further split in departments. Each |
10 |
department has students and professors. Professors can start independent |
11 |
research units (laboratories) which also have students but do not fall under |
12 |
the auspices of either schools or departments. |
13 |
|
14 |
The NOC currently uses a rigid resource distribution policy, where all resource |
15 |
provisioning requests have to go through the approval of NOC officials. This |
16 |
means that the resource sharing hierarchy is flat, while all credit allocation |
17 |
policies are negotiated directly with the NOC. |
18 |
|
19 |
The cloud services that the university NOC can offer are the following: |
20 |
|
21 |
- Virtual machines of three different configurations (hereby: A, B, C) |
22 |
- Volumes for virtual machines |
23 |
- File storage service, for storing files |
24 |
- Custom virtual private networks |
25 |
|
26 |
After installing Aquarium and configuring the external services to talk to it, |
27 |
the NOC configures administrator users and specifies the following policy as |
28 |
the initial base policy for all users and services. All the remaining |
29 |
organizational entities (departments, students etc) are created on request on |
30 |
service initialization. |
31 |
|
32 |
.. code-block:: yaml |
33 |
|
34 |
aquariumdsl: |
35 |
resources: |
36 |
- vmtimeA |
37 |
- vmtimeB |
38 |
- vmtimeC |
39 |
- volumedisk |
40 |
- filedisk |
41 |
- netbandwidth |
42 |
pricelists: |
43 |
pricelist: |
44 |
name: default |
45 |
vmtimeA: 1 |
46 |
vmtimeB: 1.5 |
47 |
vmtimeC: 2 |
48 |
volumedisk: 0.1 |
49 |
filedisk: 0.2 |
50 |
netbandwidth: 0.01 |
51 |
applicable: |
52 |
from: 0 |
53 |
algorithms: |
54 |
algorithm: |
55 |
name: default |
56 |
vmtimeA: {price} times {volume} |
57 |
vmtimeB: {price} times {volume} |
58 |
vmtimeC: {price} times {volume} |
59 |
volumedisk: {price} times {volume} |
60 |
filedisk: {price} times {volume} |
61 |
netbandwidth: {price} times {volume} |
62 |
applicable: |
63 |
from: 0 |
64 |
agreements: |
65 |
agreement: |
66 |
name: default |
67 |
algorithm: default |
68 |
pricelist: default |
69 |
|
70 |
|
71 |
Student user wants a new VM |
72 |
~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
73 |
|
74 |
The simplest request a NOC has to deal with is the request by a student |
75 |
to create a new virtual machine. The student will be assigned to the |
76 |
default service agreement, which provides her with a fix number of credits |
77 |
and the base charging plan. |
78 |
|
79 |
All the NOC that has to do in this case is to import to Aquarium the user's |
80 |
account in the identity provision mechanism, and allowing it access to |
81 |
the VM service. |
82 |
|
83 |
New research team is founded |
84 |
~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
85 |
|
86 |
Prof X creates a new research team, which will need a multitude of |
87 |
infrastructure services, such as shared storage space, several VMs of |
88 |
various configurations for things like web servers and experiment testbeds |
89 |
and a dedicated VPN used by all team members to connect to team servers remotely. |
90 |
All resources own by the team are charged to the team. The team's focus will |
91 |
be data warehousing, which means large volumes of raw data shared by virtual |
92 |
clusters of machines. |
93 |
|
94 |
Given the team's anticipated space requirements and in order to motivate team |
95 |
members to clean up intermediate results, the NOC administration negotiates an |
96 |
increased price for storage resources and a lowered price for CPU bound tasks. |
97 |
Moreover, to promote a round the clock usage of resources it (i.e. to make the |
98 |
team members run experiments at night and on the weekends) the NOC offers a |
99 |
discount for those time periods on all resources. The NOC creates the following |
100 |
charging policy: |
101 |
|
102 |
.. code-block:: yaml |
103 |
|
104 |
agreement: |
105 |
name: forteamx |
106 |
pricelist: |
107 |
vmtimeA: 0.5 |
108 |
volumedisk: 0.2 |
109 |
filedisk: 0.25 |
110 |
applicable: |
111 |
from: 1320665415 #7/11/2011 13:30 |
112 |
algorithm: |
113 |
volumedisk: {price} * 0.7 |
114 |
filedisk: {price} * 0.7 |
115 |
applicable: |
116 |
from: 1320665415 #7/11/2011 13:30 |
117 |
repeat: |
118 |
- every: |
119 |
start: "00 00 * * Mon-Fri" |
120 |
end: "00 07 * * Mon-Fri" |
121 |
- every: |
122 |
start: "00 00 * * Sat" |
123 |
end: "59 23 * * Sun" |
124 |
|
125 |
The team is defined as a group and all individual team members are added to it. |
126 |
|
127 |
|
128 |
New price plan and resource |
129 |
~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
130 |
|
131 |
After some time the service has been active by the NOC, an upgrade to the |
132 |
hardware capacity urges the NOC administration to set a lower price to the |
133 |
default price plan. Moreover, since the new capacity allows it, a new VM |
134 |
configuration is added to the set of offered resources. The above mean that |
135 |
all agreements that inherit from the default will need to be recursively |
136 |
updated while agreement history will need to be preserved. |
137 |
|
138 |
To cope with the above, the NOC administrators add a new default policy that |
139 |
supersedes the old one and set the applicability period of the old default |
140 |
pricelist to end at the point where the new pricelist comes in effect. |
141 |
|
142 |
.. code-block:: yaml |
143 |
|
144 |
creditdsl: |
145 |
resources: |
146 |
- vmtimeA |
147 |
- vmtimeB |
148 |
- vmtimeC |
149 |
- vmtimeD |
150 |
- volumedisk |
151 |
- filedisk |
152 |
- netbandwidth |
153 |
pricelists: |
154 |
pricelist: |
155 |
name: olddefault |
156 |
vmtimeA: 1 |
157 |
vmtimeB: 1.5 |
158 |
vmtimeC: 2 |
159 |
volumedisk: 0.1 |
160 |
filedisk: 0.2 |
161 |
netbandwidth: 0.01 |
162 |
applicable: |
163 |
from: 0 |
164 |
to: 1320665415 #7/11/2011 13:30 |
165 |
pricelist: |
166 |
name: default |
167 |
override: olddefault |
168 |
vmtimeA: 0.5 |
169 |
vmtimeB: 1 |
170 |
vmtimeC: 1.5 |
171 |
vmtimeD: 2 |
172 |
applicable: |
173 |
from: 1320665416 |