1 <?xml version="1.0" encoding="utf-8"?>
4 Default PLC configuration file
6 Mark Huang <mlhuang@cs.princeton.edu>
7 Copyright (C) 2006 The Trustees of Princeton University
11 <!DOCTYPE configuration PUBLIC "-//PlanetLab Central//DTD PLC configuration//EN" "plc_config.dtd">
17 <description>Basic system variables. Be sure that the values of
18 these variables are the same across all machines in your
19 installation.</description>
22 <variable id="name" type="string">
24 <value>PlanetLab Test</value>
25 <description>The name of this PLC installation. It is used in
26 the name of the default system site (e.g., PlanetLab Central)
27 and in the names of various administrative entities (e.g.,
28 PlanetLab Support).</description>
31 <variable id="shortname" type="string">
34 <description>The short name of this PLC installation. It is
35 mostly used in the web interface when displaying local
36 objects.</description>
39 <variable id="hrn_root" type="string">
40 <name>Root in Hierarchical Naming Space </name>
41 <value>planetlab.test</value>
42 <description> The root of this peer in the hierarchical federation naming space.</description>
45 <variable id="slice_prefix" type="string">
46 <name>Slice Prefix</name>
48 <description>The abbreviated name of this PLC
49 installation. It is used as the prefix for system slices
50 (e.g., pl_conf). Warning: Currently, this variable should
51 not be changed.</description>
54 <variable id="root_user" type="email">
55 <name>Root Account</name>
56 <value>root@localhost.localdomain</value>
57 <description>The name of the initial administrative
58 account. We recommend that this account be used only to create
59 additional accounts associated with real
60 administrators, then disabled.</description>
63 <variable id="root_password" type="password">
64 <name>Root Password</name>
66 <description>The password of the initial administrative
67 account. Also the password of the root account on the Boot
71 <!-- The following are not actually meant to be configurable
72 as variables. The web interface should allow the file to
73 be downloaded, or its contents replaced by a file upload,
74 but the actual <value> shouldn't need to be changed. -->
76 <variable id="root_ssh_key_pub" type="file">
77 <name>Root SSH Public Key</name>
78 <value>/etc/planetlab/root_ssh_key.pub</value>
79 <description>The SSH public key used to access the root
80 account on your nodes.</description>
83 <variable id="root_ssh_key" type="file">
84 <name>Root SSH Private Key</name>
85 <value>/etc/planetlab/root_ssh_key.rsa</value>
86 <description>The SSH private key used to access the root
87 account on your nodes.</description>
90 <variable id="debug_ssh_key_pub" type="file">
91 <name>Debug SSH Public Key</name>
92 <value>/etc/planetlab/debug_ssh_key.pub</value>
93 <description>The SSH public key used to access the root
94 account on your nodes when they are in Debug mode.</description>
97 <variable id="debug_ssh_key" type="file">
98 <name>Debug SSH Private Key</name>
99 <value>/etc/planetlab/debug_ssh_key.rsa</value>
100 <description>The SSH private key used to access the root
101 account on your nodes when they are in Debug mode.</description>
104 <variable id="root_gpg_key_pub" type="file">
105 <name>Root GPG Public Keyring</name>
106 <value>/etc/planetlab/pubring.gpg</value>
107 <description>The GPG public keyring used to sign the Boot
108 Manager and all node packages.</description>
111 <variable id="root_gpg_key" type="file">
112 <name>Root GPG Private Keyring</name>
113 <value>/etc/planetlab/secring.gpg</value>
114 <description>The SSH private key used to access the root
115 account on your nodes.</description>
121 <category id="plc_flavour">
122 <name>Flavours</name>
123 <description>Defaults for nodes and slices contents.</description>
126 <variable id="node_arch" type="string">
127 <name>arch for nodes</name>
128 <value>@ARCH@</value>
129 <description>The default 'arch' to use when installing nodes.
130 This is offered mostly for consistency with the rest of the
131 PLC_FLAVOUR category, but does not have much of a practical
132 interest. In any case, you need to have the corresponding
133 bootstrapfs images available for nodes.</description>
136 <variable id="node_fcdistro" type="string">
137 <name>fcdistro for nodes</name>
138 <value>@FCDISTRO@</value>
139 <description>THIS CURRENTLY HAS NO EFFECT.
140 The default 'fcdistro' to use when installing
141 nodes.You need to have the corresponding bootstrapfs images
142 available for nodes. THIS CURRENTLY HAS NO EFFECT.</description>
145 <variable id="node_pldistro" type="string">
146 <name>pldistro for nodes</name>
147 <value>@PLDISTRO@</value>
148 <description>The default 'pldistro' to use when installing
149 nodes. You need to have the corresponding bootstrapfs
150 images available for nodes.</description>
153 <variable id="slice_arch" type="string">
154 <name>arch for slivers</name>
155 <value>@ARCH@</value>
156 <description>The default 'arch' to use for slivers. This is
157 useful if you have heterogeneous nodes (i686 and x86_64),
158 but want slivers to be homogeneous. You need to have the
159 corresponding vserver variant rpm available for
163 <variable id="slice_fcdistro" type="string">
164 <name>fcdistro for slivers</name>
165 <value>@FCDISTRO@</value>
166 <description>The default 'fcdistro' to use for creating
167 slivers. You need to have the corresponding vserver variant
168 rpm available for nodes.</description>
171 <variable id="slice_pldistro" type="string">
172 <name>pldistro for slivers</name>
173 <value>@PLDISTRO@</value>
174 <description>The default 'pldistro' to use for creating
175 slivers. You need to have the corresponding vserver variant
176 rpm available for nodes.</description>
182 <category id="plc_net">
184 <description>Network environment.</description>
187 <variable id="dns1" type="ip">
188 <name>Primary DNS Server</name>
189 <value>127.0.0.1</value>
190 <description>Primary DNS server address.</description>
193 <variable id="dns2" type="ip">
194 <name>Secondary DNS Server</name>
196 <description>Secondary DNS server address.</description>
201 <category id="plc_dns">
203 <description>MyPLC can provide forward DNS resolution for itself
204 and for its nodes. To enable resolution for MyPLC itself, set
205 the Primary DNS Server address to 127.0.0.1 and provide external
206 IP addresses for the database, API, web, and boot servers
207 below. To enable resolution for nodes, use the external IP
208 address of this machine as the primary DNS server address for
209 each node.</description>
212 <variable id="enabled" type="boolean">
213 <name>Enable DNS</name>
215 <description>Enable the internal DNS server. The server does
216 not provide reverse resolution and is not a production
217 quality or scalable DNS solution. Use the internal DNS
218 server only for small deployments or for
219 testing.</description>
224 <category id="plc_hosts">
225 <name>/etc/hosts</name>
226 <description>MyPLC can setup /etc/hosts with the hostnames and
227 IP addresses specified for *_NAME and *_IP, or look up the IP
228 addresses if they are not specified in this configuration.
232 <variable id="enabled" type="boolean">
233 <name>Enable /etc/hosts configuration</name>
235 <description>Let PLC manage /etc/hosts</description>
240 <category id="plc_mail">
242 <description>Many maintenance scripts, as well as the API and
243 web site themselves, send e-mail notifications and
244 warnings.</description>
247 <variable id="enabled" type="boolean">
248 <name>Enable Mail</name>
250 <description>Set to false to suppress all e-mail notifications
251 and warnings.</description>
254 <variable id="support_address" type="email">
255 <name>Support Address</name>
256 <value>root+support@localhost.localdomain</value>
257 <description>This address is used for support
258 requests. Support requests may include traffic complaints,
259 security incident reporting, web site malfunctions, and
260 general requests for information. We recommend that the
261 address be aliased to a ticketing system such as Request
262 Tracker.</description>
265 <variable id="boot_address" type="email">
266 <name>Boot Messages Address</name>
267 <value>root+install-msgs@localhost.localdomain</value>
268 <description>The API will notify this address when a problem
269 occurs during node installation or boot.</description>
272 <variable id="mom_list_address" type="email">
273 <name>Mom List Address</name>
274 <value>root+mom@localhost.localdomain</value>
275 <description>This address is used by operations staff
276 to monitor Mom (formerly pl_mom) messages indicating
277 excessive BW or memory usage by a slice. Mom messages sent
278 to slices will be cc'ed to this list so as not to clog
279 the Support Address list.</description>
282 <variable id="slice_address" type="email">
283 <name>Slice Address</name>
284 <value>root+SLICE@localhost.localdomain</value>
285 <description>This address template is used for sending
286 e-mail notifications to slices. SLICE will be replaced with
287 the name of the slice.</description>
292 <category id="plc_db">
293 <name>Database Server</name>
294 <description>Database server definitions.</description>
297 <variable id="enabled" type="boolean">
300 <description>Enable the database server on this
301 machine.</description>
304 <variable id="type" type="string">
306 <value>postgresql</value>
307 <description>The type of database server. Currently, only
308 postgresql is supported.</description>
311 <variable id="host" type="hostname">
312 <name>Hostname</name>
313 <value>localhost.localdomain</value>
314 <description>The fully qualified hostname of the database
315 server.</description>
318 <variable id="ip" type="ip">
319 <name>IP Address</name>
321 <description>The IP address of the database server, if not
322 resolvable.</description>
325 <variable id="port" type="int">
328 <description>The TCP port number through which the database
329 server should be accessed.</description>
332 <variable id="name" type="string">
333 <name>Database Name</name>
334 <value>planetlab5</value>
335 <description>The name of the database to access.</description>
338 <variable id="user" type="string">
339 <name>Database Username</name>
340 <value>pgsqluser</value>
341 <description>The username to use when accessing the
342 database.</description>
345 <variable id="password" type="password">
346 <name>Database Password</name>
348 <description>The password to use when accessing the
349 database. If left blank, one will be
350 generated.</description>
355 <category id="plc_api">
356 <name>API Server</name>
357 <description>API (XML-RPC) server definitions.</description>
360 <variable id="enabled" type="boolean">
363 <description>Enable the API server on this
364 machine.</description>
367 <variable id="debug" type="boolean">
370 <description>Enable verbose API debugging. Do not enable on
371 a production system!</description>
374 <variable id="host" type="hostname">
375 <name>Hostname</name>
376 <value>localhost.localdomain</value>
377 <description>The fully qualified hostname of the API
378 server.</description>
381 <variable id="ip" type="ip">
382 <name>IP Address</name>
384 <description>The IP address of the API server, if not
385 resolvable.</description>
388 <variable id="ipod_subnet" type="ip">
389 <name>IP Subnet</name>
390 <value>127.0.0.1</value>
391 <description>The IP Subnet for all API servers.
392 Used to identify IPoD packet senders.</description>
395 <variable id="ipod_mask" type="ip">
397 <value>255.255.255.255</value>
398 <description>The IP Mask that should be applied to incoming
399 packets to match the IP Subnet for IPoD packets.</description>
402 <variable id="port" type="int">
405 <description>The TCP port number through which the API
406 should be accessed.</description>
409 <variable id="path" type="string">
411 <value>/PLCAPI/</value>
412 <description>The base path of the API URL.</description>
415 <variable id="maintenance_user" type="string">
416 <name>Maintenance User</name>
417 <value>maint@localhost.localdomain</value>
418 <description>The username of the maintenance account. This
419 account is used by local scripts that perform automated
420 tasks, and cannot be used for normal logins.</description>
423 <variable id="maintenance_password" type="password">
424 <name>Maintenance Password</name>
426 <description>The password of the maintenance account. If
427 left blank, one will be generated. We recommend that the
428 password be changed periodically.</description>
431 <variable id="maintenance_sources" type="hostname">
432 <name>Authorized Hosts</name>
434 <description>A space-separated list of IP addresses allowed
435 to access the API through the maintenance account. The value
436 of this variable is set automatically to allow only the API,
437 web, and boot servers, and should not be
438 changed.</description>
441 <!-- The following are not actually meant to be configurable
442 as variables. The web interface should allow the file to
443 be downloaded, or its contents replaced by a file upload,
444 but the actual <value> shouldn't need to be changed. -->
446 <variable id="ssl_key" type="file">
447 <name>SSL Private Key</name>
448 <value>/etc/planetlab/api_ssl.key</value>
449 <description>The SSL private key to use for encrypting HTTPS
450 traffic. If non-existent, one will be
451 generated.</description>
454 <variable id="ssl_crt" type="file">
455 <name>SSL Public Certificate</name>
456 <value>/etc/planetlab/api_ssl.crt</value>
457 <description>The corresponding SSL public certificate. By
458 default, this certificate is self-signed. You may replace
459 the certificate later with one signed by a root
463 <variable id="ca_ssl_crt" type="file">
464 <name>Root CA SSL Public Certificate</name>
465 <value>/etc/planetlab/api_ca_ssl.crt</value>
466 <description>The certificate of the root CA, if any, that
467 signed your server certificate. If your server certificate is
468 self-signed, then this file is the same as your server
469 certificate.</description>
474 <category id="plc_www">
475 <name>Web Server</name>
476 <description>Web server definitions.</description>
479 <variable id="enabled" type="boolean">
482 <description>Enable the web server on this
483 machine.</description>
486 <variable id="debug" type="boolean">
489 <description>Enable debugging output on web pages. Do not
490 enable on a production system!</description>
493 <variable id="host" type="hostname">
494 <name>Hostname</name>
495 <value>localhost.localdomain</value>
496 <description>The fully qualified hostname of the web
497 server.</description>
500 <variable id="ip" type="ip">
501 <name>IP Address</name>
503 <description>The IP address of the web server, if not
504 resolvable.</description>
507 <variable id="port" type="int">
510 <description>The TCP port number through which the
511 unprotected portions of the web site should be
512 accessed.</description>
515 <variable id="ssl_port" type="int">
516 <name>SSL Port</name>
518 <description>The TCP port number through which the protected
519 portions of the web site should be accessed.</description>
522 <!-- The following are not actually meant to be configurable
523 as variables. The web interface should allow the file to
524 be downloaded, or its contents replaced by a file upload,
525 but the actual <value> shouldn't need to be changed. -->
527 <variable id="ssl_key" type="file">
528 <name>SSL Private Key</name>
529 <value>/etc/planetlab/www_ssl.key</value>
530 <description>The SSL private key to use for encrypting HTTPS
531 traffic. If non-existent, one will be
532 generated.</description>
535 <variable id="ssl_crt" type="file">
536 <name>SSL Public Certificate</name>
537 <value>/etc/planetlab/www_ssl.crt</value>
538 <description>The corresponding SSL public certificate for
539 the HTTP server. By default, this certificate is
540 self-signed. You may replace the certificate later with one
541 signed by a root CA.</description>
544 <variable id="ca_ssl_crt" type="file">
545 <name>Root CA SSL Public Certificate</name>
546 <value>/etc/planetlab/www_ca_ssl.crt</value>
547 <description>The certificate of the root CA, if any, that
548 signed your server certificate. If your server certificate is
549 self-signed, then this file is the same as your server
550 certificate.</description>
555 <category id="plc_boot">
556 <name>Boot Server</name>
557 <description>Boot server definitions. Multiple boot servers
558 may be brought up for load balancing, but we recommend that a
559 single DNS round-robin system be implemented so that the
560 following variables are the same across all of
564 <variable id="enabled" type="boolean">
567 <description>Enable the boot server on this
568 machine.</description>
571 <variable id="host" type="hostname">
572 <name>Hostname</name>
573 <value>localhost.localdomain</value>
574 <description>The fully qualified hostname of the boot
575 server.</description>
578 <variable id="ip" type="ip">
579 <name>IP Address</name>
581 <description>The IP address of the boot server, if not
582 resolvable.</description>
585 <variable id="port" type="int">
588 <description>The TCP port number through which the
589 unprotected portions of the boot server should be
590 accessed.</description>
593 <variable id="ssl_port" type="int">
594 <name>SSL Port</name>
596 <description>The TCP port number through which the protected
597 portions of the boot server should be
598 accessed.</description>
601 <!-- The following are not actually meant to be configurable
602 as variables. The web interface should allow the file to
603 be downloaded, or its contents replaced by a file upload,
604 but the actual <value> shouldn't need to be changed. -->
606 <variable id="ssl_key" type="file">
607 <name>SSL Private Key</name>
608 <value>/etc/planetlab/boot_ssl.key</value>
609 <description>The SSL private key to use for encrypting HTTPS
610 traffic.</description>
613 <variable id="ssl_crt" type="file">
614 <name>SSL Public Certificate</name>
615 <value>/etc/planetlab/boot_ssl.crt</value>
616 <description>The corresponding SSL public certificate for
617 the HTTP server. By default, this certificate is
618 self-signed. You may replace the certificate later with one
619 signed by a root CA.</description>
622 <variable id="ca_ssl_crt" type="file">
623 <name>Root CA SSL Public Certificate</name>
624 <value>/etc/planetlab/boot_ca_ssl.crt</value>
625 <description>The certificate of the root CA, if any, that
626 signed your server certificate. If your server certificate is
627 self-signed, then this file is the same as your server
628 certificate.</description>
633 <category id="plc_ratelimit">
634 <name>Planetlab Ratelimit Settings</name>
635 <description>Planetlab Ratelimit Settings</description>
637 <variable id="enabled" type="bolean">
638 <name>Enable Ratelimit</name>
640 <description>Enable Ratelimit for sites</description>
645 <category id="plc_omf">
646 <name>Planetlab - OMF Integration</name>
647 <description>Planetlab - OMF integration</description>
649 <variable id="enabled" type="boolean">
650 <name>OMF integration</name>
652 <description>Enable OMF integration.</description>
655 <!-- xmpp server configuration -->
656 <variable id="xmpp_server" type="string">
657 <name>XMPP server</name>
658 <value>localhost.localdomain</value>
659 <description>The fully qualified hostname of the XMPP server.</description>
662 <variable id="xmpp_user" type="string">
663 <name>XMPP username</name>
665 <description>XMPP username (which has admin rights).</description>
668 <variable id="xmpp_password" type="string">
669 <name>XMPP password</name>
671 <description>The password of the XMPP user.</description>
674 <!-- omf-slicemgr -->
675 <variable id="slicemgr_url" type="string">
676 <name>OMF Slicemgr URL</name>
677 <value>http://localhost.localdomain:5053</value>
678 <description>.</description>
684 <category id="plc_reservation">
685 <name> Reservable Nodes</name>
686 <description> Settings related to reservable nodes </description>
689 <variable id="granularity" type="int">
690 <name>Lease granularity</name>
692 <description>The smallest timeslot that can be allocated to
693 a node. All leases will be rounded to this granularity, so
694 e.g. if you set 3600 all leases will start and stop at round
700 <category id="plc_planetflow">
701 <name>PlanetFlow Service Configuration</name>
702 <description>Planetflow service definitions used in the netflow slice. </description>
705 <variable id="host" type="hostname">
706 <name>Hostname</name>
707 <value>localhost.localdomain</value>
708 <description>The fully qualified hostname.</description>
713 <category id="plc_monitor">
714 <name>Monitoring Service</name>
715 <description>The Monitor service that tracks node availablity and repair.</description>
717 <variable id="enabled" type="boolean">
720 <description>Enable on this machine.</description>
722 <variable id="host" type="hostname">
723 <name>Hostname</name>
724 <value>localhost.localdomain</value>
725 <description>The fully qualified hostname.</description>
727 <variable id="ip" type="ip">
728 <name>IP Address</name>
730 <description>The IP address of the monitor server.</description>
732 <variable id="from_email" type="email">
733 <name>Monitor Email Address</name>
734 <value>root+monitor@localhost.localdomain</value>
735 <description>All messages from Monitor will appear to come from this address.</description>
737 <variable id="cc_email" type="email">
738 <name>CC Email Address</name>
739 <value>root+monitor@localhost.localdomain</value>
740 <description>All messages from Monitor will be copied to this address.</description>
742 <variable id="rt_queue" type="email">
743 <name>Queue Name in RT for new messages</name>
744 <value>support</value>
745 <description>All messages from Monitor will be copied to this address.</description>
747 <variable id="dbhost" type="hostname">
748 <name>Database Hostname</name>
749 <value>localhost</value>
750 <description>The hostname for the monitor database.</description>
752 <variable id="dbuser" type="string">
753 <name>Database User</name>
754 <value>monitoruser</value>
755 <description>The username for connecting to the monitor database.</description>
757 <variable id="dbname" type="string">
758 <name>Database Name</name>
759 <value>monitor</value>
760 <description>Name of monitor database.</description>
762 <variable id="dbpassword" type="password">
763 <name>Database Password</name>
765 <description>The password to use when accessing the
766 database, Monitor user account in the local PLC.</description>
769 <variable id="ssl_key" type="file">
770 <name>SSL Private Key</name>
771 <value>/etc/planetlab/monitor_ssl.key</value>
772 <description>The SSL private key to use for encrypting HTTPS
773 traffic.</description>
776 <variable id="ssl_crt" type="file">
777 <name>SSL Public Certificate</name>
778 <value>/etc/planetlab/monitor_ssl.crt</value>
779 <description>The corresponding SSL public certificate for
780 the HTTP server. By default, this certificate is
781 self-signed. You may replace the certificate later with one
782 signed by a root CA.</description>
785 <variable id="ca_ssl_crt" type="file">
786 <name>Root CA SSL Public Certificate</name>
787 <value>/etc/planetlab/monitor_ca_ssl.crt</value>
788 <description>The certificate of the root CA, if any, that
789 signed your server certificate. If your server certificate is
790 self-signed, then this file is the same as your server
791 certificate.</description>
796 <category id="plc_rt">
797 <name>RT Configuration</name>
798 <description>RT</description>
800 <variable id="enabled" type="boolean">
803 <description>Enable on this machine.</description>
805 <variable id="host" type="hostname">
806 <name>Hostname</name>
807 <value>localhost.localdomain</value>
808 <description>The fully qualified hostname.</description>
810 <variable id="ip" type="ip">
811 <name>IP Address</name>
813 <description>The IP address of the RT server.</description>
815 <variable id="cc_address" type="email">
816 <name>CC Email Address</name>
817 <value>root+cclist@localhost.localdomain</value>
818 <description>All messages to and from PLCRT will be copied to this address.</description>
820 <variable id="web_user" type="string">
823 <description>Username of a privileged user in RT who can create
824 tickets for any RT Queue.</description>
826 <variable id="web_password" type="password">
827 <name>password</name>
828 <value>password</value>
829 <description>Password for RT web user.</description>
831 <variable id="dbpassword" type="password">
832 <name>Database Password</name>
834 <description>Password to use when accessing the RT database.</description>
839 <category id="myslice">
841 <description>MySlice configuration parameters</description>
843 <variable id="comon_url" type="string">
846 <description>The address of the CoMon url that provides information for this PLC's nodes (if not the default http://comon.cs.princeton.edu/)</description>
848 <variable id="comon_available" type="boolean">
851 <description>True, if comon data are available for this PLC's nodes</description>
853 <variable id="tophat_available" type="boolean">
856 <description>True, if tophat data are available for this PLC's nodes</description>
861 <category id="plc_vsys">
863 <description>Default values for the vsys tag</description>
865 <variable id="defaults" type="string">
866 <name>vsys tags set by default</name>
868 <description>Comma-separated list of vsys script names that all newly created slices will have as their vsys tags. For older slices, see the check-vsys-defaults.py script as part of the myplc package.</description>
875 <!-- deprecated - not used anymore - use .lst files instead -->