Statistics
| Branch: | Tag: | Revision:

root / doc / design-storagetypes.rst @ 56c934da

History | View | Annotate | Download (15.4 kB)

1 b284f504 Helga Velroyen
=============================================================================
2 b284f504 Helga Velroyen
Management of storage types and disk templates, incl. storage space reporting
3 b284f504 Helga Velroyen
=============================================================================
4 ab8747b7 Guido Trotter
5 ab8747b7 Guido Trotter
.. contents:: :depth: 4
6 ab8747b7 Guido Trotter
7 ab8747b7 Guido Trotter
Background
8 ab8747b7 Guido Trotter
==========
9 ab8747b7 Guido Trotter
10 6559d7f8 Helga Velroyen
Currently, there is no consistent management of different variants of storage
11 6559d7f8 Helga Velroyen
in Ganeti. One direct consequence is that storage space reporting is currently
12 6559d7f8 Helga Velroyen
broken for all storage that is not based on lvm technolgy. This design looks at
13 6559d7f8 Helga Velroyen
the root causes and proposes a way to fix it.
14 6559d7f8 Helga Velroyen
15 ab8747b7 Guido Trotter
Proposed changes
16 ab8747b7 Guido Trotter
================
17 ab8747b7 Guido Trotter
18 6559d7f8 Helga Velroyen
We propose to streamline handling of different storage types and disk templates.
19 6559d7f8 Helga Velroyen
Currently, there is no consistent implementation for dis/enabling of disk
20 6559d7f8 Helga Velroyen
templates and/or storage types.
21 6559d7f8 Helga Velroyen
22 6559d7f8 Helga Velroyen
Our idea is to introduce a list of enabled disk templates, which can be
23 6559d7f8 Helga Velroyen
used by instances in the cluster. Based on this list, we want to provide
24 6559d7f8 Helga Velroyen
storage reporting mechanisms for the available disk templates. Since some
25 6559d7f8 Helga Velroyen
disk templates share the same underlying storage technology (for example
26 6559d7f8 Helga Velroyen
``drbd`` and ``plain`` are based on ``lvm``), we map disk templates to storage
27 6559d7f8 Helga Velroyen
types and implement storage space reporting for each storage type.
28 ab8747b7 Guido Trotter
29 ab8747b7 Guido Trotter
Configuration changes
30 ab8747b7 Guido Trotter
---------------------
31 ab8747b7 Guido Trotter
32 6559d7f8 Helga Velroyen
Add a new attribute "enabled_disk_templates" (type: list of strings) to the
33 6559d7f8 Helga Velroyen
cluster config which holds disk templates, for example, "drbd", "file",
34 6559d7f8 Helga Velroyen
or "ext". This attribute represents the list of disk templates that are enabled
35 6559d7f8 Helga Velroyen
cluster-wide for usage by the instances. It will not be possible to create
36 6559d7f8 Helga Velroyen
instances with a disk template that is not enabled, as well as it will not be
37 6559d7f8 Helga Velroyen
possible to remove a disk template from the list if there are still instances
38 6559d7f8 Helga Velroyen
using it.
39 6559d7f8 Helga Velroyen
40 6559d7f8 Helga Velroyen
The list of enabled disk templates can contain any non-empty subset of
41 6559d7f8 Helga Velroyen
the currently implemented disk templates: ``blockdev``, ``diskless``, ``drbd``,
42 6559d7f8 Helga Velroyen
``ext``, ``file``, ``plain``, ``rbd``, and ``sharedfile``. See
43 6559d7f8 Helga Velroyen
``DISK_TEMPLATES`` in ``constants.py``.
44 6559d7f8 Helga Velroyen
45 6559d7f8 Helga Velroyen
Note that the abovementioned list of enabled disk types is just a "mechanism"
46 6559d7f8 Helga Velroyen
parameter that defines which disk templates the cluster can use. Further
47 6559d7f8 Helga Velroyen
filtering about what's allowed can go in the ipolicy, which is not covered in
48 6559d7f8 Helga Velroyen
this design doc. Note that it is possible to force an instance to use a disk
49 6559d7f8 Helga Velroyen
template that is not allowed by the ipolicy. This is not possible if the
50 6559d7f8 Helga Velroyen
template is not enabled by the cluster.
51 6559d7f8 Helga Velroyen
52 87c7621a Helga Velroyen
The ipolicy also contains a list of enabled disk templates. Since the cluster-
53 87c7621a Helga Velroyen
wide enabled disk templates should be a stronger constraint, the list of
54 87c7621a Helga Velroyen
enabled disk templates in the ipolicy should be a subset of those. In case the
55 de0aa216 Helga Velroyen
user tries to create an inconsistent situation here, gnt-cluster should
56 de0aa216 Helga Velroyen
display this as an error.
57 6559d7f8 Helga Velroyen
58 6559d7f8 Helga Velroyen
We consider the first disk template in the list to be the default template for
59 6559d7f8 Helga Velroyen
instance creation and storage reporting. This will remove the need to specify
60 513c5e25 Helga Velroyen
the disk template with ``-t`` on instance creation. Note: It would be
61 513c5e25 Helga Velroyen
better to take the default disk template from the node-group-specific
62 513c5e25 Helga Velroyen
ipolicy. However, when using the iallocator, the nodegroup can only be
63 513c5e25 Helga Velroyen
determined from the node which is determined by the iallocator, which in
64 513c5e25 Helga Velroyen
turn needs the disk-template first. To solve this
65 513c5e25 Helga Velroyen
chicken-and-egg-problem we first need to extend 'gnt-instance add' to
66 513c5e25 Helga Velroyen
accept a nodegroup in the first place.
67 6559d7f8 Helga Velroyen
68 6559d7f8 Helga Velroyen
Currently, cluster-wide dis/enabling of disk templates is not implemented
69 6559d7f8 Helga Velroyen
consistently. ``lvm`` based disk templates are enabled by specifying a volume
70 6559d7f8 Helga Velroyen
group name on cluster initialization and can only be disabled by explicitly
71 6559d7f8 Helga Velroyen
using the option ``--no-lvm-storage``. This will be replaced by adding/removing
72 6559d7f8 Helga Velroyen
``drbd`` and ``plain`` from the set of enabled disk templates.
73 6559d7f8 Helga Velroyen
74 de0aa216 Helga Velroyen
The option ``--no-drbd-storage`` is also subsumed by dis/enabling the
75 de0aa216 Helga Velroyen
disk template ``drbd`` on the cluster.
76 de0aa216 Helga Velroyen
77 6559d7f8 Helga Velroyen
Up till now, file storage and shared file storage could be dis/enabled at
78 6559d7f8 Helga Velroyen
``./configure`` time. This will also be replaced by adding/removing the
79 6559d7f8 Helga Velroyen
respective disk templates from the set of enabled disk templates.
80 6559d7f8 Helga Velroyen
81 6559d7f8 Helga Velroyen
There is currently no possibility to dis/enable the disk templates
82 6559d7f8 Helga Velroyen
``diskless``, ``blockdev``, ``ext``, and ``rdb``. By introducing the set of
83 9524c4c4 Weiwei Jia
enabled disk templates, we will require these disk templates to be explicitly
84 6559d7f8 Helga Velroyen
enabled in order to be used. The idea is that the administrator of the cluster
85 6559d7f8 Helga Velroyen
can tailor the cluster configuration to what is actually needed in the cluster.
86 6559d7f8 Helga Velroyen
There is hope that this will lead to cleaner code, better performance and fewer
87 6559d7f8 Helga Velroyen
bugs.
88 6559d7f8 Helga Velroyen
89 6559d7f8 Helga Velroyen
When upgrading the configuration from a version that did not have the list
90 6559d7f8 Helga Velroyen
of enabled disk templates, we have to decide which disk templates are enabled
91 6559d7f8 Helga Velroyen
based on the current configuration of the cluster. We propose the following
92 6559d7f8 Helga Velroyen
update logic to be implemented in the online update of the config in
93 6559d7f8 Helga Velroyen
the ``Cluster`` class in ``objects.py``:
94 6559d7f8 Helga Velroyen
- If a ``volume_group_name`` is existing, then enable ``drbd`` and ``plain``.
95 6559d7f8 Helga Velroyen
- If ``file`` or ``sharedfile`` was enabled at configure time, add the
96 6559d7f8 Helga Velroyen
respective disk template to the list of enabled disk templates.
97 6559d7f8 Helga Velroyen
- For disk templates ``diskless``, ``blockdev``, ``ext``, and ``rbd``, we
98 6559d7f8 Helga Velroyen
inspect the current cluster configuration regarding whether or not there
99 6559d7f8 Helga Velroyen
are instances that use one of those disk templates. We will add only those
100 6559d7f8 Helga Velroyen
that are currently in use.
101 6559d7f8 Helga Velroyen
The order in which the list of enabled disk templates is built up will be
102 6559d7f8 Helga Velroyen
determined by a preference order based on when in the history of Ganeti the
103 6559d7f8 Helga Velroyen
disk templates were introduced (thus being a heuristic for which are used
104 6559d7f8 Helga Velroyen
more than others).
105 6559d7f8 Helga Velroyen
106 6559d7f8 Helga Velroyen
The list of enabled disk templates can be specified on cluster initialization
107 6559d7f8 Helga Velroyen
with ``gnt-cluster init`` using the optional parameter
108 6559d7f8 Helga Velroyen
``--enabled-disk-templates``. If it is not set, it will be set to a default
109 6559d7f8 Helga Velroyen
set of enabled disk templates, which includes the following disk templates:
110 6559d7f8 Helga Velroyen
``drbd`` and ``plain``. The list can be shrunk or extended by
111 6559d7f8 Helga Velroyen
``gnt-cluster modify`` using the same parameter.
112 6559d7f8 Helga Velroyen
113 6559d7f8 Helga Velroyen
Storage reporting
114 6559d7f8 Helga Velroyen
-----------------
115 74df4a99 Helga Velroyen
116 6559d7f8 Helga Velroyen
The storage reporting in ``gnt-node list`` will be the first user of the
117 6559d7f8 Helga Velroyen
newly introduced list of enabled disk templates. Currently, storage reporting
118 6559d7f8 Helga Velroyen
works only for lvm-based storage. We want to extend that and report storage
119 6559d7f8 Helga Velroyen
for the enabled disk templates. The default of ``gnt-node list`` will only
120 6559d7f8 Helga Velroyen
report on storage of the default disk template (the first in the list of enabled
121 6559d7f8 Helga Velroyen
disk templates). One can explicitly ask for storage reporting on the other
122 6559d7f8 Helga Velroyen
enabled disk templates with the ``-o`` option.
123 6559d7f8 Helga Velroyen
124 6559d7f8 Helga Velroyen
Some of the currently implemented disk templates share the same base storage
125 6559d7f8 Helga Velroyen
technology. Since the storage reporting is based on the underlying technology
126 6559d7f8 Helga Velroyen
rather than on the user-facing disk templates, we introduce storage types to
127 6559d7f8 Helga Velroyen
represent the underlying technology. There will be a mapping from disk templates
128 6559d7f8 Helga Velroyen
to storage types, which will be used by the storage reporting backend to pick
129 6559d7f8 Helga Velroyen
the right method for estimating the storage for the different disk templates.
130 6559d7f8 Helga Velroyen
131 6559d7f8 Helga Velroyen
The proposed storage types are ``blockdev``, ``diskless``, ``ext``, ``file``,
132 6559d7f8 Helga Velroyen
``lvm-pv``, ``lvm-vg``, ``rados``.
133 6559d7f8 Helga Velroyen
134 6559d7f8 Helga Velroyen
The mapping from disk templates to storage types will be: ``drbd`` and ``plain``
135 6559d7f8 Helga Velroyen
to ``lvm-vg``, ``file`` and ``sharedfile`` to ``file``, and all others to their
136 6559d7f8 Helga Velroyen
obvious counterparts.
137 6559d7f8 Helga Velroyen
138 6559d7f8 Helga Velroyen
Note that there is no disk template mapping to ``lvm-pv``, because this storage
139 6559d7f8 Helga Velroyen
type is currently only used to enable the user to mark it as (un)allocatable.
140 6559d7f8 Helga Velroyen
(See ``man gnt-node``.) It is not possible to create an instance on a storage
141 6559d7f8 Helga Velroyen
unit that is of type ``lvm-pv`` directly, therefore it is not included in the
142 6559d7f8 Helga Velroyen
mapping.
143 6559d7f8 Helga Velroyen
144 de0aa216 Helga Velroyen
The storage reporting for file and sharedfile storage will report space
145 de0aa216 Helga Velroyen
on the file storage dir, which is currently limited to one directory.
146 de0aa216 Helga Velroyen
In the future, if we'll have support for more directories, or for per-nodegroup
147 de0aa216 Helga Velroyen
directories this can be changed.
148 74df4a99 Helga Velroyen
149 de0aa216 Helga Velroyen
For now, we will implement only the storage reporting for lvm-based and
150 de0aa216 Helga Velroyen
file-based storage, that is disk templates ``file``, ``sharedfile``, ``lvm``,
151 de0aa216 Helga Velroyen
and ``drbd``. For disk template ``diskless``, there is obviously nothing to
152 de0aa216 Helga Velroyen
report about. When implementing storage reporting for file, we can also use
153 de0aa216 Helga Velroyen
it for ``sharedfile``, since it uses the same file system mechanisms to
154 de0aa216 Helga Velroyen
determine the free space. In the future, we can optimize storage reporting
155 de0aa216 Helga Velroyen
for shared storage by not querying all nodes that use a common shared file
156 de0aa216 Helga Velroyen
for the same space information.
157 6559d7f8 Helga Velroyen
158 6559d7f8 Helga Velroyen
In the future, we extend storage reporting for shared storage types like
159 6559d7f8 Helga Velroyen
``rados`` and ``ext``. Note that it will not make sense to query each node for
160 6559d7f8 Helga Velroyen
storage reporting on a storage unit that is used by several nodes.
161 6559d7f8 Helga Velroyen
162 6559d7f8 Helga Velroyen
We will not implement storage reporting for the ``blockdev`` disk template,
163 6559d7f8 Helga Velroyen
because block devices are always adopted after being provided by the system
164 6559d7f8 Helga Velroyen
administrator, thus coming from outside Ganeti. There is no point in storage
165 6559d7f8 Helga Velroyen
reporting for block devices, because Ganeti will never try to allocate storage
166 6559d7f8 Helga Velroyen
inside a block device.
167 ab8747b7 Guido Trotter
168 ab8747b7 Guido Trotter
RPC changes
169 ab8747b7 Guido Trotter
-----------
170 ab8747b7 Guido Trotter
171 ab8747b7 Guido Trotter
The noded RPC call that reports node storage space will be changed to
172 32f88ce7 Helga Velroyen
accept a list of <storage_type>,<key> string tuples. For each of them, it will
173 74df4a99 Helga Velroyen
report the free amount of storage space found on storage <key> as known
174 32f88ce7 Helga Velroyen
by the requested storage_type. Depending on the storage_type, the key would
175 32f88ce7 Helga Velroyen
be a volume group name in case of lvm, a directory name for the file-based
176 32f88ce7 Helga Velroyen
storage, and a rados pool name for rados storage.
177 ab8747b7 Guido Trotter
178 32f88ce7 Helga Velroyen
Masterd will know through the mapping of storage types to storage calculation
179 32f88ce7 Helga Velroyen
functions which storage type uses which mechanism for storage calculation
180 32f88ce7 Helga Velroyen
and invoke only the needed ones.
181 ab8747b7 Guido Trotter
182 6559d7f8 Helga Velroyen
Note that for file and sharedfile the node knows which directories are allowed
183 6559d7f8 Helga Velroyen
and won't allow any other directory to be queried for security reasons. The
184 6559d7f8 Helga Velroyen
actual path still needs to be passed to distinguish the two, as the type will
185 6559d7f8 Helga Velroyen
be the same for both.
186 ab8747b7 Guido Trotter
187 ab8747b7 Guido Trotter
These calculations will be implemented in the node storage system
188 ab8747b7 Guido Trotter
(currently lib/storage.py) but querying will still happen through the
189 ab8747b7 Guido Trotter
``node info`` call, to avoid requiring an extra RPC each time.
190 ab8747b7 Guido Trotter
191 ab8747b7 Guido Trotter
Ganeti reporting
192 ab8747b7 Guido Trotter
----------------
193 ab8747b7 Guido Trotter
194 6559d7f8 Helga Velroyen
`gnt-node list`` can be queried for the different disk templates, if they
195 74df4a99 Helga Velroyen
are enabled. By default, it will just report information about the default
196 6559d7f8 Helga Velroyen
disk template. Examples::
197 74df4a99 Helga Velroyen
198 74df4a99 Helga Velroyen
  > gnt-node list
199 74df4a99 Helga Velroyen
  Node                       DTotal DFree MTotal MNode MFree Pinst Sinst
200 74df4a99 Helga Velroyen
  mynode1                      3.6T  3.6T  64.0G 1023M 62.2G     1     0
201 74df4a99 Helga Velroyen
  mynode2                      3.6T  3.6T  64.0G 1023M 62.0G     2     1
202 74df4a99 Helga Velroyen
  mynode3                      3.6T  3.6T  64.0G 1023M 62.3G     0     2
203 74df4a99 Helga Velroyen
204 6559d7f8 Helga Velroyen
  > gnt-node list -o dtotal/drbd,dfree/file
205 6559d7f8 Helga Velroyen
  Node      DTotal (drbd, myvg) DFree (file, mydir)
206 6559d7f8 Helga Velroyen
  mynode1                 3.6T                    -
207 6559d7f8 Helga Velroyen
  mynode2                 3.6T                    -
208 74df4a99 Helga Velroyen
209 74df4a99 Helga Velroyen
Note that for drbd, we only report the space of the vg and only if it was not
210 74df4a99 Helga Velroyen
renamed to something different than the default volume group name. With this
211 74df4a99 Helga Velroyen
design, there is also no possibility to ask about the meta volume group. We
212 74df4a99 Helga Velroyen
restrict the design here to make the transition to storage pools easier (as it
213 74df4a99 Helga Velroyen
is an interim state only). It is the administrator's responsibility to ensure
214 74df4a99 Helga Velroyen
that there is enough space for the meta volume group.
215 74df4a99 Helga Velroyen
216 6559d7f8 Helga Velroyen
When storage pools are implemented, we switch from referencing the disk template
217 6559d7f8 Helga Velroyen
to referencing the storage pool name. For that, of course, the pool names need
218 6559d7f8 Helga Velroyen
to be unique over all storage types. For drbd, we will use the default 'drbd'
219 6559d7f8 Helga Velroyen
storage pool and possibly a second lvm-based storage pool for the metavg. It
220 6559d7f8 Helga Velroyen
will be possible to rename storage pools (thus also the default lvm storage
221 6559d7f8 Helga Velroyen
pool). There will be new functionality to ask about what storage pools are
222 6559d7f8 Helga Velroyen
available and of what type. Storage pools will have a storage pool type which is
223 6559d7f8 Helga Velroyen
one of the disk templates. There can be more than one storage pool based on the
224 6559d7f8 Helga Velroyen
same disk template, therefore we will then start referencing the storage pool
225 6559d7f8 Helga Velroyen
name instead of the disk template.
226 6559d7f8 Helga Velroyen
227 de0aa216 Helga Velroyen
Note: As of version 2.10, ``gnt-node list`` only reports storage space
228 de0aa216 Helga Velroyen
information for the default disk template, as supporting more options
229 de0aa216 Helga Velroyen
turned out to be not feasible without storage pools.
230 de0aa216 Helga Velroyen
231 de0aa216 Helga Velroyen
Besides in ``gnt-node list``, storage space information is also
232 de0aa216 Helga Velroyen
displayed in ``gnt-node list-storage``. This will also adapt to the
233 de0aa216 Helga Velroyen
extended storage reporting capabilities. The user can specify a storage
234 de0aa216 Helga Velroyen
type using ``--storage-type``. If he requests storage information about
235 de0aa216 Helga Velroyen
a storage type which does not support space reporting, a warning is
236 de0aa216 Helga Velroyen
emitted. If no storage type is specified explicitely, ``gnt-node
237 de0aa216 Helga Velroyen
list-storage`` will try to report storage on the storage type of the
238 de0aa216 Helga Velroyen
default disk template. If the default disk template's storage type does
239 de0aa216 Helga Velroyen
not support space reporting, an error message is emitted.
240 de0aa216 Helga Velroyen
241 6559d7f8 Helga Velroyen
``gnt-cluster info`` will report which disk templates are enabled, i.e.
242 74df4a99 Helga Velroyen
which ones are supported according to the cluster configuration. Example
243 74df4a99 Helga Velroyen
output::
244 74df4a99 Helga Velroyen
245 74df4a99 Helga Velroyen
  > gnt-cluster info
246 74df4a99 Helga Velroyen
  [...]
247 74df4a99 Helga Velroyen
  Cluster parameters:
248 74df4a99 Helga Velroyen
    - [...]
249 6559d7f8 Helga Velroyen
    - enabled disk templates: plain, drbd, sharedfile, rados
250 74df4a99 Helga Velroyen
    - [...]
251 74df4a99 Helga Velroyen
252 74df4a99 Helga Velroyen
``gnt-node list-storage`` will not be affected by any changes, since this design
253 6559d7f8 Helga Velroyen
is restricted only to free storage reporting for non-shared storage types.
254 ab8747b7 Guido Trotter
255 ab8747b7 Guido Trotter
Allocator changes
256 ab8747b7 Guido Trotter
-----------------
257 ab8747b7 Guido Trotter
258 ab8747b7 Guido Trotter
The iallocator protocol doesn't need to change: since we know which
259 6559d7f8 Helga Velroyen
disk template an instance has, we'll pass only the "free" value for that
260 6559d7f8 Helga Velroyen
disk template to the iallocator, when asking for an allocation to be
261 ab8747b7 Guido Trotter
made. Note that for DRBD nowadays we ignore the case when vg and metavg
262 6559d7f8 Helga Velroyen
are different, and we only consider the main volume group. Fixing this is
263 6559d7f8 Helga Velroyen
outside the scope of this design.
264 ab8747b7 Guido Trotter
265 de0aa216 Helga Velroyen
Although the iallocator protocol itself does not need change, the
266 de0aa216 Helga Velroyen
invocation of the iallocator needs quite some adaption. So far, it
267 de0aa216 Helga Velroyen
always requested LVM storage information no matter if that was the
268 de0aa216 Helga Velroyen
disk template to be considered for the allocation. For instance
269 de0aa216 Helga Velroyen
allocation, this is the disk template of the instance.
270 de0aa216 Helga Velroyen
TODO: consider other allocator requests.
271 de0aa216 Helga Velroyen
272 74df4a99 Helga Velroyen
With this design, we ensure forward-compatibility with respect to storage
273 6559d7f8 Helga Velroyen
pools. For now, we'll report space for all available disk templates that
274 6559d7f8 Helga Velroyen
are based on non-shared storage types, in the future, for all available
275 6559d7f8 Helga Velroyen
storage pools.
276 74df4a99 Helga Velroyen
277 ab8747b7 Guido Trotter
Rebalancing changes
278 ab8747b7 Guido Trotter
-------------------
279 ab8747b7 Guido Trotter
280 ab8747b7 Guido Trotter
Hbal will not need changes, as it handles it already. We don't forecast
281 ab8747b7 Guido Trotter
any changes needed to it.
282 ab8747b7 Guido Trotter
283 ab8747b7 Guido Trotter
Space reporting changes
284 ab8747b7 Guido Trotter
-----------------------
285 ab8747b7 Guido Trotter
286 ab8747b7 Guido Trotter
Hspace will by default report by assuming the allocation will happen on
287 6559d7f8 Helga Velroyen
the default disk template for the cluster/nodegroup. An option will be added
288 ab8747b7 Guido Trotter
to manually specify a different storage.
289 ab8747b7 Guido Trotter
290 74df4a99 Helga Velroyen
Interactions with Partitioned Ganeti
291 74df4a99 Helga Velroyen
------------------------------------
292 74df4a99 Helga Velroyen
293 74df4a99 Helga Velroyen
Also the design for :doc:`Partitioned Ganeti <design-partitioned>` deals
294 74df4a99 Helga Velroyen
with reporting free space. Partitioned Ganeti has a different way to
295 74df4a99 Helga Velroyen
report free space for LVM on nodes where the ``exclusive_storage`` flag
296 6559d7f8 Helga Velroyen
is set. That doesn't interact directly with this design, as the specifics
297 74df4a99 Helga Velroyen
of how the free space is computed is not in the scope of this design.
298 74df4a99 Helga Velroyen
But the ``node info`` call contains the value of the
299 74df4a99 Helga Velroyen
``exclusive_storage`` flag, which is currently only meaningful for the
300 6559d7f8 Helga Velroyen
LVM storage type. Additional flags like the ``exclusive_storage`` flag
301 6559d7f8 Helga Velroyen
for lvm might be useful for other disk templates / storage types as well.
302 32f88ce7 Helga Velroyen
We therefore extend the RPC call with <storage_type>,<key> to
303 32f88ce7 Helga Velroyen
<storage_type>,<key>,[<param>] to include any disk-template-specific
304 6559d7f8 Helga Velroyen
(or storage-type specific) parameters in the RPC call.
305 74df4a99 Helga Velroyen
306 74df4a99 Helga Velroyen
The reporting of free spindles, also part of Partitioned Ganeti, is not
307 74df4a99 Helga Velroyen
concerned with this design doc, as those are seen as a separate resource.
308 74df4a99 Helga Velroyen
309 ab8747b7 Guido Trotter
.. vim: set textwidth=72 :
310 ab8747b7 Guido Trotter
.. Local Variables:
311 ab8747b7 Guido Trotter
.. mode: rst
312 ab8747b7 Guido Trotter
.. fill-column: 72
313 ab8747b7 Guido Trotter
.. End: