root / src / Ganeti / Constants.hs @ 48e4da5c
History | View | Annotate | Download (114.6 kB)
1 | e1235448 | Jose A. Lopes | {-# OPTIONS -fno-warn-type-defaults #-} |
---|---|---|---|
2 | e1235448 | Jose A. Lopes | {-| Constants contains the Haskell constants |
3 | d99d1e36 | Iustin Pop | |
4 | e1235448 | Jose A. Lopes | The constants in this module are used in Haskell and are also |
5 | e1235448 | Jose A. Lopes | converted to Python. |
6 | e1235448 | Jose A. Lopes | |
7 | e1235448 | Jose A. Lopes | Do not write any definitions in this file other than constants. Do |
8 | e1235448 | Jose A. Lopes | not even write helper functions. The definitions in this module are |
9 | e1235448 | Jose A. Lopes | automatically stripped to build the Makefile.am target |
10 | e1235448 | Jose A. Lopes | 'ListConstants.hs'. If there are helper functions in this module, |
11 | e1235448 | Jose A. Lopes | they will also be dragged and it will cause compilation to fail. |
12 | e1235448 | Jose A. Lopes | Therefore, all helper functions should go to a separate module and |
13 | e1235448 | Jose A. Lopes | imported. |
14 | d99d1e36 | Iustin Pop | |
15 | d99d1e36 | Iustin Pop | -} |
16 | d99d1e36 | Iustin Pop | |
17 | d99d1e36 | Iustin Pop | {- |
18 | d99d1e36 | Iustin Pop | |
19 | fec1fac1 | Jose A. Lopes | Copyright (C) 2013 Google Inc. |
20 | d99d1e36 | Iustin Pop | |
21 | d99d1e36 | Iustin Pop | This program is free software; you can redistribute it and/or modify |
22 | d99d1e36 | Iustin Pop | it under the terms of the GNU General Public License as published by |
23 | d99d1e36 | Iustin Pop | the Free Software Foundation; either version 2 of the License, or |
24 | d99d1e36 | Iustin Pop | (at your option) any later version. |
25 | d99d1e36 | Iustin Pop | |
26 | d99d1e36 | Iustin Pop | This program is distributed in the hope that it will be useful, but |
27 | d99d1e36 | Iustin Pop | WITHOUT ANY WARRANTY; without even the implied warranty of |
28 | d99d1e36 | Iustin Pop | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
29 | d99d1e36 | Iustin Pop | General Public License for more details. |
30 | d99d1e36 | Iustin Pop | |
31 | d99d1e36 | Iustin Pop | You should have received a copy of the GNU General Public License |
32 | d99d1e36 | Iustin Pop | along with this program; if not, write to the Free Software |
33 | d99d1e36 | Iustin Pop | Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA |
34 | d99d1e36 | Iustin Pop | 02110-1301, USA. |
35 | d99d1e36 | Iustin Pop | |
36 | d99d1e36 | Iustin Pop | -} |
37 | e1235448 | Jose A. Lopes | module Ganeti.Constants where |
38 | e1235448 | Jose A. Lopes | |
39 | e1235448 | Jose A. Lopes | import Control.Arrow ((***)) |
40 | e1235448 | Jose A. Lopes | import Data.List ((\\)) |
41 | e1235448 | Jose A. Lopes | import Data.Map (Map) |
42 | e1235448 | Jose A. Lopes | import qualified Data.Map as Map (empty, fromList, keys, insert) |
43 | e1235448 | Jose A. Lopes | |
44 | e1235448 | Jose A. Lopes | import qualified AutoConf |
45 | 07e68848 | Thomas Thrainer | import Ganeti.ConstantUtils (PythonChar(..), FrozenSet, Protocol(..), |
46 | 07e68848 | Thomas Thrainer | buildVersion) |
47 | e1235448 | Jose A. Lopes | import qualified Ganeti.ConstantUtils as ConstantUtils |
48 | e1235448 | Jose A. Lopes | import Ganeti.HTools.Types (AutoRepairResult(..), AutoRepairType(..)) |
49 | e1235448 | Jose A. Lopes | import qualified Ganeti.HTools.Types as Types |
50 | e1235448 | Jose A. Lopes | import Ganeti.Logging (SyslogUsage(..)) |
51 | e1235448 | Jose A. Lopes | import qualified Ganeti.Logging as Logging (syslogUsageToRaw) |
52 | e1235448 | Jose A. Lopes | import qualified Ganeti.Runtime as Runtime |
53 | e1235448 | Jose A. Lopes | import Ganeti.Runtime (GanetiDaemon(..), MiscGroup(..), GanetiGroup(..), |
54 | e1235448 | Jose A. Lopes | ExtraLogReason(..)) |
55 | e1235448 | Jose A. Lopes | import Ganeti.THH (PyValueEx(..)) |
56 | e1235448 | Jose A. Lopes | import Ganeti.Types |
57 | e1235448 | Jose A. Lopes | import qualified Ganeti.Types as Types |
58 | e1235448 | Jose A. Lopes | import Ganeti.Confd.Types (ConfdRequestType(..), ConfdReqField(..), |
59 | e1235448 | Jose A. Lopes | ConfdReplyStatus(..), ConfdNodeRole(..), |
60 | e1235448 | Jose A. Lopes | ConfdErrorType(..)) |
61 | e1235448 | Jose A. Lopes | import qualified Ganeti.Confd.Types as Types |
62 | e1235448 | Jose A. Lopes | |
63 | e1235448 | Jose A. Lopes | {-# ANN module "HLint: ignore Use camelCase" #-} |
64 | e1235448 | Jose A. Lopes | |
65 | e1235448 | Jose A. Lopes | -- * 'autoconf' constants for Python only ('autotools/build-bash-completion') |
66 | e1235448 | Jose A. Lopes | |
67 | e1235448 | Jose A. Lopes | htoolsProgs :: [String] |
68 | e1235448 | Jose A. Lopes | htoolsProgs = AutoConf.htoolsProgs |
69 | e1235448 | Jose A. Lopes | |
70 | e1235448 | Jose A. Lopes | -- * 'autoconf' constants for Python only ('lib/constants.py') |
71 | e1235448 | Jose A. Lopes | |
72 | e1235448 | Jose A. Lopes | drbdBarriers :: String |
73 | e1235448 | Jose A. Lopes | drbdBarriers = AutoConf.drbdBarriers |
74 | e1235448 | Jose A. Lopes | |
75 | e1235448 | Jose A. Lopes | drbdNoMetaFlush :: Bool |
76 | e1235448 | Jose A. Lopes | drbdNoMetaFlush = AutoConf.drbdNoMetaFlush |
77 | e1235448 | Jose A. Lopes | |
78 | e1235448 | Jose A. Lopes | lvmStripecount :: Int |
79 | e1235448 | Jose A. Lopes | lvmStripecount = AutoConf.lvmStripecount |
80 | e1235448 | Jose A. Lopes | |
81 | e1235448 | Jose A. Lopes | hasGnuLn :: Bool |
82 | e1235448 | Jose A. Lopes | hasGnuLn = AutoConf.hasGnuLn |
83 | e1235448 | Jose A. Lopes | |
84 | e1235448 | Jose A. Lopes | -- * 'autoconf' constants for Python only ('lib/pathutils.py') |
85 | e1235448 | Jose A. Lopes | |
86 | e1235448 | Jose A. Lopes | -- ** Build-time constants |
87 | e1235448 | Jose A. Lopes | |
88 | e1235448 | Jose A. Lopes | exportDir :: String |
89 | e1235448 | Jose A. Lopes | exportDir = AutoConf.exportDir |
90 | e1235448 | Jose A. Lopes | |
91 | e1235448 | Jose A. Lopes | osSearchPath :: [String] |
92 | e1235448 | Jose A. Lopes | osSearchPath = AutoConf.osSearchPath |
93 | e1235448 | Jose A. Lopes | |
94 | e1235448 | Jose A. Lopes | esSearchPath :: [String] |
95 | e1235448 | Jose A. Lopes | esSearchPath = AutoConf.esSearchPath |
96 | e1235448 | Jose A. Lopes | |
97 | e1235448 | Jose A. Lopes | sshConfigDir :: String |
98 | e1235448 | Jose A. Lopes | sshConfigDir = AutoConf.sshConfigDir |
99 | e1235448 | Jose A. Lopes | |
100 | e1235448 | Jose A. Lopes | xenConfigDir :: String |
101 | e1235448 | Jose A. Lopes | xenConfigDir = AutoConf.xenConfigDir |
102 | e1235448 | Jose A. Lopes | |
103 | e1235448 | Jose A. Lopes | sysconfdir :: String |
104 | e1235448 | Jose A. Lopes | sysconfdir = AutoConf.sysconfdir |
105 | e1235448 | Jose A. Lopes | |
106 | e1235448 | Jose A. Lopes | toolsdir :: String |
107 | e1235448 | Jose A. Lopes | toolsdir = AutoConf.toolsdir |
108 | e1235448 | Jose A. Lopes | |
109 | e1235448 | Jose A. Lopes | localstatedir :: String |
110 | e1235448 | Jose A. Lopes | localstatedir = AutoConf.localstatedir |
111 | e1235448 | Jose A. Lopes | |
112 | e1235448 | Jose A. Lopes | -- ** Paths which don't change for a virtual cluster |
113 | e1235448 | Jose A. Lopes | |
114 | e1235448 | Jose A. Lopes | pkglibdir :: String |
115 | e1235448 | Jose A. Lopes | pkglibdir = AutoConf.pkglibdir |
116 | e1235448 | Jose A. Lopes | |
117 | e1235448 | Jose A. Lopes | sharedir :: String |
118 | e1235448 | Jose A. Lopes | sharedir = AutoConf.sharedir |
119 | e1235448 | Jose A. Lopes | |
120 | e1235448 | Jose A. Lopes | -- * 'autoconf' constants for Python only ('lib/build/sphinx_ext.py') |
121 | e1235448 | Jose A. Lopes | |
122 | e1235448 | Jose A. Lopes | manPages :: Map String Int |
123 | e1235448 | Jose A. Lopes | manPages = Map.fromList AutoConf.manPages |
124 | e1235448 | Jose A. Lopes | |
125 | e1235448 | Jose A. Lopes | -- * 'autoconf' constants for QA cluster only ('qa/qa_cluster.py') |
126 | e1235448 | Jose A. Lopes | |
127 | e1235448 | Jose A. Lopes | versionedsharedir :: String |
128 | e1235448 | Jose A. Lopes | versionedsharedir = AutoConf.versionedsharedir |
129 | e1235448 | Jose A. Lopes | |
130 | e1235448 | Jose A. Lopes | -- * 'autoconf' constants for Python only ('tests/py/docs_unittest.py') |
131 | e1235448 | Jose A. Lopes | |
132 | e1235448 | Jose A. Lopes | gntScripts :: [String] |
133 | e1235448 | Jose A. Lopes | gntScripts = AutoConf.gntScripts |
134 | e1235448 | Jose A. Lopes | |
135 | e1235448 | Jose A. Lopes | -- * Various versions |
136 | e1235448 | Jose A. Lopes | |
137 | e1235448 | Jose A. Lopes | releaseVersion :: String |
138 | e1235448 | Jose A. Lopes | releaseVersion = AutoConf.packageVersion |
139 | e1235448 | Jose A. Lopes | |
140 | e1235448 | Jose A. Lopes | versionMajor :: Int |
141 | e1235448 | Jose A. Lopes | versionMajor = AutoConf.versionMajor |
142 | e1235448 | Jose A. Lopes | |
143 | e1235448 | Jose A. Lopes | versionMinor :: Int |
144 | e1235448 | Jose A. Lopes | versionMinor = AutoConf.versionMinor |
145 | e1235448 | Jose A. Lopes | |
146 | e1235448 | Jose A. Lopes | versionRevision :: Int |
147 | e1235448 | Jose A. Lopes | versionRevision = AutoConf.versionRevision |
148 | e1235448 | Jose A. Lopes | |
149 | e1235448 | Jose A. Lopes | dirVersion :: String |
150 | e1235448 | Jose A. Lopes | dirVersion = AutoConf.dirVersion |
151 | e1235448 | Jose A. Lopes | |
152 | e1235448 | Jose A. Lopes | osApiV10 :: Int |
153 | e1235448 | Jose A. Lopes | osApiV10 = 10 |
154 | e1235448 | Jose A. Lopes | |
155 | e1235448 | Jose A. Lopes | osApiV15 :: Int |
156 | e1235448 | Jose A. Lopes | osApiV15 = 15 |
157 | e1235448 | Jose A. Lopes | |
158 | e1235448 | Jose A. Lopes | osApiV20 :: Int |
159 | e1235448 | Jose A. Lopes | osApiV20 = 20 |
160 | e1235448 | Jose A. Lopes | |
161 | e1235448 | Jose A. Lopes | osApiVersions :: FrozenSet Int |
162 | e1235448 | Jose A. Lopes | osApiVersions = ConstantUtils.mkSet [osApiV10, osApiV15, osApiV20] |
163 | e1235448 | Jose A. Lopes | |
164 | e1235448 | Jose A. Lopes | exportVersion :: Int |
165 | e1235448 | Jose A. Lopes | exportVersion = 0 |
166 | e1235448 | Jose A. Lopes | |
167 | e1235448 | Jose A. Lopes | rapiVersion :: Int |
168 | e1235448 | Jose A. Lopes | rapiVersion = 2 |
169 | e1235448 | Jose A. Lopes | |
170 | e1235448 | Jose A. Lopes | configMajor :: Int |
171 | e1235448 | Jose A. Lopes | configMajor = AutoConf.versionMajor |
172 | e1235448 | Jose A. Lopes | |
173 | e1235448 | Jose A. Lopes | configMinor :: Int |
174 | e1235448 | Jose A. Lopes | configMinor = AutoConf.versionMinor |
175 | e1235448 | Jose A. Lopes | |
176 | e1235448 | Jose A. Lopes | -- | The configuration is supposed to remain stable across |
177 | e1235448 | Jose A. Lopes | -- revisions. Therefore, the revision number is cleared to '0'. |
178 | e1235448 | Jose A. Lopes | configRevision :: Int |
179 | e1235448 | Jose A. Lopes | configRevision = 0 |
180 | e1235448 | Jose A. Lopes | |
181 | e1235448 | Jose A. Lopes | configVersion :: Int |
182 | e1235448 | Jose A. Lopes | configVersion = buildVersion configMajor configMinor configRevision |
183 | e1235448 | Jose A. Lopes | |
184 | e1235448 | Jose A. Lopes | -- | Similarly to the configuration (see 'configRevision'), the |
185 | e1235448 | Jose A. Lopes | -- protocols are supposed to remain stable across revisions. |
186 | e1235448 | Jose A. Lopes | protocolVersion :: Int |
187 | e1235448 | Jose A. Lopes | protocolVersion = buildVersion configMajor configMinor configRevision |
188 | e1235448 | Jose A. Lopes | |
189 | e1235448 | Jose A. Lopes | -- * User separation |
190 | e1235448 | Jose A. Lopes | |
191 | e1235448 | Jose A. Lopes | daemonsGroup :: String |
192 | e1235448 | Jose A. Lopes | daemonsGroup = Runtime.daemonGroup (ExtraGroup DaemonsGroup) |
193 | e1235448 | Jose A. Lopes | |
194 | e1235448 | Jose A. Lopes | adminGroup :: String |
195 | e1235448 | Jose A. Lopes | adminGroup = Runtime.daemonGroup (ExtraGroup AdminGroup) |
196 | e1235448 | Jose A. Lopes | |
197 | e1235448 | Jose A. Lopes | masterdUser :: String |
198 | e1235448 | Jose A. Lopes | masterdUser = Runtime.daemonUser GanetiMasterd |
199 | e1235448 | Jose A. Lopes | |
200 | e1235448 | Jose A. Lopes | masterdGroup :: String |
201 | e1235448 | Jose A. Lopes | masterdGroup = Runtime.daemonGroup (DaemonGroup GanetiMasterd) |
202 | e1235448 | Jose A. Lopes | |
203 | e1235448 | Jose A. Lopes | rapiUser :: String |
204 | e1235448 | Jose A. Lopes | rapiUser = Runtime.daemonUser GanetiRapi |
205 | e1235448 | Jose A. Lopes | |
206 | e1235448 | Jose A. Lopes | rapiGroup :: String |
207 | e1235448 | Jose A. Lopes | rapiGroup = Runtime.daemonGroup (DaemonGroup GanetiRapi) |
208 | e1235448 | Jose A. Lopes | |
209 | e1235448 | Jose A. Lopes | confdUser :: String |
210 | e1235448 | Jose A. Lopes | confdUser = Runtime.daemonUser GanetiConfd |
211 | e1235448 | Jose A. Lopes | |
212 | e1235448 | Jose A. Lopes | confdGroup :: String |
213 | e1235448 | Jose A. Lopes | confdGroup = Runtime.daemonGroup (DaemonGroup GanetiConfd) |
214 | e1235448 | Jose A. Lopes | |
215 | e1235448 | Jose A. Lopes | luxidUser :: String |
216 | e1235448 | Jose A. Lopes | luxidUser = Runtime.daemonUser GanetiLuxid |
217 | e1235448 | Jose A. Lopes | |
218 | e1235448 | Jose A. Lopes | luxidGroup :: String |
219 | e1235448 | Jose A. Lopes | luxidGroup = Runtime.daemonGroup (DaemonGroup GanetiLuxid) |
220 | e1235448 | Jose A. Lopes | |
221 | e1235448 | Jose A. Lopes | nodedUser :: String |
222 | e1235448 | Jose A. Lopes | nodedUser = Runtime.daemonUser GanetiNoded |
223 | e1235448 | Jose A. Lopes | |
224 | e1235448 | Jose A. Lopes | nodedGroup :: String |
225 | e1235448 | Jose A. Lopes | nodedGroup = Runtime.daemonGroup (DaemonGroup GanetiNoded) |
226 | e1235448 | Jose A. Lopes | |
227 | e1235448 | Jose A. Lopes | mondUser :: String |
228 | e1235448 | Jose A. Lopes | mondUser = Runtime.daemonUser GanetiMond |
229 | e1235448 | Jose A. Lopes | |
230 | e1235448 | Jose A. Lopes | mondGroup :: String |
231 | e1235448 | Jose A. Lopes | mondGroup = Runtime.daemonGroup (DaemonGroup GanetiMond) |
232 | e1235448 | Jose A. Lopes | |
233 | e1235448 | Jose A. Lopes | sshLoginUser :: String |
234 | e1235448 | Jose A. Lopes | sshLoginUser = AutoConf.sshLoginUser |
235 | e1235448 | Jose A. Lopes | |
236 | e1235448 | Jose A. Lopes | sshConsoleUser :: String |
237 | e1235448 | Jose A. Lopes | sshConsoleUser = AutoConf.sshConsoleUser |
238 | e1235448 | Jose A. Lopes | |
239 | e1235448 | Jose A. Lopes | -- * Cpu pinning separators and constants |
240 | e1235448 | Jose A. Lopes | |
241 | e1235448 | Jose A. Lopes | cpuPinningSep :: String |
242 | e1235448 | Jose A. Lopes | cpuPinningSep = ":" |
243 | e1235448 | Jose A. Lopes | |
244 | e1235448 | Jose A. Lopes | cpuPinningAll :: String |
245 | e1235448 | Jose A. Lopes | cpuPinningAll = "all" |
246 | e1235448 | Jose A. Lopes | |
247 | e1235448 | Jose A. Lopes | -- | Internal representation of "all" |
248 | e1235448 | Jose A. Lopes | cpuPinningAllVal :: Int |
249 | e1235448 | Jose A. Lopes | cpuPinningAllVal = -1 |
250 | e1235448 | Jose A. Lopes | |
251 | e1235448 | Jose A. Lopes | -- | One "all" entry in a CPU list means CPU pinning is off |
252 | e1235448 | Jose A. Lopes | cpuPinningOff :: [Int] |
253 | e1235448 | Jose A. Lopes | cpuPinningOff = [cpuPinningAllVal] |
254 | e1235448 | Jose A. Lopes | |
255 | e1235448 | Jose A. Lopes | -- | A Xen-specific implementation detail is that there is no way to |
256 | e1235448 | Jose A. Lopes | -- actually say "use any cpu for pinning" in a Xen configuration file, |
257 | e1235448 | Jose A. Lopes | -- as opposed to the command line, where you can say |
258 | e1235448 | Jose A. Lopes | -- @ |
259 | e1235448 | Jose A. Lopes | -- xm vcpu-pin <domain> <vcpu> all |
260 | e1235448 | Jose A. Lopes | -- @ |
261 | e1235448 | Jose A. Lopes | -- |
262 | e1235448 | Jose A. Lopes | -- The workaround used in Xen is "0-63" (see source code function |
263 | e1235448 | Jose A. Lopes | -- "xm_vcpu_pin" in @<xen-source>/tools/python/xen/xm/main.py@). |
264 | e1235448 | Jose A. Lopes | -- |
265 | e1235448 | Jose A. Lopes | -- To support future changes, the following constant is treated as a |
266 | e1235448 | Jose A. Lopes | -- blackbox string that simply means "use any cpu for pinning under |
267 | e1235448 | Jose A. Lopes | -- xen". |
268 | e1235448 | Jose A. Lopes | cpuPinningAllXen :: String |
269 | e1235448 | Jose A. Lopes | cpuPinningAllXen = "0-63" |
270 | e1235448 | Jose A. Lopes | |
271 | e1235448 | Jose A. Lopes | -- | A KVM-specific implementation detail - the following value is |
272 | e1235448 | Jose A. Lopes | -- used to set CPU affinity to all processors (--0 through --31), per |
273 | e1235448 | Jose A. Lopes | -- taskset man page. |
274 | e1235448 | Jose A. Lopes | -- |
275 | e1235448 | Jose A. Lopes | -- FIXME: This only works for machines with up to 32 CPU cores |
276 | e1235448 | Jose A. Lopes | cpuPinningAllKvm :: Int |
277 | e1235448 | Jose A. Lopes | cpuPinningAllKvm = 0xFFFFFFFF |
278 | e1235448 | Jose A. Lopes | |
279 | e1235448 | Jose A. Lopes | -- * Wipe |
280 | e1235448 | Jose A. Lopes | |
281 | e1235448 | Jose A. Lopes | ddCmd :: String |
282 | e1235448 | Jose A. Lopes | ddCmd = "dd" |
283 | e1235448 | Jose A. Lopes | |
284 | e1235448 | Jose A. Lopes | -- | 1GB |
285 | e1235448 | Jose A. Lopes | maxWipeChunk :: Int |
286 | e1235448 | Jose A. Lopes | maxWipeChunk = 1024 |
287 | e1235448 | Jose A. Lopes | |
288 | e1235448 | Jose A. Lopes | minWipeChunkPercent :: Int |
289 | e1235448 | Jose A. Lopes | minWipeChunkPercent = 10 |
290 | e1235448 | Jose A. Lopes | |
291 | e1235448 | Jose A. Lopes | -- * Directories |
292 | e1235448 | Jose A. Lopes | |
293 | e1235448 | Jose A. Lopes | runDirsMode :: Int |
294 | e1235448 | Jose A. Lopes | runDirsMode = 0o775 |
295 | e1235448 | Jose A. Lopes | |
296 | e1235448 | Jose A. Lopes | secureDirMode :: Int |
297 | e1235448 | Jose A. Lopes | secureDirMode = 0o700 |
298 | e1235448 | Jose A. Lopes | |
299 | e1235448 | Jose A. Lopes | secureFileMode :: Int |
300 | e1235448 | Jose A. Lopes | secureFileMode = 0o600 |
301 | e1235448 | Jose A. Lopes | |
302 | e1235448 | Jose A. Lopes | adoptableBlockdevRoot :: String |
303 | e1235448 | Jose A. Lopes | adoptableBlockdevRoot = "/dev/disk/" |
304 | e1235448 | Jose A. Lopes | |
305 | e1235448 | Jose A. Lopes | -- * 'autoconf' enable/disable |
306 | e1235448 | Jose A. Lopes | |
307 | e1235448 | Jose A. Lopes | enableConfd :: Bool |
308 | e1235448 | Jose A. Lopes | enableConfd = AutoConf.enableConfd |
309 | e1235448 | Jose A. Lopes | |
310 | e1235448 | Jose A. Lopes | enableMond :: Bool |
311 | e1235448 | Jose A. Lopes | enableMond = AutoConf.enableMond |
312 | e1235448 | Jose A. Lopes | |
313 | e1235448 | Jose A. Lopes | enableRestrictedCommands :: Bool |
314 | e1235448 | Jose A. Lopes | enableRestrictedCommands = AutoConf.enableRestrictedCommands |
315 | e1235448 | Jose A. Lopes | |
316 | e1235448 | Jose A. Lopes | -- * SSH constants |
317 | e1235448 | Jose A. Lopes | |
318 | e1235448 | Jose A. Lopes | ssh :: String |
319 | e1235448 | Jose A. Lopes | ssh = "ssh" |
320 | e1235448 | Jose A. Lopes | |
321 | e1235448 | Jose A. Lopes | scp :: String |
322 | e1235448 | Jose A. Lopes | scp = "scp" |
323 | e1235448 | Jose A. Lopes | |
324 | e1235448 | Jose A. Lopes | -- * Daemons |
325 | e1235448 | Jose A. Lopes | |
326 | e1235448 | Jose A. Lopes | confd :: String |
327 | e1235448 | Jose A. Lopes | confd = Runtime.daemonName GanetiConfd |
328 | e1235448 | Jose A. Lopes | |
329 | e1235448 | Jose A. Lopes | masterd :: String |
330 | e1235448 | Jose A. Lopes | masterd = Runtime.daemonName GanetiMasterd |
331 | e1235448 | Jose A. Lopes | |
332 | e1235448 | Jose A. Lopes | mond :: String |
333 | e1235448 | Jose A. Lopes | mond = Runtime.daemonName GanetiMond |
334 | e1235448 | Jose A. Lopes | |
335 | e1235448 | Jose A. Lopes | noded :: String |
336 | e1235448 | Jose A. Lopes | noded = Runtime.daemonName GanetiNoded |
337 | e1235448 | Jose A. Lopes | |
338 | e1235448 | Jose A. Lopes | luxid :: String |
339 | e1235448 | Jose A. Lopes | luxid = Runtime.daemonName GanetiLuxid |
340 | e1235448 | Jose A. Lopes | |
341 | e1235448 | Jose A. Lopes | rapi :: String |
342 | e1235448 | Jose A. Lopes | rapi = Runtime.daemonName GanetiRapi |
343 | e1235448 | Jose A. Lopes | |
344 | e1235448 | Jose A. Lopes | daemons :: FrozenSet String |
345 | e1235448 | Jose A. Lopes | daemons = |
346 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [confd, |
347 | e1235448 | Jose A. Lopes | luxid, |
348 | e1235448 | Jose A. Lopes | masterd, |
349 | e1235448 | Jose A. Lopes | mond, |
350 | e1235448 | Jose A. Lopes | noded, |
351 | e1235448 | Jose A. Lopes | rapi] |
352 | e1235448 | Jose A. Lopes | |
353 | e1235448 | Jose A. Lopes | defaultConfdPort :: Int |
354 | e1235448 | Jose A. Lopes | defaultConfdPort = 1814 |
355 | e1235448 | Jose A. Lopes | |
356 | e1235448 | Jose A. Lopes | defaultMondPort :: Int |
357 | e1235448 | Jose A. Lopes | defaultMondPort = 1815 |
358 | e1235448 | Jose A. Lopes | |
359 | e1235448 | Jose A. Lopes | defaultNodedPort :: Int |
360 | e1235448 | Jose A. Lopes | defaultNodedPort = 1811 |
361 | e1235448 | Jose A. Lopes | |
362 | e1235448 | Jose A. Lopes | defaultRapiPort :: Int |
363 | e1235448 | Jose A. Lopes | defaultRapiPort = 5080 |
364 | e1235448 | Jose A. Lopes | |
365 | e1235448 | Jose A. Lopes | daemonsPorts :: Map String (Protocol, Int) |
366 | e1235448 | Jose A. Lopes | daemonsPorts = |
367 | e1235448 | Jose A. Lopes | Map.fromList [(confd, (Udp, defaultConfdPort)), |
368 | e1235448 | Jose A. Lopes | (mond, (Tcp, defaultMondPort)), |
369 | e1235448 | Jose A. Lopes | (noded, (Tcp, defaultNodedPort)), |
370 | e1235448 | Jose A. Lopes | (rapi, (Tcp, defaultRapiPort)), |
371 | e1235448 | Jose A. Lopes | (ssh, (Tcp, 22))] |
372 | e1235448 | Jose A. Lopes | |
373 | e1235448 | Jose A. Lopes | firstDrbdPort :: Int |
374 | e1235448 | Jose A. Lopes | firstDrbdPort = 11000 |
375 | e1235448 | Jose A. Lopes | |
376 | e1235448 | Jose A. Lopes | lastDrbdPort :: Int |
377 | e1235448 | Jose A. Lopes | lastDrbdPort = 14999 |
378 | e1235448 | Jose A. Lopes | |
379 | e1235448 | Jose A. Lopes | daemonsLogbase :: Map String String |
380 | e1235448 | Jose A. Lopes | daemonsLogbase = |
381 | e1235448 | Jose A. Lopes | Map.fromList |
382 | e1235448 | Jose A. Lopes | [ (Runtime.daemonName d, Runtime.daemonLogBase d) | d <- [minBound..] ] |
383 | e1235448 | Jose A. Lopes | |
384 | e1235448 | Jose A. Lopes | daemonsExtraLogbase :: Map String (Map String String) |
385 | e1235448 | Jose A. Lopes | daemonsExtraLogbase = |
386 | e1235448 | Jose A. Lopes | Map.fromList $ |
387 | e1235448 | Jose A. Lopes | map (Runtime.daemonName *** id) |
388 | e1235448 | Jose A. Lopes | [ (GanetiMond, Map.fromList |
389 | e1235448 | Jose A. Lopes | [ ("access", Runtime.daemonsExtraLogbase GanetiMond AccessLog) |
390 | e1235448 | Jose A. Lopes | , ("error", Runtime.daemonsExtraLogbase GanetiMond ErrorLog) |
391 | e1235448 | Jose A. Lopes | ]) |
392 | e1235448 | Jose A. Lopes | ] |
393 | e1235448 | Jose A. Lopes | |
394 | e1235448 | Jose A. Lopes | extraLogreasonAccess :: String |
395 | e1235448 | Jose A. Lopes | extraLogreasonAccess = Runtime.daemonsExtraLogbase GanetiMond AccessLog |
396 | e1235448 | Jose A. Lopes | |
397 | e1235448 | Jose A. Lopes | extraLogreasonError :: String |
398 | e1235448 | Jose A. Lopes | extraLogreasonError = Runtime.daemonsExtraLogbase GanetiMond ErrorLog |
399 | e1235448 | Jose A. Lopes | |
400 | e1235448 | Jose A. Lopes | devConsole :: String |
401 | e1235448 | Jose A. Lopes | devConsole = ConstantUtils.devConsole |
402 | e1235448 | Jose A. Lopes | |
403 | e1235448 | Jose A. Lopes | procMounts :: String |
404 | e1235448 | Jose A. Lopes | procMounts = "/proc/mounts" |
405 | e1235448 | Jose A. Lopes | |
406 | e1235448 | Jose A. Lopes | -- * Luxi (Local UniX Interface) related constants |
407 | e1235448 | Jose A. Lopes | |
408 | e1235448 | Jose A. Lopes | luxiEom :: PythonChar |
409 | e1235448 | Jose A. Lopes | luxiEom = PythonChar '\x03' |
410 | e1235448 | Jose A. Lopes | |
411 | e1235448 | Jose A. Lopes | -- | Environment variable for the luxi override socket |
412 | e1235448 | Jose A. Lopes | luxiOverride :: String |
413 | e1235448 | Jose A. Lopes | luxiOverride = "FORCE_LUXI_SOCKET" |
414 | e1235448 | Jose A. Lopes | |
415 | e1235448 | Jose A. Lopes | luxiOverrideMaster :: String |
416 | e1235448 | Jose A. Lopes | luxiOverrideMaster = "master" |
417 | e1235448 | Jose A. Lopes | |
418 | e1235448 | Jose A. Lopes | luxiOverrideQuery :: String |
419 | e1235448 | Jose A. Lopes | luxiOverrideQuery = "query" |
420 | e1235448 | Jose A. Lopes | |
421 | e1235448 | Jose A. Lopes | luxiVersion :: Int |
422 | e1235448 | Jose A. Lopes | luxiVersion = configVersion |
423 | e1235448 | Jose A. Lopes | |
424 | e1235448 | Jose A. Lopes | -- * Syslog |
425 | e1235448 | Jose A. Lopes | |
426 | e1235448 | Jose A. Lopes | syslogUsage :: String |
427 | e1235448 | Jose A. Lopes | syslogUsage = AutoConf.syslogUsage |
428 | e1235448 | Jose A. Lopes | |
429 | e1235448 | Jose A. Lopes | syslogNo :: String |
430 | e1235448 | Jose A. Lopes | syslogNo = Logging.syslogUsageToRaw SyslogNo |
431 | e1235448 | Jose A. Lopes | |
432 | e1235448 | Jose A. Lopes | syslogYes :: String |
433 | e1235448 | Jose A. Lopes | syslogYes = Logging.syslogUsageToRaw SyslogYes |
434 | e1235448 | Jose A. Lopes | |
435 | e1235448 | Jose A. Lopes | syslogOnly :: String |
436 | e1235448 | Jose A. Lopes | syslogOnly = Logging.syslogUsageToRaw SyslogOnly |
437 | e1235448 | Jose A. Lopes | |
438 | e1235448 | Jose A. Lopes | syslogSocket :: String |
439 | e1235448 | Jose A. Lopes | syslogSocket = "/dev/log" |
440 | e1235448 | Jose A. Lopes | |
441 | e1235448 | Jose A. Lopes | exportConfFile :: String |
442 | e1235448 | Jose A. Lopes | exportConfFile = "config.ini" |
443 | e1235448 | Jose A. Lopes | |
444 | e1235448 | Jose A. Lopes | -- * Xen |
445 | e1235448 | Jose A. Lopes | |
446 | e1235448 | Jose A. Lopes | xenBootloader :: String |
447 | e1235448 | Jose A. Lopes | xenBootloader = AutoConf.xenBootloader |
448 | e1235448 | Jose A. Lopes | |
449 | e1235448 | Jose A. Lopes | xenCmdXl :: String |
450 | e1235448 | Jose A. Lopes | xenCmdXl = "xl" |
451 | e1235448 | Jose A. Lopes | |
452 | e1235448 | Jose A. Lopes | xenCmdXm :: String |
453 | e1235448 | Jose A. Lopes | xenCmdXm = "xm" |
454 | e1235448 | Jose A. Lopes | |
455 | e1235448 | Jose A. Lopes | xenInitrd :: String |
456 | e1235448 | Jose A. Lopes | xenInitrd = AutoConf.xenInitrd |
457 | e1235448 | Jose A. Lopes | |
458 | e1235448 | Jose A. Lopes | xenKernel :: String |
459 | e1235448 | Jose A. Lopes | xenKernel = AutoConf.xenKernel |
460 | e1235448 | Jose A. Lopes | |
461 | e1235448 | Jose A. Lopes | -- FIXME: perhaps rename to 'validXenCommands' for consistency with |
462 | e1235448 | Jose A. Lopes | -- other constants |
463 | e1235448 | Jose A. Lopes | knownXenCommands :: FrozenSet String |
464 | e1235448 | Jose A. Lopes | knownXenCommands = ConstantUtils.mkSet [xenCmdXl, xenCmdXm] |
465 | e1235448 | Jose A. Lopes | |
466 | e1235448 | Jose A. Lopes | -- * KVM and socat |
467 | e1235448 | Jose A. Lopes | |
468 | e1235448 | Jose A. Lopes | kvmPath :: String |
469 | e1235448 | Jose A. Lopes | kvmPath = AutoConf.kvmPath |
470 | e1235448 | Jose A. Lopes | |
471 | e1235448 | Jose A. Lopes | kvmKernel :: String |
472 | e1235448 | Jose A. Lopes | kvmKernel = AutoConf.kvmKernel |
473 | e1235448 | Jose A. Lopes | |
474 | e1235448 | Jose A. Lopes | socatEscapeCode :: String |
475 | e1235448 | Jose A. Lopes | socatEscapeCode = "0x1d" |
476 | e1235448 | Jose A. Lopes | |
477 | e1235448 | Jose A. Lopes | socatPath :: String |
478 | e1235448 | Jose A. Lopes | socatPath = AutoConf.socatPath |
479 | e1235448 | Jose A. Lopes | |
480 | e1235448 | Jose A. Lopes | socatUseCompress :: Bool |
481 | e1235448 | Jose A. Lopes | socatUseCompress = AutoConf.socatUseCompress |
482 | e1235448 | Jose A. Lopes | |
483 | e1235448 | Jose A. Lopes | socatUseEscape :: Bool |
484 | e1235448 | Jose A. Lopes | socatUseEscape = AutoConf.socatUseEscape |
485 | e1235448 | Jose A. Lopes | |
486 | e1235448 | Jose A. Lopes | -- * Console types |
487 | e1235448 | Jose A. Lopes | |
488 | e1235448 | Jose A. Lopes | -- | Display a message for console access |
489 | e1235448 | Jose A. Lopes | consMessage :: String |
490 | e1235448 | Jose A. Lopes | consMessage = "msg" |
491 | e1235448 | Jose A. Lopes | |
492 | e1235448 | Jose A. Lopes | -- | Console as SPICE server |
493 | e1235448 | Jose A. Lopes | consSpice :: String |
494 | e1235448 | Jose A. Lopes | consSpice = "spice" |
495 | e1235448 | Jose A. Lopes | |
496 | e1235448 | Jose A. Lopes | -- | Console as SSH command |
497 | e1235448 | Jose A. Lopes | consSsh :: String |
498 | e1235448 | Jose A. Lopes | consSsh = "ssh" |
499 | e1235448 | Jose A. Lopes | |
500 | e1235448 | Jose A. Lopes | -- | Console as VNC server |
501 | e1235448 | Jose A. Lopes | consVnc :: String |
502 | e1235448 | Jose A. Lopes | consVnc = "vnc" |
503 | e1235448 | Jose A. Lopes | |
504 | e1235448 | Jose A. Lopes | consAll :: FrozenSet String |
505 | e1235448 | Jose A. Lopes | consAll = ConstantUtils.mkSet [consMessage, consSpice, consSsh, consVnc] |
506 | e1235448 | Jose A. Lopes | |
507 | e1235448 | Jose A. Lopes | -- | RSA key bit length |
508 | e1235448 | Jose A. Lopes | -- |
509 | e1235448 | Jose A. Lopes | -- For RSA keys more bits are better, but they also make operations |
510 | e1235448 | Jose A. Lopes | -- more expensive. NIST SP 800-131 recommends a minimum of 2048 bits |
511 | e1235448 | Jose A. Lopes | -- from the year 2010 on. |
512 | e1235448 | Jose A. Lopes | rsaKeyBits :: Int |
513 | e1235448 | Jose A. Lopes | rsaKeyBits = 2048 |
514 | e1235448 | Jose A. Lopes | |
515 | e1235448 | Jose A. Lopes | -- | Ciphers allowed for SSL connections. |
516 | e1235448 | Jose A. Lopes | -- |
517 | e1235448 | Jose A. Lopes | -- For the format, see ciphers(1). A better way to disable ciphers |
518 | e1235448 | Jose A. Lopes | -- would be to use the exclamation mark (!), but socat versions below |
519 | e1235448 | Jose A. Lopes | -- 1.5 can't parse exclamation marks in options properly. When |
520 | e1235448 | Jose A. Lopes | -- modifying the ciphers, ensure not to accidentially add something |
521 | e1235448 | Jose A. Lopes | -- after it's been removed. Use the "openssl" utility to check the |
522 | e1235448 | Jose A. Lopes | -- allowed ciphers, e.g. "openssl ciphers -v HIGH:-DES". |
523 | e1235448 | Jose A. Lopes | opensslCiphers :: String |
524 | e1235448 | Jose A. Lopes | opensslCiphers = "HIGH:-DES:-3DES:-EXPORT:-ADH" |
525 | e1235448 | Jose A. Lopes | |
526 | e1235448 | Jose A. Lopes | -- * X509 |
527 | e1235448 | Jose A. Lopes | |
528 | e1235448 | Jose A. Lopes | -- | commonName (CN) used in certificates |
529 | e1235448 | Jose A. Lopes | x509CertCn :: String |
530 | e1235448 | Jose A. Lopes | x509CertCn = "ganeti.example.com" |
531 | e1235448 | Jose A. Lopes | |
532 | e1235448 | Jose A. Lopes | -- | Default validity of certificates in days |
533 | e1235448 | Jose A. Lopes | x509CertDefaultValidity :: Int |
534 | e1235448 | Jose A. Lopes | x509CertDefaultValidity = 365 * 5 |
535 | e1235448 | Jose A. Lopes | |
536 | e1235448 | Jose A. Lopes | x509CertSignatureHeader :: String |
537 | e1235448 | Jose A. Lopes | x509CertSignatureHeader = "X-Ganeti-Signature" |
538 | e1235448 | Jose A. Lopes | |
539 | e1235448 | Jose A. Lopes | -- | Digest used to sign certificates ("openssl x509" uses SHA1 by default) |
540 | e1235448 | Jose A. Lopes | x509CertSignDigest :: String |
541 | e1235448 | Jose A. Lopes | x509CertSignDigest = "SHA1" |
542 | e1235448 | Jose A. Lopes | |
543 | e1235448 | Jose A. Lopes | -- * Import/export daemon mode |
544 | e1235448 | Jose A. Lopes | |
545 | e1235448 | Jose A. Lopes | iemExport :: String |
546 | e1235448 | Jose A. Lopes | iemExport = "export" |
547 | e1235448 | Jose A. Lopes | |
548 | e1235448 | Jose A. Lopes | iemImport :: String |
549 | e1235448 | Jose A. Lopes | iemImport = "import" |
550 | e1235448 | Jose A. Lopes | |
551 | e1235448 | Jose A. Lopes | -- * Import/export transport compression |
552 | e1235448 | Jose A. Lopes | |
553 | e1235448 | Jose A. Lopes | iecGzip :: String |
554 | e1235448 | Jose A. Lopes | iecGzip = "gzip" |
555 | e1235448 | Jose A. Lopes | |
556 | e1235448 | Jose A. Lopes | iecNone :: String |
557 | e1235448 | Jose A. Lopes | iecNone = "none" |
558 | e1235448 | Jose A. Lopes | |
559 | e1235448 | Jose A. Lopes | iecAll :: [String] |
560 | e1235448 | Jose A. Lopes | iecAll = [iecGzip, iecNone] |
561 | e1235448 | Jose A. Lopes | |
562 | e1235448 | Jose A. Lopes | ieCustomSize :: String |
563 | e1235448 | Jose A. Lopes | ieCustomSize = "fd" |
564 | e1235448 | Jose A. Lopes | |
565 | e1235448 | Jose A. Lopes | -- * Import/export I/O |
566 | e1235448 | Jose A. Lopes | |
567 | e1235448 | Jose A. Lopes | -- | Direct file I/O, equivalent to a shell's I/O redirection using |
568 | e1235448 | Jose A. Lopes | -- '<' or '>' |
569 | e1235448 | Jose A. Lopes | ieioFile :: String |
570 | e1235448 | Jose A. Lopes | ieioFile = "file" |
571 | e1235448 | Jose A. Lopes | |
572 | e1235448 | Jose A. Lopes | -- | Raw block device I/O using "dd" |
573 | e1235448 | Jose A. Lopes | ieioRawDisk :: String |
574 | e1235448 | Jose A. Lopes | ieioRawDisk = "raw" |
575 | e1235448 | Jose A. Lopes | |
576 | e1235448 | Jose A. Lopes | -- | OS definition import/export script |
577 | e1235448 | Jose A. Lopes | ieioScript :: String |
578 | e1235448 | Jose A. Lopes | ieioScript = "script" |
579 | e1235448 | Jose A. Lopes | |
580 | e1235448 | Jose A. Lopes | -- * Values |
581 | e1235448 | Jose A. Lopes | |
582 | e1235448 | Jose A. Lopes | valueDefault :: String |
583 | e1235448 | Jose A. Lopes | valueDefault = "default" |
584 | e1235448 | Jose A. Lopes | |
585 | e1235448 | Jose A. Lopes | valueAuto :: String |
586 | e1235448 | Jose A. Lopes | valueAuto = "auto" |
587 | e1235448 | Jose A. Lopes | |
588 | e1235448 | Jose A. Lopes | valueGenerate :: String |
589 | e1235448 | Jose A. Lopes | valueGenerate = "generate" |
590 | e1235448 | Jose A. Lopes | |
591 | e1235448 | Jose A. Lopes | valueNone :: String |
592 | e1235448 | Jose A. Lopes | valueNone = "none" |
593 | e1235448 | Jose A. Lopes | |
594 | e1235448 | Jose A. Lopes | valueTrue :: String |
595 | e1235448 | Jose A. Lopes | valueTrue = "true" |
596 | e1235448 | Jose A. Lopes | |
597 | e1235448 | Jose A. Lopes | valueFalse :: String |
598 | e1235448 | Jose A. Lopes | valueFalse = "false" |
599 | e1235448 | Jose A. Lopes | |
600 | e1235448 | Jose A. Lopes | -- * Hooks |
601 | e1235448 | Jose A. Lopes | |
602 | e1235448 | Jose A. Lopes | hooksNameCfgupdate :: String |
603 | e1235448 | Jose A. Lopes | hooksNameCfgupdate = "config-update" |
604 | e1235448 | Jose A. Lopes | |
605 | e1235448 | Jose A. Lopes | hooksNameWatcher :: String |
606 | e1235448 | Jose A. Lopes | hooksNameWatcher = "watcher" |
607 | e1235448 | Jose A. Lopes | |
608 | e1235448 | Jose A. Lopes | hooksPath :: String |
609 | e1235448 | Jose A. Lopes | hooksPath = "/sbin:/bin:/usr/sbin:/usr/bin" |
610 | e1235448 | Jose A. Lopes | |
611 | e1235448 | Jose A. Lopes | hooksPhasePost :: String |
612 | e1235448 | Jose A. Lopes | hooksPhasePost = "post" |
613 | e1235448 | Jose A. Lopes | |
614 | e1235448 | Jose A. Lopes | hooksPhasePre :: String |
615 | e1235448 | Jose A. Lopes | hooksPhasePre = "pre" |
616 | e1235448 | Jose A. Lopes | |
617 | e1235448 | Jose A. Lopes | hooksVersion :: Int |
618 | e1235448 | Jose A. Lopes | hooksVersion = 2 |
619 | e1235448 | Jose A. Lopes | |
620 | e1235448 | Jose A. Lopes | -- * Hooks subject type (what object type does the LU deal with) |
621 | e1235448 | Jose A. Lopes | |
622 | e1235448 | Jose A. Lopes | htypeCluster :: String |
623 | e1235448 | Jose A. Lopes | htypeCluster = "CLUSTER" |
624 | e1235448 | Jose A. Lopes | |
625 | e1235448 | Jose A. Lopes | htypeGroup :: String |
626 | e1235448 | Jose A. Lopes | htypeGroup = "GROUP" |
627 | e1235448 | Jose A. Lopes | |
628 | e1235448 | Jose A. Lopes | htypeInstance :: String |
629 | e1235448 | Jose A. Lopes | htypeInstance = "INSTANCE" |
630 | e1235448 | Jose A. Lopes | |
631 | e1235448 | Jose A. Lopes | htypeNetwork :: String |
632 | e1235448 | Jose A. Lopes | htypeNetwork = "NETWORK" |
633 | e1235448 | Jose A. Lopes | |
634 | e1235448 | Jose A. Lopes | htypeNode :: String |
635 | e1235448 | Jose A. Lopes | htypeNode = "NODE" |
636 | e1235448 | Jose A. Lopes | |
637 | e1235448 | Jose A. Lopes | -- * Hkr |
638 | e1235448 | Jose A. Lopes | |
639 | e1235448 | Jose A. Lopes | hkrSkip :: Int |
640 | e1235448 | Jose A. Lopes | hkrSkip = 0 |
641 | e1235448 | Jose A. Lopes | |
642 | e1235448 | Jose A. Lopes | hkrFail :: Int |
643 | e1235448 | Jose A. Lopes | hkrFail = 1 |
644 | e1235448 | Jose A. Lopes | |
645 | e1235448 | Jose A. Lopes | hkrSuccess :: Int |
646 | e1235448 | Jose A. Lopes | hkrSuccess = 2 |
647 | e1235448 | Jose A. Lopes | |
648 | e1235448 | Jose A. Lopes | -- * Storage types |
649 | e1235448 | Jose A. Lopes | |
650 | e1235448 | Jose A. Lopes | stBlock :: String |
651 | e1235448 | Jose A. Lopes | stBlock = Types.storageTypeToRaw StorageBlock |
652 | e1235448 | Jose A. Lopes | |
653 | e1235448 | Jose A. Lopes | stDiskless :: String |
654 | e1235448 | Jose A. Lopes | stDiskless = Types.storageTypeToRaw StorageDiskless |
655 | e1235448 | Jose A. Lopes | |
656 | e1235448 | Jose A. Lopes | stExt :: String |
657 | e1235448 | Jose A. Lopes | stExt = Types.storageTypeToRaw StorageExt |
658 | e1235448 | Jose A. Lopes | |
659 | e1235448 | Jose A. Lopes | stFile :: String |
660 | e1235448 | Jose A. Lopes | stFile = Types.storageTypeToRaw StorageFile |
661 | e1235448 | Jose A. Lopes | |
662 | e1235448 | Jose A. Lopes | stLvmPv :: String |
663 | e1235448 | Jose A. Lopes | stLvmPv = Types.storageTypeToRaw StorageLvmPv |
664 | e1235448 | Jose A. Lopes | |
665 | e1235448 | Jose A. Lopes | stLvmVg :: String |
666 | e1235448 | Jose A. Lopes | stLvmVg = Types.storageTypeToRaw StorageLvmVg |
667 | e1235448 | Jose A. Lopes | |
668 | e1235448 | Jose A. Lopes | stRados :: String |
669 | e1235448 | Jose A. Lopes | stRados = Types.storageTypeToRaw StorageRados |
670 | e1235448 | Jose A. Lopes | |
671 | e1235448 | Jose A. Lopes | storageTypes :: FrozenSet String |
672 | e1235448 | Jose A. Lopes | storageTypes = ConstantUtils.mkSet $ map Types.storageTypeToRaw [minBound..] |
673 | e1235448 | Jose A. Lopes | |
674 | e1235448 | Jose A. Lopes | -- | The set of storage types for which storage reporting is available |
675 | e1235448 | Jose A. Lopes | -- |
676 | e1235448 | Jose A. Lopes | -- FIXME: Remove this, once storage reporting is available for all |
677 | e1235448 | Jose A. Lopes | -- types. |
678 | e1235448 | Jose A. Lopes | stsReport :: FrozenSet String |
679 | e1235448 | Jose A. Lopes | stsReport = ConstantUtils.mkSet [stFile, stLvmPv, stLvmVg] |
680 | e1235448 | Jose A. Lopes | |
681 | e1235448 | Jose A. Lopes | -- * Storage fields |
682 | e1235448 | Jose A. Lopes | -- ** First two are valid in LU context only, not passed to backend |
683 | e1235448 | Jose A. Lopes | |
684 | e1235448 | Jose A. Lopes | sfNode :: String |
685 | e1235448 | Jose A. Lopes | sfNode = "node" |
686 | e1235448 | Jose A. Lopes | |
687 | e1235448 | Jose A. Lopes | sfType :: String |
688 | e1235448 | Jose A. Lopes | sfType = "type" |
689 | e1235448 | Jose A. Lopes | |
690 | e1235448 | Jose A. Lopes | -- ** and the rest are valid in backend |
691 | e1235448 | Jose A. Lopes | |
692 | e1235448 | Jose A. Lopes | sfAllocatable :: String |
693 | e1235448 | Jose A. Lopes | sfAllocatable = Types.storageFieldToRaw SFAllocatable |
694 | e1235448 | Jose A. Lopes | |
695 | e1235448 | Jose A. Lopes | sfFree :: String |
696 | e1235448 | Jose A. Lopes | sfFree = Types.storageFieldToRaw SFFree |
697 | e1235448 | Jose A. Lopes | |
698 | e1235448 | Jose A. Lopes | sfName :: String |
699 | e1235448 | Jose A. Lopes | sfName = Types.storageFieldToRaw SFName |
700 | e1235448 | Jose A. Lopes | |
701 | e1235448 | Jose A. Lopes | sfSize :: String |
702 | e1235448 | Jose A. Lopes | sfSize = Types.storageFieldToRaw SFSize |
703 | e1235448 | Jose A. Lopes | |
704 | e1235448 | Jose A. Lopes | sfUsed :: String |
705 | e1235448 | Jose A. Lopes | sfUsed = Types.storageFieldToRaw SFUsed |
706 | e1235448 | Jose A. Lopes | |
707 | e1235448 | Jose A. Lopes | validStorageFields :: FrozenSet String |
708 | e1235448 | Jose A. Lopes | validStorageFields = |
709 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.storageFieldToRaw [minBound..] ++ |
710 | e1235448 | Jose A. Lopes | [sfNode, sfType] |
711 | e1235448 | Jose A. Lopes | |
712 | e1235448 | Jose A. Lopes | modifiableStorageFields :: Map String (FrozenSet String) |
713 | e1235448 | Jose A. Lopes | modifiableStorageFields = |
714 | e1235448 | Jose A. Lopes | Map.fromList [(Types.storageTypeToRaw StorageLvmPv, |
715 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [sfAllocatable])] |
716 | e1235448 | Jose A. Lopes | |
717 | e1235448 | Jose A. Lopes | -- * Storage operations |
718 | e1235448 | Jose A. Lopes | |
719 | e1235448 | Jose A. Lopes | soFixConsistency :: String |
720 | e1235448 | Jose A. Lopes | soFixConsistency = "fix-consistency" |
721 | e1235448 | Jose A. Lopes | |
722 | e1235448 | Jose A. Lopes | validStorageOperations :: Map String (FrozenSet String) |
723 | e1235448 | Jose A. Lopes | validStorageOperations = |
724 | e1235448 | Jose A. Lopes | Map.fromList [(Types.storageTypeToRaw StorageLvmVg, |
725 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [soFixConsistency])] |
726 | e1235448 | Jose A. Lopes | |
727 | e1235448 | Jose A. Lopes | -- * Volume fields |
728 | e1235448 | Jose A. Lopes | |
729 | e1235448 | Jose A. Lopes | vfDev :: String |
730 | e1235448 | Jose A. Lopes | vfDev = "dev" |
731 | e1235448 | Jose A. Lopes | |
732 | e1235448 | Jose A. Lopes | vfInstance :: String |
733 | e1235448 | Jose A. Lopes | vfInstance = "instance" |
734 | e1235448 | Jose A. Lopes | |
735 | e1235448 | Jose A. Lopes | vfName :: String |
736 | e1235448 | Jose A. Lopes | vfName = "name" |
737 | e1235448 | Jose A. Lopes | |
738 | e1235448 | Jose A. Lopes | vfNode :: String |
739 | e1235448 | Jose A. Lopes | vfNode = "node" |
740 | e1235448 | Jose A. Lopes | |
741 | e1235448 | Jose A. Lopes | vfPhys :: String |
742 | e1235448 | Jose A. Lopes | vfPhys = "phys" |
743 | e1235448 | Jose A. Lopes | |
744 | e1235448 | Jose A. Lopes | vfSize :: String |
745 | e1235448 | Jose A. Lopes | vfSize = "size" |
746 | e1235448 | Jose A. Lopes | |
747 | e1235448 | Jose A. Lopes | vfVg :: String |
748 | e1235448 | Jose A. Lopes | vfVg = "vg" |
749 | e1235448 | Jose A. Lopes | |
750 | e1235448 | Jose A. Lopes | -- * Local disk status |
751 | e1235448 | Jose A. Lopes | |
752 | e1235448 | Jose A. Lopes | ldsFaulty :: Int |
753 | e1235448 | Jose A. Lopes | ldsFaulty = Types.localDiskStatusToRaw DiskStatusFaulty |
754 | e1235448 | Jose A. Lopes | |
755 | e1235448 | Jose A. Lopes | ldsOkay :: Int |
756 | e1235448 | Jose A. Lopes | ldsOkay = Types.localDiskStatusToRaw DiskStatusOk |
757 | e1235448 | Jose A. Lopes | |
758 | e1235448 | Jose A. Lopes | ldsUnknown :: Int |
759 | e1235448 | Jose A. Lopes | ldsUnknown = Types.localDiskStatusToRaw DiskStatusUnknown |
760 | e1235448 | Jose A. Lopes | |
761 | e1235448 | Jose A. Lopes | ldsNames :: Map Int String |
762 | e1235448 | Jose A. Lopes | ldsNames = |
763 | e1235448 | Jose A. Lopes | Map.fromList [ (Types.localDiskStatusToRaw ds, |
764 | e1235448 | Jose A. Lopes | localDiskStatusName ds) | ds <- [minBound..] ] |
765 | e1235448 | Jose A. Lopes | |
766 | e1235448 | Jose A. Lopes | -- * Disk template types |
767 | e1235448 | Jose A. Lopes | |
768 | e1235448 | Jose A. Lopes | dtDiskless :: String |
769 | e1235448 | Jose A. Lopes | dtDiskless = Types.diskTemplateToRaw DTDiskless |
770 | e1235448 | Jose A. Lopes | |
771 | e1235448 | Jose A. Lopes | dtFile :: String |
772 | e1235448 | Jose A. Lopes | dtFile = Types.diskTemplateToRaw DTFile |
773 | e1235448 | Jose A. Lopes | |
774 | e1235448 | Jose A. Lopes | dtSharedFile :: String |
775 | e1235448 | Jose A. Lopes | dtSharedFile = Types.diskTemplateToRaw DTSharedFile |
776 | e1235448 | Jose A. Lopes | |
777 | e1235448 | Jose A. Lopes | dtPlain :: String |
778 | e1235448 | Jose A. Lopes | dtPlain = Types.diskTemplateToRaw DTPlain |
779 | e1235448 | Jose A. Lopes | |
780 | e1235448 | Jose A. Lopes | dtBlock :: String |
781 | e1235448 | Jose A. Lopes | dtBlock = Types.diskTemplateToRaw DTBlock |
782 | e1235448 | Jose A. Lopes | |
783 | e1235448 | Jose A. Lopes | dtDrbd8 :: String |
784 | e1235448 | Jose A. Lopes | dtDrbd8 = Types.diskTemplateToRaw DTDrbd8 |
785 | e1235448 | Jose A. Lopes | |
786 | e1235448 | Jose A. Lopes | dtRbd :: String |
787 | e1235448 | Jose A. Lopes | dtRbd = Types.diskTemplateToRaw DTRbd |
788 | e1235448 | Jose A. Lopes | |
789 | e1235448 | Jose A. Lopes | dtExt :: String |
790 | e1235448 | Jose A. Lopes | dtExt = Types.diskTemplateToRaw DTExt |
791 | e1235448 | Jose A. Lopes | |
792 | e1235448 | Jose A. Lopes | -- | This is used to order determine the default disk template when |
793 | e1235448 | Jose A. Lopes | -- the list of enabled disk templates is inferred from the current |
794 | e1235448 | Jose A. Lopes | -- state of the cluster. This only happens on an upgrade from a |
795 | e1235448 | Jose A. Lopes | -- version of Ganeti that did not support the 'enabled_disk_templates' |
796 | e1235448 | Jose A. Lopes | -- so far. |
797 | e1235448 | Jose A. Lopes | diskTemplatePreference :: [String] |
798 | e1235448 | Jose A. Lopes | diskTemplatePreference = |
799 | e1235448 | Jose A. Lopes | map Types.diskTemplateToRaw |
800 | e1235448 | Jose A. Lopes | [DTBlock, DTDiskless, DTDrbd8, DTExt, DTFile, DTPlain, DTRbd, DTSharedFile] |
801 | e1235448 | Jose A. Lopes | |
802 | e1235448 | Jose A. Lopes | diskTemplates :: FrozenSet String |
803 | e1235448 | Jose A. Lopes | diskTemplates = ConstantUtils.mkSet $ map Types.diskTemplateToRaw [minBound..] |
804 | e1235448 | Jose A. Lopes | |
805 | e1235448 | Jose A. Lopes | -- | Disk templates that are enabled by default |
806 | e1235448 | Jose A. Lopes | defaultEnabledDiskTemplates :: [String] |
807 | e1235448 | Jose A. Lopes | defaultEnabledDiskTemplates = map Types.diskTemplateToRaw [DTDrbd8, DTPlain] |
808 | e1235448 | Jose A. Lopes | |
809 | e1235448 | Jose A. Lopes | -- | Mapping of disk templates to storage types |
810 | e1235448 | Jose A. Lopes | mapDiskTemplateStorageType :: Map String String |
811 | e1235448 | Jose A. Lopes | mapDiskTemplateStorageType = |
812 | e1235448 | Jose A. Lopes | Map.fromList $ |
813 | e1235448 | Jose A. Lopes | map (Types.diskTemplateToRaw *** Types.storageTypeToRaw) |
814 | e1235448 | Jose A. Lopes | [(DTBlock, StorageBlock), |
815 | e1235448 | Jose A. Lopes | (DTDrbd8, StorageLvmVg), |
816 | e1235448 | Jose A. Lopes | (DTExt, StorageExt), |
817 | e1235448 | Jose A. Lopes | (DTSharedFile, StorageFile), |
818 | e1235448 | Jose A. Lopes | (DTFile, StorageFile), |
819 | e1235448 | Jose A. Lopes | (DTDiskless, StorageDiskless), |
820 | e1235448 | Jose A. Lopes | (DTPlain, StorageLvmVg), |
821 | e1235448 | Jose A. Lopes | (DTRbd, StorageRados)] |
822 | e1235448 | Jose A. Lopes | |
823 | e1235448 | Jose A. Lopes | -- | The set of network-mirrored disk templates |
824 | e1235448 | Jose A. Lopes | dtsIntMirror :: FrozenSet String |
825 | e1235448 | Jose A. Lopes | dtsIntMirror = ConstantUtils.mkSet [dtDrbd8] |
826 | e1235448 | Jose A. Lopes | |
827 | e1235448 | Jose A. Lopes | -- | 'DTDiskless' is 'trivially' externally mirrored |
828 | e1235448 | Jose A. Lopes | dtsExtMirror :: FrozenSet String |
829 | e1235448 | Jose A. Lopes | dtsExtMirror = |
830 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ |
831 | e1235448 | Jose A. Lopes | map Types.diskTemplateToRaw [DTDiskless, DTBlock, DTExt, DTSharedFile, DTRbd] |
832 | e1235448 | Jose A. Lopes | |
833 | e1235448 | Jose A. Lopes | -- | The set of non-lvm-based disk templates |
834 | e1235448 | Jose A. Lopes | dtsNotLvm :: FrozenSet String |
835 | e1235448 | Jose A. Lopes | dtsNotLvm = |
836 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ |
837 | e1235448 | Jose A. Lopes | map Types.diskTemplateToRaw |
838 | e1235448 | Jose A. Lopes | [DTSharedFile, DTDiskless, DTBlock, DTExt, DTFile, DTRbd] |
839 | e1235448 | Jose A. Lopes | |
840 | e1235448 | Jose A. Lopes | -- | The set of disk templates which can be grown |
841 | e1235448 | Jose A. Lopes | dtsGrowable :: FrozenSet String |
842 | e1235448 | Jose A. Lopes | dtsGrowable = |
843 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ |
844 | e1235448 | Jose A. Lopes | map Types.diskTemplateToRaw |
845 | e1235448 | Jose A. Lopes | [DTSharedFile, DTDrbd8, DTPlain, DTExt, DTFile, DTRbd] |
846 | e1235448 | Jose A. Lopes | |
847 | e1235448 | Jose A. Lopes | -- | The set of disk templates that allow adoption |
848 | e1235448 | Jose A. Lopes | dtsMayAdopt :: FrozenSet String |
849 | e1235448 | Jose A. Lopes | dtsMayAdopt = |
850 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.diskTemplateToRaw [DTBlock, DTPlain] |
851 | e1235448 | Jose A. Lopes | |
852 | e1235448 | Jose A. Lopes | -- | The set of disk templates that *must* use adoption |
853 | e1235448 | Jose A. Lopes | dtsMustAdopt :: FrozenSet String |
854 | e1235448 | Jose A. Lopes | dtsMustAdopt = ConstantUtils.mkSet [Types.diskTemplateToRaw DTBlock] |
855 | e1235448 | Jose A. Lopes | |
856 | e1235448 | Jose A. Lopes | -- | The set of disk templates that allow migrations |
857 | e1235448 | Jose A. Lopes | dtsMirrored :: FrozenSet String |
858 | e1235448 | Jose A. Lopes | dtsMirrored = dtsIntMirror `ConstantUtils.union` dtsExtMirror |
859 | e1235448 | Jose A. Lopes | |
860 | e1235448 | Jose A. Lopes | -- | The set of file based disk templates |
861 | e1235448 | Jose A. Lopes | dtsFilebased :: FrozenSet String |
862 | e1235448 | Jose A. Lopes | dtsFilebased = |
863 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.diskTemplateToRaw [DTSharedFile, DTFile] |
864 | e1235448 | Jose A. Lopes | |
865 | e1235448 | Jose A. Lopes | -- | The set of disk templates that can be moved by copying |
866 | e1235448 | Jose A. Lopes | -- |
867 | e1235448 | Jose A. Lopes | -- Note: a requirement is that they're not accessed externally or |
868 | e1235448 | Jose A. Lopes | -- shared between nodes; in particular, sharedfile is not suitable. |
869 | e1235448 | Jose A. Lopes | dtsCopyable :: FrozenSet String |
870 | e1235448 | Jose A. Lopes | dtsCopyable = |
871 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.diskTemplateToRaw [DTPlain, DTFile] |
872 | e1235448 | Jose A. Lopes | |
873 | e1235448 | Jose A. Lopes | -- | The set of disk templates that are supported by exclusive_storage |
874 | e1235448 | Jose A. Lopes | dtsExclStorage :: FrozenSet String |
875 | e1235448 | Jose A. Lopes | dtsExclStorage = ConstantUtils.mkSet $ map Types.diskTemplateToRaw [DTPlain] |
876 | e1235448 | Jose A. Lopes | |
877 | e1235448 | Jose A. Lopes | -- | Templates for which we don't perform checks on free space |
878 | e1235448 | Jose A. Lopes | dtsNoFreeSpaceCheck :: FrozenSet String |
879 | e1235448 | Jose A. Lopes | dtsNoFreeSpaceCheck = |
880 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ |
881 | e1235448 | Jose A. Lopes | map Types.diskTemplateToRaw [DTExt, DTSharedFile, DTFile, DTRbd] |
882 | e1235448 | Jose A. Lopes | |
883 | e1235448 | Jose A. Lopes | dtsBlock :: FrozenSet String |
884 | e1235448 | Jose A. Lopes | dtsBlock = |
885 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ |
886 | e1235448 | Jose A. Lopes | map Types.diskTemplateToRaw [DTPlain, DTDrbd8, DTBlock, DTRbd, DTExt] |
887 | e1235448 | Jose A. Lopes | |
888 | e1235448 | Jose A. Lopes | -- | The set of lvm-based disk templates |
889 | e1235448 | Jose A. Lopes | dtsLvm :: FrozenSet String |
890 | e1235448 | Jose A. Lopes | dtsLvm = diskTemplates `ConstantUtils.difference` dtsNotLvm |
891 | e1235448 | Jose A. Lopes | |
892 | e1235448 | Jose A. Lopes | -- * Drbd |
893 | e1235448 | Jose A. Lopes | |
894 | e1235448 | Jose A. Lopes | drbdHmacAlg :: String |
895 | e1235448 | Jose A. Lopes | drbdHmacAlg = "md5" |
896 | e1235448 | Jose A. Lopes | |
897 | e1235448 | Jose A. Lopes | drbdDefaultNetProtocol :: String |
898 | e1235448 | Jose A. Lopes | drbdDefaultNetProtocol = "C" |
899 | e1235448 | Jose A. Lopes | |
900 | e1235448 | Jose A. Lopes | drbdMigrationNetProtocol :: String |
901 | e1235448 | Jose A. Lopes | drbdMigrationNetProtocol = "C" |
902 | e1235448 | Jose A. Lopes | |
903 | e1235448 | Jose A. Lopes | drbdStatusFile :: String |
904 | e1235448 | Jose A. Lopes | drbdStatusFile = "/proc/drbd" |
905 | e1235448 | Jose A. Lopes | |
906 | e1235448 | Jose A. Lopes | -- | Size of DRBD meta block device |
907 | e1235448 | Jose A. Lopes | drbdMetaSize :: Int |
908 | e1235448 | Jose A. Lopes | drbdMetaSize = 128 |
909 | e1235448 | Jose A. Lopes | |
910 | e1235448 | Jose A. Lopes | -- * Drbd barrier types |
911 | e1235448 | Jose A. Lopes | |
912 | e1235448 | Jose A. Lopes | drbdBDiskBarriers :: String |
913 | e1235448 | Jose A. Lopes | drbdBDiskBarriers = "b" |
914 | e1235448 | Jose A. Lopes | |
915 | e1235448 | Jose A. Lopes | drbdBDiskDrain :: String |
916 | e1235448 | Jose A. Lopes | drbdBDiskDrain = "d" |
917 | e1235448 | Jose A. Lopes | |
918 | e1235448 | Jose A. Lopes | drbdBDiskFlush :: String |
919 | e1235448 | Jose A. Lopes | drbdBDiskFlush = "f" |
920 | e1235448 | Jose A. Lopes | |
921 | e1235448 | Jose A. Lopes | drbdBNone :: String |
922 | e1235448 | Jose A. Lopes | drbdBNone = "n" |
923 | e1235448 | Jose A. Lopes | |
924 | e1235448 | Jose A. Lopes | -- | Valid barrier combinations: "n" or any non-null subset of "bfd" |
925 | e1235448 | Jose A. Lopes | drbdValidBarrierOpt :: FrozenSet (FrozenSet String) |
926 | e1235448 | Jose A. Lopes | drbdValidBarrierOpt = |
927 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet |
928 | e1235448 | Jose A. Lopes | [ ConstantUtils.mkSet [drbdBNone] |
929 | e1235448 | Jose A. Lopes | , ConstantUtils.mkSet [drbdBDiskBarriers] |
930 | e1235448 | Jose A. Lopes | , ConstantUtils.mkSet [drbdBDiskDrain] |
931 | e1235448 | Jose A. Lopes | , ConstantUtils.mkSet [drbdBDiskFlush] |
932 | e1235448 | Jose A. Lopes | , ConstantUtils.mkSet [drbdBDiskDrain, drbdBDiskFlush] |
933 | e1235448 | Jose A. Lopes | , ConstantUtils.mkSet [drbdBDiskBarriers, drbdBDiskDrain] |
934 | e1235448 | Jose A. Lopes | , ConstantUtils.mkSet [drbdBDiskBarriers, drbdBDiskFlush] |
935 | e1235448 | Jose A. Lopes | , ConstantUtils.mkSet [drbdBDiskBarriers, drbdBDiskFlush, drbdBDiskDrain] |
936 | e1235448 | Jose A. Lopes | ] |
937 | e1235448 | Jose A. Lopes | |
938 | e1235448 | Jose A. Lopes | -- | Rbd tool command |
939 | e1235448 | Jose A. Lopes | rbdCmd :: String |
940 | e1235448 | Jose A. Lopes | rbdCmd = "rbd" |
941 | e1235448 | Jose A. Lopes | |
942 | e1235448 | Jose A. Lopes | -- * File backend driver |
943 | e1235448 | Jose A. Lopes | |
944 | e1235448 | Jose A. Lopes | fdBlktap :: String |
945 | e1235448 | Jose A. Lopes | fdBlktap = Types.fileDriverToRaw FileBlktap |
946 | e1235448 | Jose A. Lopes | |
947 | e1235448 | Jose A. Lopes | fdLoop :: String |
948 | e1235448 | Jose A. Lopes | fdLoop = Types.fileDriverToRaw FileLoop |
949 | e1235448 | Jose A. Lopes | |
950 | e1235448 | Jose A. Lopes | fileDriver :: FrozenSet String |
951 | e1235448 | Jose A. Lopes | fileDriver = |
952 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ |
953 | e1235448 | Jose A. Lopes | map Types.fileDriverToRaw [minBound..] |
954 | e1235448 | Jose A. Lopes | |
955 | e1235448 | Jose A. Lopes | -- | The set of drbd-like disk types |
956 | e1235448 | Jose A. Lopes | dtsDrbd :: FrozenSet String |
957 | e1235448 | Jose A. Lopes | dtsDrbd = ConstantUtils.mkSet [Types.diskTemplateToRaw DTDrbd8] |
958 | e1235448 | Jose A. Lopes | |
959 | e1235448 | Jose A. Lopes | -- * Disk access mode |
960 | e1235448 | Jose A. Lopes | |
961 | e1235448 | Jose A. Lopes | diskRdonly :: String |
962 | e1235448 | Jose A. Lopes | diskRdonly = Types.diskModeToRaw DiskRdOnly |
963 | e1235448 | Jose A. Lopes | |
964 | e1235448 | Jose A. Lopes | diskRdwr :: String |
965 | e1235448 | Jose A. Lopes | diskRdwr = Types.diskModeToRaw DiskRdWr |
966 | e1235448 | Jose A. Lopes | |
967 | e1235448 | Jose A. Lopes | diskAccessSet :: FrozenSet String |
968 | e1235448 | Jose A. Lopes | diskAccessSet = ConstantUtils.mkSet $ map Types.diskModeToRaw [minBound..] |
969 | e1235448 | Jose A. Lopes | |
970 | e1235448 | Jose A. Lopes | -- * Disk replacement mode |
971 | e1235448 | Jose A. Lopes | |
972 | e1235448 | Jose A. Lopes | replaceDiskAuto :: String |
973 | e1235448 | Jose A. Lopes | replaceDiskAuto = Types.replaceDisksModeToRaw ReplaceAuto |
974 | e1235448 | Jose A. Lopes | |
975 | e1235448 | Jose A. Lopes | replaceDiskChg :: String |
976 | e1235448 | Jose A. Lopes | replaceDiskChg = Types.replaceDisksModeToRaw ReplaceNewSecondary |
977 | e1235448 | Jose A. Lopes | |
978 | e1235448 | Jose A. Lopes | replaceDiskPri :: String |
979 | e1235448 | Jose A. Lopes | replaceDiskPri = Types.replaceDisksModeToRaw ReplaceOnPrimary |
980 | e1235448 | Jose A. Lopes | |
981 | e1235448 | Jose A. Lopes | replaceDiskSec :: String |
982 | e1235448 | Jose A. Lopes | replaceDiskSec = Types.replaceDisksModeToRaw ReplaceOnSecondary |
983 | e1235448 | Jose A. Lopes | |
984 | e1235448 | Jose A. Lopes | replaceModes :: FrozenSet String |
985 | e1235448 | Jose A. Lopes | replaceModes = |
986 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.replaceDisksModeToRaw [minBound..] |
987 | e1235448 | Jose A. Lopes | |
988 | e1235448 | Jose A. Lopes | -- * Instance export mode |
989 | e1235448 | Jose A. Lopes | |
990 | e1235448 | Jose A. Lopes | exportModeLocal :: String |
991 | e1235448 | Jose A. Lopes | exportModeLocal = Types.exportModeToRaw ExportModeLocal |
992 | e1235448 | Jose A. Lopes | |
993 | e1235448 | Jose A. Lopes | exportModeRemote :: String |
994 | e1235448 | Jose A. Lopes | exportModeRemote = Types.exportModeToRaw ExportModeRemote |
995 | e1235448 | Jose A. Lopes | |
996 | e1235448 | Jose A. Lopes | exportModes :: FrozenSet String |
997 | e1235448 | Jose A. Lopes | exportModes = ConstantUtils.mkSet $ map Types.exportModeToRaw [minBound..] |
998 | e1235448 | Jose A. Lopes | |
999 | e1235448 | Jose A. Lopes | -- * Instance creation modes |
1000 | e1235448 | Jose A. Lopes | |
1001 | e1235448 | Jose A. Lopes | instanceCreate :: String |
1002 | e1235448 | Jose A. Lopes | instanceCreate = Types.instCreateModeToRaw InstCreate |
1003 | e1235448 | Jose A. Lopes | |
1004 | e1235448 | Jose A. Lopes | instanceImport :: String |
1005 | e1235448 | Jose A. Lopes | instanceImport = Types.instCreateModeToRaw InstImport |
1006 | e1235448 | Jose A. Lopes | |
1007 | e1235448 | Jose A. Lopes | instanceRemoteImport :: String |
1008 | e1235448 | Jose A. Lopes | instanceRemoteImport = Types.instCreateModeToRaw InstRemoteImport |
1009 | e1235448 | Jose A. Lopes | |
1010 | e1235448 | Jose A. Lopes | instanceCreateModes :: FrozenSet String |
1011 | e1235448 | Jose A. Lopes | instanceCreateModes = |
1012 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.instCreateModeToRaw [minBound..] |
1013 | e1235448 | Jose A. Lopes | |
1014 | e1235448 | Jose A. Lopes | -- * Remote import/export handshake message and version |
1015 | e1235448 | Jose A. Lopes | |
1016 | e1235448 | Jose A. Lopes | rieHandshake :: String |
1017 | e1235448 | Jose A. Lopes | rieHandshake = "Hi, I'm Ganeti" |
1018 | e1235448 | Jose A. Lopes | |
1019 | e1235448 | Jose A. Lopes | rieVersion :: Int |
1020 | e1235448 | Jose A. Lopes | rieVersion = 0 |
1021 | e1235448 | Jose A. Lopes | |
1022 | e1235448 | Jose A. Lopes | -- | Remote import/export certificate validity (seconds) |
1023 | e1235448 | Jose A. Lopes | rieCertValidity :: Int |
1024 | e1235448 | Jose A. Lopes | rieCertValidity = 24 * 60 * 60 |
1025 | e1235448 | Jose A. Lopes | |
1026 | e1235448 | Jose A. Lopes | -- | Export only: how long to wait per connection attempt (seconds) |
1027 | e1235448 | Jose A. Lopes | rieConnectAttemptTimeout :: Int |
1028 | e1235448 | Jose A. Lopes | rieConnectAttemptTimeout = 20 |
1029 | e1235448 | Jose A. Lopes | |
1030 | e1235448 | Jose A. Lopes | -- | Export only: number of attempts to connect |
1031 | e1235448 | Jose A. Lopes | rieConnectRetries :: Int |
1032 | e1235448 | Jose A. Lopes | rieConnectRetries = 10 |
1033 | e1235448 | Jose A. Lopes | |
1034 | e1235448 | Jose A. Lopes | -- | Overall timeout for establishing connection |
1035 | e1235448 | Jose A. Lopes | rieConnectTimeout :: Int |
1036 | e1235448 | Jose A. Lopes | rieConnectTimeout = 180 |
1037 | e1235448 | Jose A. Lopes | |
1038 | e1235448 | Jose A. Lopes | -- | Give child process up to 5 seconds to exit after sending a signal |
1039 | e1235448 | Jose A. Lopes | childLingerTimeout :: Double |
1040 | e1235448 | Jose A. Lopes | childLingerTimeout = 5.0 |
1041 | e1235448 | Jose A. Lopes | |
1042 | e1235448 | Jose A. Lopes | -- * Import/export config options |
1043 | e1235448 | Jose A. Lopes | |
1044 | e1235448 | Jose A. Lopes | inisectBep :: String |
1045 | e1235448 | Jose A. Lopes | inisectBep = "backend" |
1046 | e1235448 | Jose A. Lopes | |
1047 | e1235448 | Jose A. Lopes | inisectExp :: String |
1048 | e1235448 | Jose A. Lopes | inisectExp = "export" |
1049 | e1235448 | Jose A. Lopes | |
1050 | e1235448 | Jose A. Lopes | inisectHyp :: String |
1051 | e1235448 | Jose A. Lopes | inisectHyp = "hypervisor" |
1052 | e1235448 | Jose A. Lopes | |
1053 | e1235448 | Jose A. Lopes | inisectIns :: String |
1054 | e1235448 | Jose A. Lopes | inisectIns = "instance" |
1055 | e1235448 | Jose A. Lopes | |
1056 | e1235448 | Jose A. Lopes | inisectOsp :: String |
1057 | e1235448 | Jose A. Lopes | inisectOsp = "os" |
1058 | e1235448 | Jose A. Lopes | |
1059 | e1235448 | Jose A. Lopes | -- * Dynamic device modification |
1060 | e1235448 | Jose A. Lopes | |
1061 | e1235448 | Jose A. Lopes | ddmAdd :: String |
1062 | e1235448 | Jose A. Lopes | ddmAdd = Types.ddmFullToRaw DdmFullAdd |
1063 | e1235448 | Jose A. Lopes | |
1064 | e1235448 | Jose A. Lopes | ddmModify :: String |
1065 | e1235448 | Jose A. Lopes | ddmModify = Types.ddmFullToRaw DdmFullModify |
1066 | e1235448 | Jose A. Lopes | |
1067 | e1235448 | Jose A. Lopes | ddmRemove :: String |
1068 | e1235448 | Jose A. Lopes | ddmRemove = Types.ddmFullToRaw DdmFullRemove |
1069 | e1235448 | Jose A. Lopes | |
1070 | e1235448 | Jose A. Lopes | ddmsValues :: FrozenSet String |
1071 | e1235448 | Jose A. Lopes | ddmsValues = ConstantUtils.mkSet [ddmAdd, ddmRemove] |
1072 | e1235448 | Jose A. Lopes | |
1073 | e1235448 | Jose A. Lopes | ddmsValuesWithModify :: FrozenSet String |
1074 | e1235448 | Jose A. Lopes | ddmsValuesWithModify = ConstantUtils.mkSet $ map Types.ddmFullToRaw [minBound..] |
1075 | e1235448 | Jose A. Lopes | |
1076 | e1235448 | Jose A. Lopes | -- * Common exit codes |
1077 | e1235448 | Jose A. Lopes | |
1078 | e1235448 | Jose A. Lopes | exitSuccess :: Int |
1079 | e1235448 | Jose A. Lopes | exitSuccess = 0 |
1080 | e1235448 | Jose A. Lopes | |
1081 | e1235448 | Jose A. Lopes | exitFailure :: Int |
1082 | e1235448 | Jose A. Lopes | exitFailure = ConstantUtils.exitFailure |
1083 | e1235448 | Jose A. Lopes | |
1084 | e1235448 | Jose A. Lopes | exitNotcluster :: Int |
1085 | e1235448 | Jose A. Lopes | exitNotcluster = 5 |
1086 | e1235448 | Jose A. Lopes | |
1087 | e1235448 | Jose A. Lopes | exitNotmaster :: Int |
1088 | e1235448 | Jose A. Lopes | exitNotmaster = 11 |
1089 | e1235448 | Jose A. Lopes | |
1090 | e1235448 | Jose A. Lopes | exitNodesetupError :: Int |
1091 | e1235448 | Jose A. Lopes | exitNodesetupError = 12 |
1092 | e1235448 | Jose A. Lopes | |
1093 | e1235448 | Jose A. Lopes | -- | Need user confirmation |
1094 | e1235448 | Jose A. Lopes | exitConfirmation :: Int |
1095 | e1235448 | Jose A. Lopes | exitConfirmation = 13 |
1096 | e1235448 | Jose A. Lopes | |
1097 | e1235448 | Jose A. Lopes | -- | Exit code for query operations with unknown fields |
1098 | e1235448 | Jose A. Lopes | exitUnknownField :: Int |
1099 | e1235448 | Jose A. Lopes | exitUnknownField = 14 |
1100 | e1235448 | Jose A. Lopes | |
1101 | e1235448 | Jose A. Lopes | -- * Tags |
1102 | e1235448 | Jose A. Lopes | |
1103 | e1235448 | Jose A. Lopes | tagCluster :: String |
1104 | e1235448 | Jose A. Lopes | tagCluster = Types.tagKindToRaw TagKindCluster |
1105 | e1235448 | Jose A. Lopes | |
1106 | e1235448 | Jose A. Lopes | tagInstance :: String |
1107 | e1235448 | Jose A. Lopes | tagInstance = Types.tagKindToRaw TagKindInstance |
1108 | e1235448 | Jose A. Lopes | |
1109 | e1235448 | Jose A. Lopes | tagNetwork :: String |
1110 | e1235448 | Jose A. Lopes | tagNetwork = Types.tagKindToRaw TagKindNetwork |
1111 | e1235448 | Jose A. Lopes | |
1112 | e1235448 | Jose A. Lopes | tagNode :: String |
1113 | e1235448 | Jose A. Lopes | tagNode = Types.tagKindToRaw TagKindNode |
1114 | e1235448 | Jose A. Lopes | |
1115 | e1235448 | Jose A. Lopes | tagNodegroup :: String |
1116 | e1235448 | Jose A. Lopes | tagNodegroup = Types.tagKindToRaw TagKindGroup |
1117 | e1235448 | Jose A. Lopes | |
1118 | e1235448 | Jose A. Lopes | validTagTypes :: FrozenSet String |
1119 | e1235448 | Jose A. Lopes | validTagTypes = ConstantUtils.mkSet $ map Types.tagKindToRaw [minBound..] |
1120 | e1235448 | Jose A. Lopes | |
1121 | e1235448 | Jose A. Lopes | maxTagLen :: Int |
1122 | e1235448 | Jose A. Lopes | maxTagLen = 128 |
1123 | e1235448 | Jose A. Lopes | |
1124 | e1235448 | Jose A. Lopes | maxTagsPerObj :: Int |
1125 | e1235448 | Jose A. Lopes | maxTagsPerObj = 4096 |
1126 | e1235448 | Jose A. Lopes | |
1127 | e1235448 | Jose A. Lopes | -- * Others |
1128 | e1235448 | Jose A. Lopes | |
1129 | e1235448 | Jose A. Lopes | defaultBridge :: String |
1130 | e1235448 | Jose A. Lopes | defaultBridge = "xen-br0" |
1131 | e1235448 | Jose A. Lopes | |
1132 | e1235448 | Jose A. Lopes | defaultOvs :: String |
1133 | e1235448 | Jose A. Lopes | defaultOvs = "switch1" |
1134 | e1235448 | Jose A. Lopes | |
1135 | e1235448 | Jose A. Lopes | -- | 60 MiB/s, expressed in KiB/s |
1136 | e1235448 | Jose A. Lopes | classicDrbdSyncSpeed :: Int |
1137 | e1235448 | Jose A. Lopes | classicDrbdSyncSpeed = 60 * 1024 |
1138 | e1235448 | Jose A. Lopes | |
1139 | e1235448 | Jose A. Lopes | ip4AddressAny :: String |
1140 | e1235448 | Jose A. Lopes | ip4AddressAny = "0.0.0.0" |
1141 | e1235448 | Jose A. Lopes | |
1142 | e1235448 | Jose A. Lopes | ip4AddressLocalhost :: String |
1143 | e1235448 | Jose A. Lopes | ip4AddressLocalhost = "127.0.0.1" |
1144 | e1235448 | Jose A. Lopes | |
1145 | e1235448 | Jose A. Lopes | ip6AddressAny :: String |
1146 | e1235448 | Jose A. Lopes | ip6AddressAny = "::" |
1147 | e1235448 | Jose A. Lopes | |
1148 | e1235448 | Jose A. Lopes | ip6AddressLocalhost :: String |
1149 | e1235448 | Jose A. Lopes | ip6AddressLocalhost = "::1" |
1150 | e1235448 | Jose A. Lopes | |
1151 | e1235448 | Jose A. Lopes | ip4Version :: Int |
1152 | e1235448 | Jose A. Lopes | ip4Version = 4 |
1153 | e1235448 | Jose A. Lopes | |
1154 | e1235448 | Jose A. Lopes | ip6Version :: Int |
1155 | e1235448 | Jose A. Lopes | ip6Version = 6 |
1156 | e1235448 | Jose A. Lopes | |
1157 | e1235448 | Jose A. Lopes | validIpVersions :: FrozenSet Int |
1158 | e1235448 | Jose A. Lopes | validIpVersions = ConstantUtils.mkSet [ip4Version, ip6Version] |
1159 | e1235448 | Jose A. Lopes | |
1160 | e1235448 | Jose A. Lopes | tcpPingTimeout :: Int |
1161 | e1235448 | Jose A. Lopes | tcpPingTimeout = 10 |
1162 | e1235448 | Jose A. Lopes | |
1163 | e1235448 | Jose A. Lopes | defaultVg :: String |
1164 | e1235448 | Jose A. Lopes | defaultVg = "xenvg" |
1165 | e1235448 | Jose A. Lopes | |
1166 | e1235448 | Jose A. Lopes | defaultDrbdHelper :: String |
1167 | e1235448 | Jose A. Lopes | defaultDrbdHelper = "/bin/true" |
1168 | e1235448 | Jose A. Lopes | |
1169 | e1235448 | Jose A. Lopes | minVgSize :: Int |
1170 | e1235448 | Jose A. Lopes | minVgSize = 20480 |
1171 | e1235448 | Jose A. Lopes | |
1172 | e1235448 | Jose A. Lopes | defaultMacPrefix :: String |
1173 | e1235448 | Jose A. Lopes | defaultMacPrefix = "aa:00:00" |
1174 | e1235448 | Jose A. Lopes | |
1175 | e1235448 | Jose A. Lopes | -- | Default maximum instance wait time (seconds) |
1176 | e1235448 | Jose A. Lopes | defaultShutdownTimeout :: Int |
1177 | e1235448 | Jose A. Lopes | defaultShutdownTimeout = 120 |
1178 | e1235448 | Jose A. Lopes | |
1179 | e1235448 | Jose A. Lopes | -- | Node clock skew (seconds) |
1180 | e1235448 | Jose A. Lopes | nodeMaxClockSkew :: Int |
1181 | e1235448 | Jose A. Lopes | nodeMaxClockSkew = 150 |
1182 | e1235448 | Jose A. Lopes | |
1183 | e1235448 | Jose A. Lopes | -- | Time for an intra-cluster disk transfer to wait for a connection |
1184 | e1235448 | Jose A. Lopes | diskTransferConnectTimeout :: Int |
1185 | e1235448 | Jose A. Lopes | diskTransferConnectTimeout = 60 |
1186 | e1235448 | Jose A. Lopes | |
1187 | e1235448 | Jose A. Lopes | -- | Disk index separator |
1188 | e1235448 | Jose A. Lopes | diskSeparator :: String |
1189 | e1235448 | Jose A. Lopes | diskSeparator = AutoConf.diskSeparator |
1190 | e1235448 | Jose A. Lopes | |
1191 | e1235448 | Jose A. Lopes | ipCommandPath :: String |
1192 | e1235448 | Jose A. Lopes | ipCommandPath = AutoConf.ipPath |
1193 | e1235448 | Jose A. Lopes | |
1194 | e1235448 | Jose A. Lopes | -- | Key for job IDs in opcode result |
1195 | e1235448 | Jose A. Lopes | jobIdsKey :: String |
1196 | e1235448 | Jose A. Lopes | jobIdsKey = "jobs" |
1197 | e1235448 | Jose A. Lopes | |
1198 | e1235448 | Jose A. Lopes | -- * Runparts results |
1199 | e1235448 | Jose A. Lopes | |
1200 | e1235448 | Jose A. Lopes | runpartsErr :: Int |
1201 | e1235448 | Jose A. Lopes | runpartsErr = 2 |
1202 | e1235448 | Jose A. Lopes | |
1203 | e1235448 | Jose A. Lopes | runpartsRun :: Int |
1204 | e1235448 | Jose A. Lopes | runpartsRun = 1 |
1205 | e1235448 | Jose A. Lopes | |
1206 | e1235448 | Jose A. Lopes | runpartsSkip :: Int |
1207 | e1235448 | Jose A. Lopes | runpartsSkip = 0 |
1208 | e1235448 | Jose A. Lopes | |
1209 | e1235448 | Jose A. Lopes | runpartsStatus :: [Int] |
1210 | e1235448 | Jose A. Lopes | runpartsStatus = [runpartsErr, runpartsRun, runpartsSkip] |
1211 | e1235448 | Jose A. Lopes | |
1212 | e1235448 | Jose A. Lopes | -- * RPC |
1213 | e1235448 | Jose A. Lopes | |
1214 | e1235448 | Jose A. Lopes | rpcEncodingNone :: Int |
1215 | e1235448 | Jose A. Lopes | rpcEncodingNone = 0 |
1216 | e1235448 | Jose A. Lopes | |
1217 | e1235448 | Jose A. Lopes | rpcEncodingZlibBase64 :: Int |
1218 | e1235448 | Jose A. Lopes | rpcEncodingZlibBase64 = 1 |
1219 | e1235448 | Jose A. Lopes | |
1220 | e1235448 | Jose A. Lopes | -- * Timeout table |
1221 | e1235448 | Jose A. Lopes | -- |
1222 | e1235448 | Jose A. Lopes | -- Various time constants for the timeout table |
1223 | e1235448 | Jose A. Lopes | |
1224 | e1235448 | Jose A. Lopes | rpcTmoUrgent :: Int |
1225 | e1235448 | Jose A. Lopes | rpcTmoUrgent = Types.rpcTimeoutToRaw Urgent |
1226 | e1235448 | Jose A. Lopes | |
1227 | e1235448 | Jose A. Lopes | rpcTmoFast :: Int |
1228 | e1235448 | Jose A. Lopes | rpcTmoFast = Types.rpcTimeoutToRaw Fast |
1229 | e1235448 | Jose A. Lopes | |
1230 | e1235448 | Jose A. Lopes | rpcTmoNormal :: Int |
1231 | e1235448 | Jose A. Lopes | rpcTmoNormal = Types.rpcTimeoutToRaw Normal |
1232 | e1235448 | Jose A. Lopes | |
1233 | e1235448 | Jose A. Lopes | rpcTmoSlow :: Int |
1234 | e1235448 | Jose A. Lopes | rpcTmoSlow = Types.rpcTimeoutToRaw Slow |
1235 | e1235448 | Jose A. Lopes | |
1236 | e1235448 | Jose A. Lopes | -- | 'rpcTmo_4hrs' contains an underscore to circumvent a limitation |
1237 | e1235448 | Jose A. Lopes | -- in the 'Ganeti.THH.deCamelCase' function and generate the correct |
1238 | e1235448 | Jose A. Lopes | -- Python name. |
1239 | e1235448 | Jose A. Lopes | rpcTmo_4hrs :: Int |
1240 | e1235448 | Jose A. Lopes | rpcTmo_4hrs = Types.rpcTimeoutToRaw FourHours |
1241 | e1235448 | Jose A. Lopes | |
1242 | e1235448 | Jose A. Lopes | -- | 'rpcTmo_1day' contains an underscore to circumvent a limitation |
1243 | e1235448 | Jose A. Lopes | -- in the 'Ganeti.THH.deCamelCase' function and generate the correct |
1244 | e1235448 | Jose A. Lopes | -- Python name. |
1245 | e1235448 | Jose A. Lopes | rpcTmo_1day :: Int |
1246 | e1235448 | Jose A. Lopes | rpcTmo_1day = Types.rpcTimeoutToRaw OneDay |
1247 | e1235448 | Jose A. Lopes | |
1248 | e1235448 | Jose A. Lopes | -- | Timeout for connecting to nodes (seconds) |
1249 | e1235448 | Jose A. Lopes | rpcConnectTimeout :: Int |
1250 | e1235448 | Jose A. Lopes | rpcConnectTimeout = 5 |
1251 | e1235448 | Jose A. Lopes | |
1252 | e1235448 | Jose A. Lopes | -- OS |
1253 | e1235448 | Jose A. Lopes | |
1254 | e1235448 | Jose A. Lopes | osScriptCreate :: String |
1255 | e1235448 | Jose A. Lopes | osScriptCreate = "create" |
1256 | e1235448 | Jose A. Lopes | |
1257 | e1235448 | Jose A. Lopes | osScriptExport :: String |
1258 | e1235448 | Jose A. Lopes | osScriptExport = "export" |
1259 | e1235448 | Jose A. Lopes | |
1260 | e1235448 | Jose A. Lopes | osScriptImport :: String |
1261 | e1235448 | Jose A. Lopes | osScriptImport = "import" |
1262 | e1235448 | Jose A. Lopes | |
1263 | e1235448 | Jose A. Lopes | osScriptRename :: String |
1264 | e1235448 | Jose A. Lopes | osScriptRename = "rename" |
1265 | e1235448 | Jose A. Lopes | |
1266 | e1235448 | Jose A. Lopes | osScriptVerify :: String |
1267 | e1235448 | Jose A. Lopes | osScriptVerify = "verify" |
1268 | e1235448 | Jose A. Lopes | |
1269 | e1235448 | Jose A. Lopes | osScripts :: [String] |
1270 | e1235448 | Jose A. Lopes | osScripts = [osScriptCreate, osScriptExport, osScriptImport, osScriptRename, |
1271 | e1235448 | Jose A. Lopes | osScriptVerify] |
1272 | e1235448 | Jose A. Lopes | |
1273 | e1235448 | Jose A. Lopes | osApiFile :: String |
1274 | e1235448 | Jose A. Lopes | osApiFile = "ganeti_api_version" |
1275 | e1235448 | Jose A. Lopes | |
1276 | e1235448 | Jose A. Lopes | osVariantsFile :: String |
1277 | e1235448 | Jose A. Lopes | osVariantsFile = "variants.list" |
1278 | e1235448 | Jose A. Lopes | |
1279 | e1235448 | Jose A. Lopes | osParametersFile :: String |
1280 | e1235448 | Jose A. Lopes | osParametersFile = "parameters.list" |
1281 | e1235448 | Jose A. Lopes | |
1282 | e1235448 | Jose A. Lopes | osValidateParameters :: String |
1283 | e1235448 | Jose A. Lopes | osValidateParameters = "parameters" |
1284 | e1235448 | Jose A. Lopes | |
1285 | e1235448 | Jose A. Lopes | osValidateCalls :: FrozenSet String |
1286 | e1235448 | Jose A. Lopes | osValidateCalls = ConstantUtils.mkSet [osValidateParameters] |
1287 | e1235448 | Jose A. Lopes | |
1288 | e1235448 | Jose A. Lopes | -- | External Storage (ES) related constants |
1289 | e1235448 | Jose A. Lopes | |
1290 | e1235448 | Jose A. Lopes | esActionAttach :: String |
1291 | e1235448 | Jose A. Lopes | esActionAttach = "attach" |
1292 | e1235448 | Jose A. Lopes | |
1293 | e1235448 | Jose A. Lopes | esActionCreate :: String |
1294 | e1235448 | Jose A. Lopes | esActionCreate = "create" |
1295 | e1235448 | Jose A. Lopes | |
1296 | e1235448 | Jose A. Lopes | esActionDetach :: String |
1297 | e1235448 | Jose A. Lopes | esActionDetach = "detach" |
1298 | e1235448 | Jose A. Lopes | |
1299 | e1235448 | Jose A. Lopes | esActionGrow :: String |
1300 | e1235448 | Jose A. Lopes | esActionGrow = "grow" |
1301 | e1235448 | Jose A. Lopes | |
1302 | e1235448 | Jose A. Lopes | esActionRemove :: String |
1303 | e1235448 | Jose A. Lopes | esActionRemove = "remove" |
1304 | e1235448 | Jose A. Lopes | |
1305 | e1235448 | Jose A. Lopes | esActionSetinfo :: String |
1306 | e1235448 | Jose A. Lopes | esActionSetinfo = "setinfo" |
1307 | e1235448 | Jose A. Lopes | |
1308 | e1235448 | Jose A. Lopes | esActionVerify :: String |
1309 | e1235448 | Jose A. Lopes | esActionVerify = "verify" |
1310 | e1235448 | Jose A. Lopes | |
1311 | e1235448 | Jose A. Lopes | esScriptCreate :: String |
1312 | e1235448 | Jose A. Lopes | esScriptCreate = esActionCreate |
1313 | e1235448 | Jose A. Lopes | |
1314 | e1235448 | Jose A. Lopes | esScriptRemove :: String |
1315 | e1235448 | Jose A. Lopes | esScriptRemove = esActionRemove |
1316 | e1235448 | Jose A. Lopes | |
1317 | e1235448 | Jose A. Lopes | esScriptGrow :: String |
1318 | e1235448 | Jose A. Lopes | esScriptGrow = esActionGrow |
1319 | e1235448 | Jose A. Lopes | |
1320 | e1235448 | Jose A. Lopes | esScriptAttach :: String |
1321 | e1235448 | Jose A. Lopes | esScriptAttach = esActionAttach |
1322 | e1235448 | Jose A. Lopes | |
1323 | e1235448 | Jose A. Lopes | esScriptDetach :: String |
1324 | e1235448 | Jose A. Lopes | esScriptDetach = esActionDetach |
1325 | e1235448 | Jose A. Lopes | |
1326 | e1235448 | Jose A. Lopes | esScriptSetinfo :: String |
1327 | e1235448 | Jose A. Lopes | esScriptSetinfo = esActionSetinfo |
1328 | e1235448 | Jose A. Lopes | |
1329 | e1235448 | Jose A. Lopes | esScriptVerify :: String |
1330 | e1235448 | Jose A. Lopes | esScriptVerify = esActionVerify |
1331 | e1235448 | Jose A. Lopes | |
1332 | e1235448 | Jose A. Lopes | esScripts :: FrozenSet String |
1333 | e1235448 | Jose A. Lopes | esScripts = |
1334 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [esScriptAttach, |
1335 | e1235448 | Jose A. Lopes | esScriptCreate, |
1336 | e1235448 | Jose A. Lopes | esScriptDetach, |
1337 | e1235448 | Jose A. Lopes | esScriptGrow, |
1338 | e1235448 | Jose A. Lopes | esScriptRemove, |
1339 | e1235448 | Jose A. Lopes | esScriptSetinfo, |
1340 | e1235448 | Jose A. Lopes | esScriptVerify] |
1341 | e1235448 | Jose A. Lopes | |
1342 | e1235448 | Jose A. Lopes | esParametersFile :: String |
1343 | e1235448 | Jose A. Lopes | esParametersFile = "parameters.list" |
1344 | e1235448 | Jose A. Lopes | |
1345 | e1235448 | Jose A. Lopes | -- * Reboot types |
1346 | e1235448 | Jose A. Lopes | |
1347 | e1235448 | Jose A. Lopes | instanceRebootSoft :: String |
1348 | e1235448 | Jose A. Lopes | instanceRebootSoft = Types.rebootTypeToRaw RebootSoft |
1349 | e1235448 | Jose A. Lopes | |
1350 | e1235448 | Jose A. Lopes | instanceRebootHard :: String |
1351 | e1235448 | Jose A. Lopes | instanceRebootHard = Types.rebootTypeToRaw RebootHard |
1352 | e1235448 | Jose A. Lopes | |
1353 | e1235448 | Jose A. Lopes | instanceRebootFull :: String |
1354 | e1235448 | Jose A. Lopes | instanceRebootFull = Types.rebootTypeToRaw RebootFull |
1355 | e1235448 | Jose A. Lopes | |
1356 | e1235448 | Jose A. Lopes | rebootTypes :: FrozenSet String |
1357 | e1235448 | Jose A. Lopes | rebootTypes = ConstantUtils.mkSet $ map Types.rebootTypeToRaw [minBound..] |
1358 | e1235448 | Jose A. Lopes | |
1359 | e1235448 | Jose A. Lopes | -- * Instance reboot behaviors |
1360 | e1235448 | Jose A. Lopes | |
1361 | e1235448 | Jose A. Lopes | instanceRebootAllowed :: String |
1362 | e1235448 | Jose A. Lopes | instanceRebootAllowed = "reboot" |
1363 | e1235448 | Jose A. Lopes | |
1364 | e1235448 | Jose A. Lopes | instanceRebootExit :: String |
1365 | e1235448 | Jose A. Lopes | instanceRebootExit = "exit" |
1366 | e1235448 | Jose A. Lopes | |
1367 | e1235448 | Jose A. Lopes | rebootBehaviors :: [String] |
1368 | e1235448 | Jose A. Lopes | rebootBehaviors = [instanceRebootAllowed, instanceRebootExit] |
1369 | e1235448 | Jose A. Lopes | |
1370 | e1235448 | Jose A. Lopes | -- * VTypes |
1371 | e1235448 | Jose A. Lopes | |
1372 | e1235448 | Jose A. Lopes | vtypeBool :: VType |
1373 | e1235448 | Jose A. Lopes | vtypeBool = VTypeBool |
1374 | e1235448 | Jose A. Lopes | |
1375 | e1235448 | Jose A. Lopes | vtypeInt :: VType |
1376 | e1235448 | Jose A. Lopes | vtypeInt = VTypeInt |
1377 | e1235448 | Jose A. Lopes | |
1378 | e1235448 | Jose A. Lopes | vtypeMaybeString :: VType |
1379 | e1235448 | Jose A. Lopes | vtypeMaybeString = VTypeMaybeString |
1380 | e1235448 | Jose A. Lopes | |
1381 | e1235448 | Jose A. Lopes | -- | Size in MiBs |
1382 | e1235448 | Jose A. Lopes | vtypeSize :: VType |
1383 | e1235448 | Jose A. Lopes | vtypeSize = VTypeSize |
1384 | e1235448 | Jose A. Lopes | |
1385 | e1235448 | Jose A. Lopes | vtypeString :: VType |
1386 | e1235448 | Jose A. Lopes | vtypeString = VTypeString |
1387 | e1235448 | Jose A. Lopes | |
1388 | e1235448 | Jose A. Lopes | enforceableTypes :: FrozenSet VType |
1389 | e1235448 | Jose A. Lopes | enforceableTypes = ConstantUtils.mkSet [minBound..] |
1390 | e1235448 | Jose A. Lopes | |
1391 | e1235448 | Jose A. Lopes | -- | Constant representing that the user does not specify any IP version |
1392 | e1235448 | Jose A. Lopes | ifaceNoIpVersionSpecified :: Int |
1393 | e1235448 | Jose A. Lopes | ifaceNoIpVersionSpecified = 0 |
1394 | e1235448 | Jose A. Lopes | |
1395 | e1235448 | Jose A. Lopes | validSerialSpeeds :: [Int] |
1396 | e1235448 | Jose A. Lopes | validSerialSpeeds = |
1397 | e1235448 | Jose A. Lopes | [75, |
1398 | e1235448 | Jose A. Lopes | 110, |
1399 | e1235448 | Jose A. Lopes | 300, |
1400 | e1235448 | Jose A. Lopes | 600, |
1401 | e1235448 | Jose A. Lopes | 1200, |
1402 | e1235448 | Jose A. Lopes | 1800, |
1403 | e1235448 | Jose A. Lopes | 2400, |
1404 | e1235448 | Jose A. Lopes | 4800, |
1405 | e1235448 | Jose A. Lopes | 9600, |
1406 | e1235448 | Jose A. Lopes | 14400, |
1407 | e1235448 | Jose A. Lopes | 19200, |
1408 | e1235448 | Jose A. Lopes | 28800, |
1409 | e1235448 | Jose A. Lopes | 38400, |
1410 | e1235448 | Jose A. Lopes | 57600, |
1411 | e1235448 | Jose A. Lopes | 115200, |
1412 | e1235448 | Jose A. Lopes | 230400, |
1413 | e1235448 | Jose A. Lopes | 345600, |
1414 | e1235448 | Jose A. Lopes | 460800] |
1415 | e1235448 | Jose A. Lopes | |
1416 | e1235448 | Jose A. Lopes | -- * HV parameter names (global namespace) |
1417 | e1235448 | Jose A. Lopes | |
1418 | e1235448 | Jose A. Lopes | hvAcpi :: String |
1419 | e1235448 | Jose A. Lopes | hvAcpi = "acpi" |
1420 | e1235448 | Jose A. Lopes | |
1421 | e1235448 | Jose A. Lopes | hvBlockdevPrefix :: String |
1422 | e1235448 | Jose A. Lopes | hvBlockdevPrefix = "blockdev_prefix" |
1423 | e1235448 | Jose A. Lopes | |
1424 | e1235448 | Jose A. Lopes | hvBootloaderArgs :: String |
1425 | e1235448 | Jose A. Lopes | hvBootloaderArgs = "bootloader_args" |
1426 | e1235448 | Jose A. Lopes | |
1427 | e1235448 | Jose A. Lopes | hvBootloaderPath :: String |
1428 | e1235448 | Jose A. Lopes | hvBootloaderPath = "bootloader_path" |
1429 | e1235448 | Jose A. Lopes | |
1430 | e1235448 | Jose A. Lopes | hvBootOrder :: String |
1431 | e1235448 | Jose A. Lopes | hvBootOrder = "boot_order" |
1432 | e1235448 | Jose A. Lopes | |
1433 | e1235448 | Jose A. Lopes | hvCdromImagePath :: String |
1434 | e1235448 | Jose A. Lopes | hvCdromImagePath = "cdrom_image_path" |
1435 | e1235448 | Jose A. Lopes | |
1436 | e1235448 | Jose A. Lopes | hvCpuCap :: String |
1437 | e1235448 | Jose A. Lopes | hvCpuCap = "cpu_cap" |
1438 | e1235448 | Jose A. Lopes | |
1439 | e1235448 | Jose A. Lopes | hvCpuCores :: String |
1440 | e1235448 | Jose A. Lopes | hvCpuCores = "cpu_cores" |
1441 | e1235448 | Jose A. Lopes | |
1442 | e1235448 | Jose A. Lopes | hvCpuMask :: String |
1443 | e1235448 | Jose A. Lopes | hvCpuMask = "cpu_mask" |
1444 | e1235448 | Jose A. Lopes | |
1445 | e1235448 | Jose A. Lopes | hvCpuSockets :: String |
1446 | e1235448 | Jose A. Lopes | hvCpuSockets = "cpu_sockets" |
1447 | e1235448 | Jose A. Lopes | |
1448 | e1235448 | Jose A. Lopes | hvCpuThreads :: String |
1449 | e1235448 | Jose A. Lopes | hvCpuThreads = "cpu_threads" |
1450 | e1235448 | Jose A. Lopes | |
1451 | e1235448 | Jose A. Lopes | hvCpuType :: String |
1452 | e1235448 | Jose A. Lopes | hvCpuType = "cpu_type" |
1453 | e1235448 | Jose A. Lopes | |
1454 | e1235448 | Jose A. Lopes | hvCpuWeight :: String |
1455 | e1235448 | Jose A. Lopes | hvCpuWeight = "cpu_weight" |
1456 | e1235448 | Jose A. Lopes | |
1457 | e1235448 | Jose A. Lopes | hvDeviceModel :: String |
1458 | e1235448 | Jose A. Lopes | hvDeviceModel = "device_model" |
1459 | e1235448 | Jose A. Lopes | |
1460 | e1235448 | Jose A. Lopes | hvDiskCache :: String |
1461 | e1235448 | Jose A. Lopes | hvDiskCache = "disk_cache" |
1462 | e1235448 | Jose A. Lopes | |
1463 | e1235448 | Jose A. Lopes | hvDiskType :: String |
1464 | e1235448 | Jose A. Lopes | hvDiskType = "disk_type" |
1465 | e1235448 | Jose A. Lopes | |
1466 | e1235448 | Jose A. Lopes | hvInitrdPath :: String |
1467 | e1235448 | Jose A. Lopes | hvInitrdPath = "initrd_path" |
1468 | e1235448 | Jose A. Lopes | |
1469 | e1235448 | Jose A. Lopes | hvInitScript :: String |
1470 | e1235448 | Jose A. Lopes | hvInitScript = "init_script" |
1471 | e1235448 | Jose A. Lopes | |
1472 | e1235448 | Jose A. Lopes | hvKernelArgs :: String |
1473 | e1235448 | Jose A. Lopes | hvKernelArgs = "kernel_args" |
1474 | e1235448 | Jose A. Lopes | |
1475 | e1235448 | Jose A. Lopes | hvKernelPath :: String |
1476 | e1235448 | Jose A. Lopes | hvKernelPath = "kernel_path" |
1477 | e1235448 | Jose A. Lopes | |
1478 | e1235448 | Jose A. Lopes | hvKeymap :: String |
1479 | e1235448 | Jose A. Lopes | hvKeymap = "keymap" |
1480 | e1235448 | Jose A. Lopes | |
1481 | e1235448 | Jose A. Lopes | hvKvmCdrom2ImagePath :: String |
1482 | e1235448 | Jose A. Lopes | hvKvmCdrom2ImagePath = "cdrom2_image_path" |
1483 | e1235448 | Jose A. Lopes | |
1484 | e1235448 | Jose A. Lopes | hvKvmCdromDiskType :: String |
1485 | e1235448 | Jose A. Lopes | hvKvmCdromDiskType = "cdrom_disk_type" |
1486 | e1235448 | Jose A. Lopes | |
1487 | e1235448 | Jose A. Lopes | hvKvmExtra :: String |
1488 | e1235448 | Jose A. Lopes | hvKvmExtra = "kvm_extra" |
1489 | e1235448 | Jose A. Lopes | |
1490 | e1235448 | Jose A. Lopes | hvKvmFlag :: String |
1491 | e1235448 | Jose A. Lopes | hvKvmFlag = "kvm_flag" |
1492 | e1235448 | Jose A. Lopes | |
1493 | e1235448 | Jose A. Lopes | hvKvmFloppyImagePath :: String |
1494 | e1235448 | Jose A. Lopes | hvKvmFloppyImagePath = "floppy_image_path" |
1495 | e1235448 | Jose A. Lopes | |
1496 | e1235448 | Jose A. Lopes | hvKvmMachineVersion :: String |
1497 | e1235448 | Jose A. Lopes | hvKvmMachineVersion = "machine_version" |
1498 | e1235448 | Jose A. Lopes | |
1499 | e1235448 | Jose A. Lopes | hvKvmPath :: String |
1500 | e1235448 | Jose A. Lopes | hvKvmPath = "kvm_path" |
1501 | e1235448 | Jose A. Lopes | |
1502 | e1235448 | Jose A. Lopes | hvKvmSpiceAudioCompr :: String |
1503 | e1235448 | Jose A. Lopes | hvKvmSpiceAudioCompr = "spice_playback_compression" |
1504 | e1235448 | Jose A. Lopes | |
1505 | e1235448 | Jose A. Lopes | hvKvmSpiceBind :: String |
1506 | e1235448 | Jose A. Lopes | hvKvmSpiceBind = "spice_bind" |
1507 | e1235448 | Jose A. Lopes | |
1508 | e1235448 | Jose A. Lopes | hvKvmSpiceIpVersion :: String |
1509 | e1235448 | Jose A. Lopes | hvKvmSpiceIpVersion = "spice_ip_version" |
1510 | e1235448 | Jose A. Lopes | |
1511 | e1235448 | Jose A. Lopes | hvKvmSpiceJpegImgCompr :: String |
1512 | e1235448 | Jose A. Lopes | hvKvmSpiceJpegImgCompr = "spice_jpeg_wan_compression" |
1513 | e1235448 | Jose A. Lopes | |
1514 | e1235448 | Jose A. Lopes | hvKvmSpiceLosslessImgCompr :: String |
1515 | e1235448 | Jose A. Lopes | hvKvmSpiceLosslessImgCompr = "spice_image_compression" |
1516 | e1235448 | Jose A. Lopes | |
1517 | e1235448 | Jose A. Lopes | hvKvmSpicePasswordFile :: String |
1518 | e1235448 | Jose A. Lopes | hvKvmSpicePasswordFile = "spice_password_file" |
1519 | e1235448 | Jose A. Lopes | |
1520 | e1235448 | Jose A. Lopes | hvKvmSpiceStreamingVideoDetection :: String |
1521 | e1235448 | Jose A. Lopes | hvKvmSpiceStreamingVideoDetection = "spice_streaming_video" |
1522 | e1235448 | Jose A. Lopes | |
1523 | e1235448 | Jose A. Lopes | hvKvmSpiceTlsCiphers :: String |
1524 | e1235448 | Jose A. Lopes | hvKvmSpiceTlsCiphers = "spice_tls_ciphers" |
1525 | e1235448 | Jose A. Lopes | |
1526 | e1235448 | Jose A. Lopes | hvKvmSpiceUseTls :: String |
1527 | e1235448 | Jose A. Lopes | hvKvmSpiceUseTls = "spice_use_tls" |
1528 | e1235448 | Jose A. Lopes | |
1529 | e1235448 | Jose A. Lopes | hvKvmSpiceUseVdagent :: String |
1530 | e1235448 | Jose A. Lopes | hvKvmSpiceUseVdagent = "spice_use_vdagent" |
1531 | e1235448 | Jose A. Lopes | |
1532 | e1235448 | Jose A. Lopes | hvKvmSpiceZlibGlzImgCompr :: String |
1533 | e1235448 | Jose A. Lopes | hvKvmSpiceZlibGlzImgCompr = "spice_zlib_glz_wan_compression" |
1534 | e1235448 | Jose A. Lopes | |
1535 | e1235448 | Jose A. Lopes | hvKvmUseChroot :: String |
1536 | e1235448 | Jose A. Lopes | hvKvmUseChroot = "use_chroot" |
1537 | e1235448 | Jose A. Lopes | |
1538 | e1235448 | Jose A. Lopes | hvMemPath :: String |
1539 | e1235448 | Jose A. Lopes | hvMemPath = "mem_path" |
1540 | e1235448 | Jose A. Lopes | |
1541 | e1235448 | Jose A. Lopes | hvMigrationBandwidth :: String |
1542 | e1235448 | Jose A. Lopes | hvMigrationBandwidth = "migration_bandwidth" |
1543 | e1235448 | Jose A. Lopes | |
1544 | e1235448 | Jose A. Lopes | hvMigrationDowntime :: String |
1545 | e1235448 | Jose A. Lopes | hvMigrationDowntime = "migration_downtime" |
1546 | e1235448 | Jose A. Lopes | |
1547 | e1235448 | Jose A. Lopes | hvMigrationMode :: String |
1548 | e1235448 | Jose A. Lopes | hvMigrationMode = "migration_mode" |
1549 | e1235448 | Jose A. Lopes | |
1550 | e1235448 | Jose A. Lopes | hvMigrationPort :: String |
1551 | e1235448 | Jose A. Lopes | hvMigrationPort = "migration_port" |
1552 | e1235448 | Jose A. Lopes | |
1553 | e1235448 | Jose A. Lopes | hvNicType :: String |
1554 | e1235448 | Jose A. Lopes | hvNicType = "nic_type" |
1555 | e1235448 | Jose A. Lopes | |
1556 | e1235448 | Jose A. Lopes | hvPae :: String |
1557 | e1235448 | Jose A. Lopes | hvPae = "pae" |
1558 | e1235448 | Jose A. Lopes | |
1559 | e1235448 | Jose A. Lopes | hvPassthrough :: String |
1560 | e1235448 | Jose A. Lopes | hvPassthrough = "pci_pass" |
1561 | e1235448 | Jose A. Lopes | |
1562 | e1235448 | Jose A. Lopes | hvRebootBehavior :: String |
1563 | e1235448 | Jose A. Lopes | hvRebootBehavior = "reboot_behavior" |
1564 | e1235448 | Jose A. Lopes | |
1565 | e1235448 | Jose A. Lopes | hvRootPath :: String |
1566 | e1235448 | Jose A. Lopes | hvRootPath = "root_path" |
1567 | e1235448 | Jose A. Lopes | |
1568 | e1235448 | Jose A. Lopes | hvSecurityDomain :: String |
1569 | e1235448 | Jose A. Lopes | hvSecurityDomain = "security_domain" |
1570 | e1235448 | Jose A. Lopes | |
1571 | e1235448 | Jose A. Lopes | hvSecurityModel :: String |
1572 | e1235448 | Jose A. Lopes | hvSecurityModel = "security_model" |
1573 | e1235448 | Jose A. Lopes | |
1574 | e1235448 | Jose A. Lopes | hvSerialConsole :: String |
1575 | e1235448 | Jose A. Lopes | hvSerialConsole = "serial_console" |
1576 | e1235448 | Jose A. Lopes | |
1577 | e1235448 | Jose A. Lopes | hvSerialSpeed :: String |
1578 | e1235448 | Jose A. Lopes | hvSerialSpeed = "serial_speed" |
1579 | e1235448 | Jose A. Lopes | |
1580 | e1235448 | Jose A. Lopes | hvSoundhw :: String |
1581 | e1235448 | Jose A. Lopes | hvSoundhw = "soundhw" |
1582 | e1235448 | Jose A. Lopes | |
1583 | e1235448 | Jose A. Lopes | hvUsbDevices :: String |
1584 | e1235448 | Jose A. Lopes | hvUsbDevices = "usb_devices" |
1585 | e1235448 | Jose A. Lopes | |
1586 | e1235448 | Jose A. Lopes | hvUsbMouse :: String |
1587 | e1235448 | Jose A. Lopes | hvUsbMouse = "usb_mouse" |
1588 | e1235448 | Jose A. Lopes | |
1589 | e1235448 | Jose A. Lopes | hvUseBootloader :: String |
1590 | e1235448 | Jose A. Lopes | hvUseBootloader = "use_bootloader" |
1591 | e1235448 | Jose A. Lopes | |
1592 | e1235448 | Jose A. Lopes | hvUseLocaltime :: String |
1593 | e1235448 | Jose A. Lopes | hvUseLocaltime = "use_localtime" |
1594 | e1235448 | Jose A. Lopes | |
1595 | e1235448 | Jose A. Lopes | hvVga :: String |
1596 | e1235448 | Jose A. Lopes | hvVga = "vga" |
1597 | e1235448 | Jose A. Lopes | |
1598 | e1235448 | Jose A. Lopes | hvVhostNet :: String |
1599 | e1235448 | Jose A. Lopes | hvVhostNet = "vhost_net" |
1600 | e1235448 | Jose A. Lopes | |
1601 | e1235448 | Jose A. Lopes | hvVifScript :: String |
1602 | e1235448 | Jose A. Lopes | hvVifScript = "vif_script" |
1603 | e1235448 | Jose A. Lopes | |
1604 | e1235448 | Jose A. Lopes | hvVifType :: String |
1605 | e1235448 | Jose A. Lopes | hvVifType = "vif_type" |
1606 | e1235448 | Jose A. Lopes | |
1607 | e1235448 | Jose A. Lopes | hvViridian :: String |
1608 | e1235448 | Jose A. Lopes | hvViridian = "viridian" |
1609 | e1235448 | Jose A. Lopes | |
1610 | e1235448 | Jose A. Lopes | hvVncBindAddress :: String |
1611 | e1235448 | Jose A. Lopes | hvVncBindAddress = "vnc_bind_address" |
1612 | e1235448 | Jose A. Lopes | |
1613 | e1235448 | Jose A. Lopes | hvVncPasswordFile :: String |
1614 | e1235448 | Jose A. Lopes | hvVncPasswordFile = "vnc_password_file" |
1615 | e1235448 | Jose A. Lopes | |
1616 | e1235448 | Jose A. Lopes | hvVncTls :: String |
1617 | e1235448 | Jose A. Lopes | hvVncTls = "vnc_tls" |
1618 | e1235448 | Jose A. Lopes | |
1619 | e1235448 | Jose A. Lopes | hvVncX509 :: String |
1620 | e1235448 | Jose A. Lopes | hvVncX509 = "vnc_x509_path" |
1621 | e1235448 | Jose A. Lopes | |
1622 | e1235448 | Jose A. Lopes | hvVncX509Verify :: String |
1623 | e1235448 | Jose A. Lopes | hvVncX509Verify = "vnc_x509_verify" |
1624 | e1235448 | Jose A. Lopes | |
1625 | e1235448 | Jose A. Lopes | hvVnetHdr :: String |
1626 | e1235448 | Jose A. Lopes | hvVnetHdr = "vnet_hdr" |
1627 | e1235448 | Jose A. Lopes | |
1628 | e1235448 | Jose A. Lopes | hvXenCmd :: String |
1629 | e1235448 | Jose A. Lopes | hvXenCmd = "xen_cmd" |
1630 | e1235448 | Jose A. Lopes | |
1631 | e1235448 | Jose A. Lopes | hvXenCpuid :: String |
1632 | e1235448 | Jose A. Lopes | hvXenCpuid = "cpuid" |
1633 | e1235448 | Jose A. Lopes | |
1634 | e1235448 | Jose A. Lopes | hvsParameterTitles :: Map String String |
1635 | e1235448 | Jose A. Lopes | hvsParameterTitles = |
1636 | e1235448 | Jose A. Lopes | Map.fromList |
1637 | e1235448 | Jose A. Lopes | [(hvAcpi, "ACPI"), |
1638 | e1235448 | Jose A. Lopes | (hvBootOrder, "Boot_order"), |
1639 | e1235448 | Jose A. Lopes | (hvCdromImagePath, "CDROM_image_path"), |
1640 | e1235448 | Jose A. Lopes | (hvCpuType, "cpu_type"), |
1641 | e1235448 | Jose A. Lopes | (hvDiskType, "Disk_type"), |
1642 | e1235448 | Jose A. Lopes | (hvInitrdPath, "Initrd_path"), |
1643 | e1235448 | Jose A. Lopes | (hvKernelPath, "Kernel_path"), |
1644 | e1235448 | Jose A. Lopes | (hvNicType, "NIC_type"), |
1645 | e1235448 | Jose A. Lopes | (hvPae, "PAE"), |
1646 | e1235448 | Jose A. Lopes | (hvPassthrough, "pci_pass"), |
1647 | e1235448 | Jose A. Lopes | (hvVncBindAddress, "VNC_bind_address")] |
1648 | e1235448 | Jose A. Lopes | |
1649 | e1235448 | Jose A. Lopes | hvsParameters :: FrozenSet String |
1650 | e1235448 | Jose A. Lopes | hvsParameters = ConstantUtils.mkSet $ Map.keys hvsParameterTypes |
1651 | e1235448 | Jose A. Lopes | |
1652 | e1235448 | Jose A. Lopes | hvsParameterTypes :: Map String VType |
1653 | e1235448 | Jose A. Lopes | hvsParameterTypes = Map.fromList |
1654 | e1235448 | Jose A. Lopes | [ (hvAcpi, VTypeBool) |
1655 | e1235448 | Jose A. Lopes | , (hvBlockdevPrefix, VTypeString) |
1656 | e1235448 | Jose A. Lopes | , (hvBootloaderArgs, VTypeString) |
1657 | e1235448 | Jose A. Lopes | , (hvBootloaderPath, VTypeString) |
1658 | e1235448 | Jose A. Lopes | , (hvBootOrder, VTypeString) |
1659 | e1235448 | Jose A. Lopes | , (hvCdromImagePath, VTypeString) |
1660 | e1235448 | Jose A. Lopes | , (hvCpuCap, VTypeInt) |
1661 | e1235448 | Jose A. Lopes | , (hvCpuCores, VTypeInt) |
1662 | e1235448 | Jose A. Lopes | , (hvCpuMask, VTypeString) |
1663 | e1235448 | Jose A. Lopes | , (hvCpuSockets, VTypeInt) |
1664 | e1235448 | Jose A. Lopes | , (hvCpuThreads, VTypeInt) |
1665 | e1235448 | Jose A. Lopes | , (hvCpuType, VTypeString) |
1666 | e1235448 | Jose A. Lopes | , (hvCpuWeight, VTypeInt) |
1667 | e1235448 | Jose A. Lopes | , (hvDeviceModel, VTypeString) |
1668 | e1235448 | Jose A. Lopes | , (hvDiskCache, VTypeString) |
1669 | e1235448 | Jose A. Lopes | , (hvDiskType, VTypeString) |
1670 | e1235448 | Jose A. Lopes | , (hvInitrdPath, VTypeString) |
1671 | e1235448 | Jose A. Lopes | , (hvInitScript, VTypeString) |
1672 | e1235448 | Jose A. Lopes | , (hvKernelArgs, VTypeString) |
1673 | e1235448 | Jose A. Lopes | , (hvKernelPath, VTypeString) |
1674 | e1235448 | Jose A. Lopes | , (hvKeymap, VTypeString) |
1675 | e1235448 | Jose A. Lopes | , (hvKvmCdrom2ImagePath, VTypeString) |
1676 | e1235448 | Jose A. Lopes | , (hvKvmCdromDiskType, VTypeString) |
1677 | e1235448 | Jose A. Lopes | , (hvKvmExtra, VTypeString) |
1678 | e1235448 | Jose A. Lopes | , (hvKvmFlag, VTypeString) |
1679 | e1235448 | Jose A. Lopes | , (hvKvmFloppyImagePath, VTypeString) |
1680 | e1235448 | Jose A. Lopes | , (hvKvmMachineVersion, VTypeString) |
1681 | e1235448 | Jose A. Lopes | , (hvKvmPath, VTypeString) |
1682 | e1235448 | Jose A. Lopes | , (hvKvmSpiceAudioCompr, VTypeBool) |
1683 | e1235448 | Jose A. Lopes | , (hvKvmSpiceBind, VTypeString) |
1684 | e1235448 | Jose A. Lopes | , (hvKvmSpiceIpVersion, VTypeInt) |
1685 | e1235448 | Jose A. Lopes | , (hvKvmSpiceJpegImgCompr, VTypeString) |
1686 | e1235448 | Jose A. Lopes | , (hvKvmSpiceLosslessImgCompr, VTypeString) |
1687 | e1235448 | Jose A. Lopes | , (hvKvmSpicePasswordFile, VTypeString) |
1688 | e1235448 | Jose A. Lopes | , (hvKvmSpiceStreamingVideoDetection, VTypeString) |
1689 | e1235448 | Jose A. Lopes | , (hvKvmSpiceTlsCiphers, VTypeString) |
1690 | e1235448 | Jose A. Lopes | , (hvKvmSpiceUseTls, VTypeBool) |
1691 | e1235448 | Jose A. Lopes | , (hvKvmSpiceUseVdagent, VTypeBool) |
1692 | e1235448 | Jose A. Lopes | , (hvKvmSpiceZlibGlzImgCompr, VTypeString) |
1693 | e1235448 | Jose A. Lopes | , (hvKvmUseChroot, VTypeBool) |
1694 | e1235448 | Jose A. Lopes | , (hvMemPath, VTypeString) |
1695 | e1235448 | Jose A. Lopes | , (hvMigrationBandwidth, VTypeInt) |
1696 | e1235448 | Jose A. Lopes | , (hvMigrationDowntime, VTypeInt) |
1697 | e1235448 | Jose A. Lopes | , (hvMigrationMode, VTypeString) |
1698 | e1235448 | Jose A. Lopes | , (hvMigrationPort, VTypeInt) |
1699 | e1235448 | Jose A. Lopes | , (hvNicType, VTypeString) |
1700 | e1235448 | Jose A. Lopes | , (hvPae, VTypeBool) |
1701 | e1235448 | Jose A. Lopes | , (hvPassthrough, VTypeString) |
1702 | e1235448 | Jose A. Lopes | , (hvRebootBehavior, VTypeString) |
1703 | e1235448 | Jose A. Lopes | , (hvRootPath, VTypeMaybeString) |
1704 | e1235448 | Jose A. Lopes | , (hvSecurityDomain, VTypeString) |
1705 | e1235448 | Jose A. Lopes | , (hvSecurityModel, VTypeString) |
1706 | e1235448 | Jose A. Lopes | , (hvSerialConsole, VTypeBool) |
1707 | e1235448 | Jose A. Lopes | , (hvSerialSpeed, VTypeInt) |
1708 | e1235448 | Jose A. Lopes | , (hvSoundhw, VTypeString) |
1709 | e1235448 | Jose A. Lopes | , (hvUsbDevices, VTypeString) |
1710 | e1235448 | Jose A. Lopes | , (hvUsbMouse, VTypeString) |
1711 | e1235448 | Jose A. Lopes | , (hvUseBootloader, VTypeBool) |
1712 | e1235448 | Jose A. Lopes | , (hvUseLocaltime, VTypeBool) |
1713 | e1235448 | Jose A. Lopes | , (hvVga, VTypeString) |
1714 | e1235448 | Jose A. Lopes | , (hvVhostNet, VTypeBool) |
1715 | e1235448 | Jose A. Lopes | , (hvVifScript, VTypeString) |
1716 | e1235448 | Jose A. Lopes | , (hvVifType, VTypeString) |
1717 | e1235448 | Jose A. Lopes | , (hvViridian, VTypeBool) |
1718 | e1235448 | Jose A. Lopes | , (hvVncBindAddress, VTypeString) |
1719 | e1235448 | Jose A. Lopes | , (hvVncPasswordFile, VTypeString) |
1720 | e1235448 | Jose A. Lopes | , (hvVncTls, VTypeBool) |
1721 | e1235448 | Jose A. Lopes | , (hvVncX509, VTypeString) |
1722 | e1235448 | Jose A. Lopes | , (hvVncX509Verify, VTypeBool) |
1723 | e1235448 | Jose A. Lopes | , (hvVnetHdr, VTypeBool) |
1724 | e1235448 | Jose A. Lopes | , (hvXenCmd, VTypeString) |
1725 | e1235448 | Jose A. Lopes | , (hvXenCpuid, VTypeString) |
1726 | e1235448 | Jose A. Lopes | ] |
1727 | e1235448 | Jose A. Lopes | |
1728 | e1235448 | Jose A. Lopes | -- * Migration statuses |
1729 | e1235448 | Jose A. Lopes | |
1730 | e1235448 | Jose A. Lopes | hvMigrationActive :: String |
1731 | e1235448 | Jose A. Lopes | hvMigrationActive = "active" |
1732 | e1235448 | Jose A. Lopes | |
1733 | e1235448 | Jose A. Lopes | hvMigrationCancelled :: String |
1734 | e1235448 | Jose A. Lopes | hvMigrationCancelled = "cancelled" |
1735 | e1235448 | Jose A. Lopes | |
1736 | e1235448 | Jose A. Lopes | hvMigrationCompleted :: String |
1737 | e1235448 | Jose A. Lopes | hvMigrationCompleted = "completed" |
1738 | e1235448 | Jose A. Lopes | |
1739 | e1235448 | Jose A. Lopes | hvMigrationFailed :: String |
1740 | e1235448 | Jose A. Lopes | hvMigrationFailed = "failed" |
1741 | e1235448 | Jose A. Lopes | |
1742 | e1235448 | Jose A. Lopes | hvMigrationValidStatuses :: FrozenSet String |
1743 | e1235448 | Jose A. Lopes | hvMigrationValidStatuses = |
1744 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [hvMigrationActive, |
1745 | e1235448 | Jose A. Lopes | hvMigrationCancelled, |
1746 | e1235448 | Jose A. Lopes | hvMigrationCompleted, |
1747 | e1235448 | Jose A. Lopes | hvMigrationFailed] |
1748 | e1235448 | Jose A. Lopes | |
1749 | e1235448 | Jose A. Lopes | hvMigrationFailedStatuses :: FrozenSet String |
1750 | e1235448 | Jose A. Lopes | hvMigrationFailedStatuses = |
1751 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [hvMigrationFailed, hvMigrationCancelled] |
1752 | e1235448 | Jose A. Lopes | |
1753 | e1235448 | Jose A. Lopes | -- | KVM-specific statuses |
1754 | e1235448 | Jose A. Lopes | -- |
1755 | e1235448 | Jose A. Lopes | -- FIXME: this constant seems unnecessary |
1756 | e1235448 | Jose A. Lopes | hvKvmMigrationValidStatuses :: FrozenSet String |
1757 | e1235448 | Jose A. Lopes | hvKvmMigrationValidStatuses = hvMigrationValidStatuses |
1758 | e1235448 | Jose A. Lopes | |
1759 | e1235448 | Jose A. Lopes | -- | Node info keys |
1760 | e1235448 | Jose A. Lopes | hvNodeinfoKeyVersion :: String |
1761 | e1235448 | Jose A. Lopes | hvNodeinfoKeyVersion = "hv_version" |
1762 | e1235448 | Jose A. Lopes | |
1763 | e1235448 | Jose A. Lopes | -- * Hypervisor state |
1764 | e1235448 | Jose A. Lopes | |
1765 | e1235448 | Jose A. Lopes | hvstCpuNode :: String |
1766 | e1235448 | Jose A. Lopes | hvstCpuNode = "cpu_node" |
1767 | e1235448 | Jose A. Lopes | |
1768 | e1235448 | Jose A. Lopes | hvstCpuTotal :: String |
1769 | e1235448 | Jose A. Lopes | hvstCpuTotal = "cpu_total" |
1770 | e1235448 | Jose A. Lopes | |
1771 | e1235448 | Jose A. Lopes | hvstMemoryHv :: String |
1772 | e1235448 | Jose A. Lopes | hvstMemoryHv = "mem_hv" |
1773 | e1235448 | Jose A. Lopes | |
1774 | e1235448 | Jose A. Lopes | hvstMemoryNode :: String |
1775 | e1235448 | Jose A. Lopes | hvstMemoryNode = "mem_node" |
1776 | e1235448 | Jose A. Lopes | |
1777 | e1235448 | Jose A. Lopes | hvstMemoryTotal :: String |
1778 | e1235448 | Jose A. Lopes | hvstMemoryTotal = "mem_total" |
1779 | e1235448 | Jose A. Lopes | |
1780 | e1235448 | Jose A. Lopes | hvstsParameters :: FrozenSet String |
1781 | e1235448 | Jose A. Lopes | hvstsParameters = |
1782 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [hvstCpuNode, |
1783 | e1235448 | Jose A. Lopes | hvstCpuTotal, |
1784 | e1235448 | Jose A. Lopes | hvstMemoryHv, |
1785 | e1235448 | Jose A. Lopes | hvstMemoryNode, |
1786 | e1235448 | Jose A. Lopes | hvstMemoryTotal] |
1787 | e1235448 | Jose A. Lopes | |
1788 | e1235448 | Jose A. Lopes | hvstDefaults :: Map String Int |
1789 | e1235448 | Jose A. Lopes | hvstDefaults = |
1790 | e1235448 | Jose A. Lopes | Map.fromList |
1791 | e1235448 | Jose A. Lopes | [(hvstCpuNode, 1), |
1792 | e1235448 | Jose A. Lopes | (hvstCpuTotal, 1), |
1793 | e1235448 | Jose A. Lopes | (hvstMemoryHv, 0), |
1794 | e1235448 | Jose A. Lopes | (hvstMemoryTotal, 0), |
1795 | e1235448 | Jose A. Lopes | (hvstMemoryNode, 0)] |
1796 | e1235448 | Jose A. Lopes | |
1797 | e1235448 | Jose A. Lopes | hvstsParameterTypes :: Map String VType |
1798 | e1235448 | Jose A. Lopes | hvstsParameterTypes = |
1799 | e1235448 | Jose A. Lopes | Map.fromList [(hvstMemoryTotal, VTypeInt), |
1800 | e1235448 | Jose A. Lopes | (hvstMemoryNode, VTypeInt), |
1801 | e1235448 | Jose A. Lopes | (hvstMemoryHv, VTypeInt), |
1802 | e1235448 | Jose A. Lopes | (hvstCpuTotal, VTypeInt), |
1803 | e1235448 | Jose A. Lopes | (hvstCpuNode, VTypeInt)] |
1804 | e1235448 | Jose A. Lopes | |
1805 | e1235448 | Jose A. Lopes | -- * Disk state |
1806 | e1235448 | Jose A. Lopes | |
1807 | e1235448 | Jose A. Lopes | dsDiskOverhead :: String |
1808 | e1235448 | Jose A. Lopes | dsDiskOverhead = "disk_overhead" |
1809 | e1235448 | Jose A. Lopes | |
1810 | e1235448 | Jose A. Lopes | dsDiskReserved :: String |
1811 | e1235448 | Jose A. Lopes | dsDiskReserved = "disk_reserved" |
1812 | e1235448 | Jose A. Lopes | |
1813 | e1235448 | Jose A. Lopes | dsDiskTotal :: String |
1814 | e1235448 | Jose A. Lopes | dsDiskTotal = "disk_total" |
1815 | e1235448 | Jose A. Lopes | |
1816 | e1235448 | Jose A. Lopes | dsDefaults :: Map String Int |
1817 | e1235448 | Jose A. Lopes | dsDefaults = |
1818 | e1235448 | Jose A. Lopes | Map.fromList |
1819 | e1235448 | Jose A. Lopes | [(dsDiskTotal, 0), |
1820 | e1235448 | Jose A. Lopes | (dsDiskReserved, 0), |
1821 | e1235448 | Jose A. Lopes | (dsDiskOverhead, 0)] |
1822 | e1235448 | Jose A. Lopes | |
1823 | e1235448 | Jose A. Lopes | dssParameterTypes :: Map String VType |
1824 | e1235448 | Jose A. Lopes | dssParameterTypes = |
1825 | e1235448 | Jose A. Lopes | Map.fromList [(dsDiskTotal, VTypeInt), |
1826 | e1235448 | Jose A. Lopes | (dsDiskReserved, VTypeInt), |
1827 | e1235448 | Jose A. Lopes | (dsDiskOverhead, VTypeInt)] |
1828 | e1235448 | Jose A. Lopes | |
1829 | e1235448 | Jose A. Lopes | dssParameters :: FrozenSet String |
1830 | e1235448 | Jose A. Lopes | dssParameters = |
1831 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [dsDiskTotal, dsDiskReserved, dsDiskOverhead] |
1832 | e1235448 | Jose A. Lopes | |
1833 | e1235448 | Jose A. Lopes | dsValidTypes :: FrozenSet String |
1834 | e1235448 | Jose A. Lopes | dsValidTypes = ConstantUtils.mkSet [Types.diskTemplateToRaw DTPlain] |
1835 | e1235448 | Jose A. Lopes | |
1836 | e1235448 | Jose A. Lopes | -- Backend parameter names |
1837 | e1235448 | Jose A. Lopes | |
1838 | e1235448 | Jose A. Lopes | beAlwaysFailover :: String |
1839 | e1235448 | Jose A. Lopes | beAlwaysFailover = "always_failover" |
1840 | e1235448 | Jose A. Lopes | |
1841 | e1235448 | Jose A. Lopes | beAutoBalance :: String |
1842 | e1235448 | Jose A. Lopes | beAutoBalance = "auto_balance" |
1843 | e1235448 | Jose A. Lopes | |
1844 | e1235448 | Jose A. Lopes | beMaxmem :: String |
1845 | e1235448 | Jose A. Lopes | beMaxmem = "maxmem" |
1846 | e1235448 | Jose A. Lopes | |
1847 | e1235448 | Jose A. Lopes | -- | Deprecated and replaced by max and min mem |
1848 | e1235448 | Jose A. Lopes | beMemory :: String |
1849 | e1235448 | Jose A. Lopes | beMemory = "memory" |
1850 | e1235448 | Jose A. Lopes | |
1851 | e1235448 | Jose A. Lopes | beMinmem :: String |
1852 | e1235448 | Jose A. Lopes | beMinmem = "minmem" |
1853 | e1235448 | Jose A. Lopes | |
1854 | e1235448 | Jose A. Lopes | beSpindleUse :: String |
1855 | e1235448 | Jose A. Lopes | beSpindleUse = "spindle_use" |
1856 | e1235448 | Jose A. Lopes | |
1857 | e1235448 | Jose A. Lopes | beVcpus :: String |
1858 | e1235448 | Jose A. Lopes | beVcpus = "vcpus" |
1859 | e1235448 | Jose A. Lopes | |
1860 | e1235448 | Jose A. Lopes | besParameterTypes :: Map String VType |
1861 | e1235448 | Jose A. Lopes | besParameterTypes = |
1862 | e1235448 | Jose A. Lopes | Map.fromList [(beAlwaysFailover, VTypeBool), |
1863 | e1235448 | Jose A. Lopes | (beAutoBalance, VTypeBool), |
1864 | e1235448 | Jose A. Lopes | (beMaxmem, VTypeSize), |
1865 | e1235448 | Jose A. Lopes | (beMinmem, VTypeSize), |
1866 | e1235448 | Jose A. Lopes | (beSpindleUse, VTypeInt), |
1867 | e1235448 | Jose A. Lopes | (beVcpus, VTypeInt)] |
1868 | e1235448 | Jose A. Lopes | |
1869 | e1235448 | Jose A. Lopes | besParameterTitles :: Map String String |
1870 | e1235448 | Jose A. Lopes | besParameterTitles = |
1871 | e1235448 | Jose A. Lopes | Map.fromList [(beAutoBalance, "Auto_balance"), |
1872 | e1235448 | Jose A. Lopes | (beMinmem, "ConfigMinMem"), |
1873 | e1235448 | Jose A. Lopes | (beVcpus, "ConfigVCPUs"), |
1874 | e1235448 | Jose A. Lopes | (beMaxmem, "ConfigMaxMem")] |
1875 | e1235448 | Jose A. Lopes | |
1876 | e1235448 | Jose A. Lopes | besParameterCompat :: Map String VType |
1877 | e1235448 | Jose A. Lopes | besParameterCompat = Map.insert beMemory VTypeSize besParameterTypes |
1878 | e1235448 | Jose A. Lopes | |
1879 | e1235448 | Jose A. Lopes | besParameters :: FrozenSet String |
1880 | e1235448 | Jose A. Lopes | besParameters = |
1881 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [beAlwaysFailover, |
1882 | e1235448 | Jose A. Lopes | beAutoBalance, |
1883 | e1235448 | Jose A. Lopes | beMaxmem, |
1884 | e1235448 | Jose A. Lopes | beMinmem, |
1885 | e1235448 | Jose A. Lopes | beSpindleUse, |
1886 | e1235448 | Jose A. Lopes | beVcpus] |
1887 | e1235448 | Jose A. Lopes | |
1888 | e1235448 | Jose A. Lopes | -- | Instance specs |
1889 | e1235448 | Jose A. Lopes | -- |
1890 | e1235448 | Jose A. Lopes | -- FIXME: these should be associated with 'Ganeti.HTools.Types.ISpec' |
1891 | e1235448 | Jose A. Lopes | |
1892 | e1235448 | Jose A. Lopes | ispecMemSize :: String |
1893 | e1235448 | Jose A. Lopes | ispecMemSize = ConstantUtils.ispecMemSize |
1894 | e1235448 | Jose A. Lopes | |
1895 | e1235448 | Jose A. Lopes | ispecCpuCount :: String |
1896 | e1235448 | Jose A. Lopes | ispecCpuCount = ConstantUtils.ispecCpuCount |
1897 | e1235448 | Jose A. Lopes | |
1898 | e1235448 | Jose A. Lopes | ispecDiskCount :: String |
1899 | e1235448 | Jose A. Lopes | ispecDiskCount = ConstantUtils.ispecDiskCount |
1900 | e1235448 | Jose A. Lopes | |
1901 | e1235448 | Jose A. Lopes | ispecDiskSize :: String |
1902 | e1235448 | Jose A. Lopes | ispecDiskSize = ConstantUtils.ispecDiskSize |
1903 | e1235448 | Jose A. Lopes | |
1904 | e1235448 | Jose A. Lopes | ispecNicCount :: String |
1905 | e1235448 | Jose A. Lopes | ispecNicCount = ConstantUtils.ispecNicCount |
1906 | e1235448 | Jose A. Lopes | |
1907 | e1235448 | Jose A. Lopes | ispecSpindleUse :: String |
1908 | e1235448 | Jose A. Lopes | ispecSpindleUse = ConstantUtils.ispecSpindleUse |
1909 | e1235448 | Jose A. Lopes | |
1910 | e1235448 | Jose A. Lopes | ispecsParameterTypes :: Map String VType |
1911 | e1235448 | Jose A. Lopes | ispecsParameterTypes = |
1912 | e1235448 | Jose A. Lopes | Map.fromList |
1913 | e1235448 | Jose A. Lopes | [(ConstantUtils.ispecDiskSize, VTypeInt), |
1914 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecCpuCount, VTypeInt), |
1915 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecSpindleUse, VTypeInt), |
1916 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecMemSize, VTypeInt), |
1917 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecNicCount, VTypeInt), |
1918 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecDiskCount, VTypeInt)] |
1919 | e1235448 | Jose A. Lopes | |
1920 | e1235448 | Jose A. Lopes | ispecsParameters :: FrozenSet String |
1921 | e1235448 | Jose A. Lopes | ispecsParameters = |
1922 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [ConstantUtils.ispecCpuCount, |
1923 | e1235448 | Jose A. Lopes | ConstantUtils.ispecDiskCount, |
1924 | e1235448 | Jose A. Lopes | ConstantUtils.ispecDiskSize, |
1925 | e1235448 | Jose A. Lopes | ConstantUtils.ispecMemSize, |
1926 | e1235448 | Jose A. Lopes | ConstantUtils.ispecNicCount, |
1927 | e1235448 | Jose A. Lopes | ConstantUtils.ispecSpindleUse] |
1928 | e1235448 | Jose A. Lopes | |
1929 | e1235448 | Jose A. Lopes | ispecsMinmax :: String |
1930 | e1235448 | Jose A. Lopes | ispecsMinmax = ConstantUtils.ispecsMinmax |
1931 | e1235448 | Jose A. Lopes | |
1932 | e1235448 | Jose A. Lopes | ispecsMax :: String |
1933 | e1235448 | Jose A. Lopes | ispecsMax = "max" |
1934 | e1235448 | Jose A. Lopes | |
1935 | e1235448 | Jose A. Lopes | ispecsMin :: String |
1936 | e1235448 | Jose A. Lopes | ispecsMin = "min" |
1937 | e1235448 | Jose A. Lopes | |
1938 | e1235448 | Jose A. Lopes | ispecsStd :: String |
1939 | e1235448 | Jose A. Lopes | ispecsStd = ConstantUtils.ispecsStd |
1940 | e1235448 | Jose A. Lopes | |
1941 | e1235448 | Jose A. Lopes | ipolicyDts :: String |
1942 | e1235448 | Jose A. Lopes | ipolicyDts = ConstantUtils.ipolicyDts |
1943 | e1235448 | Jose A. Lopes | |
1944 | e1235448 | Jose A. Lopes | ipolicyVcpuRatio :: String |
1945 | e1235448 | Jose A. Lopes | ipolicyVcpuRatio = ConstantUtils.ipolicyVcpuRatio |
1946 | e1235448 | Jose A. Lopes | |
1947 | e1235448 | Jose A. Lopes | ipolicySpindleRatio :: String |
1948 | e1235448 | Jose A. Lopes | ipolicySpindleRatio = ConstantUtils.ipolicySpindleRatio |
1949 | e1235448 | Jose A. Lopes | |
1950 | e1235448 | Jose A. Lopes | ispecsMinmaxKeys :: FrozenSet String |
1951 | e1235448 | Jose A. Lopes | ispecsMinmaxKeys = ConstantUtils.mkSet [ispecsMax, ispecsMin] |
1952 | e1235448 | Jose A. Lopes | |
1953 | e1235448 | Jose A. Lopes | ipolicyParameters :: FrozenSet String |
1954 | e1235448 | Jose A. Lopes | ipolicyParameters = |
1955 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [ConstantUtils.ipolicyVcpuRatio, |
1956 | e1235448 | Jose A. Lopes | ConstantUtils.ipolicySpindleRatio] |
1957 | e1235448 | Jose A. Lopes | |
1958 | e1235448 | Jose A. Lopes | ipolicyAllKeys :: FrozenSet String |
1959 | e1235448 | Jose A. Lopes | ipolicyAllKeys = |
1960 | e1235448 | Jose A. Lopes | ConstantUtils.union ipolicyParameters $ |
1961 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [ConstantUtils.ipolicyDts, |
1962 | e1235448 | Jose A. Lopes | ConstantUtils.ispecsMinmax, |
1963 | e1235448 | Jose A. Lopes | ispecsStd] |
1964 | e1235448 | Jose A. Lopes | |
1965 | e1235448 | Jose A. Lopes | -- | Node parameter names |
1966 | e1235448 | Jose A. Lopes | |
1967 | e1235448 | Jose A. Lopes | ndExclusiveStorage :: String |
1968 | e1235448 | Jose A. Lopes | ndExclusiveStorage = "exclusive_storage" |
1969 | e1235448 | Jose A. Lopes | |
1970 | e1235448 | Jose A. Lopes | ndOobProgram :: String |
1971 | e1235448 | Jose A. Lopes | ndOobProgram = "oob_program" |
1972 | e1235448 | Jose A. Lopes | |
1973 | e1235448 | Jose A. Lopes | ndSpindleCount :: String |
1974 | e1235448 | Jose A. Lopes | ndSpindleCount = "spindle_count" |
1975 | e1235448 | Jose A. Lopes | |
1976 | e1235448 | Jose A. Lopes | ndOvs :: String |
1977 | e1235448 | Jose A. Lopes | ndOvs = "ovs" |
1978 | e1235448 | Jose A. Lopes | |
1979 | e1235448 | Jose A. Lopes | ndOvsLink :: String |
1980 | e1235448 | Jose A. Lopes | ndOvsLink = "ovs_link" |
1981 | e1235448 | Jose A. Lopes | |
1982 | e1235448 | Jose A. Lopes | ndOvsName :: String |
1983 | e1235448 | Jose A. Lopes | ndOvsName = "ovs_name" |
1984 | e1235448 | Jose A. Lopes | |
1985 | a4417db4 | Thomas Thrainer | ndSshPort :: String |
1986 | a4417db4 | Thomas Thrainer | ndSshPort = "ssh_port" |
1987 | a4417db4 | Thomas Thrainer | |
1988 | e1235448 | Jose A. Lopes | ndsParameterTypes :: Map String VType |
1989 | e1235448 | Jose A. Lopes | ndsParameterTypes = |
1990 | e1235448 | Jose A. Lopes | Map.fromList |
1991 | e1235448 | Jose A. Lopes | [(ndExclusiveStorage, VTypeBool), |
1992 | e1235448 | Jose A. Lopes | (ndOobProgram, VTypeString), |
1993 | e1235448 | Jose A. Lopes | (ndOvs, VTypeBool), |
1994 | e1235448 | Jose A. Lopes | (ndOvsLink, VTypeMaybeString), |
1995 | e1235448 | Jose A. Lopes | (ndOvsName, VTypeMaybeString), |
1996 | a4417db4 | Thomas Thrainer | (ndSpindleCount, VTypeInt), |
1997 | a4417db4 | Thomas Thrainer | (ndSshPort, VTypeInt)] |
1998 | e1235448 | Jose A. Lopes | |
1999 | e1235448 | Jose A. Lopes | ndsParameters :: FrozenSet String |
2000 | e1235448 | Jose A. Lopes | ndsParameters = ConstantUtils.mkSet (Map.keys ndsParameterTypes) |
2001 | e1235448 | Jose A. Lopes | |
2002 | e1235448 | Jose A. Lopes | ndsParameterTitles :: Map String String |
2003 | e1235448 | Jose A. Lopes | ndsParameterTitles = |
2004 | e1235448 | Jose A. Lopes | Map.fromList |
2005 | e1235448 | Jose A. Lopes | [(ndExclusiveStorage, "ExclusiveStorage"), |
2006 | e1235448 | Jose A. Lopes | (ndOobProgram, "OutOfBandProgram"), |
2007 | e1235448 | Jose A. Lopes | (ndOvs, "OpenvSwitch"), |
2008 | e1235448 | Jose A. Lopes | (ndOvsLink, "OpenvSwitchLink"), |
2009 | e1235448 | Jose A. Lopes | (ndOvsName, "OpenvSwitchName"), |
2010 | e1235448 | Jose A. Lopes | (ndSpindleCount, "SpindleCount")] |
2011 | e1235448 | Jose A. Lopes | |
2012 | e1235448 | Jose A. Lopes | -- * Logical Disks parameters |
2013 | e1235448 | Jose A. Lopes | |
2014 | e1235448 | Jose A. Lopes | ldpAccess :: String |
2015 | e1235448 | Jose A. Lopes | ldpAccess = "access" |
2016 | e1235448 | Jose A. Lopes | |
2017 | e1235448 | Jose A. Lopes | ldpBarriers :: String |
2018 | e1235448 | Jose A. Lopes | ldpBarriers = "disabled-barriers" |
2019 | e1235448 | Jose A. Lopes | |
2020 | e1235448 | Jose A. Lopes | ldpDefaultMetavg :: String |
2021 | e1235448 | Jose A. Lopes | ldpDefaultMetavg = "default-metavg" |
2022 | e1235448 | Jose A. Lopes | |
2023 | e1235448 | Jose A. Lopes | ldpDelayTarget :: String |
2024 | e1235448 | Jose A. Lopes | ldpDelayTarget = "c-delay-target" |
2025 | e1235448 | Jose A. Lopes | |
2026 | e1235448 | Jose A. Lopes | ldpDiskCustom :: String |
2027 | e1235448 | Jose A. Lopes | ldpDiskCustom = "disk-custom" |
2028 | e1235448 | Jose A. Lopes | |
2029 | e1235448 | Jose A. Lopes | ldpDynamicResync :: String |
2030 | e1235448 | Jose A. Lopes | ldpDynamicResync = "dynamic-resync" |
2031 | e1235448 | Jose A. Lopes | |
2032 | e1235448 | Jose A. Lopes | ldpFillTarget :: String |
2033 | e1235448 | Jose A. Lopes | ldpFillTarget = "c-fill-target" |
2034 | e1235448 | Jose A. Lopes | |
2035 | e1235448 | Jose A. Lopes | ldpMaxRate :: String |
2036 | e1235448 | Jose A. Lopes | ldpMaxRate = "c-max-rate" |
2037 | e1235448 | Jose A. Lopes | |
2038 | e1235448 | Jose A. Lopes | ldpMinRate :: String |
2039 | e1235448 | Jose A. Lopes | ldpMinRate = "c-min-rate" |
2040 | e1235448 | Jose A. Lopes | |
2041 | e1235448 | Jose A. Lopes | ldpNetCustom :: String |
2042 | e1235448 | Jose A. Lopes | ldpNetCustom = "net-custom" |
2043 | e1235448 | Jose A. Lopes | |
2044 | e1235448 | Jose A. Lopes | ldpNoMetaFlush :: String |
2045 | e1235448 | Jose A. Lopes | ldpNoMetaFlush = "disable-meta-flush" |
2046 | e1235448 | Jose A. Lopes | |
2047 | e1235448 | Jose A. Lopes | ldpPlanAhead :: String |
2048 | e1235448 | Jose A. Lopes | ldpPlanAhead = "c-plan-ahead" |
2049 | e1235448 | Jose A. Lopes | |
2050 | e1235448 | Jose A. Lopes | ldpPool :: String |
2051 | e1235448 | Jose A. Lopes | ldpPool = "pool" |
2052 | e1235448 | Jose A. Lopes | |
2053 | e1235448 | Jose A. Lopes | ldpProtocol :: String |
2054 | e1235448 | Jose A. Lopes | ldpProtocol = "protocol" |
2055 | e1235448 | Jose A. Lopes | |
2056 | e1235448 | Jose A. Lopes | ldpResyncRate :: String |
2057 | e1235448 | Jose A. Lopes | ldpResyncRate = "resync-rate" |
2058 | e1235448 | Jose A. Lopes | |
2059 | e1235448 | Jose A. Lopes | ldpStripes :: String |
2060 | e1235448 | Jose A. Lopes | ldpStripes = "stripes" |
2061 | e1235448 | Jose A. Lopes | |
2062 | e1235448 | Jose A. Lopes | diskLdTypes :: Map String VType |
2063 | e1235448 | Jose A. Lopes | diskLdTypes = |
2064 | e1235448 | Jose A. Lopes | Map.fromList |
2065 | e1235448 | Jose A. Lopes | [(ldpAccess, VTypeString), |
2066 | e1235448 | Jose A. Lopes | (ldpResyncRate, VTypeInt), |
2067 | e1235448 | Jose A. Lopes | (ldpStripes, VTypeInt), |
2068 | e1235448 | Jose A. Lopes | (ldpBarriers, VTypeString), |
2069 | e1235448 | Jose A. Lopes | (ldpNoMetaFlush, VTypeBool), |
2070 | e1235448 | Jose A. Lopes | (ldpDefaultMetavg, VTypeString), |
2071 | e1235448 | Jose A. Lopes | (ldpDiskCustom, VTypeString), |
2072 | e1235448 | Jose A. Lopes | (ldpNetCustom, VTypeString), |
2073 | e1235448 | Jose A. Lopes | (ldpProtocol, VTypeString), |
2074 | e1235448 | Jose A. Lopes | (ldpDynamicResync, VTypeBool), |
2075 | e1235448 | Jose A. Lopes | (ldpPlanAhead, VTypeInt), |
2076 | e1235448 | Jose A. Lopes | (ldpFillTarget, VTypeInt), |
2077 | e1235448 | Jose A. Lopes | (ldpDelayTarget, VTypeInt), |
2078 | e1235448 | Jose A. Lopes | (ldpMaxRate, VTypeInt), |
2079 | e1235448 | Jose A. Lopes | (ldpMinRate, VTypeInt), |
2080 | e1235448 | Jose A. Lopes | (ldpPool, VTypeString)] |
2081 | e1235448 | Jose A. Lopes | |
2082 | e1235448 | Jose A. Lopes | diskLdParameters :: FrozenSet String |
2083 | e1235448 | Jose A. Lopes | diskLdParameters = ConstantUtils.mkSet (Map.keys diskLdTypes) |
2084 | e1235448 | Jose A. Lopes | |
2085 | e1235448 | Jose A. Lopes | -- * Disk template parameters |
2086 | e1235448 | Jose A. Lopes | -- |
2087 | e1235448 | Jose A. Lopes | -- Disk template parameters can be set/changed by the user via |
2088 | e1235448 | Jose A. Lopes | -- gnt-cluster and gnt-group) |
2089 | e1235448 | Jose A. Lopes | |
2090 | e1235448 | Jose A. Lopes | drbdResyncRate :: String |
2091 | e1235448 | Jose A. Lopes | drbdResyncRate = "resync-rate" |
2092 | e1235448 | Jose A. Lopes | |
2093 | e1235448 | Jose A. Lopes | drbdDataStripes :: String |
2094 | e1235448 | Jose A. Lopes | drbdDataStripes = "data-stripes" |
2095 | e1235448 | Jose A. Lopes | |
2096 | e1235448 | Jose A. Lopes | drbdMetaStripes :: String |
2097 | e1235448 | Jose A. Lopes | drbdMetaStripes = "meta-stripes" |
2098 | e1235448 | Jose A. Lopes | |
2099 | e1235448 | Jose A. Lopes | drbdDiskBarriers :: String |
2100 | e1235448 | Jose A. Lopes | drbdDiskBarriers = "disk-barriers" |
2101 | e1235448 | Jose A. Lopes | |
2102 | e1235448 | Jose A. Lopes | drbdMetaBarriers :: String |
2103 | e1235448 | Jose A. Lopes | drbdMetaBarriers = "meta-barriers" |
2104 | e1235448 | Jose A. Lopes | |
2105 | e1235448 | Jose A. Lopes | drbdDefaultMetavg :: String |
2106 | e1235448 | Jose A. Lopes | drbdDefaultMetavg = "metavg" |
2107 | e1235448 | Jose A. Lopes | |
2108 | e1235448 | Jose A. Lopes | drbdDiskCustom :: String |
2109 | e1235448 | Jose A. Lopes | drbdDiskCustom = "disk-custom" |
2110 | e1235448 | Jose A. Lopes | |
2111 | e1235448 | Jose A. Lopes | drbdNetCustom :: String |
2112 | e1235448 | Jose A. Lopes | drbdNetCustom = "net-custom" |
2113 | e1235448 | Jose A. Lopes | |
2114 | e1235448 | Jose A. Lopes | drbdProtocol :: String |
2115 | e1235448 | Jose A. Lopes | drbdProtocol = "protocol" |
2116 | e1235448 | Jose A. Lopes | |
2117 | e1235448 | Jose A. Lopes | drbdDynamicResync :: String |
2118 | e1235448 | Jose A. Lopes | drbdDynamicResync = "dynamic-resync" |
2119 | e1235448 | Jose A. Lopes | |
2120 | e1235448 | Jose A. Lopes | drbdPlanAhead :: String |
2121 | e1235448 | Jose A. Lopes | drbdPlanAhead = "c-plan-ahead" |
2122 | e1235448 | Jose A. Lopes | |
2123 | e1235448 | Jose A. Lopes | drbdFillTarget :: String |
2124 | e1235448 | Jose A. Lopes | drbdFillTarget = "c-fill-target" |
2125 | e1235448 | Jose A. Lopes | |
2126 | e1235448 | Jose A. Lopes | drbdDelayTarget :: String |
2127 | e1235448 | Jose A. Lopes | drbdDelayTarget = "c-delay-target" |
2128 | e1235448 | Jose A. Lopes | |
2129 | e1235448 | Jose A. Lopes | drbdMaxRate :: String |
2130 | e1235448 | Jose A. Lopes | drbdMaxRate = "c-max-rate" |
2131 | e1235448 | Jose A. Lopes | |
2132 | e1235448 | Jose A. Lopes | drbdMinRate :: String |
2133 | e1235448 | Jose A. Lopes | drbdMinRate = "c-min-rate" |
2134 | e1235448 | Jose A. Lopes | |
2135 | e1235448 | Jose A. Lopes | lvStripes :: String |
2136 | e1235448 | Jose A. Lopes | lvStripes = "stripes" |
2137 | e1235448 | Jose A. Lopes | |
2138 | e1235448 | Jose A. Lopes | rbdAccess :: String |
2139 | e1235448 | Jose A. Lopes | rbdAccess = "access" |
2140 | e1235448 | Jose A. Lopes | |
2141 | e1235448 | Jose A. Lopes | rbdPool :: String |
2142 | e1235448 | Jose A. Lopes | rbdPool = "pool" |
2143 | e1235448 | Jose A. Lopes | |
2144 | e1235448 | Jose A. Lopes | diskDtTypes :: Map String VType |
2145 | e1235448 | Jose A. Lopes | diskDtTypes = |
2146 | e1235448 | Jose A. Lopes | Map.fromList [(drbdResyncRate, VTypeInt), |
2147 | e1235448 | Jose A. Lopes | (drbdDataStripes, VTypeInt), |
2148 | e1235448 | Jose A. Lopes | (drbdMetaStripes, VTypeInt), |
2149 | e1235448 | Jose A. Lopes | (drbdDiskBarriers, VTypeString), |
2150 | e1235448 | Jose A. Lopes | (drbdMetaBarriers, VTypeBool), |
2151 | e1235448 | Jose A. Lopes | (drbdDefaultMetavg, VTypeString), |
2152 | e1235448 | Jose A. Lopes | (drbdDiskCustom, VTypeString), |
2153 | e1235448 | Jose A. Lopes | (drbdNetCustom, VTypeString), |
2154 | e1235448 | Jose A. Lopes | (drbdProtocol, VTypeString), |
2155 | e1235448 | Jose A. Lopes | (drbdDynamicResync, VTypeBool), |
2156 | e1235448 | Jose A. Lopes | (drbdPlanAhead, VTypeInt), |
2157 | e1235448 | Jose A. Lopes | (drbdFillTarget, VTypeInt), |
2158 | e1235448 | Jose A. Lopes | (drbdDelayTarget, VTypeInt), |
2159 | e1235448 | Jose A. Lopes | (drbdMaxRate, VTypeInt), |
2160 | e1235448 | Jose A. Lopes | (drbdMinRate, VTypeInt), |
2161 | e1235448 | Jose A. Lopes | (lvStripes, VTypeInt), |
2162 | e1235448 | Jose A. Lopes | (rbdAccess, VTypeString), |
2163 | e1235448 | Jose A. Lopes | (rbdPool, VTypeString)] |
2164 | e1235448 | Jose A. Lopes | |
2165 | e1235448 | Jose A. Lopes | diskDtParameters :: FrozenSet String |
2166 | e1235448 | Jose A. Lopes | diskDtParameters = ConstantUtils.mkSet (Map.keys diskDtTypes) |
2167 | e1235448 | Jose A. Lopes | |
2168 | e1235448 | Jose A. Lopes | -- * Dynamic disk parameters |
2169 | e1235448 | Jose A. Lopes | |
2170 | e1235448 | Jose A. Lopes | ddpLocalIp :: String |
2171 | e1235448 | Jose A. Lopes | ddpLocalIp = "local-ip" |
2172 | e1235448 | Jose A. Lopes | |
2173 | e1235448 | Jose A. Lopes | ddpRemoteIp :: String |
2174 | e1235448 | Jose A. Lopes | ddpRemoteIp = "remote-ip" |
2175 | e1235448 | Jose A. Lopes | |
2176 | e1235448 | Jose A. Lopes | ddpPort :: String |
2177 | e1235448 | Jose A. Lopes | ddpPort = "port" |
2178 | e1235448 | Jose A. Lopes | |
2179 | e1235448 | Jose A. Lopes | ddpLocalMinor :: String |
2180 | e1235448 | Jose A. Lopes | ddpLocalMinor = "local-minor" |
2181 | e1235448 | Jose A. Lopes | |
2182 | e1235448 | Jose A. Lopes | ddpRemoteMinor :: String |
2183 | e1235448 | Jose A. Lopes | ddpRemoteMinor = "remote-minor" |
2184 | e1235448 | Jose A. Lopes | |
2185 | e1235448 | Jose A. Lopes | -- * OOB supported commands |
2186 | e1235448 | Jose A. Lopes | |
2187 | e1235448 | Jose A. Lopes | oobPowerOn :: String |
2188 | e1235448 | Jose A. Lopes | oobPowerOn = Types.oobCommandToRaw OobPowerOn |
2189 | e1235448 | Jose A. Lopes | |
2190 | e1235448 | Jose A. Lopes | oobPowerOff :: String |
2191 | e1235448 | Jose A. Lopes | oobPowerOff = Types.oobCommandToRaw OobPowerOff |
2192 | e1235448 | Jose A. Lopes | |
2193 | e1235448 | Jose A. Lopes | oobPowerCycle :: String |
2194 | e1235448 | Jose A. Lopes | oobPowerCycle = Types.oobCommandToRaw OobPowerCycle |
2195 | e1235448 | Jose A. Lopes | |
2196 | e1235448 | Jose A. Lopes | oobPowerStatus :: String |
2197 | e1235448 | Jose A. Lopes | oobPowerStatus = Types.oobCommandToRaw OobPowerStatus |
2198 | e1235448 | Jose A. Lopes | |
2199 | e1235448 | Jose A. Lopes | oobHealth :: String |
2200 | e1235448 | Jose A. Lopes | oobHealth = Types.oobCommandToRaw OobHealth |
2201 | e1235448 | Jose A. Lopes | |
2202 | e1235448 | Jose A. Lopes | oobCommands :: FrozenSet String |
2203 | e1235448 | Jose A. Lopes | oobCommands = ConstantUtils.mkSet $ map Types.oobCommandToRaw [minBound..] |
2204 | e1235448 | Jose A. Lopes | |
2205 | e1235448 | Jose A. Lopes | oobPowerStatusPowered :: String |
2206 | e1235448 | Jose A. Lopes | oobPowerStatusPowered = "powered" |
2207 | e1235448 | Jose A. Lopes | |
2208 | e1235448 | Jose A. Lopes | -- | 60 seconds |
2209 | e1235448 | Jose A. Lopes | oobTimeout :: Int |
2210 | e1235448 | Jose A. Lopes | oobTimeout = 60 |
2211 | e1235448 | Jose A. Lopes | |
2212 | e1235448 | Jose A. Lopes | -- | 2 seconds |
2213 | e1235448 | Jose A. Lopes | oobPowerDelay :: Double |
2214 | e1235448 | Jose A. Lopes | oobPowerDelay = 2.0 |
2215 | e1235448 | Jose A. Lopes | |
2216 | e1235448 | Jose A. Lopes | oobStatusCritical :: String |
2217 | e1235448 | Jose A. Lopes | oobStatusCritical = Types.oobStatusToRaw OobStatusCritical |
2218 | e1235448 | Jose A. Lopes | |
2219 | e1235448 | Jose A. Lopes | oobStatusOk :: String |
2220 | e1235448 | Jose A. Lopes | oobStatusOk = Types.oobStatusToRaw OobStatusOk |
2221 | e1235448 | Jose A. Lopes | |
2222 | e1235448 | Jose A. Lopes | oobStatusUnknown :: String |
2223 | e1235448 | Jose A. Lopes | oobStatusUnknown = Types.oobStatusToRaw OobStatusUnknown |
2224 | e1235448 | Jose A. Lopes | |
2225 | e1235448 | Jose A. Lopes | oobStatusWarning :: String |
2226 | e1235448 | Jose A. Lopes | oobStatusWarning = Types.oobStatusToRaw OobStatusWarning |
2227 | e1235448 | Jose A. Lopes | |
2228 | e1235448 | Jose A. Lopes | oobStatuses :: FrozenSet String |
2229 | e1235448 | Jose A. Lopes | oobStatuses = ConstantUtils.mkSet $ map Types.oobStatusToRaw [minBound..] |
2230 | e1235448 | Jose A. Lopes | |
2231 | e1235448 | Jose A. Lopes | -- | Instance Parameters Profile |
2232 | e1235448 | Jose A. Lopes | ppDefault :: String |
2233 | e1235448 | Jose A. Lopes | ppDefault = "default" |
2234 | e1235448 | Jose A. Lopes | |
2235 | e1235448 | Jose A. Lopes | -- * nic* constants are used inside the ganeti config |
2236 | e1235448 | Jose A. Lopes | |
2237 | e1235448 | Jose A. Lopes | nicLink :: String |
2238 | e1235448 | Jose A. Lopes | nicLink = "link" |
2239 | e1235448 | Jose A. Lopes | |
2240 | e1235448 | Jose A. Lopes | nicMode :: String |
2241 | e1235448 | Jose A. Lopes | nicMode = "mode" |
2242 | e1235448 | Jose A. Lopes | |
2243 | e1235448 | Jose A. Lopes | nicVlan :: String |
2244 | e1235448 | Jose A. Lopes | nicVlan = "vlan" |
2245 | e1235448 | Jose A. Lopes | |
2246 | e1235448 | Jose A. Lopes | nicsParameterTypes :: Map String VType |
2247 | e1235448 | Jose A. Lopes | nicsParameterTypes = |
2248 | e1235448 | Jose A. Lopes | Map.fromList [(nicMode, vtypeString), |
2249 | e1235448 | Jose A. Lopes | (nicLink, vtypeString), |
2250 | 07e68848 | Thomas Thrainer | (nicVlan, vtypeString)] |
2251 | e1235448 | Jose A. Lopes | |
2252 | e1235448 | Jose A. Lopes | nicsParameters :: FrozenSet String |
2253 | e1235448 | Jose A. Lopes | nicsParameters = ConstantUtils.mkSet (Map.keys nicsParameterTypes) |
2254 | e1235448 | Jose A. Lopes | |
2255 | e1235448 | Jose A. Lopes | nicModeBridged :: String |
2256 | e1235448 | Jose A. Lopes | nicModeBridged = Types.nICModeToRaw NMBridged |
2257 | e1235448 | Jose A. Lopes | |
2258 | e1235448 | Jose A. Lopes | nicModeRouted :: String |
2259 | e1235448 | Jose A. Lopes | nicModeRouted = Types.nICModeToRaw NMRouted |
2260 | e1235448 | Jose A. Lopes | |
2261 | e1235448 | Jose A. Lopes | nicModeOvs :: String |
2262 | e1235448 | Jose A. Lopes | nicModeOvs = Types.nICModeToRaw NMOvs |
2263 | e1235448 | Jose A. Lopes | |
2264 | e1235448 | Jose A. Lopes | nicIpPool :: String |
2265 | e1235448 | Jose A. Lopes | nicIpPool = Types.nICModeToRaw NMPool |
2266 | e1235448 | Jose A. Lopes | |
2267 | e1235448 | Jose A. Lopes | nicValidModes :: FrozenSet String |
2268 | e1235448 | Jose A. Lopes | nicValidModes = ConstantUtils.mkSet $ map Types.nICModeToRaw [minBound..] |
2269 | e1235448 | Jose A. Lopes | |
2270 | e1235448 | Jose A. Lopes | releaseAction :: String |
2271 | e1235448 | Jose A. Lopes | releaseAction = "release" |
2272 | e1235448 | Jose A. Lopes | |
2273 | e1235448 | Jose A. Lopes | reserveAction :: String |
2274 | e1235448 | Jose A. Lopes | reserveAction = "reserve" |
2275 | e1235448 | Jose A. Lopes | |
2276 | e1235448 | Jose A. Lopes | -- * idisk* constants are used in opcodes, to create/change disks |
2277 | e1235448 | Jose A. Lopes | |
2278 | e1235448 | Jose A. Lopes | idiskAdopt :: String |
2279 | e1235448 | Jose A. Lopes | idiskAdopt = "adopt" |
2280 | e1235448 | Jose A. Lopes | |
2281 | e1235448 | Jose A. Lopes | idiskMetavg :: String |
2282 | e1235448 | Jose A. Lopes | idiskMetavg = "metavg" |
2283 | e1235448 | Jose A. Lopes | |
2284 | e1235448 | Jose A. Lopes | idiskMode :: String |
2285 | e1235448 | Jose A. Lopes | idiskMode = "mode" |
2286 | e1235448 | Jose A. Lopes | |
2287 | e1235448 | Jose A. Lopes | idiskName :: String |
2288 | e1235448 | Jose A. Lopes | idiskName = "name" |
2289 | e1235448 | Jose A. Lopes | |
2290 | e1235448 | Jose A. Lopes | idiskSize :: String |
2291 | e1235448 | Jose A. Lopes | idiskSize = "size" |
2292 | e1235448 | Jose A. Lopes | |
2293 | e1235448 | Jose A. Lopes | idiskSpindles :: String |
2294 | e1235448 | Jose A. Lopes | idiskSpindles = "spindles" |
2295 | e1235448 | Jose A. Lopes | |
2296 | e1235448 | Jose A. Lopes | idiskVg :: String |
2297 | e1235448 | Jose A. Lopes | idiskVg = "vg" |
2298 | e1235448 | Jose A. Lopes | |
2299 | e1235448 | Jose A. Lopes | idiskProvider :: String |
2300 | e1235448 | Jose A. Lopes | idiskProvider = "provider" |
2301 | e1235448 | Jose A. Lopes | |
2302 | e1235448 | Jose A. Lopes | idiskParamsTypes :: Map String VType |
2303 | e1235448 | Jose A. Lopes | idiskParamsTypes = |
2304 | e1235448 | Jose A. Lopes | Map.fromList [(idiskSize, VTypeSize), |
2305 | e1235448 | Jose A. Lopes | (idiskSpindles, VTypeInt), |
2306 | e1235448 | Jose A. Lopes | (idiskMode, VTypeString), |
2307 | e1235448 | Jose A. Lopes | (idiskAdopt, VTypeString), |
2308 | e1235448 | Jose A. Lopes | (idiskVg, VTypeString), |
2309 | e1235448 | Jose A. Lopes | (idiskMetavg, VTypeString), |
2310 | e1235448 | Jose A. Lopes | (idiskProvider, VTypeString), |
2311 | e1235448 | Jose A. Lopes | (idiskName, VTypeMaybeString)] |
2312 | e1235448 | Jose A. Lopes | |
2313 | e1235448 | Jose A. Lopes | idiskParams :: FrozenSet String |
2314 | e1235448 | Jose A. Lopes | idiskParams = ConstantUtils.mkSet (Map.keys idiskParamsTypes) |
2315 | e1235448 | Jose A. Lopes | |
2316 | e1235448 | Jose A. Lopes | -- * inic* constants are used in opcodes, to create/change nics |
2317 | e1235448 | Jose A. Lopes | |
2318 | e1235448 | Jose A. Lopes | inicBridge :: String |
2319 | e1235448 | Jose A. Lopes | inicBridge = "bridge" |
2320 | e1235448 | Jose A. Lopes | |
2321 | e1235448 | Jose A. Lopes | inicIp :: String |
2322 | e1235448 | Jose A. Lopes | inicIp = "ip" |
2323 | e1235448 | Jose A. Lopes | |
2324 | e1235448 | Jose A. Lopes | inicLink :: String |
2325 | e1235448 | Jose A. Lopes | inicLink = "link" |
2326 | e1235448 | Jose A. Lopes | |
2327 | e1235448 | Jose A. Lopes | inicMac :: String |
2328 | e1235448 | Jose A. Lopes | inicMac = "mac" |
2329 | e1235448 | Jose A. Lopes | |
2330 | e1235448 | Jose A. Lopes | inicMode :: String |
2331 | e1235448 | Jose A. Lopes | inicMode = "mode" |
2332 | e1235448 | Jose A. Lopes | |
2333 | e1235448 | Jose A. Lopes | inicName :: String |
2334 | e1235448 | Jose A. Lopes | inicName = "name" |
2335 | e1235448 | Jose A. Lopes | |
2336 | e1235448 | Jose A. Lopes | inicNetwork :: String |
2337 | e1235448 | Jose A. Lopes | inicNetwork = "network" |
2338 | e1235448 | Jose A. Lopes | |
2339 | e1235448 | Jose A. Lopes | inicVlan :: String |
2340 | e1235448 | Jose A. Lopes | inicVlan = "vlan" |
2341 | e1235448 | Jose A. Lopes | |
2342 | e1235448 | Jose A. Lopes | inicParamsTypes :: Map String VType |
2343 | e1235448 | Jose A. Lopes | inicParamsTypes = |
2344 | e1235448 | Jose A. Lopes | Map.fromList [(inicBridge, VTypeMaybeString), |
2345 | e1235448 | Jose A. Lopes | (inicIp, VTypeMaybeString), |
2346 | e1235448 | Jose A. Lopes | (inicLink, VTypeString), |
2347 | e1235448 | Jose A. Lopes | (inicMac, VTypeString), |
2348 | e1235448 | Jose A. Lopes | (inicMode, VTypeString), |
2349 | e1235448 | Jose A. Lopes | (inicName, VTypeMaybeString), |
2350 | e1235448 | Jose A. Lopes | (inicNetwork, VTypeMaybeString), |
2351 | e1235448 | Jose A. Lopes | (inicVlan, VTypeMaybeString)] |
2352 | e1235448 | Jose A. Lopes | |
2353 | e1235448 | Jose A. Lopes | inicParams :: FrozenSet String |
2354 | e1235448 | Jose A. Lopes | inicParams = ConstantUtils.mkSet (Map.keys inicParamsTypes) |
2355 | e1235448 | Jose A. Lopes | |
2356 | e1235448 | Jose A. Lopes | -- * Hypervisor constants |
2357 | e1235448 | Jose A. Lopes | |
2358 | e1235448 | Jose A. Lopes | htXenPvm :: String |
2359 | e1235448 | Jose A. Lopes | htXenPvm = Types.hypervisorToRaw XenPvm |
2360 | e1235448 | Jose A. Lopes | |
2361 | e1235448 | Jose A. Lopes | htFake :: String |
2362 | e1235448 | Jose A. Lopes | htFake = Types.hypervisorToRaw Fake |
2363 | e1235448 | Jose A. Lopes | |
2364 | e1235448 | Jose A. Lopes | htXenHvm :: String |
2365 | e1235448 | Jose A. Lopes | htXenHvm = Types.hypervisorToRaw XenHvm |
2366 | e1235448 | Jose A. Lopes | |
2367 | e1235448 | Jose A. Lopes | htKvm :: String |
2368 | e1235448 | Jose A. Lopes | htKvm = Types.hypervisorToRaw Kvm |
2369 | e1235448 | Jose A. Lopes | |
2370 | e1235448 | Jose A. Lopes | htChroot :: String |
2371 | e1235448 | Jose A. Lopes | htChroot = Types.hypervisorToRaw Chroot |
2372 | e1235448 | Jose A. Lopes | |
2373 | e1235448 | Jose A. Lopes | htLxc :: String |
2374 | e1235448 | Jose A. Lopes | htLxc = Types.hypervisorToRaw Lxc |
2375 | e1235448 | Jose A. Lopes | |
2376 | e1235448 | Jose A. Lopes | hyperTypes :: FrozenSet String |
2377 | e1235448 | Jose A. Lopes | hyperTypes = ConstantUtils.mkSet $ map Types.hypervisorToRaw [minBound..] |
2378 | e1235448 | Jose A. Lopes | |
2379 | e1235448 | Jose A. Lopes | htsReqPort :: FrozenSet String |
2380 | e1235448 | Jose A. Lopes | htsReqPort = ConstantUtils.mkSet [htXenHvm, htKvm] |
2381 | e1235448 | Jose A. Lopes | |
2382 | e1235448 | Jose A. Lopes | vncBasePort :: Int |
2383 | e1235448 | Jose A. Lopes | vncBasePort = 5900 |
2384 | e1235448 | Jose A. Lopes | |
2385 | e1235448 | Jose A. Lopes | vncDefaultBindAddress :: String |
2386 | e1235448 | Jose A. Lopes | vncDefaultBindAddress = ip4AddressAny |
2387 | e1235448 | Jose A. Lopes | |
2388 | e1235448 | Jose A. Lopes | -- * NIC types |
2389 | e1235448 | Jose A. Lopes | |
2390 | e1235448 | Jose A. Lopes | htNicE1000 :: String |
2391 | e1235448 | Jose A. Lopes | htNicE1000 = "e1000" |
2392 | e1235448 | Jose A. Lopes | |
2393 | e1235448 | Jose A. Lopes | htNicI82551 :: String |
2394 | e1235448 | Jose A. Lopes | htNicI82551 = "i82551" |
2395 | e1235448 | Jose A. Lopes | |
2396 | e1235448 | Jose A. Lopes | htNicI8259er :: String |
2397 | e1235448 | Jose A. Lopes | htNicI8259er = "i82559er" |
2398 | e1235448 | Jose A. Lopes | |
2399 | e1235448 | Jose A. Lopes | htNicI85557b :: String |
2400 | e1235448 | Jose A. Lopes | htNicI85557b = "i82557b" |
2401 | e1235448 | Jose A. Lopes | |
2402 | e1235448 | Jose A. Lopes | htNicNe2kIsa :: String |
2403 | e1235448 | Jose A. Lopes | htNicNe2kIsa = "ne2k_isa" |
2404 | e1235448 | Jose A. Lopes | |
2405 | e1235448 | Jose A. Lopes | htNicNe2kPci :: String |
2406 | e1235448 | Jose A. Lopes | htNicNe2kPci = "ne2k_pci" |
2407 | e1235448 | Jose A. Lopes | |
2408 | e1235448 | Jose A. Lopes | htNicParavirtual :: String |
2409 | e1235448 | Jose A. Lopes | htNicParavirtual = "paravirtual" |
2410 | e1235448 | Jose A. Lopes | |
2411 | e1235448 | Jose A. Lopes | htNicPcnet :: String |
2412 | e1235448 | Jose A. Lopes | htNicPcnet = "pcnet" |
2413 | e1235448 | Jose A. Lopes | |
2414 | e1235448 | Jose A. Lopes | htNicRtl8139 :: String |
2415 | e1235448 | Jose A. Lopes | htNicRtl8139 = "rtl8139" |
2416 | e1235448 | Jose A. Lopes | |
2417 | e1235448 | Jose A. Lopes | htHvmValidNicTypes :: FrozenSet String |
2418 | e1235448 | Jose A. Lopes | htHvmValidNicTypes = |
2419 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [htNicE1000, |
2420 | e1235448 | Jose A. Lopes | htNicNe2kIsa, |
2421 | e1235448 | Jose A. Lopes | htNicNe2kPci, |
2422 | e1235448 | Jose A. Lopes | htNicParavirtual, |
2423 | e1235448 | Jose A. Lopes | htNicRtl8139] |
2424 | e1235448 | Jose A. Lopes | |
2425 | e1235448 | Jose A. Lopes | htKvmValidNicTypes :: FrozenSet String |
2426 | e1235448 | Jose A. Lopes | htKvmValidNicTypes = |
2427 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [htNicE1000, |
2428 | e1235448 | Jose A. Lopes | htNicI82551, |
2429 | e1235448 | Jose A. Lopes | htNicI8259er, |
2430 | e1235448 | Jose A. Lopes | htNicI85557b, |
2431 | e1235448 | Jose A. Lopes | htNicNe2kIsa, |
2432 | e1235448 | Jose A. Lopes | htNicNe2kPci, |
2433 | e1235448 | Jose A. Lopes | htNicParavirtual, |
2434 | e1235448 | Jose A. Lopes | htNicPcnet, |
2435 | e1235448 | Jose A. Lopes | htNicRtl8139] |
2436 | e1235448 | Jose A. Lopes | |
2437 | e1235448 | Jose A. Lopes | -- * Vif types |
2438 | e1235448 | Jose A. Lopes | |
2439 | e1235448 | Jose A. Lopes | -- | Default vif type in xen-hvm |
2440 | e1235448 | Jose A. Lopes | htHvmVifIoemu :: String |
2441 | e1235448 | Jose A. Lopes | htHvmVifIoemu = "ioemu" |
2442 | e1235448 | Jose A. Lopes | |
2443 | e1235448 | Jose A. Lopes | htHvmVifVif :: String |
2444 | e1235448 | Jose A. Lopes | htHvmVifVif = "vif" |
2445 | e1235448 | Jose A. Lopes | |
2446 | e1235448 | Jose A. Lopes | htHvmValidVifTypes :: FrozenSet String |
2447 | e1235448 | Jose A. Lopes | htHvmValidVifTypes = ConstantUtils.mkSet [htHvmVifIoemu, htHvmVifVif] |
2448 | e1235448 | Jose A. Lopes | |
2449 | e1235448 | Jose A. Lopes | -- * Disk types |
2450 | e1235448 | Jose A. Lopes | |
2451 | e1235448 | Jose A. Lopes | htDiskIde :: String |
2452 | e1235448 | Jose A. Lopes | htDiskIde = "ide" |
2453 | e1235448 | Jose A. Lopes | |
2454 | e1235448 | Jose A. Lopes | htDiskIoemu :: String |
2455 | e1235448 | Jose A. Lopes | htDiskIoemu = "ioemu" |
2456 | e1235448 | Jose A. Lopes | |
2457 | e1235448 | Jose A. Lopes | htDiskMtd :: String |
2458 | e1235448 | Jose A. Lopes | htDiskMtd = "mtd" |
2459 | e1235448 | Jose A. Lopes | |
2460 | e1235448 | Jose A. Lopes | htDiskParavirtual :: String |
2461 | e1235448 | Jose A. Lopes | htDiskParavirtual = "paravirtual" |
2462 | e1235448 | Jose A. Lopes | |
2463 | e1235448 | Jose A. Lopes | htDiskPflash :: String |
2464 | e1235448 | Jose A. Lopes | htDiskPflash = "pflash" |
2465 | e1235448 | Jose A. Lopes | |
2466 | e1235448 | Jose A. Lopes | htDiskScsi :: String |
2467 | e1235448 | Jose A. Lopes | htDiskScsi = "scsi" |
2468 | e1235448 | Jose A. Lopes | |
2469 | e1235448 | Jose A. Lopes | htDiskSd :: String |
2470 | e1235448 | Jose A. Lopes | htDiskSd = "sd" |
2471 | e1235448 | Jose A. Lopes | |
2472 | e1235448 | Jose A. Lopes | htHvmValidDiskTypes :: FrozenSet String |
2473 | e1235448 | Jose A. Lopes | htHvmValidDiskTypes = ConstantUtils.mkSet [htDiskIoemu, htDiskParavirtual] |
2474 | e1235448 | Jose A. Lopes | |
2475 | e1235448 | Jose A. Lopes | htKvmValidDiskTypes :: FrozenSet String |
2476 | e1235448 | Jose A. Lopes | htKvmValidDiskTypes = |
2477 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [htDiskIde, |
2478 | e1235448 | Jose A. Lopes | htDiskMtd, |
2479 | e1235448 | Jose A. Lopes | htDiskParavirtual, |
2480 | e1235448 | Jose A. Lopes | htDiskPflash, |
2481 | e1235448 | Jose A. Lopes | htDiskScsi, |
2482 | e1235448 | Jose A. Lopes | htDiskSd] |
2483 | e1235448 | Jose A. Lopes | |
2484 | e1235448 | Jose A. Lopes | htCacheDefault :: String |
2485 | e1235448 | Jose A. Lopes | htCacheDefault = "default" |
2486 | e1235448 | Jose A. Lopes | |
2487 | e1235448 | Jose A. Lopes | htCacheNone :: String |
2488 | e1235448 | Jose A. Lopes | htCacheNone = "none" |
2489 | e1235448 | Jose A. Lopes | |
2490 | e1235448 | Jose A. Lopes | htCacheWback :: String |
2491 | e1235448 | Jose A. Lopes | htCacheWback = "writeback" |
2492 | e1235448 | Jose A. Lopes | |
2493 | e1235448 | Jose A. Lopes | htCacheWthrough :: String |
2494 | e1235448 | Jose A. Lopes | htCacheWthrough = "writethrough" |
2495 | e1235448 | Jose A. Lopes | |
2496 | e1235448 | Jose A. Lopes | htValidCacheTypes :: FrozenSet String |
2497 | e1235448 | Jose A. Lopes | htValidCacheTypes = |
2498 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [htCacheDefault, |
2499 | e1235448 | Jose A. Lopes | htCacheNone, |
2500 | e1235448 | Jose A. Lopes | htCacheWback, |
2501 | e1235448 | Jose A. Lopes | htCacheWthrough] |
2502 | e1235448 | Jose A. Lopes | |
2503 | e1235448 | Jose A. Lopes | -- * Mouse types |
2504 | e1235448 | Jose A. Lopes | |
2505 | e1235448 | Jose A. Lopes | htMouseMouse :: String |
2506 | e1235448 | Jose A. Lopes | htMouseMouse = "mouse" |
2507 | e1235448 | Jose A. Lopes | |
2508 | e1235448 | Jose A. Lopes | htMouseTablet :: String |
2509 | e1235448 | Jose A. Lopes | htMouseTablet = "tablet" |
2510 | e1235448 | Jose A. Lopes | |
2511 | e1235448 | Jose A. Lopes | htKvmValidMouseTypes :: FrozenSet String |
2512 | e1235448 | Jose A. Lopes | htKvmValidMouseTypes = ConstantUtils.mkSet [htMouseMouse, htMouseTablet] |
2513 | e1235448 | Jose A. Lopes | |
2514 | e1235448 | Jose A. Lopes | -- * Boot order |
2515 | e1235448 | Jose A. Lopes | |
2516 | e1235448 | Jose A. Lopes | htBoCdrom :: String |
2517 | e1235448 | Jose A. Lopes | htBoCdrom = "cdrom" |
2518 | e1235448 | Jose A. Lopes | |
2519 | e1235448 | Jose A. Lopes | htBoDisk :: String |
2520 | e1235448 | Jose A. Lopes | htBoDisk = "disk" |
2521 | e1235448 | Jose A. Lopes | |
2522 | e1235448 | Jose A. Lopes | htBoFloppy :: String |
2523 | e1235448 | Jose A. Lopes | htBoFloppy = "floppy" |
2524 | e1235448 | Jose A. Lopes | |
2525 | e1235448 | Jose A. Lopes | htBoNetwork :: String |
2526 | e1235448 | Jose A. Lopes | htBoNetwork = "network" |
2527 | e1235448 | Jose A. Lopes | |
2528 | e1235448 | Jose A. Lopes | htKvmValidBoTypes :: FrozenSet String |
2529 | e1235448 | Jose A. Lopes | htKvmValidBoTypes = |
2530 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [htBoCdrom, htBoDisk, htBoFloppy, htBoNetwork] |
2531 | e1235448 | Jose A. Lopes | |
2532 | e1235448 | Jose A. Lopes | -- * SPICE lossless image compression options |
2533 | e1235448 | Jose A. Lopes | |
2534 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprAutoGlz :: String |
2535 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprAutoGlz = "auto_glz" |
2536 | e1235448 | Jose A. Lopes | |
2537 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprAutoLz :: String |
2538 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprAutoLz = "auto_lz" |
2539 | e1235448 | Jose A. Lopes | |
2540 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprGlz :: String |
2541 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprGlz = "glz" |
2542 | e1235448 | Jose A. Lopes | |
2543 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprLz :: String |
2544 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprLz = "lz" |
2545 | e1235448 | Jose A. Lopes | |
2546 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprOff :: String |
2547 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprOff = "off" |
2548 | e1235448 | Jose A. Lopes | |
2549 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprQuic :: String |
2550 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprQuic = "quic" |
2551 | e1235448 | Jose A. Lopes | |
2552 | e1235448 | Jose A. Lopes | htKvmSpiceValidLosslessImgComprOptions :: FrozenSet String |
2553 | e1235448 | Jose A. Lopes | htKvmSpiceValidLosslessImgComprOptions = |
2554 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [htKvmSpiceLosslessImgComprAutoGlz, |
2555 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprAutoLz, |
2556 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprGlz, |
2557 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprLz, |
2558 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprOff, |
2559 | e1235448 | Jose A. Lopes | htKvmSpiceLosslessImgComprQuic] |
2560 | e1235448 | Jose A. Lopes | |
2561 | e1235448 | Jose A. Lopes | htKvmSpiceLossyImgComprAlways :: String |
2562 | e1235448 | Jose A. Lopes | htKvmSpiceLossyImgComprAlways = "always" |
2563 | e1235448 | Jose A. Lopes | |
2564 | e1235448 | Jose A. Lopes | htKvmSpiceLossyImgComprAuto :: String |
2565 | e1235448 | Jose A. Lopes | htKvmSpiceLossyImgComprAuto = "auto" |
2566 | e1235448 | Jose A. Lopes | |
2567 | e1235448 | Jose A. Lopes | htKvmSpiceLossyImgComprNever :: String |
2568 | e1235448 | Jose A. Lopes | htKvmSpiceLossyImgComprNever = "never" |
2569 | e1235448 | Jose A. Lopes | |
2570 | e1235448 | Jose A. Lopes | htKvmSpiceValidLossyImgComprOptions :: FrozenSet String |
2571 | e1235448 | Jose A. Lopes | htKvmSpiceValidLossyImgComprOptions = |
2572 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [htKvmSpiceLossyImgComprAlways, |
2573 | e1235448 | Jose A. Lopes | htKvmSpiceLossyImgComprAuto, |
2574 | e1235448 | Jose A. Lopes | htKvmSpiceLossyImgComprNever] |
2575 | e1235448 | Jose A. Lopes | |
2576 | e1235448 | Jose A. Lopes | -- * SPICE video stream detection |
2577 | e1235448 | Jose A. Lopes | |
2578 | e1235448 | Jose A. Lopes | htKvmSpiceVideoStreamDetectionAll :: String |
2579 | e1235448 | Jose A. Lopes | htKvmSpiceVideoStreamDetectionAll = "all" |
2580 | e1235448 | Jose A. Lopes | |
2581 | e1235448 | Jose A. Lopes | htKvmSpiceVideoStreamDetectionFilter :: String |
2582 | e1235448 | Jose A. Lopes | htKvmSpiceVideoStreamDetectionFilter = "filter" |
2583 | e1235448 | Jose A. Lopes | |
2584 | e1235448 | Jose A. Lopes | htKvmSpiceVideoStreamDetectionOff :: String |
2585 | e1235448 | Jose A. Lopes | htKvmSpiceVideoStreamDetectionOff = "off" |
2586 | e1235448 | Jose A. Lopes | |
2587 | e1235448 | Jose A. Lopes | htKvmSpiceValidVideoStreamDetectionOptions :: FrozenSet String |
2588 | e1235448 | Jose A. Lopes | htKvmSpiceValidVideoStreamDetectionOptions = |
2589 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [htKvmSpiceVideoStreamDetectionAll, |
2590 | e1235448 | Jose A. Lopes | htKvmSpiceVideoStreamDetectionFilter, |
2591 | e1235448 | Jose A. Lopes | htKvmSpiceVideoStreamDetectionOff] |
2592 | e1235448 | Jose A. Lopes | |
2593 | e1235448 | Jose A. Lopes | -- * Security models |
2594 | e1235448 | Jose A. Lopes | |
2595 | e1235448 | Jose A. Lopes | htSmNone :: String |
2596 | e1235448 | Jose A. Lopes | htSmNone = "none" |
2597 | e1235448 | Jose A. Lopes | |
2598 | e1235448 | Jose A. Lopes | htSmPool :: String |
2599 | e1235448 | Jose A. Lopes | htSmPool = "pool" |
2600 | e1235448 | Jose A. Lopes | |
2601 | e1235448 | Jose A. Lopes | htSmUser :: String |
2602 | e1235448 | Jose A. Lopes | htSmUser = "user" |
2603 | e1235448 | Jose A. Lopes | |
2604 | e1235448 | Jose A. Lopes | htKvmValidSmTypes :: FrozenSet String |
2605 | e1235448 | Jose A. Lopes | htKvmValidSmTypes = ConstantUtils.mkSet [htSmNone, htSmPool, htSmUser] |
2606 | e1235448 | Jose A. Lopes | |
2607 | e1235448 | Jose A. Lopes | -- * Kvm flag values |
2608 | e1235448 | Jose A. Lopes | |
2609 | e1235448 | Jose A. Lopes | htKvmDisabled :: String |
2610 | e1235448 | Jose A. Lopes | htKvmDisabled = "disabled" |
2611 | e1235448 | Jose A. Lopes | |
2612 | e1235448 | Jose A. Lopes | htKvmEnabled :: String |
2613 | e1235448 | Jose A. Lopes | htKvmEnabled = "enabled" |
2614 | e1235448 | Jose A. Lopes | |
2615 | e1235448 | Jose A. Lopes | htKvmFlagValues :: FrozenSet String |
2616 | e1235448 | Jose A. Lopes | htKvmFlagValues = ConstantUtils.mkSet [htKvmDisabled, htKvmEnabled] |
2617 | e1235448 | Jose A. Lopes | |
2618 | e1235448 | Jose A. Lopes | -- * Migration type |
2619 | e1235448 | Jose A. Lopes | |
2620 | e1235448 | Jose A. Lopes | htMigrationLive :: String |
2621 | e1235448 | Jose A. Lopes | htMigrationLive = Types.migrationModeToRaw MigrationLive |
2622 | e1235448 | Jose A. Lopes | |
2623 | e1235448 | Jose A. Lopes | htMigrationNonlive :: String |
2624 | e1235448 | Jose A. Lopes | htMigrationNonlive = Types.migrationModeToRaw MigrationNonLive |
2625 | e1235448 | Jose A. Lopes | |
2626 | e1235448 | Jose A. Lopes | htMigrationModes :: FrozenSet String |
2627 | e1235448 | Jose A. Lopes | htMigrationModes = |
2628 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.migrationModeToRaw [minBound..] |
2629 | e1235448 | Jose A. Lopes | |
2630 | e1235448 | Jose A. Lopes | -- * Cluster verify steps |
2631 | e1235448 | Jose A. Lopes | |
2632 | e1235448 | Jose A. Lopes | verifyNplusoneMem :: String |
2633 | e1235448 | Jose A. Lopes | verifyNplusoneMem = Types.verifyOptionalChecksToRaw VerifyNPlusOneMem |
2634 | e1235448 | Jose A. Lopes | |
2635 | e1235448 | Jose A. Lopes | verifyOptionalChecks :: FrozenSet String |
2636 | e1235448 | Jose A. Lopes | verifyOptionalChecks = |
2637 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.verifyOptionalChecksToRaw [minBound..] |
2638 | e1235448 | Jose A. Lopes | |
2639 | e1235448 | Jose A. Lopes | -- * Cluster Verify error classes |
2640 | e1235448 | Jose A. Lopes | |
2641 | e1235448 | Jose A. Lopes | cvTcluster :: String |
2642 | e1235448 | Jose A. Lopes | cvTcluster = "cluster" |
2643 | e1235448 | Jose A. Lopes | |
2644 | e1235448 | Jose A. Lopes | cvTgroup :: String |
2645 | e1235448 | Jose A. Lopes | cvTgroup = "group" |
2646 | e1235448 | Jose A. Lopes | |
2647 | e1235448 | Jose A. Lopes | cvTnode :: String |
2648 | e1235448 | Jose A. Lopes | cvTnode = "node" |
2649 | e1235448 | Jose A. Lopes | |
2650 | e1235448 | Jose A. Lopes | cvTinstance :: String |
2651 | e1235448 | Jose A. Lopes | cvTinstance = "instance" |
2652 | e1235448 | Jose A. Lopes | |
2653 | e1235448 | Jose A. Lopes | -- * Cluster Verify error codes and documentation |
2654 | e1235448 | Jose A. Lopes | |
2655 | e1235448 | Jose A. Lopes | cvEclustercert :: (String, String, String) |
2656 | e1235448 | Jose A. Lopes | cvEclustercert = |
2657 | e1235448 | Jose A. Lopes | ("cluster", |
2658 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvECLUSTERCERT, |
2659 | e1235448 | Jose A. Lopes | "Cluster certificate files verification failure") |
2660 | e1235448 | Jose A. Lopes | |
2661 | e1235448 | Jose A. Lopes | cvEclustercfg :: (String, String, String) |
2662 | e1235448 | Jose A. Lopes | cvEclustercfg = |
2663 | e1235448 | Jose A. Lopes | ("cluster", |
2664 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvECLUSTERCFG, |
2665 | e1235448 | Jose A. Lopes | "Cluster configuration verification failure") |
2666 | e1235448 | Jose A. Lopes | |
2667 | e1235448 | Jose A. Lopes | cvEclusterdanglinginst :: (String, String, String) |
2668 | e1235448 | Jose A. Lopes | cvEclusterdanglinginst = |
2669 | e1235448 | Jose A. Lopes | ("node", |
2670 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvECLUSTERDANGLINGINST, |
2671 | e1235448 | Jose A. Lopes | "Some instances have a non-existing primary node") |
2672 | e1235448 | Jose A. Lopes | |
2673 | e1235448 | Jose A. Lopes | cvEclusterdanglingnodes :: (String, String, String) |
2674 | e1235448 | Jose A. Lopes | cvEclusterdanglingnodes = |
2675 | e1235448 | Jose A. Lopes | ("node", |
2676 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvECLUSTERDANGLINGNODES, |
2677 | e1235448 | Jose A. Lopes | "Some nodes belong to non-existing groups") |
2678 | e1235448 | Jose A. Lopes | |
2679 | e1235448 | Jose A. Lopes | cvEclusterfilecheck :: (String, String, String) |
2680 | e1235448 | Jose A. Lopes | cvEclusterfilecheck = |
2681 | e1235448 | Jose A. Lopes | ("cluster", |
2682 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvECLUSTERFILECHECK, |
2683 | e1235448 | Jose A. Lopes | "Cluster configuration verification failure") |
2684 | e1235448 | Jose A. Lopes | |
2685 | e1235448 | Jose A. Lopes | cvEgroupdifferentpvsize :: (String, String, String) |
2686 | e1235448 | Jose A. Lopes | cvEgroupdifferentpvsize = |
2687 | e1235448 | Jose A. Lopes | ("group", |
2688 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvEGROUPDIFFERENTPVSIZE, |
2689 | e1235448 | Jose A. Lopes | "PVs in the group have different sizes") |
2690 | e1235448 | Jose A. Lopes | |
2691 | e1235448 | Jose A. Lopes | cvEinstancebadnode :: (String, String, String) |
2692 | e1235448 | Jose A. Lopes | cvEinstancebadnode = |
2693 | e1235448 | Jose A. Lopes | ("instance", |
2694 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvEINSTANCEBADNODE, |
2695 | e1235448 | Jose A. Lopes | "Instance marked as running lives on an offline node") |
2696 | e1235448 | Jose A. Lopes | |
2697 | e1235448 | Jose A. Lopes | cvEinstancedown :: (String, String, String) |
2698 | e1235448 | Jose A. Lopes | cvEinstancedown = |
2699 | e1235448 | Jose A. Lopes | ("instance", |
2700 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvEINSTANCEDOWN, |
2701 | e1235448 | Jose A. Lopes | "Instance not running on its primary node") |
2702 | e1235448 | Jose A. Lopes | |
2703 | e1235448 | Jose A. Lopes | cvEinstancefaultydisk :: (String, String, String) |
2704 | e1235448 | Jose A. Lopes | cvEinstancefaultydisk = |
2705 | e1235448 | Jose A. Lopes | ("instance", |
2706 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvEINSTANCEFAULTYDISK, |
2707 | e1235448 | Jose A. Lopes | "Impossible to retrieve status for a disk") |
2708 | e1235448 | Jose A. Lopes | |
2709 | e1235448 | Jose A. Lopes | cvEinstancelayout :: (String, String, String) |
2710 | e1235448 | Jose A. Lopes | cvEinstancelayout = |
2711 | e1235448 | Jose A. Lopes | ("instance", |
2712 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvEINSTANCELAYOUT, |
2713 | e1235448 | Jose A. Lopes | "Instance has multiple secondary nodes") |
2714 | e1235448 | Jose A. Lopes | |
2715 | e1235448 | Jose A. Lopes | cvEinstancemissingcfgparameter :: (String, String, String) |
2716 | e1235448 | Jose A. Lopes | cvEinstancemissingcfgparameter = |
2717 | e1235448 | Jose A. Lopes | ("instance", |
2718 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvEINSTANCEMISSINGCFGPARAMETER, |
2719 | e1235448 | Jose A. Lopes | "A configuration parameter for an instance is missing") |
2720 | e1235448 | Jose A. Lopes | |
2721 | e1235448 | Jose A. Lopes | cvEinstancemissingdisk :: (String, String, String) |
2722 | e1235448 | Jose A. Lopes | cvEinstancemissingdisk = |
2723 | e1235448 | Jose A. Lopes | ("instance", |
2724 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvEINSTANCEMISSINGDISK, |
2725 | e1235448 | Jose A. Lopes | "Missing volume on an instance") |
2726 | e1235448 | Jose A. Lopes | |
2727 | e1235448 | Jose A. Lopes | cvEinstancepolicy :: (String, String, String) |
2728 | e1235448 | Jose A. Lopes | cvEinstancepolicy = |
2729 | e1235448 | Jose A. Lopes | ("instance", |
2730 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvEINSTANCEPOLICY, |
2731 | e1235448 | Jose A. Lopes | "Instance does not meet policy") |
2732 | e1235448 | Jose A. Lopes | |
2733 | e1235448 | Jose A. Lopes | cvEinstancesplitgroups :: (String, String, String) |
2734 | e1235448 | Jose A. Lopes | cvEinstancesplitgroups = |
2735 | e1235448 | Jose A. Lopes | ("instance", |
2736 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvEINSTANCESPLITGROUPS, |
2737 | e1235448 | Jose A. Lopes | "Instance with primary and secondary nodes in different groups") |
2738 | e1235448 | Jose A. Lopes | |
2739 | e1235448 | Jose A. Lopes | cvEinstanceunsuitablenode :: (String, String, String) |
2740 | e1235448 | Jose A. Lopes | cvEinstanceunsuitablenode = |
2741 | e1235448 | Jose A. Lopes | ("instance", |
2742 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvEINSTANCEUNSUITABLENODE, |
2743 | e1235448 | Jose A. Lopes | "Instance running on nodes that are not suitable for it") |
2744 | e1235448 | Jose A. Lopes | |
2745 | e1235448 | Jose A. Lopes | cvEinstancewrongnode :: (String, String, String) |
2746 | e1235448 | Jose A. Lopes | cvEinstancewrongnode = |
2747 | e1235448 | Jose A. Lopes | ("instance", |
2748 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvEINSTANCEWRONGNODE, |
2749 | e1235448 | Jose A. Lopes | "Instance running on the wrong node") |
2750 | e1235448 | Jose A. Lopes | |
2751 | e1235448 | Jose A. Lopes | cvEnodedrbd :: (String, String, String) |
2752 | e1235448 | Jose A. Lopes | cvEnodedrbd = |
2753 | e1235448 | Jose A. Lopes | ("node", |
2754 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEDRBD, |
2755 | e1235448 | Jose A. Lopes | "Error parsing the DRBD status file") |
2756 | e1235448 | Jose A. Lopes | |
2757 | e1235448 | Jose A. Lopes | cvEnodedrbdhelper :: (String, String, String) |
2758 | e1235448 | Jose A. Lopes | cvEnodedrbdhelper = |
2759 | e1235448 | Jose A. Lopes | ("node", |
2760 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEDRBDHELPER, |
2761 | e1235448 | Jose A. Lopes | "Error caused by the DRBD helper") |
2762 | e1235448 | Jose A. Lopes | |
2763 | e1235448 | Jose A. Lopes | cvEnodedrbdversion :: (String, String, String) |
2764 | e1235448 | Jose A. Lopes | cvEnodedrbdversion = |
2765 | e1235448 | Jose A. Lopes | ("node", |
2766 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEDRBDVERSION, |
2767 | e1235448 | Jose A. Lopes | "DRBD version mismatch within a node group") |
2768 | e1235448 | Jose A. Lopes | |
2769 | e1235448 | Jose A. Lopes | cvEnodefilecheck :: (String, String, String) |
2770 | e1235448 | Jose A. Lopes | cvEnodefilecheck = |
2771 | e1235448 | Jose A. Lopes | ("node", |
2772 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEFILECHECK, |
2773 | e1235448 | Jose A. Lopes | "Error retrieving the checksum of the node files") |
2774 | e1235448 | Jose A. Lopes | |
2775 | e1235448 | Jose A. Lopes | cvEnodefilestoragepaths :: (String, String, String) |
2776 | e1235448 | Jose A. Lopes | cvEnodefilestoragepaths = |
2777 | e1235448 | Jose A. Lopes | ("node", |
2778 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEFILESTORAGEPATHS, |
2779 | e1235448 | Jose A. Lopes | "Detected bad file storage paths") |
2780 | e1235448 | Jose A. Lopes | |
2781 | e1235448 | Jose A. Lopes | cvEnodefilestoragepathunusable :: (String, String, String) |
2782 | e1235448 | Jose A. Lopes | cvEnodefilestoragepathunusable = |
2783 | e1235448 | Jose A. Lopes | ("node", |
2784 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEFILESTORAGEPATHUNUSABLE, |
2785 | e1235448 | Jose A. Lopes | "File storage path unusable") |
2786 | e1235448 | Jose A. Lopes | |
2787 | e1235448 | Jose A. Lopes | cvEnodehooks :: (String, String, String) |
2788 | e1235448 | Jose A. Lopes | cvEnodehooks = |
2789 | e1235448 | Jose A. Lopes | ("node", |
2790 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEHOOKS, |
2791 | e1235448 | Jose A. Lopes | "Communication failure in hooks execution") |
2792 | e1235448 | Jose A. Lopes | |
2793 | e1235448 | Jose A. Lopes | cvEnodehv :: (String, String, String) |
2794 | e1235448 | Jose A. Lopes | cvEnodehv = |
2795 | e1235448 | Jose A. Lopes | ("node", |
2796 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEHV, |
2797 | e1235448 | Jose A. Lopes | "Hypervisor parameters verification failure") |
2798 | e1235448 | Jose A. Lopes | |
2799 | e1235448 | Jose A. Lopes | cvEnodelvm :: (String, String, String) |
2800 | e1235448 | Jose A. Lopes | cvEnodelvm = |
2801 | e1235448 | Jose A. Lopes | ("node", |
2802 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODELVM, |
2803 | e1235448 | Jose A. Lopes | "LVM-related node error") |
2804 | e1235448 | Jose A. Lopes | |
2805 | e1235448 | Jose A. Lopes | cvEnoden1 :: (String, String, String) |
2806 | e1235448 | Jose A. Lopes | cvEnoden1 = |
2807 | e1235448 | Jose A. Lopes | ("node", |
2808 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEN1, |
2809 | e1235448 | Jose A. Lopes | "Not enough memory to accommodate instance failovers") |
2810 | e1235448 | Jose A. Lopes | |
2811 | e1235448 | Jose A. Lopes | cvEnodenet :: (String, String, String) |
2812 | e1235448 | Jose A. Lopes | cvEnodenet = |
2813 | e1235448 | Jose A. Lopes | ("node", |
2814 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODENET, |
2815 | e1235448 | Jose A. Lopes | "Network-related node error") |
2816 | e1235448 | Jose A. Lopes | |
2817 | e1235448 | Jose A. Lopes | cvEnodeoobpath :: (String, String, String) |
2818 | e1235448 | Jose A. Lopes | cvEnodeoobpath = |
2819 | e1235448 | Jose A. Lopes | ("node", |
2820 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEOOBPATH, |
2821 | e1235448 | Jose A. Lopes | "Invalid Out Of Band path") |
2822 | e1235448 | Jose A. Lopes | |
2823 | e1235448 | Jose A. Lopes | cvEnodeorphaninstance :: (String, String, String) |
2824 | e1235448 | Jose A. Lopes | cvEnodeorphaninstance = |
2825 | e1235448 | Jose A. Lopes | ("node", |
2826 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEORPHANINSTANCE, |
2827 | e1235448 | Jose A. Lopes | "Unknown intance running on a node") |
2828 | e1235448 | Jose A. Lopes | |
2829 | e1235448 | Jose A. Lopes | cvEnodeorphanlv :: (String, String, String) |
2830 | e1235448 | Jose A. Lopes | cvEnodeorphanlv = |
2831 | e1235448 | Jose A. Lopes | ("node", |
2832 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEORPHANLV, |
2833 | e1235448 | Jose A. Lopes | "Unknown LVM logical volume") |
2834 | e1235448 | Jose A. Lopes | |
2835 | e1235448 | Jose A. Lopes | cvEnodeos :: (String, String, String) |
2836 | e1235448 | Jose A. Lopes | cvEnodeos = |
2837 | e1235448 | Jose A. Lopes | ("node", |
2838 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEOS, |
2839 | e1235448 | Jose A. Lopes | "OS-related node error") |
2840 | e1235448 | Jose A. Lopes | |
2841 | e1235448 | Jose A. Lopes | cvEnoderpc :: (String, String, String) |
2842 | e1235448 | Jose A. Lopes | cvEnoderpc = |
2843 | e1235448 | Jose A. Lopes | ("node", |
2844 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODERPC, |
2845 | e1235448 | Jose A. Lopes | "Error during connection to the primary node of an instance") |
2846 | e1235448 | Jose A. Lopes | |
2847 | e1235448 | Jose A. Lopes | cvEnodesetup :: (String, String, String) |
2848 | e1235448 | Jose A. Lopes | cvEnodesetup = |
2849 | e1235448 | Jose A. Lopes | ("node", |
2850 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODESETUP, |
2851 | e1235448 | Jose A. Lopes | "Node setup error") |
2852 | e1235448 | Jose A. Lopes | |
2853 | e1235448 | Jose A. Lopes | cvEnodesharedfilestoragepathunusable :: (String, String, String) |
2854 | e1235448 | Jose A. Lopes | cvEnodesharedfilestoragepathunusable = |
2855 | e1235448 | Jose A. Lopes | ("node", |
2856 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODESHAREDFILESTORAGEPATHUNUSABLE, |
2857 | e1235448 | Jose A. Lopes | "Shared file storage path unusable") |
2858 | e1235448 | Jose A. Lopes | |
2859 | e1235448 | Jose A. Lopes | cvEnodessh :: (String, String, String) |
2860 | e1235448 | Jose A. Lopes | cvEnodessh = |
2861 | e1235448 | Jose A. Lopes | ("node", |
2862 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODESSH, |
2863 | e1235448 | Jose A. Lopes | "SSH-related node error") |
2864 | e1235448 | Jose A. Lopes | |
2865 | e1235448 | Jose A. Lopes | cvEnodetime :: (String, String, String) |
2866 | e1235448 | Jose A. Lopes | cvEnodetime = |
2867 | e1235448 | Jose A. Lopes | ("node", |
2868 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODETIME, |
2869 | e1235448 | Jose A. Lopes | "Node returned invalid time") |
2870 | e1235448 | Jose A. Lopes | |
2871 | e1235448 | Jose A. Lopes | cvEnodeuserscripts :: (String, String, String) |
2872 | e1235448 | Jose A. Lopes | cvEnodeuserscripts = |
2873 | e1235448 | Jose A. Lopes | ("node", |
2874 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEUSERSCRIPTS, |
2875 | e1235448 | Jose A. Lopes | "User scripts not present or not executable") |
2876 | e1235448 | Jose A. Lopes | |
2877 | e1235448 | Jose A. Lopes | cvEnodeversion :: (String, String, String) |
2878 | e1235448 | Jose A. Lopes | cvEnodeversion = |
2879 | e1235448 | Jose A. Lopes | ("node", |
2880 | e1235448 | Jose A. Lopes | Types.cVErrorCodeToRaw CvENODEVERSION, |
2881 | e1235448 | Jose A. Lopes | "Protocol version mismatch or Ganeti version mismatch") |
2882 | e1235448 | Jose A. Lopes | |
2883 | e1235448 | Jose A. Lopes | cvAllEcodes :: FrozenSet (String, String, String) |
2884 | e1235448 | Jose A. Lopes | cvAllEcodes = |
2885 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet |
2886 | e1235448 | Jose A. Lopes | [cvEclustercert, |
2887 | e1235448 | Jose A. Lopes | cvEclustercfg, |
2888 | e1235448 | Jose A. Lopes | cvEclusterdanglinginst, |
2889 | e1235448 | Jose A. Lopes | cvEclusterdanglingnodes, |
2890 | e1235448 | Jose A. Lopes | cvEclusterfilecheck, |
2891 | e1235448 | Jose A. Lopes | cvEgroupdifferentpvsize, |
2892 | e1235448 | Jose A. Lopes | cvEinstancebadnode, |
2893 | e1235448 | Jose A. Lopes | cvEinstancedown, |
2894 | e1235448 | Jose A. Lopes | cvEinstancefaultydisk, |
2895 | e1235448 | Jose A. Lopes | cvEinstancelayout, |
2896 | e1235448 | Jose A. Lopes | cvEinstancemissingcfgparameter, |
2897 | e1235448 | Jose A. Lopes | cvEinstancemissingdisk, |
2898 | e1235448 | Jose A. Lopes | cvEinstancepolicy, |
2899 | e1235448 | Jose A. Lopes | cvEinstancesplitgroups, |
2900 | e1235448 | Jose A. Lopes | cvEinstanceunsuitablenode, |
2901 | e1235448 | Jose A. Lopes | cvEinstancewrongnode, |
2902 | e1235448 | Jose A. Lopes | cvEnodedrbd, |
2903 | e1235448 | Jose A. Lopes | cvEnodedrbdhelper, |
2904 | e1235448 | Jose A. Lopes | cvEnodedrbdversion, |
2905 | e1235448 | Jose A. Lopes | cvEnodefilecheck, |
2906 | e1235448 | Jose A. Lopes | cvEnodefilestoragepaths, |
2907 | e1235448 | Jose A. Lopes | cvEnodefilestoragepathunusable, |
2908 | e1235448 | Jose A. Lopes | cvEnodehooks, |
2909 | e1235448 | Jose A. Lopes | cvEnodehv, |
2910 | e1235448 | Jose A. Lopes | cvEnodelvm, |
2911 | e1235448 | Jose A. Lopes | cvEnoden1, |
2912 | e1235448 | Jose A. Lopes | cvEnodenet, |
2913 | e1235448 | Jose A. Lopes | cvEnodeoobpath, |
2914 | e1235448 | Jose A. Lopes | cvEnodeorphaninstance, |
2915 | e1235448 | Jose A. Lopes | cvEnodeorphanlv, |
2916 | e1235448 | Jose A. Lopes | cvEnodeos, |
2917 | e1235448 | Jose A. Lopes | cvEnoderpc, |
2918 | e1235448 | Jose A. Lopes | cvEnodesetup, |
2919 | e1235448 | Jose A. Lopes | cvEnodesharedfilestoragepathunusable, |
2920 | e1235448 | Jose A. Lopes | cvEnodessh, |
2921 | e1235448 | Jose A. Lopes | cvEnodetime, |
2922 | e1235448 | Jose A. Lopes | cvEnodeuserscripts, |
2923 | e1235448 | Jose A. Lopes | cvEnodeversion] |
2924 | e1235448 | Jose A. Lopes | |
2925 | e1235448 | Jose A. Lopes | cvAllEcodesStrings :: FrozenSet String |
2926 | e1235448 | Jose A. Lopes | cvAllEcodesStrings = |
2927 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.cVErrorCodeToRaw [minBound..] |
2928 | e1235448 | Jose A. Lopes | |
2929 | e1235448 | Jose A. Lopes | -- * Node verify constants |
2930 | e1235448 | Jose A. Lopes | |
2931 | e1235448 | Jose A. Lopes | nvBridges :: String |
2932 | e1235448 | Jose A. Lopes | nvBridges = "bridges" |
2933 | e1235448 | Jose A. Lopes | |
2934 | e1235448 | Jose A. Lopes | nvDrbdhelper :: String |
2935 | e1235448 | Jose A. Lopes | nvDrbdhelper = "drbd-helper" |
2936 | e1235448 | Jose A. Lopes | |
2937 | e1235448 | Jose A. Lopes | nvDrbdversion :: String |
2938 | e1235448 | Jose A. Lopes | nvDrbdversion = "drbd-version" |
2939 | e1235448 | Jose A. Lopes | |
2940 | e1235448 | Jose A. Lopes | nvDrbdlist :: String |
2941 | e1235448 | Jose A. Lopes | nvDrbdlist = "drbd-list" |
2942 | e1235448 | Jose A. Lopes | |
2943 | e1235448 | Jose A. Lopes | nvExclusivepvs :: String |
2944 | e1235448 | Jose A. Lopes | nvExclusivepvs = "exclusive-pvs" |
2945 | e1235448 | Jose A. Lopes | |
2946 | e1235448 | Jose A. Lopes | nvFilelist :: String |
2947 | e1235448 | Jose A. Lopes | nvFilelist = "filelist" |
2948 | e1235448 | Jose A. Lopes | |
2949 | e1235448 | Jose A. Lopes | nvAcceptedStoragePaths :: String |
2950 | e1235448 | Jose A. Lopes | nvAcceptedStoragePaths = "allowed-file-storage-paths" |
2951 | e1235448 | Jose A. Lopes | |
2952 | e1235448 | Jose A. Lopes | nvFileStoragePath :: String |
2953 | e1235448 | Jose A. Lopes | nvFileStoragePath = "file-storage-path" |
2954 | e1235448 | Jose A. Lopes | |
2955 | e1235448 | Jose A. Lopes | nvSharedFileStoragePath :: String |
2956 | e1235448 | Jose A. Lopes | nvSharedFileStoragePath = "shared-file-storage-path" |
2957 | e1235448 | Jose A. Lopes | |
2958 | e1235448 | Jose A. Lopes | nvHvinfo :: String |
2959 | e1235448 | Jose A. Lopes | nvHvinfo = "hvinfo" |
2960 | e1235448 | Jose A. Lopes | |
2961 | e1235448 | Jose A. Lopes | nvHvparams :: String |
2962 | e1235448 | Jose A. Lopes | nvHvparams = "hvparms" |
2963 | e1235448 | Jose A. Lopes | |
2964 | e1235448 | Jose A. Lopes | nvHypervisor :: String |
2965 | e1235448 | Jose A. Lopes | nvHypervisor = "hypervisor" |
2966 | e1235448 | Jose A. Lopes | |
2967 | e1235448 | Jose A. Lopes | nvInstancelist :: String |
2968 | e1235448 | Jose A. Lopes | nvInstancelist = "instancelist" |
2969 | e1235448 | Jose A. Lopes | |
2970 | e1235448 | Jose A. Lopes | nvLvlist :: String |
2971 | e1235448 | Jose A. Lopes | nvLvlist = "lvlist" |
2972 | e1235448 | Jose A. Lopes | |
2973 | e1235448 | Jose A. Lopes | nvMasterip :: String |
2974 | e1235448 | Jose A. Lopes | nvMasterip = "master-ip" |
2975 | e1235448 | Jose A. Lopes | |
2976 | e1235448 | Jose A. Lopes | nvNodelist :: String |
2977 | e1235448 | Jose A. Lopes | nvNodelist = "nodelist" |
2978 | e1235448 | Jose A. Lopes | |
2979 | e1235448 | Jose A. Lopes | nvNodenettest :: String |
2980 | e1235448 | Jose A. Lopes | nvNodenettest = "node-net-test" |
2981 | e1235448 | Jose A. Lopes | |
2982 | e1235448 | Jose A. Lopes | nvNodesetup :: String |
2983 | e1235448 | Jose A. Lopes | nvNodesetup = "nodesetup" |
2984 | e1235448 | Jose A. Lopes | |
2985 | e1235448 | Jose A. Lopes | nvOobPaths :: String |
2986 | e1235448 | Jose A. Lopes | nvOobPaths = "oob-paths" |
2987 | e1235448 | Jose A. Lopes | |
2988 | e1235448 | Jose A. Lopes | nvOslist :: String |
2989 | e1235448 | Jose A. Lopes | nvOslist = "oslist" |
2990 | e1235448 | Jose A. Lopes | |
2991 | e1235448 | Jose A. Lopes | nvPvlist :: String |
2992 | e1235448 | Jose A. Lopes | nvPvlist = "pvlist" |
2993 | e1235448 | Jose A. Lopes | |
2994 | e1235448 | Jose A. Lopes | nvTime :: String |
2995 | e1235448 | Jose A. Lopes | nvTime = "time" |
2996 | e1235448 | Jose A. Lopes | |
2997 | e1235448 | Jose A. Lopes | nvUserscripts :: String |
2998 | e1235448 | Jose A. Lopes | nvUserscripts = "user-scripts" |
2999 | e1235448 | Jose A. Lopes | |
3000 | e1235448 | Jose A. Lopes | nvVersion :: String |
3001 | e1235448 | Jose A. Lopes | nvVersion = "version" |
3002 | e1235448 | Jose A. Lopes | |
3003 | e1235448 | Jose A. Lopes | nvVglist :: String |
3004 | e1235448 | Jose A. Lopes | nvVglist = "vglist" |
3005 | e1235448 | Jose A. Lopes | |
3006 | e1235448 | Jose A. Lopes | nvVmnodes :: String |
3007 | e1235448 | Jose A. Lopes | nvVmnodes = "vmnodes" |
3008 | e1235448 | Jose A. Lopes | |
3009 | e1235448 | Jose A. Lopes | -- * Instance status |
3010 | e1235448 | Jose A. Lopes | |
3011 | e1235448 | Jose A. Lopes | inststAdmindown :: String |
3012 | e1235448 | Jose A. Lopes | inststAdmindown = Types.instanceStatusToRaw StatusDown |
3013 | e1235448 | Jose A. Lopes | |
3014 | e1235448 | Jose A. Lopes | inststAdminoffline :: String |
3015 | e1235448 | Jose A. Lopes | inststAdminoffline = Types.instanceStatusToRaw StatusOffline |
3016 | e1235448 | Jose A. Lopes | |
3017 | e1235448 | Jose A. Lopes | inststErrordown :: String |
3018 | e1235448 | Jose A. Lopes | inststErrordown = Types.instanceStatusToRaw ErrorDown |
3019 | e1235448 | Jose A. Lopes | |
3020 | e1235448 | Jose A. Lopes | inststErrorup :: String |
3021 | e1235448 | Jose A. Lopes | inststErrorup = Types.instanceStatusToRaw ErrorUp |
3022 | e1235448 | Jose A. Lopes | |
3023 | e1235448 | Jose A. Lopes | inststNodedown :: String |
3024 | e1235448 | Jose A. Lopes | inststNodedown = Types.instanceStatusToRaw NodeDown |
3025 | e1235448 | Jose A. Lopes | |
3026 | e1235448 | Jose A. Lopes | inststNodeoffline :: String |
3027 | e1235448 | Jose A. Lopes | inststNodeoffline = Types.instanceStatusToRaw NodeOffline |
3028 | e1235448 | Jose A. Lopes | |
3029 | e1235448 | Jose A. Lopes | inststRunning :: String |
3030 | e1235448 | Jose A. Lopes | inststRunning = Types.instanceStatusToRaw Running |
3031 | e1235448 | Jose A. Lopes | |
3032 | a4417db4 | Thomas Thrainer | inststUserdown :: String |
3033 | a4417db4 | Thomas Thrainer | inststUserdown = Types.instanceStatusToRaw UserDown |
3034 | a4417db4 | Thomas Thrainer | |
3035 | e1235448 | Jose A. Lopes | inststWrongnode :: String |
3036 | e1235448 | Jose A. Lopes | inststWrongnode = Types.instanceStatusToRaw WrongNode |
3037 | e1235448 | Jose A. Lopes | |
3038 | e1235448 | Jose A. Lopes | inststAll :: FrozenSet String |
3039 | e1235448 | Jose A. Lopes | inststAll = ConstantUtils.mkSet $ map Types.instanceStatusToRaw [minBound..] |
3040 | e1235448 | Jose A. Lopes | |
3041 | e1235448 | Jose A. Lopes | -- * Admin states |
3042 | e1235448 | Jose A. Lopes | |
3043 | e1235448 | Jose A. Lopes | adminstDown :: String |
3044 | e1235448 | Jose A. Lopes | adminstDown = Types.adminStateToRaw AdminDown |
3045 | e1235448 | Jose A. Lopes | |
3046 | e1235448 | Jose A. Lopes | adminstOffline :: String |
3047 | e1235448 | Jose A. Lopes | adminstOffline = Types.adminStateToRaw AdminOffline |
3048 | e1235448 | Jose A. Lopes | |
3049 | e1235448 | Jose A. Lopes | adminstUp :: String |
3050 | e1235448 | Jose A. Lopes | adminstUp = Types.adminStateToRaw AdminUp |
3051 | e1235448 | Jose A. Lopes | |
3052 | e1235448 | Jose A. Lopes | adminstAll :: FrozenSet String |
3053 | e1235448 | Jose A. Lopes | adminstAll = ConstantUtils.mkSet $ map Types.adminStateToRaw [minBound..] |
3054 | e1235448 | Jose A. Lopes | |
3055 | e1235448 | Jose A. Lopes | -- * Node roles |
3056 | e1235448 | Jose A. Lopes | |
3057 | e1235448 | Jose A. Lopes | nrDrained :: String |
3058 | e1235448 | Jose A. Lopes | nrDrained = Types.nodeRoleToRaw NRDrained |
3059 | e1235448 | Jose A. Lopes | |
3060 | e1235448 | Jose A. Lopes | nrMaster :: String |
3061 | e1235448 | Jose A. Lopes | nrMaster = Types.nodeRoleToRaw NRMaster |
3062 | e1235448 | Jose A. Lopes | |
3063 | e1235448 | Jose A. Lopes | nrMcandidate :: String |
3064 | e1235448 | Jose A. Lopes | nrMcandidate = Types.nodeRoleToRaw NRCandidate |
3065 | e1235448 | Jose A. Lopes | |
3066 | e1235448 | Jose A. Lopes | nrOffline :: String |
3067 | e1235448 | Jose A. Lopes | nrOffline = Types.nodeRoleToRaw NROffline |
3068 | e1235448 | Jose A. Lopes | |
3069 | e1235448 | Jose A. Lopes | nrRegular :: String |
3070 | e1235448 | Jose A. Lopes | nrRegular = Types.nodeRoleToRaw NRRegular |
3071 | e1235448 | Jose A. Lopes | |
3072 | e1235448 | Jose A. Lopes | nrAll :: FrozenSet String |
3073 | e1235448 | Jose A. Lopes | nrAll = ConstantUtils.mkSet $ map Types.nodeRoleToRaw [minBound..] |
3074 | e1235448 | Jose A. Lopes | |
3075 | e1235448 | Jose A. Lopes | -- * SSL certificate check constants (in days) |
3076 | e1235448 | Jose A. Lopes | |
3077 | e1235448 | Jose A. Lopes | sslCertExpirationError :: Int |
3078 | e1235448 | Jose A. Lopes | sslCertExpirationError = 7 |
3079 | e1235448 | Jose A. Lopes | |
3080 | e1235448 | Jose A. Lopes | sslCertExpirationWarn :: Int |
3081 | e1235448 | Jose A. Lopes | sslCertExpirationWarn = 30 |
3082 | e1235448 | Jose A. Lopes | |
3083 | e1235448 | Jose A. Lopes | -- * Allocator framework constants |
3084 | e1235448 | Jose A. Lopes | |
3085 | e1235448 | Jose A. Lopes | iallocatorVersion :: Int |
3086 | e1235448 | Jose A. Lopes | iallocatorVersion = 2 |
3087 | e1235448 | Jose A. Lopes | |
3088 | e1235448 | Jose A. Lopes | iallocatorDirIn :: String |
3089 | e1235448 | Jose A. Lopes | iallocatorDirIn = Types.iAllocatorTestDirToRaw IAllocatorDirIn |
3090 | e1235448 | Jose A. Lopes | |
3091 | e1235448 | Jose A. Lopes | iallocatorDirOut :: String |
3092 | e1235448 | Jose A. Lopes | iallocatorDirOut = Types.iAllocatorTestDirToRaw IAllocatorDirOut |
3093 | e1235448 | Jose A. Lopes | |
3094 | e1235448 | Jose A. Lopes | validIallocatorDirections :: FrozenSet String |
3095 | e1235448 | Jose A. Lopes | validIallocatorDirections = |
3096 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.iAllocatorTestDirToRaw [minBound..] |
3097 | e1235448 | Jose A. Lopes | |
3098 | e1235448 | Jose A. Lopes | iallocatorModeAlloc :: String |
3099 | e1235448 | Jose A. Lopes | iallocatorModeAlloc = Types.iAllocatorModeToRaw IAllocatorAlloc |
3100 | e1235448 | Jose A. Lopes | |
3101 | e1235448 | Jose A. Lopes | iallocatorModeChgGroup :: String |
3102 | e1235448 | Jose A. Lopes | iallocatorModeChgGroup = Types.iAllocatorModeToRaw IAllocatorChangeGroup |
3103 | e1235448 | Jose A. Lopes | |
3104 | e1235448 | Jose A. Lopes | iallocatorModeMultiAlloc :: String |
3105 | e1235448 | Jose A. Lopes | iallocatorModeMultiAlloc = Types.iAllocatorModeToRaw IAllocatorMultiAlloc |
3106 | e1235448 | Jose A. Lopes | |
3107 | e1235448 | Jose A. Lopes | iallocatorModeNodeEvac :: String |
3108 | e1235448 | Jose A. Lopes | iallocatorModeNodeEvac = Types.iAllocatorModeToRaw IAllocatorNodeEvac |
3109 | e1235448 | Jose A. Lopes | |
3110 | e1235448 | Jose A. Lopes | iallocatorModeReloc :: String |
3111 | e1235448 | Jose A. Lopes | iallocatorModeReloc = Types.iAllocatorModeToRaw IAllocatorReloc |
3112 | e1235448 | Jose A. Lopes | |
3113 | e1235448 | Jose A. Lopes | validIallocatorModes :: FrozenSet String |
3114 | e1235448 | Jose A. Lopes | validIallocatorModes = |
3115 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.iAllocatorModeToRaw [minBound..] |
3116 | e1235448 | Jose A. Lopes | |
3117 | e1235448 | Jose A. Lopes | iallocatorSearchPath :: [String] |
3118 | e1235448 | Jose A. Lopes | iallocatorSearchPath = AutoConf.iallocatorSearchPath |
3119 | e1235448 | Jose A. Lopes | |
3120 | e1235448 | Jose A. Lopes | defaultIallocatorShortcut :: String |
3121 | e1235448 | Jose A. Lopes | defaultIallocatorShortcut = "." |
3122 | e1235448 | Jose A. Lopes | |
3123 | e1235448 | Jose A. Lopes | -- * Node evacuation |
3124 | e1235448 | Jose A. Lopes | |
3125 | e1235448 | Jose A. Lopes | nodeEvacPri :: String |
3126 | e1235448 | Jose A. Lopes | nodeEvacPri = Types.evacModeToRaw ChangePrimary |
3127 | e1235448 | Jose A. Lopes | |
3128 | e1235448 | Jose A. Lopes | nodeEvacSec :: String |
3129 | e1235448 | Jose A. Lopes | nodeEvacSec = Types.evacModeToRaw ChangeSecondary |
3130 | e1235448 | Jose A. Lopes | |
3131 | e1235448 | Jose A. Lopes | nodeEvacAll :: String |
3132 | e1235448 | Jose A. Lopes | nodeEvacAll = Types.evacModeToRaw ChangeAll |
3133 | e1235448 | Jose A. Lopes | |
3134 | e1235448 | Jose A. Lopes | nodeEvacModes :: FrozenSet String |
3135 | e1235448 | Jose A. Lopes | nodeEvacModes = ConstantUtils.mkSet $ map Types.evacModeToRaw [minBound..] |
3136 | e1235448 | Jose A. Lopes | |
3137 | e1235448 | Jose A. Lopes | -- * Job queue |
3138 | e1235448 | Jose A. Lopes | |
3139 | e1235448 | Jose A. Lopes | jobQueueVersion :: Int |
3140 | e1235448 | Jose A. Lopes | jobQueueVersion = 1 |
3141 | e1235448 | Jose A. Lopes | |
3142 | e1235448 | Jose A. Lopes | jobQueueSizeHardLimit :: Int |
3143 | e1235448 | Jose A. Lopes | jobQueueSizeHardLimit = 5000 |
3144 | e1235448 | Jose A. Lopes | |
3145 | e1235448 | Jose A. Lopes | jobQueueFilesPerms :: Int |
3146 | e1235448 | Jose A. Lopes | jobQueueFilesPerms = 0o640 |
3147 | e1235448 | Jose A. Lopes | |
3148 | e1235448 | Jose A. Lopes | -- * Unchanged job return |
3149 | e1235448 | Jose A. Lopes | |
3150 | e1235448 | Jose A. Lopes | jobNotchanged :: String |
3151 | e1235448 | Jose A. Lopes | jobNotchanged = "nochange" |
3152 | e1235448 | Jose A. Lopes | |
3153 | e1235448 | Jose A. Lopes | -- * Job status |
3154 | e1235448 | Jose A. Lopes | |
3155 | e1235448 | Jose A. Lopes | jobStatusQueued :: String |
3156 | e1235448 | Jose A. Lopes | jobStatusQueued = Types.jobStatusToRaw JOB_STATUS_QUEUED |
3157 | e1235448 | Jose A. Lopes | |
3158 | e1235448 | Jose A. Lopes | jobStatusWaiting :: String |
3159 | e1235448 | Jose A. Lopes | jobStatusWaiting = Types.jobStatusToRaw JOB_STATUS_WAITING |
3160 | e1235448 | Jose A. Lopes | |
3161 | e1235448 | Jose A. Lopes | jobStatusCanceling :: String |
3162 | e1235448 | Jose A. Lopes | jobStatusCanceling = Types.jobStatusToRaw JOB_STATUS_CANCELING |
3163 | e1235448 | Jose A. Lopes | |
3164 | e1235448 | Jose A. Lopes | jobStatusRunning :: String |
3165 | e1235448 | Jose A. Lopes | jobStatusRunning = Types.jobStatusToRaw JOB_STATUS_RUNNING |
3166 | e1235448 | Jose A. Lopes | |
3167 | e1235448 | Jose A. Lopes | jobStatusCanceled :: String |
3168 | e1235448 | Jose A. Lopes | jobStatusCanceled = Types.jobStatusToRaw JOB_STATUS_CANCELED |
3169 | e1235448 | Jose A. Lopes | |
3170 | e1235448 | Jose A. Lopes | jobStatusSuccess :: String |
3171 | e1235448 | Jose A. Lopes | jobStatusSuccess = Types.jobStatusToRaw JOB_STATUS_SUCCESS |
3172 | e1235448 | Jose A. Lopes | |
3173 | e1235448 | Jose A. Lopes | jobStatusError :: String |
3174 | e1235448 | Jose A. Lopes | jobStatusError = Types.jobStatusToRaw JOB_STATUS_ERROR |
3175 | e1235448 | Jose A. Lopes | |
3176 | e1235448 | Jose A. Lopes | jobsPending :: FrozenSet String |
3177 | e1235448 | Jose A. Lopes | jobsPending = |
3178 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [jobStatusQueued, jobStatusWaiting, jobStatusCanceling] |
3179 | e1235448 | Jose A. Lopes | |
3180 | e1235448 | Jose A. Lopes | jobsFinalized :: FrozenSet String |
3181 | e1235448 | Jose A. Lopes | jobsFinalized = |
3182 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.finalizedJobStatusToRaw [minBound..] |
3183 | e1235448 | Jose A. Lopes | |
3184 | e1235448 | Jose A. Lopes | jobStatusAll :: FrozenSet String |
3185 | e1235448 | Jose A. Lopes | jobStatusAll = ConstantUtils.mkSet $ map Types.jobStatusToRaw [minBound..] |
3186 | e1235448 | Jose A. Lopes | |
3187 | e1235448 | Jose A. Lopes | -- * OpCode status |
3188 | e1235448 | Jose A. Lopes | |
3189 | e1235448 | Jose A. Lopes | -- ** Not yet finalized opcodes |
3190 | e1235448 | Jose A. Lopes | |
3191 | e1235448 | Jose A. Lopes | opStatusCanceling :: String |
3192 | e1235448 | Jose A. Lopes | opStatusCanceling = "canceling" |
3193 | e1235448 | Jose A. Lopes | |
3194 | e1235448 | Jose A. Lopes | opStatusQueued :: String |
3195 | e1235448 | Jose A. Lopes | opStatusQueued = "queued" |
3196 | e1235448 | Jose A. Lopes | |
3197 | e1235448 | Jose A. Lopes | opStatusRunning :: String |
3198 | e1235448 | Jose A. Lopes | opStatusRunning = "running" |
3199 | e1235448 | Jose A. Lopes | |
3200 | e1235448 | Jose A. Lopes | opStatusWaiting :: String |
3201 | e1235448 | Jose A. Lopes | opStatusWaiting = "waiting" |
3202 | e1235448 | Jose A. Lopes | |
3203 | e1235448 | Jose A. Lopes | -- ** Finalized opcodes |
3204 | e1235448 | Jose A. Lopes | |
3205 | e1235448 | Jose A. Lopes | opStatusCanceled :: String |
3206 | e1235448 | Jose A. Lopes | opStatusCanceled = "canceled" |
3207 | e1235448 | Jose A. Lopes | |
3208 | e1235448 | Jose A. Lopes | opStatusError :: String |
3209 | e1235448 | Jose A. Lopes | opStatusError = "error" |
3210 | e1235448 | Jose A. Lopes | |
3211 | e1235448 | Jose A. Lopes | opStatusSuccess :: String |
3212 | e1235448 | Jose A. Lopes | opStatusSuccess = "success" |
3213 | e1235448 | Jose A. Lopes | |
3214 | e1235448 | Jose A. Lopes | opsFinalized :: FrozenSet String |
3215 | e1235448 | Jose A. Lopes | opsFinalized = |
3216 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [opStatusCanceled, opStatusError, opStatusSuccess] |
3217 | e1235448 | Jose A. Lopes | |
3218 | e1235448 | Jose A. Lopes | -- * OpCode priority |
3219 | e1235448 | Jose A. Lopes | |
3220 | e1235448 | Jose A. Lopes | opPrioLowest :: Int |
3221 | e1235448 | Jose A. Lopes | opPrioLowest = 19 |
3222 | e1235448 | Jose A. Lopes | |
3223 | e1235448 | Jose A. Lopes | opPrioHighest :: Int |
3224 | e1235448 | Jose A. Lopes | opPrioHighest = -20 |
3225 | e1235448 | Jose A. Lopes | |
3226 | e1235448 | Jose A. Lopes | opPrioLow :: Int |
3227 | e1235448 | Jose A. Lopes | opPrioLow = Types.opSubmitPriorityToRaw OpPrioLow |
3228 | e1235448 | Jose A. Lopes | |
3229 | e1235448 | Jose A. Lopes | opPrioNormal :: Int |
3230 | e1235448 | Jose A. Lopes | opPrioNormal = Types.opSubmitPriorityToRaw OpPrioNormal |
3231 | e1235448 | Jose A. Lopes | |
3232 | e1235448 | Jose A. Lopes | opPrioHigh :: Int |
3233 | e1235448 | Jose A. Lopes | opPrioHigh = Types.opSubmitPriorityToRaw OpPrioHigh |
3234 | e1235448 | Jose A. Lopes | |
3235 | e1235448 | Jose A. Lopes | opPrioSubmitValid :: FrozenSet Int |
3236 | e1235448 | Jose A. Lopes | opPrioSubmitValid = ConstantUtils.mkSet [opPrioLow, opPrioNormal, opPrioHigh] |
3237 | e1235448 | Jose A. Lopes | |
3238 | e1235448 | Jose A. Lopes | opPrioDefault :: Int |
3239 | e1235448 | Jose A. Lopes | opPrioDefault = opPrioNormal |
3240 | e1235448 | Jose A. Lopes | |
3241 | e1235448 | Jose A. Lopes | -- * Lock recalculate mode |
3242 | e1235448 | Jose A. Lopes | |
3243 | e1235448 | Jose A. Lopes | locksAppend :: String |
3244 | e1235448 | Jose A. Lopes | locksAppend = "append" |
3245 | e1235448 | Jose A. Lopes | |
3246 | e1235448 | Jose A. Lopes | locksReplace :: String |
3247 | e1235448 | Jose A. Lopes | locksReplace = "replace" |
3248 | e1235448 | Jose A. Lopes | |
3249 | e1235448 | Jose A. Lopes | -- * Lock timeout |
3250 | e1235448 | Jose A. Lopes | -- |
3251 | e1235448 | Jose A. Lopes | -- The lock timeout (sum) before we transition into blocking acquire |
3252 | e1235448 | Jose A. Lopes | -- (this can still be reset by priority change). Computed as max time |
3253 | e1235448 | Jose A. Lopes | -- (10 hours) before we should actually go into blocking acquire, |
3254 | e1235448 | Jose A. Lopes | -- given that we start from the default priority level. |
3255 | e1235448 | Jose A. Lopes | |
3256 | e1235448 | Jose A. Lopes | lockAttemptsMaxwait :: Double |
3257 | e1235448 | Jose A. Lopes | lockAttemptsMaxwait = 15.0 |
3258 | e1235448 | Jose A. Lopes | |
3259 | e1235448 | Jose A. Lopes | lockAttemptsMinwait :: Double |
3260 | e1235448 | Jose A. Lopes | lockAttemptsMinwait = 1.0 |
3261 | e1235448 | Jose A. Lopes | |
3262 | e1235448 | Jose A. Lopes | lockAttemptsTimeout :: Int |
3263 | e1235448 | Jose A. Lopes | lockAttemptsTimeout = (10 * 3600) `div` (opPrioDefault - opPrioHighest) |
3264 | e1235448 | Jose A. Lopes | |
3265 | e1235448 | Jose A. Lopes | -- * Execution log types |
3266 | e1235448 | Jose A. Lopes | |
3267 | e1235448 | Jose A. Lopes | elogMessage :: String |
3268 | e1235448 | Jose A. Lopes | elogMessage = Types.eLogTypeToRaw ELogMessage |
3269 | e1235448 | Jose A. Lopes | |
3270 | e1235448 | Jose A. Lopes | elogRemoteImport :: String |
3271 | e1235448 | Jose A. Lopes | elogRemoteImport = Types.eLogTypeToRaw ELogRemoteImport |
3272 | e1235448 | Jose A. Lopes | |
3273 | e1235448 | Jose A. Lopes | elogJqueueTest :: String |
3274 | e1235448 | Jose A. Lopes | elogJqueueTest = Types.eLogTypeToRaw ELogJqueueTest |
3275 | e1235448 | Jose A. Lopes | |
3276 | e1235448 | Jose A. Lopes | -- * /etc/hosts modification |
3277 | e1235448 | Jose A. Lopes | |
3278 | e1235448 | Jose A. Lopes | etcHostsAdd :: String |
3279 | e1235448 | Jose A. Lopes | etcHostsAdd = "add" |
3280 | e1235448 | Jose A. Lopes | |
3281 | e1235448 | Jose A. Lopes | etcHostsRemove :: String |
3282 | e1235448 | Jose A. Lopes | etcHostsRemove = "remove" |
3283 | e1235448 | Jose A. Lopes | |
3284 | e1235448 | Jose A. Lopes | -- * Job queue test |
3285 | e1235448 | Jose A. Lopes | |
3286 | e1235448 | Jose A. Lopes | jqtMsgprefix :: String |
3287 | e1235448 | Jose A. Lopes | jqtMsgprefix = "TESTMSG=" |
3288 | e1235448 | Jose A. Lopes | |
3289 | e1235448 | Jose A. Lopes | jqtExec :: String |
3290 | e1235448 | Jose A. Lopes | jqtExec = "exec" |
3291 | e1235448 | Jose A. Lopes | |
3292 | e1235448 | Jose A. Lopes | jqtExpandnames :: String |
3293 | e1235448 | Jose A. Lopes | jqtExpandnames = "expandnames" |
3294 | e1235448 | Jose A. Lopes | |
3295 | e1235448 | Jose A. Lopes | jqtLogmsg :: String |
3296 | e1235448 | Jose A. Lopes | jqtLogmsg = "logmsg" |
3297 | e1235448 | Jose A. Lopes | |
3298 | e1235448 | Jose A. Lopes | jqtStartmsg :: String |
3299 | e1235448 | Jose A. Lopes | jqtStartmsg = "startmsg" |
3300 | e1235448 | Jose A. Lopes | |
3301 | e1235448 | Jose A. Lopes | jqtAll :: FrozenSet String |
3302 | e1235448 | Jose A. Lopes | jqtAll = ConstantUtils.mkSet [jqtExec, jqtExpandnames, jqtLogmsg, jqtStartmsg] |
3303 | e1235448 | Jose A. Lopes | |
3304 | e1235448 | Jose A. Lopes | -- * Query resources |
3305 | e1235448 | Jose A. Lopes | |
3306 | e1235448 | Jose A. Lopes | qrCluster :: String |
3307 | e1235448 | Jose A. Lopes | qrCluster = "cluster" |
3308 | e1235448 | Jose A. Lopes | |
3309 | e1235448 | Jose A. Lopes | qrExport :: String |
3310 | e1235448 | Jose A. Lopes | qrExport = "export" |
3311 | e1235448 | Jose A. Lopes | |
3312 | e1235448 | Jose A. Lopes | qrExtstorage :: String |
3313 | e1235448 | Jose A. Lopes | qrExtstorage = "extstorage" |
3314 | e1235448 | Jose A. Lopes | |
3315 | e1235448 | Jose A. Lopes | qrGroup :: String |
3316 | e1235448 | Jose A. Lopes | qrGroup = "group" |
3317 | e1235448 | Jose A. Lopes | |
3318 | e1235448 | Jose A. Lopes | qrInstance :: String |
3319 | e1235448 | Jose A. Lopes | qrInstance = "instance" |
3320 | e1235448 | Jose A. Lopes | |
3321 | e1235448 | Jose A. Lopes | qrJob :: String |
3322 | e1235448 | Jose A. Lopes | qrJob = "job" |
3323 | e1235448 | Jose A. Lopes | |
3324 | e1235448 | Jose A. Lopes | qrLock :: String |
3325 | e1235448 | Jose A. Lopes | qrLock = "lock" |
3326 | e1235448 | Jose A. Lopes | |
3327 | e1235448 | Jose A. Lopes | qrNetwork :: String |
3328 | e1235448 | Jose A. Lopes | qrNetwork = "network" |
3329 | e1235448 | Jose A. Lopes | |
3330 | e1235448 | Jose A. Lopes | qrNode :: String |
3331 | e1235448 | Jose A. Lopes | qrNode = "node" |
3332 | e1235448 | Jose A. Lopes | |
3333 | e1235448 | Jose A. Lopes | qrOs :: String |
3334 | e1235448 | Jose A. Lopes | qrOs = "os" |
3335 | e1235448 | Jose A. Lopes | |
3336 | e1235448 | Jose A. Lopes | -- | List of resources which can be queried using 'Ganeti.OpCodes.OpQuery' |
3337 | e1235448 | Jose A. Lopes | qrViaOp :: FrozenSet String |
3338 | e1235448 | Jose A. Lopes | qrViaOp = |
3339 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [qrCluster, |
3340 | e1235448 | Jose A. Lopes | qrOs, |
3341 | e1235448 | Jose A. Lopes | qrExtstorage] |
3342 | e1235448 | Jose A. Lopes | |
3343 | e1235448 | Jose A. Lopes | -- | List of resources which can be queried using Local UniX Interface |
3344 | e1235448 | Jose A. Lopes | qrViaLuxi :: FrozenSet String |
3345 | 96431562 | Helga Velroyen | qrViaLuxi = ConstantUtils.mkSet [qrGroup, |
3346 | 96431562 | Helga Velroyen | qrExport, |
3347 | 2a02d6fe | Helga Velroyen | qrInstance, |
3348 | fbeb41e6 | Helga Velroyen | qrJob, |
3349 | fbeb41e6 | Helga Velroyen | qrLock, |
3350 | fbeb41e6 | Helga Velroyen | qrNetwork, |
3351 | fbeb41e6 | Helga Velroyen | qrNode] |
3352 | e1235448 | Jose A. Lopes | |
3353 | e1235448 | Jose A. Lopes | -- | List of resources which can be queried using RAPI |
3354 | e1235448 | Jose A. Lopes | qrViaRapi :: FrozenSet String |
3355 | cfb3116d | Helga Velroyen | qrViaRapi = qrViaLuxi |
3356 | cfb3116d | Helga Velroyen | |
3357 | cfb3116d | Helga Velroyen | -- | List of resources which can be queried via RAPI including PUT requests |
3358 | cfb3116d | Helga Velroyen | qrViaRapiPut :: FrozenSet String |
3359 | cfb3116d | Helga Velroyen | qrViaRapiPut = ConstantUtils.mkSet [qrLock, qrJob] |
3360 | e1235448 | Jose A. Lopes | |
3361 | e1235448 | Jose A. Lopes | -- * Query field types |
3362 | e1235448 | Jose A. Lopes | |
3363 | e1235448 | Jose A. Lopes | qftBool :: String |
3364 | e1235448 | Jose A. Lopes | qftBool = "bool" |
3365 | e1235448 | Jose A. Lopes | |
3366 | e1235448 | Jose A. Lopes | qftNumber :: String |
3367 | e1235448 | Jose A. Lopes | qftNumber = "number" |
3368 | e1235448 | Jose A. Lopes | |
3369 | e1235448 | Jose A. Lopes | qftOther :: String |
3370 | e1235448 | Jose A. Lopes | qftOther = "other" |
3371 | e1235448 | Jose A. Lopes | |
3372 | e1235448 | Jose A. Lopes | qftText :: String |
3373 | e1235448 | Jose A. Lopes | qftText = "text" |
3374 | e1235448 | Jose A. Lopes | |
3375 | e1235448 | Jose A. Lopes | qftTimestamp :: String |
3376 | e1235448 | Jose A. Lopes | qftTimestamp = "timestamp" |
3377 | e1235448 | Jose A. Lopes | |
3378 | e1235448 | Jose A. Lopes | qftUnit :: String |
3379 | e1235448 | Jose A. Lopes | qftUnit = "unit" |
3380 | e1235448 | Jose A. Lopes | |
3381 | e1235448 | Jose A. Lopes | qftUnknown :: String |
3382 | e1235448 | Jose A. Lopes | qftUnknown = "unknown" |
3383 | e1235448 | Jose A. Lopes | |
3384 | e1235448 | Jose A. Lopes | qftAll :: FrozenSet String |
3385 | e1235448 | Jose A. Lopes | qftAll = |
3386 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [qftBool, |
3387 | e1235448 | Jose A. Lopes | qftNumber, |
3388 | e1235448 | Jose A. Lopes | qftOther, |
3389 | e1235448 | Jose A. Lopes | qftText, |
3390 | e1235448 | Jose A. Lopes | qftTimestamp, |
3391 | e1235448 | Jose A. Lopes | qftUnit, |
3392 | e1235448 | Jose A. Lopes | qftUnknown] |
3393 | e1235448 | Jose A. Lopes | |
3394 | e1235448 | Jose A. Lopes | -- * Query result field status |
3395 | e1235448 | Jose A. Lopes | -- |
3396 | e1235448 | Jose A. Lopes | -- Don't change or reuse values as they're used by clients. |
3397 | e1235448 | Jose A. Lopes | -- |
3398 | e1235448 | Jose A. Lopes | -- FIXME: link with 'Ganeti.Query.Language.ResultStatus' |
3399 | e1235448 | Jose A. Lopes | |
3400 | e1235448 | Jose A. Lopes | -- | No data (e.g. RPC error), can be used instead of 'rsOffline' |
3401 | e1235448 | Jose A. Lopes | rsNodata :: Int |
3402 | e1235448 | Jose A. Lopes | rsNodata = 2 |
3403 | e1235448 | Jose A. Lopes | |
3404 | e1235448 | Jose A. Lopes | rsNormal :: Int |
3405 | e1235448 | Jose A. Lopes | rsNormal = 0 |
3406 | e1235448 | Jose A. Lopes | |
3407 | e1235448 | Jose A. Lopes | -- | Resource marked offline |
3408 | e1235448 | Jose A. Lopes | rsOffline :: Int |
3409 | e1235448 | Jose A. Lopes | rsOffline = 4 |
3410 | e1235448 | Jose A. Lopes | |
3411 | e1235448 | Jose A. Lopes | -- | Value unavailable/unsupported for item; if this field is |
3412 | e1235448 | Jose A. Lopes | -- supported but we cannot get the data for the moment, 'rsNodata' or |
3413 | e1235448 | Jose A. Lopes | -- 'rsOffline' should be used |
3414 | e1235448 | Jose A. Lopes | rsUnavail :: Int |
3415 | e1235448 | Jose A. Lopes | rsUnavail = 3 |
3416 | e1235448 | Jose A. Lopes | |
3417 | e1235448 | Jose A. Lopes | rsUnknown :: Int |
3418 | e1235448 | Jose A. Lopes | rsUnknown = 1 |
3419 | e1235448 | Jose A. Lopes | |
3420 | e1235448 | Jose A. Lopes | rsAll :: FrozenSet Int |
3421 | e1235448 | Jose A. Lopes | rsAll = |
3422 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [rsNodata, |
3423 | e1235448 | Jose A. Lopes | rsNormal, |
3424 | e1235448 | Jose A. Lopes | rsOffline, |
3425 | e1235448 | Jose A. Lopes | rsUnavail, |
3426 | e1235448 | Jose A. Lopes | rsUnknown] |
3427 | e1235448 | Jose A. Lopes | |
3428 | e1235448 | Jose A. Lopes | -- | Special field cases and their verbose/terse formatting |
3429 | e1235448 | Jose A. Lopes | rssDescription :: Map Int (String, String) |
3430 | e1235448 | Jose A. Lopes | rssDescription = |
3431 | e1235448 | Jose A. Lopes | Map.fromList [(rsUnknown, ("(unknown)", "??")), |
3432 | e1235448 | Jose A. Lopes | (rsNodata, ("(nodata)", "?")), |
3433 | e1235448 | Jose A. Lopes | (rsOffline, ("(offline)", "*")), |
3434 | e1235448 | Jose A. Lopes | (rsUnavail, ("(unavail)", "-"))] |
3435 | e1235448 | Jose A. Lopes | |
3436 | e1235448 | Jose A. Lopes | -- * Max dynamic devices |
3437 | e1235448 | Jose A. Lopes | |
3438 | e1235448 | Jose A. Lopes | maxDisks :: Int |
3439 | e1235448 | Jose A. Lopes | maxDisks = Types.maxDisks |
3440 | e1235448 | Jose A. Lopes | |
3441 | e1235448 | Jose A. Lopes | maxNics :: Int |
3442 | e1235448 | Jose A. Lopes | maxNics = Types.maxNics |
3443 | e1235448 | Jose A. Lopes | |
3444 | e1235448 | Jose A. Lopes | -- | SSCONF file prefix |
3445 | e1235448 | Jose A. Lopes | ssconfFileprefix :: String |
3446 | e1235448 | Jose A. Lopes | ssconfFileprefix = "ssconf_" |
3447 | e1235448 | Jose A. Lopes | |
3448 | e1235448 | Jose A. Lopes | -- * SSCONF keys |
3449 | e1235448 | Jose A. Lopes | |
3450 | e1235448 | Jose A. Lopes | ssClusterName :: String |
3451 | e1235448 | Jose A. Lopes | ssClusterName = "cluster_name" |
3452 | e1235448 | Jose A. Lopes | |
3453 | e1235448 | Jose A. Lopes | ssClusterTags :: String |
3454 | e1235448 | Jose A. Lopes | ssClusterTags = "cluster_tags" |
3455 | e1235448 | Jose A. Lopes | |
3456 | e1235448 | Jose A. Lopes | ssFileStorageDir :: String |
3457 | e1235448 | Jose A. Lopes | ssFileStorageDir = "file_storage_dir" |
3458 | e1235448 | Jose A. Lopes | |
3459 | e1235448 | Jose A. Lopes | ssSharedFileStorageDir :: String |
3460 | e1235448 | Jose A. Lopes | ssSharedFileStorageDir = "shared_file_storage_dir" |
3461 | e1235448 | Jose A. Lopes | |
3462 | e1235448 | Jose A. Lopes | ssMasterCandidates :: String |
3463 | e1235448 | Jose A. Lopes | ssMasterCandidates = "master_candidates" |
3464 | e1235448 | Jose A. Lopes | |
3465 | e1235448 | Jose A. Lopes | ssMasterCandidatesIps :: String |
3466 | e1235448 | Jose A. Lopes | ssMasterCandidatesIps = "master_candidates_ips" |
3467 | e1235448 | Jose A. Lopes | |
3468 | e1235448 | Jose A. Lopes | ssMasterIp :: String |
3469 | e1235448 | Jose A. Lopes | ssMasterIp = "master_ip" |
3470 | e1235448 | Jose A. Lopes | |
3471 | e1235448 | Jose A. Lopes | ssMasterNetdev :: String |
3472 | e1235448 | Jose A. Lopes | ssMasterNetdev = "master_netdev" |
3473 | e1235448 | Jose A. Lopes | |
3474 | e1235448 | Jose A. Lopes | ssMasterNetmask :: String |
3475 | e1235448 | Jose A. Lopes | ssMasterNetmask = "master_netmask" |
3476 | e1235448 | Jose A. Lopes | |
3477 | e1235448 | Jose A. Lopes | ssMasterNode :: String |
3478 | e1235448 | Jose A. Lopes | ssMasterNode = "master_node" |
3479 | e1235448 | Jose A. Lopes | |
3480 | e1235448 | Jose A. Lopes | ssNodeList :: String |
3481 | e1235448 | Jose A. Lopes | ssNodeList = "node_list" |
3482 | e1235448 | Jose A. Lopes | |
3483 | e1235448 | Jose A. Lopes | ssNodePrimaryIps :: String |
3484 | e1235448 | Jose A. Lopes | ssNodePrimaryIps = "node_primary_ips" |
3485 | e1235448 | Jose A. Lopes | |
3486 | e1235448 | Jose A. Lopes | ssNodeSecondaryIps :: String |
3487 | e1235448 | Jose A. Lopes | ssNodeSecondaryIps = "node_secondary_ips" |
3488 | e1235448 | Jose A. Lopes | |
3489 | e1235448 | Jose A. Lopes | ssOfflineNodes :: String |
3490 | e1235448 | Jose A. Lopes | ssOfflineNodes = "offline_nodes" |
3491 | e1235448 | Jose A. Lopes | |
3492 | e1235448 | Jose A. Lopes | ssOnlineNodes :: String |
3493 | e1235448 | Jose A. Lopes | ssOnlineNodes = "online_nodes" |
3494 | e1235448 | Jose A. Lopes | |
3495 | e1235448 | Jose A. Lopes | ssPrimaryIpFamily :: String |
3496 | e1235448 | Jose A. Lopes | ssPrimaryIpFamily = "primary_ip_family" |
3497 | e1235448 | Jose A. Lopes | |
3498 | e1235448 | Jose A. Lopes | ssInstanceList :: String |
3499 | e1235448 | Jose A. Lopes | ssInstanceList = "instance_list" |
3500 | e1235448 | Jose A. Lopes | |
3501 | e1235448 | Jose A. Lopes | ssReleaseVersion :: String |
3502 | e1235448 | Jose A. Lopes | ssReleaseVersion = "release_version" |
3503 | e1235448 | Jose A. Lopes | |
3504 | e1235448 | Jose A. Lopes | ssHypervisorList :: String |
3505 | e1235448 | Jose A. Lopes | ssHypervisorList = "hypervisor_list" |
3506 | e1235448 | Jose A. Lopes | |
3507 | e1235448 | Jose A. Lopes | ssMaintainNodeHealth :: String |
3508 | e1235448 | Jose A. Lopes | ssMaintainNodeHealth = "maintain_node_health" |
3509 | e1235448 | Jose A. Lopes | |
3510 | e1235448 | Jose A. Lopes | ssUidPool :: String |
3511 | e1235448 | Jose A. Lopes | ssUidPool = "uid_pool" |
3512 | e1235448 | Jose A. Lopes | |
3513 | e1235448 | Jose A. Lopes | ssNodegroups :: String |
3514 | e1235448 | Jose A. Lopes | ssNodegroups = "nodegroups" |
3515 | e1235448 | Jose A. Lopes | |
3516 | e1235448 | Jose A. Lopes | ssNetworks :: String |
3517 | e1235448 | Jose A. Lopes | ssNetworks = "networks" |
3518 | e1235448 | Jose A. Lopes | |
3519 | e1235448 | Jose A. Lopes | -- | This is not a complete SSCONF key, but the prefix for the |
3520 | e1235448 | Jose A. Lopes | -- hypervisor keys |
3521 | e1235448 | Jose A. Lopes | ssHvparamsPref :: String |
3522 | e1235448 | Jose A. Lopes | ssHvparamsPref = "hvparams_" |
3523 | e1235448 | Jose A. Lopes | |
3524 | e1235448 | Jose A. Lopes | -- * Hvparams keys |
3525 | e1235448 | Jose A. Lopes | |
3526 | e1235448 | Jose A. Lopes | ssHvparamsXenChroot :: String |
3527 | e1235448 | Jose A. Lopes | ssHvparamsXenChroot = ssHvparamsPref ++ htChroot |
3528 | e1235448 | Jose A. Lopes | |
3529 | e1235448 | Jose A. Lopes | ssHvparamsXenFake :: String |
3530 | e1235448 | Jose A. Lopes | ssHvparamsXenFake = ssHvparamsPref ++ htFake |
3531 | e1235448 | Jose A. Lopes | |
3532 | e1235448 | Jose A. Lopes | ssHvparamsXenHvm :: String |
3533 | e1235448 | Jose A. Lopes | ssHvparamsXenHvm = ssHvparamsPref ++ htXenHvm |
3534 | e1235448 | Jose A. Lopes | |
3535 | e1235448 | Jose A. Lopes | ssHvparamsXenKvm :: String |
3536 | e1235448 | Jose A. Lopes | ssHvparamsXenKvm = ssHvparamsPref ++ htKvm |
3537 | e1235448 | Jose A. Lopes | |
3538 | e1235448 | Jose A. Lopes | ssHvparamsXenLxc :: String |
3539 | e1235448 | Jose A. Lopes | ssHvparamsXenLxc = ssHvparamsPref ++ htLxc |
3540 | e1235448 | Jose A. Lopes | |
3541 | e1235448 | Jose A. Lopes | ssHvparamsXenPvm :: String |
3542 | e1235448 | Jose A. Lopes | ssHvparamsXenPvm = ssHvparamsPref ++ htXenPvm |
3543 | e1235448 | Jose A. Lopes | |
3544 | e1235448 | Jose A. Lopes | validSsHvparamsKeys :: FrozenSet String |
3545 | e1235448 | Jose A. Lopes | validSsHvparamsKeys = |
3546 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [ssHvparamsXenChroot, |
3547 | e1235448 | Jose A. Lopes | ssHvparamsXenLxc, |
3548 | e1235448 | Jose A. Lopes | ssHvparamsXenFake, |
3549 | e1235448 | Jose A. Lopes | ssHvparamsXenHvm, |
3550 | e1235448 | Jose A. Lopes | ssHvparamsXenKvm, |
3551 | e1235448 | Jose A. Lopes | ssHvparamsXenPvm] |
3552 | e1235448 | Jose A. Lopes | |
3553 | e1235448 | Jose A. Lopes | ssFilePerms :: Int |
3554 | e1235448 | Jose A. Lopes | ssFilePerms = 0o444 |
3555 | e1235448 | Jose A. Lopes | |
3556 | e1235448 | Jose A. Lopes | -- | Cluster wide default parameters |
3557 | e1235448 | Jose A. Lopes | defaultEnabledHypervisor :: String |
3558 | e1235448 | Jose A. Lopes | defaultEnabledHypervisor = htXenPvm |
3559 | e1235448 | Jose A. Lopes | |
3560 | e1235448 | Jose A. Lopes | hvcDefaults :: Map Hypervisor (Map String PyValueEx) |
3561 | e1235448 | Jose A. Lopes | hvcDefaults = |
3562 | e1235448 | Jose A. Lopes | Map.fromList |
3563 | e1235448 | Jose A. Lopes | [ (XenPvm, Map.fromList |
3564 | e1235448 | Jose A. Lopes | [ (hvUseBootloader, PyValueEx False) |
3565 | e1235448 | Jose A. Lopes | , (hvBootloaderPath, PyValueEx xenBootloader) |
3566 | e1235448 | Jose A. Lopes | , (hvBootloaderArgs, PyValueEx "") |
3567 | e1235448 | Jose A. Lopes | , (hvKernelPath, PyValueEx xenKernel) |
3568 | e1235448 | Jose A. Lopes | , (hvInitrdPath, PyValueEx "") |
3569 | e1235448 | Jose A. Lopes | , (hvRootPath, PyValueEx "/dev/xvda1") |
3570 | e1235448 | Jose A. Lopes | , (hvKernelArgs, PyValueEx "ro") |
3571 | e1235448 | Jose A. Lopes | , (hvMigrationPort, PyValueEx (8002 :: Int)) |
3572 | e1235448 | Jose A. Lopes | , (hvMigrationMode, PyValueEx htMigrationLive) |
3573 | e1235448 | Jose A. Lopes | , (hvBlockdevPrefix, PyValueEx "sd") |
3574 | e1235448 | Jose A. Lopes | , (hvRebootBehavior, PyValueEx instanceRebootAllowed) |
3575 | e1235448 | Jose A. Lopes | , (hvCpuMask, PyValueEx cpuPinningAll) |
3576 | e1235448 | Jose A. Lopes | , (hvCpuCap, PyValueEx (0 :: Int)) |
3577 | e1235448 | Jose A. Lopes | , (hvCpuWeight, PyValueEx (256 :: Int)) |
3578 | e1235448 | Jose A. Lopes | , (hvVifScript, PyValueEx "") |
3579 | e1235448 | Jose A. Lopes | , (hvXenCmd, PyValueEx xenCmdXm) |
3580 | e1235448 | Jose A. Lopes | , (hvXenCpuid, PyValueEx "") |
3581 | e1235448 | Jose A. Lopes | , (hvSoundhw, PyValueEx "") |
3582 | e1235448 | Jose A. Lopes | ]) |
3583 | e1235448 | Jose A. Lopes | , (XenHvm, Map.fromList |
3584 | e1235448 | Jose A. Lopes | [ (hvBootOrder, PyValueEx "cd") |
3585 | e1235448 | Jose A. Lopes | , (hvCdromImagePath, PyValueEx "") |
3586 | e1235448 | Jose A. Lopes | , (hvNicType, PyValueEx htNicRtl8139) |
3587 | e1235448 | Jose A. Lopes | , (hvDiskType, PyValueEx htDiskParavirtual) |
3588 | e1235448 | Jose A. Lopes | , (hvVncBindAddress, PyValueEx ip4AddressAny) |
3589 | e1235448 | Jose A. Lopes | , (hvAcpi, PyValueEx True) |
3590 | e1235448 | Jose A. Lopes | , (hvPae, PyValueEx True) |
3591 | e1235448 | Jose A. Lopes | , (hvKernelPath, PyValueEx "/usr/lib/xen/boot/hvmloader") |
3592 | e1235448 | Jose A. Lopes | , (hvDeviceModel, PyValueEx "/usr/lib/xen/bin/qemu-dm") |
3593 | e1235448 | Jose A. Lopes | , (hvMigrationPort, PyValueEx (8002 :: Int)) |
3594 | e1235448 | Jose A. Lopes | , (hvMigrationMode, PyValueEx htMigrationNonlive) |
3595 | e1235448 | Jose A. Lopes | , (hvUseLocaltime, PyValueEx False) |
3596 | e1235448 | Jose A. Lopes | , (hvBlockdevPrefix, PyValueEx "hd") |
3597 | e1235448 | Jose A. Lopes | , (hvPassthrough, PyValueEx "") |
3598 | e1235448 | Jose A. Lopes | , (hvRebootBehavior, PyValueEx instanceRebootAllowed) |
3599 | e1235448 | Jose A. Lopes | , (hvCpuMask, PyValueEx cpuPinningAll) |
3600 | e1235448 | Jose A. Lopes | , (hvCpuCap, PyValueEx (0 :: Int)) |
3601 | e1235448 | Jose A. Lopes | , (hvCpuWeight, PyValueEx (256 :: Int)) |
3602 | e1235448 | Jose A. Lopes | , (hvVifType, PyValueEx htHvmVifIoemu) |
3603 | e1235448 | Jose A. Lopes | , (hvVifScript, PyValueEx "") |
3604 | e1235448 | Jose A. Lopes | , (hvViridian, PyValueEx False) |
3605 | e1235448 | Jose A. Lopes | , (hvXenCmd, PyValueEx xenCmdXm) |
3606 | e1235448 | Jose A. Lopes | , (hvXenCpuid, PyValueEx "") |
3607 | e1235448 | Jose A. Lopes | , (hvSoundhw, PyValueEx "") |
3608 | e1235448 | Jose A. Lopes | ]) |
3609 | e1235448 | Jose A. Lopes | , (Kvm, Map.fromList |
3610 | e1235448 | Jose A. Lopes | [ (hvKvmPath, PyValueEx kvmPath) |
3611 | e1235448 | Jose A. Lopes | , (hvKernelPath, PyValueEx kvmKernel) |
3612 | e1235448 | Jose A. Lopes | , (hvInitrdPath, PyValueEx "") |
3613 | e1235448 | Jose A. Lopes | , (hvKernelArgs, PyValueEx "ro") |
3614 | e1235448 | Jose A. Lopes | , (hvRootPath, PyValueEx "/dev/vda1") |
3615 | e1235448 | Jose A. Lopes | , (hvAcpi, PyValueEx True) |
3616 | e1235448 | Jose A. Lopes | , (hvSerialConsole, PyValueEx True) |
3617 | e1235448 | Jose A. Lopes | , (hvSerialSpeed, PyValueEx (38400 :: Int)) |
3618 | e1235448 | Jose A. Lopes | , (hvVncBindAddress, PyValueEx "") |
3619 | e1235448 | Jose A. Lopes | , (hvVncTls, PyValueEx False) |
3620 | e1235448 | Jose A. Lopes | , (hvVncX509, PyValueEx "") |
3621 | e1235448 | Jose A. Lopes | , (hvVncX509Verify, PyValueEx False) |
3622 | e1235448 | Jose A. Lopes | , (hvVncPasswordFile, PyValueEx "") |
3623 | e1235448 | Jose A. Lopes | , (hvKvmSpiceBind, PyValueEx "") |
3624 | e1235448 | Jose A. Lopes | , (hvKvmSpiceIpVersion, PyValueEx ifaceNoIpVersionSpecified) |
3625 | e1235448 | Jose A. Lopes | , (hvKvmSpicePasswordFile, PyValueEx "") |
3626 | e1235448 | Jose A. Lopes | , (hvKvmSpiceLosslessImgCompr, PyValueEx "") |
3627 | e1235448 | Jose A. Lopes | , (hvKvmSpiceJpegImgCompr, PyValueEx "") |
3628 | e1235448 | Jose A. Lopes | , (hvKvmSpiceZlibGlzImgCompr, PyValueEx "") |
3629 | e1235448 | Jose A. Lopes | , (hvKvmSpiceStreamingVideoDetection, PyValueEx "") |
3630 | e1235448 | Jose A. Lopes | , (hvKvmSpiceAudioCompr, PyValueEx True) |
3631 | e1235448 | Jose A. Lopes | , (hvKvmSpiceUseTls, PyValueEx False) |
3632 | e1235448 | Jose A. Lopes | , (hvKvmSpiceTlsCiphers, PyValueEx opensslCiphers) |
3633 | e1235448 | Jose A. Lopes | , (hvKvmSpiceUseVdagent, PyValueEx True) |
3634 | e1235448 | Jose A. Lopes | , (hvKvmFloppyImagePath, PyValueEx "") |
3635 | e1235448 | Jose A. Lopes | , (hvCdromImagePath, PyValueEx "") |
3636 | e1235448 | Jose A. Lopes | , (hvKvmCdrom2ImagePath, PyValueEx "") |
3637 | e1235448 | Jose A. Lopes | , (hvBootOrder, PyValueEx htBoDisk) |
3638 | e1235448 | Jose A. Lopes | , (hvNicType, PyValueEx htNicParavirtual) |
3639 | e1235448 | Jose A. Lopes | , (hvDiskType, PyValueEx htDiskParavirtual) |
3640 | e1235448 | Jose A. Lopes | , (hvKvmCdromDiskType, PyValueEx "") |
3641 | e1235448 | Jose A. Lopes | , (hvUsbMouse, PyValueEx "") |
3642 | e1235448 | Jose A. Lopes | , (hvKeymap, PyValueEx "") |
3643 | e1235448 | Jose A. Lopes | , (hvMigrationPort, PyValueEx (8102 :: Int)) |
3644 | e1235448 | Jose A. Lopes | , (hvMigrationBandwidth, PyValueEx (32 :: Int)) |
3645 | e1235448 | Jose A. Lopes | , (hvMigrationDowntime, PyValueEx (30 :: Int)) |
3646 | e1235448 | Jose A. Lopes | , (hvMigrationMode, PyValueEx htMigrationLive) |
3647 | e1235448 | Jose A. Lopes | , (hvUseLocaltime, PyValueEx False) |
3648 | e1235448 | Jose A. Lopes | , (hvDiskCache, PyValueEx htCacheDefault) |
3649 | e1235448 | Jose A. Lopes | , (hvSecurityModel, PyValueEx htSmNone) |
3650 | e1235448 | Jose A. Lopes | , (hvSecurityDomain, PyValueEx "") |
3651 | e1235448 | Jose A. Lopes | , (hvKvmFlag, PyValueEx "") |
3652 | e1235448 | Jose A. Lopes | , (hvVhostNet, PyValueEx False) |
3653 | e1235448 | Jose A. Lopes | , (hvKvmUseChroot, PyValueEx False) |
3654 | e1235448 | Jose A. Lopes | , (hvMemPath, PyValueEx "") |
3655 | e1235448 | Jose A. Lopes | , (hvRebootBehavior, PyValueEx instanceRebootAllowed) |
3656 | e1235448 | Jose A. Lopes | , (hvCpuMask, PyValueEx cpuPinningAll) |
3657 | e1235448 | Jose A. Lopes | , (hvCpuType, PyValueEx "") |
3658 | e1235448 | Jose A. Lopes | , (hvCpuCores, PyValueEx (0 :: Int)) |
3659 | e1235448 | Jose A. Lopes | , (hvCpuThreads, PyValueEx (0 :: Int)) |
3660 | e1235448 | Jose A. Lopes | , (hvCpuSockets, PyValueEx (0 :: Int)) |
3661 | e1235448 | Jose A. Lopes | , (hvSoundhw, PyValueEx "") |
3662 | e1235448 | Jose A. Lopes | , (hvUsbDevices, PyValueEx "") |
3663 | e1235448 | Jose A. Lopes | , (hvVga, PyValueEx "") |
3664 | e1235448 | Jose A. Lopes | , (hvKvmExtra, PyValueEx "") |
3665 | e1235448 | Jose A. Lopes | , (hvKvmMachineVersion, PyValueEx "") |
3666 | e1235448 | Jose A. Lopes | , (hvVnetHdr, PyValueEx True)]) |
3667 | e1235448 | Jose A. Lopes | , (Fake, Map.fromList [(hvMigrationMode, PyValueEx htMigrationLive)]) |
3668 | e1235448 | Jose A. Lopes | , (Chroot, Map.fromList [(hvInitScript, PyValueEx "/ganeti-chroot")]) |
3669 | e1235448 | Jose A. Lopes | , (Lxc, Map.fromList [(hvCpuMask, PyValueEx "")]) |
3670 | e1235448 | Jose A. Lopes | ] |
3671 | e1235448 | Jose A. Lopes | |
3672 | e1235448 | Jose A. Lopes | hvcGlobals :: FrozenSet String |
3673 | e1235448 | Jose A. Lopes | hvcGlobals = |
3674 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [hvMigrationBandwidth, |
3675 | e1235448 | Jose A. Lopes | hvMigrationMode, |
3676 | e1235448 | Jose A. Lopes | hvMigrationPort, |
3677 | e1235448 | Jose A. Lopes | hvXenCmd] |
3678 | e1235448 | Jose A. Lopes | |
3679 | e1235448 | Jose A. Lopes | becDefaults :: Map String PyValueEx |
3680 | e1235448 | Jose A. Lopes | becDefaults = |
3681 | e1235448 | Jose A. Lopes | Map.fromList |
3682 | e1235448 | Jose A. Lopes | [ (beMinmem, PyValueEx (128 :: Int)) |
3683 | e1235448 | Jose A. Lopes | , (beMaxmem, PyValueEx (128 :: Int)) |
3684 | e1235448 | Jose A. Lopes | , (beVcpus, PyValueEx (1 :: Int)) |
3685 | e1235448 | Jose A. Lopes | , (beAutoBalance, PyValueEx True) |
3686 | e1235448 | Jose A. Lopes | , (beAlwaysFailover, PyValueEx False) |
3687 | e1235448 | Jose A. Lopes | , (beSpindleUse, PyValueEx (1 :: Int)) |
3688 | e1235448 | Jose A. Lopes | ] |
3689 | e1235448 | Jose A. Lopes | |
3690 | e1235448 | Jose A. Lopes | ndcDefaults :: Map String PyValueEx |
3691 | e1235448 | Jose A. Lopes | ndcDefaults = |
3692 | e1235448 | Jose A. Lopes | Map.fromList |
3693 | e1235448 | Jose A. Lopes | [ (ndOobProgram, PyValueEx "") |
3694 | e1235448 | Jose A. Lopes | , (ndSpindleCount, PyValueEx (1 :: Int)) |
3695 | e1235448 | Jose A. Lopes | , (ndExclusiveStorage, PyValueEx False) |
3696 | e1235448 | Jose A. Lopes | , (ndOvs, PyValueEx False) |
3697 | e1235448 | Jose A. Lopes | , (ndOvsName, PyValueEx defaultOvs) |
3698 | e1235448 | Jose A. Lopes | , (ndOvsLink, PyValueEx "") |
3699 | a4417db4 | Thomas Thrainer | , (ndSshPort, PyValueEx (22 :: Int)) |
3700 | e1235448 | Jose A. Lopes | ] |
3701 | e1235448 | Jose A. Lopes | |
3702 | e1235448 | Jose A. Lopes | ndcGlobals :: FrozenSet String |
3703 | e1235448 | Jose A. Lopes | ndcGlobals = ConstantUtils.mkSet [ndExclusiveStorage] |
3704 | e1235448 | Jose A. Lopes | |
3705 | e1235448 | Jose A. Lopes | -- | Default delay target measured in sectors |
3706 | e1235448 | Jose A. Lopes | defaultDelayTarget :: Int |
3707 | e1235448 | Jose A. Lopes | defaultDelayTarget = 1 |
3708 | e1235448 | Jose A. Lopes | |
3709 | e1235448 | Jose A. Lopes | defaultDiskCustom :: String |
3710 | e1235448 | Jose A. Lopes | defaultDiskCustom = "" |
3711 | e1235448 | Jose A. Lopes | |
3712 | e1235448 | Jose A. Lopes | defaultDiskResync :: Bool |
3713 | e1235448 | Jose A. Lopes | defaultDiskResync = False |
3714 | e1235448 | Jose A. Lopes | |
3715 | e1235448 | Jose A. Lopes | -- | Default fill target measured in sectors |
3716 | e1235448 | Jose A. Lopes | defaultFillTarget :: Int |
3717 | e1235448 | Jose A. Lopes | defaultFillTarget = 0 |
3718 | e1235448 | Jose A. Lopes | |
3719 | e1235448 | Jose A. Lopes | -- | Default mininum rate measured in KiB/s |
3720 | e1235448 | Jose A. Lopes | defaultMinRate :: Int |
3721 | e1235448 | Jose A. Lopes | defaultMinRate = 4 * 1024 |
3722 | e1235448 | Jose A. Lopes | |
3723 | e1235448 | Jose A. Lopes | defaultNetCustom :: String |
3724 | e1235448 | Jose A. Lopes | defaultNetCustom = "" |
3725 | e1235448 | Jose A. Lopes | |
3726 | e1235448 | Jose A. Lopes | -- | Default plan ahead measured in sectors |
3727 | e1235448 | Jose A. Lopes | -- |
3728 | e1235448 | Jose A. Lopes | -- The default values for the DRBD dynamic resync speed algorithm are |
3729 | e1235448 | Jose A. Lopes | -- taken from the drbsetup 8.3.11 man page, except for c-plan-ahead |
3730 | e1235448 | Jose A. Lopes | -- (that we don't need to set to 0, because we have a separate option |
3731 | e1235448 | Jose A. Lopes | -- to enable it) and for c-max-rate, that we cap to the default value |
3732 | e1235448 | Jose A. Lopes | -- for the static resync rate. |
3733 | e1235448 | Jose A. Lopes | defaultPlanAhead :: Int |
3734 | e1235448 | Jose A. Lopes | defaultPlanAhead = 20 |
3735 | e1235448 | Jose A. Lopes | |
3736 | e1235448 | Jose A. Lopes | defaultRbdPool :: String |
3737 | e1235448 | Jose A. Lopes | defaultRbdPool = "rbd" |
3738 | e1235448 | Jose A. Lopes | |
3739 | e1235448 | Jose A. Lopes | diskLdDefaults :: Map DiskTemplate (Map String PyValueEx) |
3740 | e1235448 | Jose A. Lopes | diskLdDefaults = |
3741 | e1235448 | Jose A. Lopes | Map.fromList |
3742 | e1235448 | Jose A. Lopes | [ (DTBlock, Map.empty) |
3743 | e1235448 | Jose A. Lopes | , (DTDrbd8, Map.fromList |
3744 | e1235448 | Jose A. Lopes | [ (ldpBarriers, PyValueEx drbdBarriers) |
3745 | e1235448 | Jose A. Lopes | , (ldpDefaultMetavg, PyValueEx defaultVg) |
3746 | e1235448 | Jose A. Lopes | , (ldpDelayTarget, PyValueEx defaultDelayTarget) |
3747 | e1235448 | Jose A. Lopes | , (ldpDiskCustom, PyValueEx defaultDiskCustom) |
3748 | e1235448 | Jose A. Lopes | , (ldpDynamicResync, PyValueEx defaultDiskResync) |
3749 | e1235448 | Jose A. Lopes | , (ldpFillTarget, PyValueEx defaultFillTarget) |
3750 | e1235448 | Jose A. Lopes | , (ldpMaxRate, PyValueEx classicDrbdSyncSpeed) |
3751 | e1235448 | Jose A. Lopes | , (ldpMinRate, PyValueEx defaultMinRate) |
3752 | e1235448 | Jose A. Lopes | , (ldpNetCustom, PyValueEx defaultNetCustom) |
3753 | e1235448 | Jose A. Lopes | , (ldpNoMetaFlush, PyValueEx drbdNoMetaFlush) |
3754 | e1235448 | Jose A. Lopes | , (ldpPlanAhead, PyValueEx defaultPlanAhead) |
3755 | e1235448 | Jose A. Lopes | , (ldpProtocol, PyValueEx drbdDefaultNetProtocol) |
3756 | e1235448 | Jose A. Lopes | , (ldpResyncRate, PyValueEx classicDrbdSyncSpeed) |
3757 | e1235448 | Jose A. Lopes | ]) |
3758 | e1235448 | Jose A. Lopes | , (DTExt, Map.empty) |
3759 | e1235448 | Jose A. Lopes | , (DTFile, Map.empty) |
3760 | e1235448 | Jose A. Lopes | , (DTPlain, Map.fromList [(ldpStripes, PyValueEx lvmStripecount)]) |
3761 | e1235448 | Jose A. Lopes | , (DTRbd, Map.fromList |
3762 | e1235448 | Jose A. Lopes | [ (ldpPool, PyValueEx defaultRbdPool) |
3763 | e1235448 | Jose A. Lopes | , (ldpAccess, PyValueEx diskKernelspace) |
3764 | e1235448 | Jose A. Lopes | ]) |
3765 | e1235448 | Jose A. Lopes | , (DTSharedFile, Map.empty) |
3766 | e1235448 | Jose A. Lopes | ] |
3767 | e1235448 | Jose A. Lopes | |
3768 | e1235448 | Jose A. Lopes | diskDtDefaults :: Map DiskTemplate (Map String PyValueEx) |
3769 | e1235448 | Jose A. Lopes | diskDtDefaults = |
3770 | e1235448 | Jose A. Lopes | Map.fromList |
3771 | e1235448 | Jose A. Lopes | [ (DTBlock, Map.empty) |
3772 | e1235448 | Jose A. Lopes | , (DTDiskless, Map.empty) |
3773 | e1235448 | Jose A. Lopes | , (DTDrbd8, Map.fromList |
3774 | e1235448 | Jose A. Lopes | [ (drbdDataStripes, PyValueEx lvmStripecount) |
3775 | e1235448 | Jose A. Lopes | , (drbdDefaultMetavg, PyValueEx defaultVg) |
3776 | e1235448 | Jose A. Lopes | , (drbdDelayTarget, PyValueEx defaultDelayTarget) |
3777 | e1235448 | Jose A. Lopes | , (drbdDiskBarriers, PyValueEx drbdBarriers) |
3778 | e1235448 | Jose A. Lopes | , (drbdDiskCustom, PyValueEx defaultDiskCustom) |
3779 | e1235448 | Jose A. Lopes | , (drbdDynamicResync, PyValueEx defaultDiskResync) |
3780 | e1235448 | Jose A. Lopes | , (drbdFillTarget, PyValueEx defaultFillTarget) |
3781 | e1235448 | Jose A. Lopes | , (drbdMaxRate, PyValueEx classicDrbdSyncSpeed) |
3782 | e1235448 | Jose A. Lopes | , (drbdMetaBarriers, PyValueEx drbdNoMetaFlush) |
3783 | e1235448 | Jose A. Lopes | , (drbdMetaStripes, PyValueEx lvmStripecount) |
3784 | e1235448 | Jose A. Lopes | , (drbdMinRate, PyValueEx defaultMinRate) |
3785 | e1235448 | Jose A. Lopes | , (drbdNetCustom, PyValueEx defaultNetCustom) |
3786 | e1235448 | Jose A. Lopes | , (drbdPlanAhead, PyValueEx defaultPlanAhead) |
3787 | e1235448 | Jose A. Lopes | , (drbdProtocol, PyValueEx drbdDefaultNetProtocol) |
3788 | e1235448 | Jose A. Lopes | , (drbdResyncRate, PyValueEx classicDrbdSyncSpeed) |
3789 | e1235448 | Jose A. Lopes | ]) |
3790 | e1235448 | Jose A. Lopes | , (DTExt, Map.empty) |
3791 | e1235448 | Jose A. Lopes | , (DTFile, Map.empty) |
3792 | e1235448 | Jose A. Lopes | , (DTPlain, Map.fromList [(lvStripes, PyValueEx lvmStripecount)]) |
3793 | e1235448 | Jose A. Lopes | , (DTRbd, Map.fromList |
3794 | e1235448 | Jose A. Lopes | [ (rbdPool, PyValueEx defaultRbdPool) |
3795 | e1235448 | Jose A. Lopes | , (rbdAccess, PyValueEx diskKernelspace) |
3796 | e1235448 | Jose A. Lopes | ]) |
3797 | e1235448 | Jose A. Lopes | , (DTSharedFile, Map.empty) |
3798 | e1235448 | Jose A. Lopes | ] |
3799 | e1235448 | Jose A. Lopes | |
3800 | e1235448 | Jose A. Lopes | niccDefaults :: Map String PyValueEx |
3801 | e1235448 | Jose A. Lopes | niccDefaults = |
3802 | e1235448 | Jose A. Lopes | Map.fromList |
3803 | e1235448 | Jose A. Lopes | [ (nicMode, PyValueEx nicModeBridged) |
3804 | e1235448 | Jose A. Lopes | , (nicLink, PyValueEx defaultBridge) |
3805 | 07e68848 | Thomas Thrainer | , (nicVlan, PyValueEx "") |
3806 | e1235448 | Jose A. Lopes | ] |
3807 | e1235448 | Jose A. Lopes | |
3808 | e1235448 | Jose A. Lopes | -- | All of the following values are quite arbitrary - there are no |
3809 | e1235448 | Jose A. Lopes | -- "good" defaults, these must be customised per-site |
3810 | e1235448 | Jose A. Lopes | ispecsMinmaxDefaults :: Map String (Map String Int) |
3811 | e1235448 | Jose A. Lopes | ispecsMinmaxDefaults = |
3812 | e1235448 | Jose A. Lopes | Map.fromList |
3813 | e1235448 | Jose A. Lopes | [(ispecsMin, |
3814 | e1235448 | Jose A. Lopes | Map.fromList |
3815 | e1235448 | Jose A. Lopes | [(ConstantUtils.ispecMemSize, Types.iSpecMemorySize Types.defMinISpec), |
3816 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecCpuCount, Types.iSpecCpuCount Types.defMinISpec), |
3817 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecDiskCount, Types.iSpecDiskCount Types.defMinISpec), |
3818 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecDiskSize, Types.iSpecDiskSize Types.defMinISpec), |
3819 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecNicCount, Types.iSpecNicCount Types.defMinISpec), |
3820 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecSpindleUse, Types.iSpecSpindleUse Types.defMinISpec)]), |
3821 | e1235448 | Jose A. Lopes | (ispecsMax, |
3822 | e1235448 | Jose A. Lopes | Map.fromList |
3823 | e1235448 | Jose A. Lopes | [(ConstantUtils.ispecMemSize, Types.iSpecMemorySize Types.defMaxISpec), |
3824 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecCpuCount, Types.iSpecCpuCount Types.defMaxISpec), |
3825 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecDiskCount, Types.iSpecDiskCount Types.defMaxISpec), |
3826 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecDiskSize, Types.iSpecDiskSize Types.defMaxISpec), |
3827 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecNicCount, Types.iSpecNicCount Types.defMaxISpec), |
3828 | e1235448 | Jose A. Lopes | (ConstantUtils.ispecSpindleUse, Types.iSpecSpindleUse Types.defMaxISpec)])] |
3829 | e1235448 | Jose A. Lopes | |
3830 | e1235448 | Jose A. Lopes | ipolicyDefaults :: Map String PyValueEx |
3831 | e1235448 | Jose A. Lopes | ipolicyDefaults = |
3832 | e1235448 | Jose A. Lopes | Map.fromList |
3833 | e1235448 | Jose A. Lopes | [ (ispecsMinmax, PyValueEx [ispecsMinmaxDefaults]) |
3834 | e1235448 | Jose A. Lopes | , (ispecsStd, PyValueEx (Map.fromList |
3835 | e1235448 | Jose A. Lopes | [ (ispecMemSize, 128) |
3836 | e1235448 | Jose A. Lopes | , (ispecCpuCount, 1) |
3837 | e1235448 | Jose A. Lopes | , (ispecDiskCount, 1) |
3838 | e1235448 | Jose A. Lopes | , (ispecDiskSize, 1024) |
3839 | e1235448 | Jose A. Lopes | , (ispecNicCount, 1) |
3840 | e1235448 | Jose A. Lopes | , (ispecSpindleUse, 1) |
3841 | e1235448 | Jose A. Lopes | ] :: Map String Int)) |
3842 | e1235448 | Jose A. Lopes | , (ipolicyDts, PyValueEx (ConstantUtils.toList diskTemplates)) |
3843 | e1235448 | Jose A. Lopes | , (ipolicyVcpuRatio, PyValueEx (4.0 :: Double)) |
3844 | e1235448 | Jose A. Lopes | , (ipolicySpindleRatio, PyValueEx (32.0 :: Double)) |
3845 | e1235448 | Jose A. Lopes | ] |
3846 | e1235448 | Jose A. Lopes | |
3847 | e1235448 | Jose A. Lopes | masterPoolSizeDefault :: Int |
3848 | e1235448 | Jose A. Lopes | masterPoolSizeDefault = 10 |
3849 | e1235448 | Jose A. Lopes | |
3850 | e1235448 | Jose A. Lopes | -- * Exclusive storage |
3851 | e1235448 | Jose A. Lopes | |
3852 | e1235448 | Jose A. Lopes | -- | Error margin used to compare physical disks |
3853 | e1235448 | Jose A. Lopes | partMargin :: Double |
3854 | e1235448 | Jose A. Lopes | partMargin = 0.01 |
3855 | e1235448 | Jose A. Lopes | |
3856 | e1235448 | Jose A. Lopes | -- | Space reserved when creating instance disks |
3857 | e1235448 | Jose A. Lopes | partReserved :: Double |
3858 | e1235448 | Jose A. Lopes | partReserved = 0.02 |
3859 | e1235448 | Jose A. Lopes | |
3860 | 48e4da5c | Klaus Aehlig | -- * Luxid job scheduling |
3861 | 48e4da5c | Klaus Aehlig | |
3862 | 48e4da5c | Klaus Aehlig | -- | Time intervall in seconds for polling updates on the job queue. This |
3863 | 48e4da5c | Klaus Aehlig | -- intervall is only relevant if the number of running jobs reaches the maximal |
3864 | 48e4da5c | Klaus Aehlig | -- allowed number, as otherwise new jobs will be started immediately anyway. |
3865 | 48e4da5c | Klaus Aehlig | luxidJobqueuePollInterval :: Int |
3866 | 48e4da5c | Klaus Aehlig | luxidJobqueuePollInterval = 3 |
3867 | 48e4da5c | Klaus Aehlig | |
3868 | 48e4da5c | Klaus Aehlig | -- | Maximal number of jobs to be running at the same time. Once this number is |
3869 | 48e4da5c | Klaus Aehlig | -- reached, new jobs will just be queued and only started, once some of the |
3870 | 48e4da5c | Klaus Aehlig | -- other jobs have finished. |
3871 | 48e4da5c | Klaus Aehlig | luxidMaximalRunningJobs :: Int |
3872 | 48e4da5c | Klaus Aehlig | luxidMaximalRunningJobs = 20 |
3873 | 48e4da5c | Klaus Aehlig | |
3874 | e1235448 | Jose A. Lopes | -- * Confd |
3875 | e1235448 | Jose A. Lopes | |
3876 | e1235448 | Jose A. Lopes | confdProtocolVersion :: Int |
3877 | e1235448 | Jose A. Lopes | confdProtocolVersion = ConstantUtils.confdProtocolVersion |
3878 | e1235448 | Jose A. Lopes | |
3879 | e1235448 | Jose A. Lopes | -- Confd request type |
3880 | e1235448 | Jose A. Lopes | |
3881 | e1235448 | Jose A. Lopes | confdReqPing :: Int |
3882 | e1235448 | Jose A. Lopes | confdReqPing = Types.confdRequestTypeToRaw ReqPing |
3883 | e1235448 | Jose A. Lopes | |
3884 | e1235448 | Jose A. Lopes | confdReqNodeRoleByname :: Int |
3885 | e1235448 | Jose A. Lopes | confdReqNodeRoleByname = Types.confdRequestTypeToRaw ReqNodeRoleByName |
3886 | e1235448 | Jose A. Lopes | |
3887 | e1235448 | Jose A. Lopes | confdReqNodePipByInstanceIp :: Int |
3888 | e1235448 | Jose A. Lopes | confdReqNodePipByInstanceIp = Types.confdRequestTypeToRaw ReqNodePipByInstPip |
3889 | e1235448 | Jose A. Lopes | |
3890 | e1235448 | Jose A. Lopes | confdReqClusterMaster :: Int |
3891 | e1235448 | Jose A. Lopes | confdReqClusterMaster = Types.confdRequestTypeToRaw ReqClusterMaster |
3892 | e1235448 | Jose A. Lopes | |
3893 | e1235448 | Jose A. Lopes | confdReqNodePipList :: Int |
3894 | e1235448 | Jose A. Lopes | confdReqNodePipList = Types.confdRequestTypeToRaw ReqNodePipList |
3895 | e1235448 | Jose A. Lopes | |
3896 | e1235448 | Jose A. Lopes | confdReqMcPipList :: Int |
3897 | e1235448 | Jose A. Lopes | confdReqMcPipList = Types.confdRequestTypeToRaw ReqMcPipList |
3898 | e1235448 | Jose A. Lopes | |
3899 | e1235448 | Jose A. Lopes | confdReqInstancesIpsList :: Int |
3900 | e1235448 | Jose A. Lopes | confdReqInstancesIpsList = Types.confdRequestTypeToRaw ReqInstIpsList |
3901 | e1235448 | Jose A. Lopes | |
3902 | e1235448 | Jose A. Lopes | confdReqNodeDrbd :: Int |
3903 | e1235448 | Jose A. Lopes | confdReqNodeDrbd = Types.confdRequestTypeToRaw ReqNodeDrbd |
3904 | e1235448 | Jose A. Lopes | |
3905 | e1235448 | Jose A. Lopes | confdReqNodeInstances :: Int |
3906 | e1235448 | Jose A. Lopes | confdReqNodeInstances = Types.confdRequestTypeToRaw ReqNodeInstances |
3907 | e1235448 | Jose A. Lopes | |
3908 | e1235448 | Jose A. Lopes | confdReqs :: FrozenSet Int |
3909 | e1235448 | Jose A. Lopes | confdReqs = |
3910 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet . |
3911 | e1235448 | Jose A. Lopes | map Types.confdRequestTypeToRaw $ |
3912 | e1235448 | Jose A. Lopes | [minBound..] \\ [ReqNodeInstances] |
3913 | e1235448 | Jose A. Lopes | |
3914 | e1235448 | Jose A. Lopes | -- * Confd request type |
3915 | e1235448 | Jose A. Lopes | |
3916 | e1235448 | Jose A. Lopes | confdReqfieldName :: Int |
3917 | e1235448 | Jose A. Lopes | confdReqfieldName = Types.confdReqFieldToRaw ReqFieldName |
3918 | e1235448 | Jose A. Lopes | |
3919 | e1235448 | Jose A. Lopes | confdReqfieldIp :: Int |
3920 | e1235448 | Jose A. Lopes | confdReqfieldIp = Types.confdReqFieldToRaw ReqFieldIp |
3921 | e1235448 | Jose A. Lopes | |
3922 | e1235448 | Jose A. Lopes | confdReqfieldMnodePip :: Int |
3923 | e1235448 | Jose A. Lopes | confdReqfieldMnodePip = Types.confdReqFieldToRaw ReqFieldMNodePip |
3924 | e1235448 | Jose A. Lopes | |
3925 | e1235448 | Jose A. Lopes | -- * Confd repl status |
3926 | e1235448 | Jose A. Lopes | |
3927 | e1235448 | Jose A. Lopes | confdReplStatusOk :: Int |
3928 | e1235448 | Jose A. Lopes | confdReplStatusOk = Types.confdReplyStatusToRaw ReplyStatusOk |
3929 | e1235448 | Jose A. Lopes | |
3930 | e1235448 | Jose A. Lopes | confdReplStatusError :: Int |
3931 | e1235448 | Jose A. Lopes | confdReplStatusError = Types.confdReplyStatusToRaw ReplyStatusError |
3932 | e1235448 | Jose A. Lopes | |
3933 | e1235448 | Jose A. Lopes | confdReplStatusNotimplemented :: Int |
3934 | e1235448 | Jose A. Lopes | confdReplStatusNotimplemented = Types.confdReplyStatusToRaw ReplyStatusNotImpl |
3935 | e1235448 | Jose A. Lopes | |
3936 | e1235448 | Jose A. Lopes | confdReplStatuses :: FrozenSet Int |
3937 | e1235448 | Jose A. Lopes | confdReplStatuses = |
3938 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.confdReplyStatusToRaw [minBound..] |
3939 | e1235448 | Jose A. Lopes | |
3940 | e1235448 | Jose A. Lopes | -- * Confd node role |
3941 | e1235448 | Jose A. Lopes | |
3942 | e1235448 | Jose A. Lopes | confdNodeRoleMaster :: Int |
3943 | e1235448 | Jose A. Lopes | confdNodeRoleMaster = Types.confdNodeRoleToRaw NodeRoleMaster |
3944 | e1235448 | Jose A. Lopes | |
3945 | e1235448 | Jose A. Lopes | confdNodeRoleCandidate :: Int |
3946 | e1235448 | Jose A. Lopes | confdNodeRoleCandidate = Types.confdNodeRoleToRaw NodeRoleCandidate |
3947 | e1235448 | Jose A. Lopes | |
3948 | e1235448 | Jose A. Lopes | confdNodeRoleOffline :: Int |
3949 | e1235448 | Jose A. Lopes | confdNodeRoleOffline = Types.confdNodeRoleToRaw NodeRoleOffline |
3950 | e1235448 | Jose A. Lopes | |
3951 | e1235448 | Jose A. Lopes | confdNodeRoleDrained :: Int |
3952 | e1235448 | Jose A. Lopes | confdNodeRoleDrained = Types.confdNodeRoleToRaw NodeRoleDrained |
3953 | e1235448 | Jose A. Lopes | |
3954 | e1235448 | Jose A. Lopes | confdNodeRoleRegular :: Int |
3955 | e1235448 | Jose A. Lopes | confdNodeRoleRegular = Types.confdNodeRoleToRaw NodeRoleRegular |
3956 | e1235448 | Jose A. Lopes | |
3957 | e1235448 | Jose A. Lopes | -- * A few common errors for confd |
3958 | e1235448 | Jose A. Lopes | |
3959 | e1235448 | Jose A. Lopes | confdErrorUnknownEntry :: Int |
3960 | e1235448 | Jose A. Lopes | confdErrorUnknownEntry = Types.confdErrorTypeToRaw ConfdErrorUnknownEntry |
3961 | e1235448 | Jose A. Lopes | |
3962 | e1235448 | Jose A. Lopes | confdErrorInternal :: Int |
3963 | e1235448 | Jose A. Lopes | confdErrorInternal = Types.confdErrorTypeToRaw ConfdErrorInternal |
3964 | e1235448 | Jose A. Lopes | |
3965 | e1235448 | Jose A. Lopes | confdErrorArgument :: Int |
3966 | e1235448 | Jose A. Lopes | confdErrorArgument = Types.confdErrorTypeToRaw ConfdErrorArgument |
3967 | e1235448 | Jose A. Lopes | |
3968 | e1235448 | Jose A. Lopes | -- * Confd request query fields |
3969 | e1235448 | Jose A. Lopes | |
3970 | e1235448 | Jose A. Lopes | confdReqqLink :: String |
3971 | e1235448 | Jose A. Lopes | confdReqqLink = ConstantUtils.confdReqqLink |
3972 | e1235448 | Jose A. Lopes | |
3973 | e1235448 | Jose A. Lopes | confdReqqIp :: String |
3974 | e1235448 | Jose A. Lopes | confdReqqIp = ConstantUtils.confdReqqIp |
3975 | e1235448 | Jose A. Lopes | |
3976 | e1235448 | Jose A. Lopes | confdReqqIplist :: String |
3977 | e1235448 | Jose A. Lopes | confdReqqIplist = ConstantUtils.confdReqqIplist |
3978 | e1235448 | Jose A. Lopes | |
3979 | e1235448 | Jose A. Lopes | confdReqqFields :: String |
3980 | e1235448 | Jose A. Lopes | confdReqqFields = ConstantUtils.confdReqqFields |
3981 | e1235448 | Jose A. Lopes | |
3982 | e1235448 | Jose A. Lopes | -- | Each request is "salted" by the current timestamp. |
3983 | e1235448 | Jose A. Lopes | -- |
3984 | e1235448 | Jose A. Lopes | -- This constant decides how many seconds of skew to accept. |
3985 | e1235448 | Jose A. Lopes | -- |
3986 | e1235448 | Jose A. Lopes | -- TODO: make this a default and allow the value to be more |
3987 | e1235448 | Jose A. Lopes | -- configurable |
3988 | e1235448 | Jose A. Lopes | confdMaxClockSkew :: Int |
3989 | e1235448 | Jose A. Lopes | confdMaxClockSkew = 2 * nodeMaxClockSkew |
3990 | e1235448 | Jose A. Lopes | |
3991 | e1235448 | Jose A. Lopes | -- | When we haven't reloaded the config for more than this amount of |
3992 | e1235448 | Jose A. Lopes | -- seconds, we force a test to see if inotify is betraying us. Using a |
3993 | e1235448 | Jose A. Lopes | -- prime number to ensure we get less chance of 'same wakeup' with |
3994 | e1235448 | Jose A. Lopes | -- other processes. |
3995 | e1235448 | Jose A. Lopes | confdConfigReloadTimeout :: Int |
3996 | e1235448 | Jose A. Lopes | confdConfigReloadTimeout = 17 |
3997 | e1235448 | Jose A. Lopes | |
3998 | e1235448 | Jose A. Lopes | -- | If we receive more than one update in this amount of |
3999 | e1235448 | Jose A. Lopes | -- microseconds, we move to polling every RATELIMIT seconds, rather |
4000 | e1235448 | Jose A. Lopes | -- than relying on inotify, to be able to serve more requests. |
4001 | e1235448 | Jose A. Lopes | confdConfigReloadRatelimit :: Int |
4002 | e1235448 | Jose A. Lopes | confdConfigReloadRatelimit = 250000 |
4003 | e1235448 | Jose A. Lopes | |
4004 | e1235448 | Jose A. Lopes | -- | Magic number prepended to all confd queries. |
4005 | e1235448 | Jose A. Lopes | -- |
4006 | e1235448 | Jose A. Lopes | -- This allows us to distinguish different types of confd protocols |
4007 | e1235448 | Jose A. Lopes | -- and handle them. For example by changing this we can move the whole |
4008 | e1235448 | Jose A. Lopes | -- payload to be compressed, or move away from json. |
4009 | e1235448 | Jose A. Lopes | confdMagicFourcc :: String |
4010 | e1235448 | Jose A. Lopes | confdMagicFourcc = "plj0" |
4011 | e1235448 | Jose A. Lopes | |
4012 | e1235448 | Jose A. Lopes | -- | By default a confd request is sent to the minimum between this |
4013 | e1235448 | Jose A. Lopes | -- number and all MCs. 6 was chosen because even in the case of a |
4014 | e1235448 | Jose A. Lopes | -- disastrous 50% response rate, we should have enough answers to be |
4015 | e1235448 | Jose A. Lopes | -- able to compare more than one. |
4016 | e1235448 | Jose A. Lopes | confdDefaultReqCoverage :: Int |
4017 | e1235448 | Jose A. Lopes | confdDefaultReqCoverage = 6 |
4018 | e1235448 | Jose A. Lopes | |
4019 | e1235448 | Jose A. Lopes | -- | Timeout in seconds to expire pending query request in the confd |
4020 | e1235448 | Jose A. Lopes | -- client library. We don't actually expect any answer more than 10 |
4021 | e1235448 | Jose A. Lopes | -- seconds after we sent a request. |
4022 | e1235448 | Jose A. Lopes | confdClientExpireTimeout :: Int |
4023 | e1235448 | Jose A. Lopes | confdClientExpireTimeout = 10 |
4024 | e1235448 | Jose A. Lopes | |
4025 | e1235448 | Jose A. Lopes | -- | Maximum UDP datagram size. |
4026 | e1235448 | Jose A. Lopes | -- |
4027 | e1235448 | Jose A. Lopes | -- On IPv4: 64K - 20 (ip header size) - 8 (udp header size) = 65507 |
4028 | e1235448 | Jose A. Lopes | -- On IPv6: 64K - 40 (ip6 header size) - 8 (udp header size) = 65487 |
4029 | e1235448 | Jose A. Lopes | -- (assuming we can't use jumbo frames) |
4030 | e1235448 | Jose A. Lopes | -- We just set this to 60K, which should be enough |
4031 | e1235448 | Jose A. Lopes | maxUdpDataSize :: Int |
4032 | e1235448 | Jose A. Lopes | maxUdpDataSize = 61440 |
4033 | e1235448 | Jose A. Lopes | |
4034 | e1235448 | Jose A. Lopes | -- * User-id pool minimum/maximum acceptable user-ids |
4035 | e1235448 | Jose A. Lopes | |
4036 | e1235448 | Jose A. Lopes | uidpoolUidMin :: Int |
4037 | e1235448 | Jose A. Lopes | uidpoolUidMin = 0 |
4038 | e1235448 | Jose A. Lopes | |
4039 | e1235448 | Jose A. Lopes | -- | Assuming 32 bit user-ids |
4040 | e1235448 | Jose A. Lopes | uidpoolUidMax :: Integer |
4041 | e1235448 | Jose A. Lopes | uidpoolUidMax = 2 ^ 32 - 1 |
4042 | e1235448 | Jose A. Lopes | |
4043 | e1235448 | Jose A. Lopes | -- | Name or path of the pgrep command |
4044 | e1235448 | Jose A. Lopes | pgrep :: String |
4045 | e1235448 | Jose A. Lopes | pgrep = "pgrep" |
4046 | e1235448 | Jose A. Lopes | |
4047 | e1235448 | Jose A. Lopes | -- | Name of the node group that gets created at cluster init or |
4048 | e1235448 | Jose A. Lopes | -- upgrade |
4049 | e1235448 | Jose A. Lopes | initialNodeGroupName :: String |
4050 | e1235448 | Jose A. Lopes | initialNodeGroupName = "default" |
4051 | e1235448 | Jose A. Lopes | |
4052 | e1235448 | Jose A. Lopes | -- * Possible values for NodeGroup.alloc_policy |
4053 | e1235448 | Jose A. Lopes | |
4054 | e1235448 | Jose A. Lopes | allocPolicyLastResort :: String |
4055 | e1235448 | Jose A. Lopes | allocPolicyLastResort = Types.allocPolicyToRaw AllocLastResort |
4056 | e1235448 | Jose A. Lopes | |
4057 | e1235448 | Jose A. Lopes | allocPolicyPreferred :: String |
4058 | e1235448 | Jose A. Lopes | allocPolicyPreferred = Types.allocPolicyToRaw AllocPreferred |
4059 | e1235448 | Jose A. Lopes | |
4060 | e1235448 | Jose A. Lopes | allocPolicyUnallocable :: String |
4061 | e1235448 | Jose A. Lopes | allocPolicyUnallocable = Types.allocPolicyToRaw AllocUnallocable |
4062 | e1235448 | Jose A. Lopes | |
4063 | e1235448 | Jose A. Lopes | validAllocPolicies :: [String] |
4064 | e1235448 | Jose A. Lopes | validAllocPolicies = map Types.allocPolicyToRaw [minBound..] |
4065 | e1235448 | Jose A. Lopes | |
4066 | e1235448 | Jose A. Lopes | -- | Temporary external/shared storage parameters |
4067 | e1235448 | Jose A. Lopes | blockdevDriverManual :: String |
4068 | e1235448 | Jose A. Lopes | blockdevDriverManual = Types.blockDriverToRaw BlockDrvManual |
4069 | e1235448 | Jose A. Lopes | |
4070 | e1235448 | Jose A. Lopes | -- | 'qemu-img' path, required for 'ovfconverter' |
4071 | e1235448 | Jose A. Lopes | qemuimgPath :: String |
4072 | e1235448 | Jose A. Lopes | qemuimgPath = AutoConf.qemuimgPath |
4073 | e1235448 | Jose A. Lopes | |
4074 | e1235448 | Jose A. Lopes | -- | Whether htools was enabled at compilation time |
4075 | e1235448 | Jose A. Lopes | -- |
4076 | e1235448 | Jose A. Lopes | -- FIXME: this should be moved next to the other enable constants, |
4077 | e1235448 | Jose A. Lopes | -- such as, 'enableConfd', and renamed to 'enableHtools'. |
4078 | e1235448 | Jose A. Lopes | htools :: Bool |
4079 | e1235448 | Jose A. Lopes | htools = AutoConf.htools |
4080 | e1235448 | Jose A. Lopes | |
4081 | e1235448 | Jose A. Lopes | -- | The hail iallocator |
4082 | e1235448 | Jose A. Lopes | iallocHail :: String |
4083 | e1235448 | Jose A. Lopes | iallocHail = "hail" |
4084 | e1235448 | Jose A. Lopes | |
4085 | e1235448 | Jose A. Lopes | -- * Fake opcodes for functions that have hooks attached to them via |
4086 | e1235448 | Jose A. Lopes | -- backend.RunLocalHooks |
4087 | e1235448 | Jose A. Lopes | |
4088 | e1235448 | Jose A. Lopes | fakeOpMasterTurndown :: String |
4089 | e1235448 | Jose A. Lopes | fakeOpMasterTurndown = "OP_CLUSTER_IP_TURNDOWN" |
4090 | e1235448 | Jose A. Lopes | |
4091 | e1235448 | Jose A. Lopes | fakeOpMasterTurnup :: String |
4092 | e1235448 | Jose A. Lopes | fakeOpMasterTurnup = "OP_CLUSTER_IP_TURNUP" |
4093 | e1235448 | Jose A. Lopes | |
4094 | e1235448 | Jose A. Lopes | -- * SSH key types |
4095 | e1235448 | Jose A. Lopes | |
4096 | e1235448 | Jose A. Lopes | sshkDsa :: String |
4097 | e1235448 | Jose A. Lopes | sshkDsa = "dsa" |
4098 | e1235448 | Jose A. Lopes | |
4099 | e1235448 | Jose A. Lopes | sshkRsa :: String |
4100 | e1235448 | Jose A. Lopes | sshkRsa = "rsa" |
4101 | e1235448 | Jose A. Lopes | |
4102 | e1235448 | Jose A. Lopes | sshkAll :: FrozenSet String |
4103 | e1235448 | Jose A. Lopes | sshkAll = ConstantUtils.mkSet [sshkRsa, sshkDsa] |
4104 | e1235448 | Jose A. Lopes | |
4105 | e1235448 | Jose A. Lopes | -- * SSH authorized key types |
4106 | e1235448 | Jose A. Lopes | |
4107 | e1235448 | Jose A. Lopes | sshakDss :: String |
4108 | e1235448 | Jose A. Lopes | sshakDss = "ssh-dss" |
4109 | e1235448 | Jose A. Lopes | |
4110 | e1235448 | Jose A. Lopes | sshakRsa :: String |
4111 | e1235448 | Jose A. Lopes | sshakRsa = "ssh-rsa" |
4112 | e1235448 | Jose A. Lopes | |
4113 | e1235448 | Jose A. Lopes | sshakAll :: FrozenSet String |
4114 | e1235448 | Jose A. Lopes | sshakAll = ConstantUtils.mkSet [sshakDss, sshakRsa] |
4115 | e1235448 | Jose A. Lopes | |
4116 | e1235448 | Jose A. Lopes | -- * SSH setup |
4117 | e1235448 | Jose A. Lopes | |
4118 | e1235448 | Jose A. Lopes | sshsClusterName :: String |
4119 | e1235448 | Jose A. Lopes | sshsClusterName = "cluster_name" |
4120 | e1235448 | Jose A. Lopes | |
4121 | e1235448 | Jose A. Lopes | sshsSshHostKey :: String |
4122 | e1235448 | Jose A. Lopes | sshsSshHostKey = "ssh_host_key" |
4123 | e1235448 | Jose A. Lopes | |
4124 | e1235448 | Jose A. Lopes | sshsSshRootKey :: String |
4125 | e1235448 | Jose A. Lopes | sshsSshRootKey = "ssh_root_key" |
4126 | e1235448 | Jose A. Lopes | |
4127 | e1235448 | Jose A. Lopes | sshsNodeDaemonCertificate :: String |
4128 | e1235448 | Jose A. Lopes | sshsNodeDaemonCertificate = "node_daemon_certificate" |
4129 | e1235448 | Jose A. Lopes | |
4130 | e1235448 | Jose A. Lopes | -- * Key files for SSH daemon |
4131 | e1235448 | Jose A. Lopes | |
4132 | e1235448 | Jose A. Lopes | sshHostDsaPriv :: String |
4133 | e1235448 | Jose A. Lopes | sshHostDsaPriv = sshConfigDir ++ "/ssh_host_dsa_key" |
4134 | e1235448 | Jose A. Lopes | |
4135 | e1235448 | Jose A. Lopes | sshHostDsaPub :: String |
4136 | e1235448 | Jose A. Lopes | sshHostDsaPub = sshHostDsaPriv ++ ".pub" |
4137 | e1235448 | Jose A. Lopes | |
4138 | e1235448 | Jose A. Lopes | sshHostRsaPriv :: String |
4139 | e1235448 | Jose A. Lopes | sshHostRsaPriv = sshConfigDir ++ "/ssh_host_rsa_key" |
4140 | e1235448 | Jose A. Lopes | |
4141 | e1235448 | Jose A. Lopes | sshHostRsaPub :: String |
4142 | e1235448 | Jose A. Lopes | sshHostRsaPub = sshHostRsaPriv ++ ".pub" |
4143 | e1235448 | Jose A. Lopes | |
4144 | e1235448 | Jose A. Lopes | sshDaemonKeyfiles :: Map String (String, String) |
4145 | e1235448 | Jose A. Lopes | sshDaemonKeyfiles = |
4146 | e1235448 | Jose A. Lopes | Map.fromList [ (sshkRsa, (sshHostRsaPriv, sshHostRsaPub)) |
4147 | e1235448 | Jose A. Lopes | , (sshkDsa, (sshHostDsaPriv, sshHostDsaPub)) |
4148 | e1235448 | Jose A. Lopes | ] |
4149 | e1235448 | Jose A. Lopes | |
4150 | e1235448 | Jose A. Lopes | -- * Node daemon setup |
4151 | e1235448 | Jose A. Lopes | |
4152 | e1235448 | Jose A. Lopes | ndsClusterName :: String |
4153 | e1235448 | Jose A. Lopes | ndsClusterName = "cluster_name" |
4154 | e1235448 | Jose A. Lopes | |
4155 | e1235448 | Jose A. Lopes | ndsNodeDaemonCertificate :: String |
4156 | e1235448 | Jose A. Lopes | ndsNodeDaemonCertificate = "node_daemon_certificate" |
4157 | e1235448 | Jose A. Lopes | |
4158 | e1235448 | Jose A. Lopes | ndsSsconf :: String |
4159 | e1235448 | Jose A. Lopes | ndsSsconf = "ssconf" |
4160 | e1235448 | Jose A. Lopes | |
4161 | e1235448 | Jose A. Lopes | ndsStartNodeDaemon :: String |
4162 | e1235448 | Jose A. Lopes | ndsStartNodeDaemon = "start_node_daemon" |
4163 | e1235448 | Jose A. Lopes | |
4164 | e1235448 | Jose A. Lopes | -- * The source reasons for the execution of an OpCode |
4165 | e1235448 | Jose A. Lopes | |
4166 | e1235448 | Jose A. Lopes | opcodeReasonSrcClient :: String |
4167 | e1235448 | Jose A. Lopes | opcodeReasonSrcClient = "gnt:client" |
4168 | e1235448 | Jose A. Lopes | |
4169 | e1235448 | Jose A. Lopes | opcodeReasonSrcNoded :: String |
4170 | e1235448 | Jose A. Lopes | opcodeReasonSrcNoded = "gnt:daemon:noded" |
4171 | e1235448 | Jose A. Lopes | |
4172 | e1235448 | Jose A. Lopes | opcodeReasonSrcOpcode :: String |
4173 | e1235448 | Jose A. Lopes | opcodeReasonSrcOpcode = "gnt:opcode" |
4174 | e1235448 | Jose A. Lopes | |
4175 | e1235448 | Jose A. Lopes | opcodeReasonSrcRlib2 :: String |
4176 | e1235448 | Jose A. Lopes | opcodeReasonSrcRlib2 = "gnt:library:rlib2" |
4177 | e1235448 | Jose A. Lopes | |
4178 | e1235448 | Jose A. Lopes | opcodeReasonSrcUser :: String |
4179 | e1235448 | Jose A. Lopes | opcodeReasonSrcUser = "gnt:user" |
4180 | e1235448 | Jose A. Lopes | |
4181 | e1235448 | Jose A. Lopes | opcodeReasonSources :: FrozenSet String |
4182 | e1235448 | Jose A. Lopes | opcodeReasonSources = |
4183 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [opcodeReasonSrcClient, |
4184 | e1235448 | Jose A. Lopes | opcodeReasonSrcNoded, |
4185 | e1235448 | Jose A. Lopes | opcodeReasonSrcOpcode, |
4186 | e1235448 | Jose A. Lopes | opcodeReasonSrcRlib2, |
4187 | e1235448 | Jose A. Lopes | opcodeReasonSrcUser] |
4188 | e1235448 | Jose A. Lopes | |
4189 | e1235448 | Jose A. Lopes | -- | Path generating random UUID |
4190 | e1235448 | Jose A. Lopes | randomUuidFile :: String |
4191 | e1235448 | Jose A. Lopes | randomUuidFile = ConstantUtils.randomUuidFile |
4192 | e1235448 | Jose A. Lopes | |
4193 | e1235448 | Jose A. Lopes | -- * Auto-repair tag prefixes |
4194 | e1235448 | Jose A. Lopes | |
4195 | e1235448 | Jose A. Lopes | autoRepairTagPrefix :: String |
4196 | e1235448 | Jose A. Lopes | autoRepairTagPrefix = "ganeti:watcher:autorepair:" |
4197 | e1235448 | Jose A. Lopes | |
4198 | e1235448 | Jose A. Lopes | autoRepairTagEnabled :: String |
4199 | e1235448 | Jose A. Lopes | autoRepairTagEnabled = autoRepairTagPrefix |
4200 | e1235448 | Jose A. Lopes | |
4201 | e1235448 | Jose A. Lopes | autoRepairTagPending :: String |
4202 | e1235448 | Jose A. Lopes | autoRepairTagPending = autoRepairTagPrefix ++ "pending:" |
4203 | e1235448 | Jose A. Lopes | |
4204 | e1235448 | Jose A. Lopes | autoRepairTagResult :: String |
4205 | e1235448 | Jose A. Lopes | autoRepairTagResult = autoRepairTagPrefix ++ "result:" |
4206 | e1235448 | Jose A. Lopes | |
4207 | e1235448 | Jose A. Lopes | autoRepairTagSuspended :: String |
4208 | e1235448 | Jose A. Lopes | autoRepairTagSuspended = autoRepairTagPrefix ++ "suspend:" |
4209 | e1235448 | Jose A. Lopes | |
4210 | e1235448 | Jose A. Lopes | -- * Auto-repair levels |
4211 | e1235448 | Jose A. Lopes | |
4212 | e1235448 | Jose A. Lopes | autoRepairFailover :: String |
4213 | e1235448 | Jose A. Lopes | autoRepairFailover = Types.autoRepairTypeToRaw ArFailover |
4214 | e1235448 | Jose A. Lopes | |
4215 | e1235448 | Jose A. Lopes | autoRepairFixStorage :: String |
4216 | e1235448 | Jose A. Lopes | autoRepairFixStorage = Types.autoRepairTypeToRaw ArFixStorage |
4217 | e1235448 | Jose A. Lopes | |
4218 | e1235448 | Jose A. Lopes | autoRepairMigrate :: String |
4219 | e1235448 | Jose A. Lopes | autoRepairMigrate = Types.autoRepairTypeToRaw ArMigrate |
4220 | e1235448 | Jose A. Lopes | |
4221 | e1235448 | Jose A. Lopes | autoRepairReinstall :: String |
4222 | e1235448 | Jose A. Lopes | autoRepairReinstall = Types.autoRepairTypeToRaw ArReinstall |
4223 | e1235448 | Jose A. Lopes | |
4224 | e1235448 | Jose A. Lopes | autoRepairAllTypes :: FrozenSet String |
4225 | e1235448 | Jose A. Lopes | autoRepairAllTypes = |
4226 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [autoRepairFailover, |
4227 | e1235448 | Jose A. Lopes | autoRepairFixStorage, |
4228 | e1235448 | Jose A. Lopes | autoRepairMigrate, |
4229 | e1235448 | Jose A. Lopes | autoRepairReinstall] |
4230 | e1235448 | Jose A. Lopes | |
4231 | e1235448 | Jose A. Lopes | -- * Auto-repair results |
4232 | e1235448 | Jose A. Lopes | |
4233 | e1235448 | Jose A. Lopes | autoRepairEnoperm :: String |
4234 | e1235448 | Jose A. Lopes | autoRepairEnoperm = Types.autoRepairResultToRaw ArEnoperm |
4235 | e1235448 | Jose A. Lopes | |
4236 | e1235448 | Jose A. Lopes | autoRepairFailure :: String |
4237 | e1235448 | Jose A. Lopes | autoRepairFailure = Types.autoRepairResultToRaw ArFailure |
4238 | e1235448 | Jose A. Lopes | |
4239 | e1235448 | Jose A. Lopes | autoRepairSuccess :: String |
4240 | e1235448 | Jose A. Lopes | autoRepairSuccess = Types.autoRepairResultToRaw ArSuccess |
4241 | e1235448 | Jose A. Lopes | |
4242 | e1235448 | Jose A. Lopes | autoRepairAllResults :: FrozenSet String |
4243 | e1235448 | Jose A. Lopes | autoRepairAllResults = |
4244 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [autoRepairEnoperm, autoRepairFailure, autoRepairSuccess] |
4245 | e1235448 | Jose A. Lopes | |
4246 | e1235448 | Jose A. Lopes | -- | The version identifier for builtin data collectors |
4247 | e1235448 | Jose A. Lopes | builtinDataCollectorVersion :: String |
4248 | e1235448 | Jose A. Lopes | builtinDataCollectorVersion = "B" |
4249 | e1235448 | Jose A. Lopes | |
4250 | e1235448 | Jose A. Lopes | -- | The reason trail opcode parameter name |
4251 | e1235448 | Jose A. Lopes | opcodeReason :: String |
4252 | e1235448 | Jose A. Lopes | opcodeReason = "reason" |
4253 | e1235448 | Jose A. Lopes | |
4254 | e1235448 | Jose A. Lopes | diskstatsFile :: String |
4255 | e1235448 | Jose A. Lopes | diskstatsFile = "/proc/diskstats" |
4256 | e1235448 | Jose A. Lopes | |
4257 | e1235448 | Jose A. Lopes | -- * CPU load collector |
4258 | e1235448 | Jose A. Lopes | |
4259 | e1235448 | Jose A. Lopes | statFile :: String |
4260 | e1235448 | Jose A. Lopes | statFile = "/proc/stat" |
4261 | e1235448 | Jose A. Lopes | |
4262 | e1235448 | Jose A. Lopes | cpuavgloadBufferSize :: Int |
4263 | e1235448 | Jose A. Lopes | cpuavgloadBufferSize = 150 |
4264 | e1235448 | Jose A. Lopes | |
4265 | e1235448 | Jose A. Lopes | cpuavgloadWindowSize :: Int |
4266 | e1235448 | Jose A. Lopes | cpuavgloadWindowSize = 600 |
4267 | e1235448 | Jose A. Lopes | |
4268 | e1235448 | Jose A. Lopes | -- * Monitoring daemon |
4269 | e1235448 | Jose A. Lopes | |
4270 | e1235448 | Jose A. Lopes | -- | Mond's variable for periodical data collection |
4271 | e1235448 | Jose A. Lopes | mondTimeInterval :: Int |
4272 | e1235448 | Jose A. Lopes | mondTimeInterval = 5 |
4273 | e1235448 | Jose A. Lopes | |
4274 | e1235448 | Jose A. Lopes | -- | Mond's latest API version |
4275 | e1235448 | Jose A. Lopes | mondLatestApiVersion :: Int |
4276 | e1235448 | Jose A. Lopes | mondLatestApiVersion = 1 |
4277 | e1235448 | Jose A. Lopes | |
4278 | e1235448 | Jose A. Lopes | -- * Disk access modes |
4279 | e1235448 | Jose A. Lopes | |
4280 | e1235448 | Jose A. Lopes | diskUserspace :: String |
4281 | e1235448 | Jose A. Lopes | diskUserspace = Types.diskAccessModeToRaw DiskUserspace |
4282 | e1235448 | Jose A. Lopes | |
4283 | e1235448 | Jose A. Lopes | diskKernelspace :: String |
4284 | e1235448 | Jose A. Lopes | diskKernelspace = Types.diskAccessModeToRaw DiskKernelspace |
4285 | e1235448 | Jose A. Lopes | |
4286 | e1235448 | Jose A. Lopes | diskValidAccessModes :: FrozenSet String |
4287 | e1235448 | Jose A. Lopes | diskValidAccessModes = |
4288 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.diskAccessModeToRaw [minBound..] |
4289 | e1235448 | Jose A. Lopes | |
4290 | e1235448 | Jose A. Lopes | -- | Timeout for queue draining in upgrades |
4291 | e1235448 | Jose A. Lopes | upgradeQueueDrainTimeout :: Int |
4292 | e1235448 | Jose A. Lopes | upgradeQueueDrainTimeout = 36 * 60 * 60 -- 1.5 days |
4293 | e1235448 | Jose A. Lopes | |
4294 | e1235448 | Jose A. Lopes | -- | Intervall at which the queue is polled during upgrades |
4295 | e1235448 | Jose A. Lopes | upgradeQueuePollInterval :: Int |
4296 | e1235448 | Jose A. Lopes | upgradeQueuePollInterval = 10 |
4297 | e1235448 | Jose A. Lopes | |
4298 | e1235448 | Jose A. Lopes | -- * Hotplug Actions |
4299 | e1235448 | Jose A. Lopes | |
4300 | e1235448 | Jose A. Lopes | hotplugActionAdd :: String |
4301 | e1235448 | Jose A. Lopes | hotplugActionAdd = Types.hotplugActionToRaw HAAdd |
4302 | e1235448 | Jose A. Lopes | |
4303 | e1235448 | Jose A. Lopes | hotplugActionRemove :: String |
4304 | e1235448 | Jose A. Lopes | hotplugActionRemove = Types.hotplugActionToRaw HARemove |
4305 | e1235448 | Jose A. Lopes | |
4306 | e1235448 | Jose A. Lopes | hotplugActionModify :: String |
4307 | e1235448 | Jose A. Lopes | hotplugActionModify = Types.hotplugActionToRaw HAMod |
4308 | e1235448 | Jose A. Lopes | |
4309 | e1235448 | Jose A. Lopes | hotplugAllActions :: FrozenSet String |
4310 | e1235448 | Jose A. Lopes | hotplugAllActions = |
4311 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.hotplugActionToRaw [minBound..] |
4312 | e1235448 | Jose A. Lopes | |
4313 | e1235448 | Jose A. Lopes | -- * Hotplug Device Targets |
4314 | e1235448 | Jose A. Lopes | |
4315 | e1235448 | Jose A. Lopes | hotplugTargetNic :: String |
4316 | e1235448 | Jose A. Lopes | hotplugTargetNic = Types.hotplugTargetToRaw HTNic |
4317 | e1235448 | Jose A. Lopes | |
4318 | e1235448 | Jose A. Lopes | hotplugTargetDisk :: String |
4319 | e1235448 | Jose A. Lopes | hotplugTargetDisk = Types.hotplugTargetToRaw HTDisk |
4320 | e1235448 | Jose A. Lopes | |
4321 | e1235448 | Jose A. Lopes | hotplugAllTargets :: FrozenSet String |
4322 | e1235448 | Jose A. Lopes | hotplugAllTargets = |
4323 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet $ map Types.hotplugTargetToRaw [minBound..] |
4324 | e1235448 | Jose A. Lopes | |
4325 | e1235448 | Jose A. Lopes | -- | Timeout for disk removal (seconds) |
4326 | e1235448 | Jose A. Lopes | diskRemoveRetryTimeout :: Int |
4327 | e1235448 | Jose A. Lopes | diskRemoveRetryTimeout = 30 |
4328 | e1235448 | Jose A. Lopes | |
4329 | e1235448 | Jose A. Lopes | -- | Interval between disk removal retries (seconds) |
4330 | e1235448 | Jose A. Lopes | diskRemoveRetryInterval :: Int |
4331 | e1235448 | Jose A. Lopes | diskRemoveRetryInterval = 3 |
4332 | e1235448 | Jose A. Lopes | |
4333 | e1235448 | Jose A. Lopes | -- * UUID regex |
4334 | e1235448 | Jose A. Lopes | |
4335 | e1235448 | Jose A. Lopes | uuidRegex :: String |
4336 | e1235448 | Jose A. Lopes | uuidRegex = "^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$" |
4337 | e1235448 | Jose A. Lopes | |
4338 | e1235448 | Jose A. Lopes | -- * Luxi constants |
4339 | e1235448 | Jose A. Lopes | |
4340 | e1235448 | Jose A. Lopes | luxiKeyMethod :: String |
4341 | e1235448 | Jose A. Lopes | luxiKeyMethod = "method" |
4342 | e1235448 | Jose A. Lopes | |
4343 | e1235448 | Jose A. Lopes | luxiKeyArgs :: String |
4344 | e1235448 | Jose A. Lopes | luxiKeyArgs = "args" |
4345 | e1235448 | Jose A. Lopes | |
4346 | e1235448 | Jose A. Lopes | luxiKeySuccess :: String |
4347 | e1235448 | Jose A. Lopes | luxiKeySuccess = "success" |
4348 | e1235448 | Jose A. Lopes | |
4349 | e1235448 | Jose A. Lopes | luxiKeyResult :: String |
4350 | e1235448 | Jose A. Lopes | luxiKeyResult = "result" |
4351 | e1235448 | Jose A. Lopes | |
4352 | e1235448 | Jose A. Lopes | luxiKeyVersion :: String |
4353 | e1235448 | Jose A. Lopes | luxiKeyVersion = "version" |
4354 | e1235448 | Jose A. Lopes | |
4355 | e1235448 | Jose A. Lopes | luxiReqSubmitJob :: String |
4356 | e1235448 | Jose A. Lopes | luxiReqSubmitJob = "SubmitJob" |
4357 | e1235448 | Jose A. Lopes | |
4358 | e1235448 | Jose A. Lopes | luxiReqSubmitJobToDrainedQueue :: String |
4359 | e1235448 | Jose A. Lopes | luxiReqSubmitJobToDrainedQueue = "SubmitJobToDrainedQueue" |
4360 | e1235448 | Jose A. Lopes | |
4361 | e1235448 | Jose A. Lopes | luxiReqSubmitManyJobs :: String |
4362 | e1235448 | Jose A. Lopes | luxiReqSubmitManyJobs = "SubmitManyJobs" |
4363 | e1235448 | Jose A. Lopes | |
4364 | e1235448 | Jose A. Lopes | luxiReqWaitForJobChange :: String |
4365 | e1235448 | Jose A. Lopes | luxiReqWaitForJobChange = "WaitForJobChange" |
4366 | e1235448 | Jose A. Lopes | |
4367 | a4417db4 | Thomas Thrainer | luxiReqPickupJob :: String |
4368 | a4417db4 | Thomas Thrainer | luxiReqPickupJob = "PickupJob" |
4369 | a4417db4 | Thomas Thrainer | |
4370 | e1235448 | Jose A. Lopes | luxiReqCancelJob :: String |
4371 | e1235448 | Jose A. Lopes | luxiReqCancelJob = "CancelJob" |
4372 | e1235448 | Jose A. Lopes | |
4373 | e1235448 | Jose A. Lopes | luxiReqArchiveJob :: String |
4374 | e1235448 | Jose A. Lopes | luxiReqArchiveJob = "ArchiveJob" |
4375 | e1235448 | Jose A. Lopes | |
4376 | e1235448 | Jose A. Lopes | luxiReqChangeJobPriority :: String |
4377 | e1235448 | Jose A. Lopes | luxiReqChangeJobPriority = "ChangeJobPriority" |
4378 | e1235448 | Jose A. Lopes | |
4379 | e1235448 | Jose A. Lopes | luxiReqAutoArchiveJobs :: String |
4380 | e1235448 | Jose A. Lopes | luxiReqAutoArchiveJobs = "AutoArchiveJobs" |
4381 | e1235448 | Jose A. Lopes | |
4382 | e1235448 | Jose A. Lopes | luxiReqQuery :: String |
4383 | e1235448 | Jose A. Lopes | luxiReqQuery = "Query" |
4384 | e1235448 | Jose A. Lopes | |
4385 | e1235448 | Jose A. Lopes | luxiReqQueryFields :: String |
4386 | e1235448 | Jose A. Lopes | luxiReqQueryFields = "QueryFields" |
4387 | e1235448 | Jose A. Lopes | |
4388 | e1235448 | Jose A. Lopes | luxiReqQueryJobs :: String |
4389 | e1235448 | Jose A. Lopes | luxiReqQueryJobs = "QueryJobs" |
4390 | e1235448 | Jose A. Lopes | |
4391 | e1235448 | Jose A. Lopes | luxiReqQueryInstances :: String |
4392 | e1235448 | Jose A. Lopes | luxiReqQueryInstances = "QueryInstances" |
4393 | e1235448 | Jose A. Lopes | |
4394 | e1235448 | Jose A. Lopes | luxiReqQueryNodes :: String |
4395 | e1235448 | Jose A. Lopes | luxiReqQueryNodes = "QueryNodes" |
4396 | e1235448 | Jose A. Lopes | |
4397 | e1235448 | Jose A. Lopes | luxiReqQueryGroups :: String |
4398 | e1235448 | Jose A. Lopes | luxiReqQueryGroups = "QueryGroups" |
4399 | e1235448 | Jose A. Lopes | |
4400 | e1235448 | Jose A. Lopes | luxiReqQueryNetworks :: String |
4401 | e1235448 | Jose A. Lopes | luxiReqQueryNetworks = "QueryNetworks" |
4402 | e1235448 | Jose A. Lopes | |
4403 | e1235448 | Jose A. Lopes | luxiReqQueryExports :: String |
4404 | e1235448 | Jose A. Lopes | luxiReqQueryExports = "QueryExports" |
4405 | e1235448 | Jose A. Lopes | |
4406 | e1235448 | Jose A. Lopes | luxiReqQueryConfigValues :: String |
4407 | e1235448 | Jose A. Lopes | luxiReqQueryConfigValues = "QueryConfigValues" |
4408 | e1235448 | Jose A. Lopes | |
4409 | e1235448 | Jose A. Lopes | luxiReqQueryClusterInfo :: String |
4410 | e1235448 | Jose A. Lopes | luxiReqQueryClusterInfo = "QueryClusterInfo" |
4411 | e1235448 | Jose A. Lopes | |
4412 | e1235448 | Jose A. Lopes | luxiReqQueryTags :: String |
4413 | e1235448 | Jose A. Lopes | luxiReqQueryTags = "QueryTags" |
4414 | e1235448 | Jose A. Lopes | |
4415 | e1235448 | Jose A. Lopes | luxiReqSetDrainFlag :: String |
4416 | e1235448 | Jose A. Lopes | luxiReqSetDrainFlag = "SetDrainFlag" |
4417 | e1235448 | Jose A. Lopes | |
4418 | e1235448 | Jose A. Lopes | luxiReqSetWatcherPause :: String |
4419 | e1235448 | Jose A. Lopes | luxiReqSetWatcherPause = "SetWatcherPause" |
4420 | e1235448 | Jose A. Lopes | |
4421 | e1235448 | Jose A. Lopes | luxiReqAll :: FrozenSet String |
4422 | e1235448 | Jose A. Lopes | luxiReqAll = |
4423 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet |
4424 | e1235448 | Jose A. Lopes | [ luxiReqArchiveJob |
4425 | e1235448 | Jose A. Lopes | , luxiReqAutoArchiveJobs |
4426 | e1235448 | Jose A. Lopes | , luxiReqCancelJob |
4427 | e1235448 | Jose A. Lopes | , luxiReqChangeJobPriority |
4428 | e1235448 | Jose A. Lopes | , luxiReqQuery |
4429 | e1235448 | Jose A. Lopes | , luxiReqQueryClusterInfo |
4430 | e1235448 | Jose A. Lopes | , luxiReqQueryConfigValues |
4431 | e1235448 | Jose A. Lopes | , luxiReqQueryExports |
4432 | e1235448 | Jose A. Lopes | , luxiReqQueryFields |
4433 | e1235448 | Jose A. Lopes | , luxiReqQueryGroups |
4434 | e1235448 | Jose A. Lopes | , luxiReqQueryInstances |
4435 | e1235448 | Jose A. Lopes | , luxiReqQueryJobs |
4436 | e1235448 | Jose A. Lopes | , luxiReqQueryNodes |
4437 | e1235448 | Jose A. Lopes | , luxiReqQueryNetworks |
4438 | e1235448 | Jose A. Lopes | , luxiReqQueryTags |
4439 | e1235448 | Jose A. Lopes | , luxiReqSetDrainFlag |
4440 | e1235448 | Jose A. Lopes | , luxiReqSetWatcherPause |
4441 | e1235448 | Jose A. Lopes | , luxiReqSubmitJob |
4442 | e1235448 | Jose A. Lopes | , luxiReqSubmitJobToDrainedQueue |
4443 | e1235448 | Jose A. Lopes | , luxiReqSubmitManyJobs |
4444 | e1235448 | Jose A. Lopes | , luxiReqWaitForJobChange |
4445 | a4417db4 | Thomas Thrainer | , luxiReqPickupJob |
4446 | e1235448 | Jose A. Lopes | ] |
4447 | e1235448 | Jose A. Lopes | |
4448 | e1235448 | Jose A. Lopes | luxiDefCtmo :: Int |
4449 | e1235448 | Jose A. Lopes | luxiDefCtmo = 10 |
4450 | e1235448 | Jose A. Lopes | |
4451 | e1235448 | Jose A. Lopes | luxiDefRwto :: Int |
4452 | e1235448 | Jose A. Lopes | luxiDefRwto = 60 |
4453 | e1235448 | Jose A. Lopes | |
4454 | e1235448 | Jose A. Lopes | -- | 'WaitForJobChange' timeout |
4455 | e1235448 | Jose A. Lopes | luxiWfjcTimeout :: Int |
4456 | e1235448 | Jose A. Lopes | luxiWfjcTimeout = (luxiDefRwto - 1) `div` 2 |
4457 | e1235448 | Jose A. Lopes | |
4458 | e1235448 | Jose A. Lopes | -- * Query language constants |
4459 | e1235448 | Jose A. Lopes | |
4460 | e1235448 | Jose A. Lopes | -- ** Logic operators with one or more operands, each of which is a |
4461 | e1235448 | Jose A. Lopes | -- filter on its own |
4462 | e1235448 | Jose A. Lopes | |
4463 | e1235448 | Jose A. Lopes | qlangOpAnd :: String |
4464 | e1235448 | Jose A. Lopes | qlangOpAnd = "&" |
4465 | e1235448 | Jose A. Lopes | |
4466 | e1235448 | Jose A. Lopes | qlangOpOr :: String |
4467 | e1235448 | Jose A. Lopes | qlangOpOr = "|" |
4468 | e1235448 | Jose A. Lopes | |
4469 | e1235448 | Jose A. Lopes | -- ** Unary operators with exactly one operand |
4470 | e1235448 | Jose A. Lopes | |
4471 | e1235448 | Jose A. Lopes | qlangOpNot :: String |
4472 | e1235448 | Jose A. Lopes | qlangOpNot = "!" |
4473 | e1235448 | Jose A. Lopes | |
4474 | e1235448 | Jose A. Lopes | qlangOpTrue :: String |
4475 | e1235448 | Jose A. Lopes | qlangOpTrue = "?" |
4476 | e1235448 | Jose A. Lopes | |
4477 | e1235448 | Jose A. Lopes | -- ** Binary operators with exactly two operands, the field name and |
4478 | e1235448 | Jose A. Lopes | -- an operator-specific value |
4479 | e1235448 | Jose A. Lopes | |
4480 | e1235448 | Jose A. Lopes | qlangOpContains :: String |
4481 | e1235448 | Jose A. Lopes | qlangOpContains = "=[]" |
4482 | e1235448 | Jose A. Lopes | |
4483 | e1235448 | Jose A. Lopes | qlangOpEqual :: String |
4484 | e1235448 | Jose A. Lopes | qlangOpEqual = "=" |
4485 | e1235448 | Jose A. Lopes | |
4486 | e1235448 | Jose A. Lopes | qlangOpGe :: String |
4487 | e1235448 | Jose A. Lopes | qlangOpGe = ">=" |
4488 | e1235448 | Jose A. Lopes | |
4489 | e1235448 | Jose A. Lopes | qlangOpGt :: String |
4490 | e1235448 | Jose A. Lopes | qlangOpGt = ">" |
4491 | e1235448 | Jose A. Lopes | |
4492 | e1235448 | Jose A. Lopes | qlangOpLe :: String |
4493 | e1235448 | Jose A. Lopes | qlangOpLe = "<=" |
4494 | e1235448 | Jose A. Lopes | |
4495 | e1235448 | Jose A. Lopes | qlangOpLt :: String |
4496 | e1235448 | Jose A. Lopes | qlangOpLt = "<" |
4497 | e1235448 | Jose A. Lopes | |
4498 | e1235448 | Jose A. Lopes | qlangOpNotEqual :: String |
4499 | e1235448 | Jose A. Lopes | qlangOpNotEqual = "!=" |
4500 | e1235448 | Jose A. Lopes | |
4501 | e1235448 | Jose A. Lopes | qlangOpRegexp :: String |
4502 | e1235448 | Jose A. Lopes | qlangOpRegexp = "=~" |
4503 | e1235448 | Jose A. Lopes | |
4504 | e1235448 | Jose A. Lopes | -- | Characters used for detecting user-written filters (see |
4505 | e1235448 | Jose A. Lopes | -- L{_CheckFilter}) |
4506 | e1235448 | Jose A. Lopes | |
4507 | e1235448 | Jose A. Lopes | qlangFilterDetectionChars :: FrozenSet String |
4508 | e1235448 | Jose A. Lopes | qlangFilterDetectionChars = |
4509 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet ["!", " ", "\"", "\'", |
4510 | e1235448 | Jose A. Lopes | ")", "(", "\x0b", "\n", |
4511 | e1235448 | Jose A. Lopes | "\r", "\x0c", "/", "<", |
4512 | e1235448 | Jose A. Lopes | "\t", ">", "=", "\\", "~"] |
4513 | e1235448 | Jose A. Lopes | |
4514 | e1235448 | Jose A. Lopes | -- | Characters used to detect globbing filters |
4515 | e1235448 | Jose A. Lopes | qlangGlobDetectionChars :: FrozenSet String |
4516 | e1235448 | Jose A. Lopes | qlangGlobDetectionChars = ConstantUtils.mkSet ["*", "?"] |
4517 | e1235448 | Jose A. Lopes | |
4518 | e1235448 | Jose A. Lopes | -- * Error related constants |
4519 | e1235448 | Jose A. Lopes | -- |
4520 | e1235448 | Jose A. Lopes | -- 'OpPrereqError' failure types |
4521 | e1235448 | Jose A. Lopes | |
4522 | e1235448 | Jose A. Lopes | -- | Environment error (e.g. node disk error) |
4523 | e1235448 | Jose A. Lopes | errorsEcodeEnviron :: String |
4524 | e1235448 | Jose A. Lopes | errorsEcodeEnviron = "environment_error" |
4525 | e1235448 | Jose A. Lopes | |
4526 | e1235448 | Jose A. Lopes | -- | Entity already exists |
4527 | e1235448 | Jose A. Lopes | errorsEcodeExists :: String |
4528 | e1235448 | Jose A. Lopes | errorsEcodeExists = "already_exists" |
4529 | e1235448 | Jose A. Lopes | |
4530 | e1235448 | Jose A. Lopes | -- | Internal cluster error |
4531 | e1235448 | Jose A. Lopes | errorsEcodeFault :: String |
4532 | e1235448 | Jose A. Lopes | errorsEcodeFault = "internal_error" |
4533 | e1235448 | Jose A. Lopes | |
4534 | e1235448 | Jose A. Lopes | -- | Wrong arguments (at syntax level) |
4535 | e1235448 | Jose A. Lopes | errorsEcodeInval :: String |
4536 | e1235448 | Jose A. Lopes | errorsEcodeInval = "wrong_input" |
4537 | e1235448 | Jose A. Lopes | |
4538 | e1235448 | Jose A. Lopes | -- | Entity not found |
4539 | e1235448 | Jose A. Lopes | errorsEcodeNoent :: String |
4540 | e1235448 | Jose A. Lopes | errorsEcodeNoent = "unknown_entity" |
4541 | e1235448 | Jose A. Lopes | |
4542 | e1235448 | Jose A. Lopes | -- | Not enough resources (iallocator failure, disk space, memory, etc) |
4543 | e1235448 | Jose A. Lopes | errorsEcodeNores :: String |
4544 | e1235448 | Jose A. Lopes | errorsEcodeNores = "insufficient_resources" |
4545 | e1235448 | Jose A. Lopes | |
4546 | e1235448 | Jose A. Lopes | -- | Resource not unique (e.g. MAC or IP duplication) |
4547 | e1235448 | Jose A. Lopes | errorsEcodeNotunique :: String |
4548 | e1235448 | Jose A. Lopes | errorsEcodeNotunique = "resource_not_unique" |
4549 | e1235448 | Jose A. Lopes | |
4550 | e1235448 | Jose A. Lopes | -- | Resolver errors |
4551 | e1235448 | Jose A. Lopes | errorsEcodeResolver :: String |
4552 | e1235448 | Jose A. Lopes | errorsEcodeResolver = "resolver_error" |
4553 | e1235448 | Jose A. Lopes | |
4554 | e1235448 | Jose A. Lopes | -- | Wrong entity state |
4555 | e1235448 | Jose A. Lopes | errorsEcodeState :: String |
4556 | e1235448 | Jose A. Lopes | errorsEcodeState = "wrong_state" |
4557 | e1235448 | Jose A. Lopes | |
4558 | e1235448 | Jose A. Lopes | -- | Temporarily out of resources; operation can be tried again |
4559 | e1235448 | Jose A. Lopes | errorsEcodeTempNores :: String |
4560 | e1235448 | Jose A. Lopes | errorsEcodeTempNores = "temp_insufficient_resources" |
4561 | e1235448 | Jose A. Lopes | |
4562 | e1235448 | Jose A. Lopes | errorsEcodeAll :: FrozenSet String |
4563 | e1235448 | Jose A. Lopes | errorsEcodeAll = |
4564 | e1235448 | Jose A. Lopes | ConstantUtils.mkSet [ errorsEcodeNores |
4565 | e1235448 | Jose A. Lopes | , errorsEcodeExists |
4566 | e1235448 | Jose A. Lopes | , errorsEcodeState |
4567 | e1235448 | Jose A. Lopes | , errorsEcodeNotunique |
4568 | e1235448 | Jose A. Lopes | , errorsEcodeTempNores |
4569 | e1235448 | Jose A. Lopes | , errorsEcodeNoent |
4570 | e1235448 | Jose A. Lopes | , errorsEcodeFault |
4571 | e1235448 | Jose A. Lopes | , errorsEcodeResolver |
4572 | e1235448 | Jose A. Lopes | , errorsEcodeInval |
4573 | e1235448 | Jose A. Lopes | , errorsEcodeEnviron |
4574 | e1235448 | Jose A. Lopes | ] |
4575 | d99d1e36 | Iustin Pop | |
4576 | e1235448 | Jose A. Lopes | -- * Jstore related constants |
4577 | fec1fac1 | Jose A. Lopes | |
4578 | e1235448 | Jose A. Lopes | jstoreJobsPerArchiveDirectory :: Int |
4579 | e1235448 | Jose A. Lopes | jstoreJobsPerArchiveDirectory = 10000 |