Revert to keep the root ssh key around.
[myplc.git] / default_config.xml
1 <?xml version="1.0" encoding="utf-8"?>
2
3 <!--
4 Default PLC configuration file
5
6 Mark Huang <mlhuang@cs.princeton.edu>
7 Copyright (C) 2006 The Trustees of Princeton University
8
9 $Id$
10 $URL$
11 -->
12
13 <!DOCTYPE configuration PUBLIC "-//PlanetLab Central//DTD PLC configuration//EN" "plc_config.dtd">
14
15 <configuration>
16   <variables>
17     <category id="plc">
18       <name>System</name>
19       <description>Basic system variables. Be sure that the values of
20       these variables are the same across all machines in your
21       installation.</description>
22
23       <variablelist>
24         <variable id="name" type="string">
25           <name>Name</name>
26           <value>PlanetLab Test</value>
27           <description>The name of this PLC installation. It is used in
28           the name of the default system site (e.g., PlanetLab Central)
29           and in the names of various administrative entities (e.g.,
30           PlanetLab Support).</description>
31         </variable>
32
33         <variable id="shortname" type="string">
34           <name>Shortame</name>
35           <value>Tlab</value>
36           <description>The short name of this PLC installation. It is
37           mostly used in the web interface when displaying local
38           objects.</description>
39         </variable>
40
41         <variable id="hrn_root" type="string">
42           <name>Root in Hierarchical Naming Space </name>
43           <value>planetlab.test</value>
44           <description> The root of this peer in the hierarchical federation naming space.</description>
45         </variable>
46
47         <variable id="slice_prefix" type="string">
48           <name>Slice Prefix</name>
49           <value>pl</value>
50           <description>The abbreviated name of this PLC
51           installation. It is used as the prefix for system slices
52           (e.g., pl_conf). Warning: Currently, this variable should
53           not be changed.</description>
54         </variable>
55
56         <variable id="root_user" type="email">
57           <name>Root Account</name>
58           <value>root@localhost.localdomain</value>
59           <description>The name of the initial administrative
60           account. We recommend that this account be used only to create
61           additional accounts associated with real
62           administrators, then disabled.</description>
63         </variable>
64
65         <variable id="root_password" type="password">
66           <name>Root Password</name>
67           <value>root</value>
68           <description>The password of the initial administrative
69           account. Also the password of the root account on the Boot
70           CD.</description>
71         </variable>
72
73         <!-- The following are not actually meant to be configurable
74              as variables. The web interface should allow the file to
75              be downloaded, or its contents replaced by a file upload,
76              but the actual <value> shouldn't need to be changed.  -->
77
78         <variable id="root_ssh_key_pub" type="file">
79           <name>Root SSH Public Key</name>
80           <value>/etc/planetlab/root_ssh_key.pub</value>
81           <description>The SSH public key used to access the root
82           account on your nodes.</description>
83         </variable>
84
85         <variable id="root_ssh_key" type="file">
86           <name>Root SSH Private Key</name>
87           <value>/etc/planetlab/root_ssh_key.rsa</value>
88           <description>The SSH private key used to access the root
89           account on your nodes.</description>
90         </variable>
91
92         <variable id="debug_ssh_key_pub" type="file">
93           <name>Debug SSH Public Key</name>
94           <value>/etc/planetlab/debug_ssh_key.pub</value>
95           <description>The SSH public key used to access the root
96           account on your nodes when they are in Debug mode.</description>
97         </variable>
98
99         <variable id="debug_ssh_key" type="file">
100           <name>Debug SSH Private Key</name>
101           <value>/etc/planetlab/debug_ssh_key.rsa</value>
102           <description>The SSH private key used to access the root
103           account on your nodes when they are in Debug mode.</description>
104         </variable>
105
106         <variable id="root_gpg_key_pub" type="file">
107           <name>Root GPG Public Keyring</name>
108           <value>/etc/planetlab/pubring.gpg</value>
109           <description>The GPG public keyring used to sign the Boot
110           Manager and all node packages.</description>
111         </variable>
112
113         <variable id="root_gpg_key" type="file">
114           <name>Root GPG Private Keyring</name>
115           <value>/etc/planetlab/secring.gpg</value>
116           <description>The SSH private key used to access the root
117           account on your nodes.</description>
118         </variable>
119       </variablelist>
120     </category>
121
122     <category id="plc_net">
123       <name>Network</name>
124       <description>Network environment.</description>
125
126       <variablelist>
127         <variable id="dns1" type="ip">
128           <name>Primary DNS Server</name>
129           <value>127.0.0.1</value>
130           <description>Primary DNS server address.</description>
131         </variable>
132
133         <variable id="dns2" type="ip">
134           <name>Secondary DNS Server</name>
135           <value></value>
136           <description>Secondary DNS server address.</description>
137         </variable>
138       </variablelist>
139     </category>
140
141     <category id="plc_dns">
142       <name>DNS</name>
143       <description>MyPLC can provide forward DNS resolution for itself
144       and for its nodes. To enable resolution for MyPLC itself, set
145       the Primary DNS Server address to 127.0.0.1 and provide external
146       IP addresses for the database, API, web, and boot servers
147       below. To enable resolution for nodes, use the external IP
148       address of this machine as the primary DNS server address for
149       each node.</description>
150
151       <variablelist>
152         <variable id="enabled" type="boolean">
153           <name>Enable DNS</name>
154           <value>true</value>
155           <description>Enable the internal DNS server. The server does
156           not provide reverse resolution and is not a production
157           quality or scalable DNS solution. Use the internal DNS
158           server only for small deployments or for
159           testing.</description>
160         </variable>
161       </variablelist>
162     </category>
163
164     <category id="plc_mail">
165       <name>Mail</name>
166       <description>Many maintenance scripts, as well as the API and
167       web site themselves, send e-mail notifications and
168       warnings.</description>
169
170       <variablelist>
171         <variable id="enabled" type="boolean">
172           <name>Enable Mail</name>
173           <value>false</value>
174           <description>Set to false to suppress all e-mail notifications
175           and warnings.</description>
176         </variable>
177
178         <variable id="support_address" type="email">
179           <name>Support Address</name>
180           <value>root+support@localhost.localdomain</value>
181           <description>This address is used for support
182           requests. Support requests may include traffic complaints,
183           security incident reporting, web site malfunctions, and
184           general requests for information. We recommend that the
185           address be aliased to a ticketing system such as Request
186           Tracker.</description>
187         </variable>
188
189         <variable id="boot_address" type="email">
190           <name>Boot Messages Address</name>
191           <value>root+install-msgs@localhost.localdomain</value>
192           <description>The API will notify this address when a problem
193           occurs during node installation or boot.</description>
194         </variable>
195
196         <variable id="mom_list_address" type="email">
197           <name>Mom List Address</name>
198           <value>root+mom@localhost.localdomain</value>
199           <description>This address is used by operations staff
200           to monitor Mom (formerly pl_mom) messages indicating
201           excessive BW or memory usage by a slice.  Mom messages sent
202           to slices will be cc'ed to this list so as not to clog
203           the Support Address list.</description>
204         </variable>
205
206         <variable id="slice_address" type="email">
207           <name>Slice Address</name>
208           <value>root+SLICE@localhost.localdomain</value>
209           <description>This address template is used for sending
210           e-mail notifications to slices. SLICE will be replaced with
211           the name of the slice.</description>
212         </variable>
213       </variablelist>
214     </category>
215
216     <category id="plc_db">
217       <name>Database Server</name>
218       <description>Database server definitions.</description>
219
220       <variablelist>
221         <variable id="enabled" type="boolean">
222           <name>Enabled</name>
223           <value>true</value>
224           <description>Enable the database server on this
225           machine.</description>
226         </variable>
227
228         <variable id="type" type="string">
229           <name>Type</name>
230           <value>postgresql</value>
231           <description>The type of database server. Currently, only
232           postgresql is supported.</description>
233         </variable>
234
235         <variable id="host" type="hostname">
236           <name>Hostname</name>
237           <value>localhost.localdomain</value>
238           <description>The fully qualified hostname of the database
239           server.</description>
240         </variable>
241
242         <variable id="ip" type="ip">
243           <name>IP Address</name>
244           <value/>
245           <description>The IP address of the database server, if not
246           resolvable.</description>
247         </variable>
248
249         <variable id="port" type="int">
250           <name>Port</name>
251           <value>5432</value>
252           <description>The TCP port number through which the database
253           server should be accessed.</description>
254         </variable>
255
256         <variable id="name" type="string">
257           <name>Database Name</name>
258           <value>planetlab5</value>
259           <description>The name of the database to access.</description>
260         </variable>
261
262         <variable id="user" type="string">
263           <name>Database Username</name>
264           <value>pgsqluser</value>
265           <description>The username to use when accessing the
266           database.</description>
267         </variable>
268
269         <variable id="password" type="password">
270           <name>Database Password</name>
271           <value></value>
272           <description>The password to use when accessing the
273           database. If left blank, one will be
274           generated.</description>
275         </variable>
276       </variablelist>
277     </category>
278
279     <category id="plc_api">
280       <name>API Server</name>
281       <description>API (XML-RPC) server definitions.</description>
282
283       <variablelist>
284         <variable id="enabled" type="boolean">
285           <name>Enabled</name>
286           <value>true</value>
287           <description>Enable the API server on this
288           machine.</description>
289         </variable>
290
291         <variable id="debug" type="boolean">
292           <name>Debug</name>
293           <value>false</value>
294           <description>Enable verbose API debugging. Do not enable on
295           a production system!</description>
296         </variable>
297
298         <variable id="host" type="hostname">
299           <name>Hostname</name>
300           <value>localhost.localdomain</value>
301           <description>The fully qualified hostname of the API
302           server.</description>
303         </variable>
304
305         <variable id="ip" type="ip">
306           <name>IP Address</name>
307           <value/>
308           <description>The IP address of the API server, if not
309           resolvable.</description>
310         </variable>
311
312         <variable id="ipod_subnet" type="ip">
313           <name>IP Subnet</name>
314           <value>127.0.0.1</value>
315           <description>The IP Subnet for all API servers. 
316           Used to identify IPoD packet senders.</description>
317         </variable>
318
319         <variable id="ipod_mask" type="ip">
320           <name>IP Mask</name>
321           <value>255.255.255.255</value>
322           <description>The IP Mask that should be applied to incoming 
323           packets to match the IP Subnet for IPoD packets.</description>
324         </variable>
325
326         <variable id="port" type="int">
327           <name>Port</name>
328           <value>443</value>
329           <description>The TCP port number through which the API
330           should be accessed.</description>
331         </variable>
332
333         <variable id="path" type="string">
334           <name>Path</name>
335           <value>/PLCAPI/</value>
336           <description>The base path of the API URL.</description>
337         </variable>
338
339         <variable id="maintenance_user" type="string">
340           <name>Maintenance User</name>
341           <value>maint@localhost.localdomain</value>
342           <description>The username of the maintenance account. This
343           account is used by local scripts that perform automated
344           tasks, and cannot be used for normal logins.</description>
345         </variable>
346
347         <variable id="maintenance_password" type="password">
348           <name>Maintenance Password</name>
349           <value></value>
350           <description>The password of the maintenance account. If
351           left blank, one will be generated. We recommend that the
352           password be changed periodically.</description>
353         </variable>
354
355         <variable id="maintenance_sources" type="hostname">
356           <name>Authorized Hosts</name>
357           <value></value>
358           <description>A space-separated list of IP addresses allowed
359           to access the API through the maintenance account. The value
360           of this variable is set automatically to allow only the API,
361           web, and boot servers, and should not be
362           changed.</description>
363         </variable>
364
365         <!-- The following are not actually meant to be configurable
366              as variables. The web interface should allow the file to
367              be downloaded, or its contents replaced by a file upload,
368              but the actual <value> shouldn't need to be changed.  -->
369
370         <variable id="ssl_key" type="file">
371           <name>SSL Private Key</name>
372           <value>/etc/planetlab/api_ssl.key</value>
373           <description>The SSL private key to use for encrypting HTTPS
374           traffic. If non-existent, one will be
375           generated.</description>
376         </variable>
377
378         <variable id="ssl_crt" type="file">
379           <name>SSL Public Certificate</name>
380           <value>/etc/planetlab/api_ssl.crt</value>
381           <description>The corresponding SSL public certificate. By
382           default, this certificate is self-signed. You may replace
383           the certificate later with one signed by a root
384           CA.</description>
385         </variable>
386
387         <variable id="ca_ssl_crt" type="file">
388           <name>Root CA SSL Public Certificate</name>
389           <value>/etc/planetlab/api_ca_ssl.crt</value>
390           <description>The certificate of the root CA, if any, that
391           signed your server certificate. If your server certificate is
392           self-signed, then this file is the same as your server
393           certificate.</description>
394         </variable>
395       </variablelist>
396     </category>
397
398     <category id="plc_www">
399       <name>Web Server</name>
400       <description>Web server definitions.</description>
401
402       <variablelist>
403         <variable id="enabled" type="boolean">
404           <name>Enabled</name>
405           <value>true</value>
406           <description>Enable the web server on this
407           machine.</description>
408         </variable>
409
410         <variable id="debug" type="boolean">
411           <name>Debug</name>
412           <value>false</value>
413           <description>Enable debugging output on web pages. Do not
414           enable on a production system!</description>
415         </variable>
416
417         <variable id="host" type="hostname">
418           <name>Hostname</name>
419           <value>localhost.localdomain</value>
420           <description>The fully qualified hostname of the web
421           server.</description>
422         </variable>
423
424         <variable id="ip" type="ip">
425           <name>IP Address</name>
426           <value/>
427           <description>The IP address of the web server, if not
428           resolvable.</description>
429         </variable>
430
431         <variable id="port" type="int">
432           <name>Port</name>
433           <value>80</value>
434           <description>The TCP port number through which the
435           unprotected portions of the web site should be
436           accessed.</description>
437         </variable>
438
439         <variable id="ssl_port" type="int">
440           <name>SSL Port</name>
441           <value>443</value>
442           <description>The TCP port number through which the protected
443           portions of the web site should be accessed.</description>
444         </variable>
445
446         <!-- The following are not actually meant to be configurable
447              as variables. The web interface should allow the file to
448              be downloaded, or its contents replaced by a file upload,
449              but the actual <value> shouldn't need to be changed.  -->
450
451         <variable id="ssl_key" type="file">
452           <name>SSL Private Key</name>
453           <value>/etc/planetlab/www_ssl.key</value>
454           <description>The SSL private key to use for encrypting HTTPS
455           traffic. If non-existent, one will be
456           generated.</description>
457         </variable>
458
459         <variable id="ssl_crt" type="file">
460           <name>SSL Public Certificate</name>
461           <value>/etc/planetlab/www_ssl.crt</value>
462           <description>The corresponding SSL public certificate for
463           the HTTP server. By default, this certificate is
464           self-signed. You may replace the certificate later with one
465           signed by a root CA.</description>
466         </variable>
467
468         <variable id="ca_ssl_crt" type="file">
469           <name>Root CA SSL Public Certificate</name>
470           <value>/etc/planetlab/www_ca_ssl.crt</value>
471           <description>The certificate of the root CA, if any, that
472           signed your server certificate. If your server certificate is
473           self-signed, then this file is the same as your server
474           certificate.</description>
475         </variable>
476       </variablelist>
477     </category>
478
479     <category id="plc_boot">
480       <name>Boot Server</name>
481       <description>Boot server definitions. Multiple boot servers
482       may be brought up for load balancing, but we recommend that a
483       single DNS round-robin system be implemented so that the
484       following variables are the same across all of
485       them.</description>
486
487       <variablelist>
488         <variable id="enabled" type="boolean">
489           <name>Enabled</name>
490           <value>true</value>
491           <description>Enable the boot server on this
492           machine.</description>
493         </variable>
494
495         <variable id="host" type="hostname">
496           <name>Hostname</name>
497           <value>localhost.localdomain</value>
498           <description>The fully qualified hostname of the boot
499           server.</description>
500         </variable>
501
502         <variable id="ip" type="ip">
503           <name>IP Address</name>
504           <value/>
505           <description>The IP address of the boot server, if not
506           resolvable.</description>
507         </variable>
508
509         <variable id="port" type="int">
510           <name>Port</name>
511           <value>80</value>
512           <description>The TCP port number through which the
513           unprotected portions of the boot server should be
514           accessed.</description>
515         </variable>
516
517         <variable id="ssl_port" type="int">
518           <name>SSL Port</name>
519           <value>443</value>
520           <description>The TCP port number through which the protected
521           portions of the boot server should be
522           accessed.</description>
523         </variable>
524
525         <!-- The following are not actually meant to be configurable
526              as variables. The web interface should allow the file to
527              be downloaded, or its contents replaced by a file upload,
528              but the actual <value> shouldn't need to be changed.  -->
529
530         <variable id="ssl_key" type="file">
531           <name>SSL Private Key</name>
532           <value>/etc/planetlab/boot_ssl.key</value>
533           <description>The SSL private key to use for encrypting HTTPS
534           traffic.</description>
535         </variable>
536
537         <variable id="ssl_crt" type="file">
538           <name>SSL Public Certificate</name>
539           <value>/etc/planetlab/boot_ssl.crt</value>
540           <description>The corresponding SSL public certificate for
541           the HTTP server. By default, this certificate is
542           self-signed. You may replace the certificate later with one
543           signed by a root CA.</description>
544         </variable>
545
546         <variable id="ca_ssl_crt" type="file">
547           <name>Root CA SSL Public Certificate</name>
548           <value>/etc/planetlab/boot_ca_ssl.crt</value>
549           <description>The certificate of the root CA, if any, that
550           signed your server certificate. If your server certificate is
551           self-signed, then this file is the same as your server
552           certificate.</description>
553         </variable>
554       </variablelist>
555     </category>
556
557
558     <category id="plc_planetflow">
559       <name>PlanetFlow Service Configuration</name>
560       <description>Planetflow service definitions used in the netflow slice. </description>
561
562       <variablelist>
563         <variable id="host" type="hostname">
564                 <name>Hostname</name>
565                 <value>localhost.localdomain</value>
566                 <description>The fully qualified hostname.</description>
567         </variable>
568       </variablelist>
569     </category>
570     <category id="plc_monitor">
571       <name>Monitoring Service</name>
572       <description>The Monitor service that tracks node availablity and repair.</description>
573       <variablelist>
574         <variable id="enabled" type="boolean">
575           <name>Enabled</name>
576           <value>false</value>
577           <description>Enable on this machine.</description>
578         </variable>
579         <variable id="host" type="hostname">
580           <name>Hostname</name>
581           <value>localhost.localdomain</value>
582           <description>The fully qualified hostname.</description>
583         </variable>
584         <variable id="ip" type="ip">
585           <name>IP Address</name>
586           <value></value>
587           <description>The IP address of the monitor server.</description>
588         </variable>
589         <variable id="from_email" type="email">
590           <name>Monitor Email Address</name>
591           <value>root+monitor@localhost.localdomain</value>
592           <description>All messages from Monitor will appear to come from this address.</description>
593         </variable>
594         <variable id="cc_email" type="email">
595           <name>CC Email Address</name>
596           <value>root+monitor@localhost.localdomain</value>
597           <description>All messages from Monitor will be copied to this address.</description>
598         </variable>
599         <variable id="rt_queue" type="email">
600           <name>Queue Name in RT for new messages</name>
601           <value>support</value>
602           <description>All messages from Monitor will be copied to this address.</description>
603         </variable>
604         <variable id="dbpassword" type="password">
605           <name>Database Password</name>
606           <value></value>
607           <description>The password to use when accessing the
608           database, Monitor user account in the local PLC.</description>
609         </variable>
610
611             <variable id="ssl_key" type="file">
612                   <name>SSL Private Key</name>
613                   <value>/etc/planetlab/monitor_ssl.key</value>
614                   <description>The SSL private key to use for encrypting HTTPS
615                   traffic.</description>
616                 </variable>
617
618                 <variable id="ssl_crt" type="file">
619                   <name>SSL Public Certificate</name>
620                   <value>/etc/planetlab/monitor_ssl.crt</value>
621                   <description>The corresponding SSL public certificate for
622                   the HTTP server. By default, this certificate is
623                   self-signed. You may replace the certificate later with one
624                   signed by a root CA.</description>
625                 </variable>
626
627                 <variable id="ca_ssl_crt" type="file">
628                   <name>Root CA SSL Public Certificate</name>
629                   <value>/etc/planetlab/monitor_ca_ssl.crt</value>
630                   <description>The certificate of the root CA, if any, that
631                   signed your server certificate. If your server certificate is
632                   self-signed, then this file is the same as your server
633                   certificate.</description>
634                 </variable>
635
636       </variablelist>
637     </category>
638     <category id="plc_rt">
639       <name>RT Configuration</name>
640       <description>RT</description>
641       <variablelist>
642         <variable id="enabled" type="boolean">
643           <name>Enabled</name>
644           <value>false</value>
645           <description>Enable on this machine.</description>
646         </variable>
647         <variable id="host" type="hostname">
648           <name>Hostname</name>
649           <value>localhost.localdomain</value>
650           <description>The fully qualified hostname.</description>
651         </variable>
652         <variable id="ip" type="ip">
653           <name>IP Address</name>
654           <value/>
655           <description>The IP address of the RT server.</description>
656         </variable>
657         <variable id="cc_address" type="email">
658           <name>CC Email Address</name>
659           <value>root+cclist@localhost.localdomain</value>
660           <description>All messages to and from PLCRT will be copied to this address.</description>
661         </variable>
662         <variable id="web_user" type="string">
663           <name>root</name>
664           <value>root</value>
665           <description>Username of a privileged user in RT who can create
666                   tickets for any RT Queue.</description>
667         </variable>
668         <variable id="web_password" type="password">
669           <name>password</name>
670           <value>password</value>
671           <description>Password for RT web user.</description>
672         </variable>
673         <variable id="dbpassword" type="password">
674           <name>Database Password</name>
675           <value></value>
676           <description>Password to use when accessing the RT database.</description>
677         </variable>
678       </variablelist>
679     </category>
680   </variables>
681
682   <comps>
683     <!-- deprecated - not used anymore - use .lst files instead -->
684   </comps>
685
686 </configuration>