diff options
-rw-r--r-- | doc/server/index.txt | 5 | ||||
-rw-r--r-- | doc/server/plugins/structures/bundler/index.txt | 17 | ||||
-rw-r--r-- | doc/server/plugins/structures/bundler/kernel.txt | 78 | ||||
-rw-r--r-- | doc/server/plugins/structures/bundler/moab.txt | 19 | ||||
-rw-r--r-- | doc/server/plugins/structures/bundler/nagios.txt | 59 | ||||
-rw-r--r-- | doc/server/plugins/structures/bundler/ntp.txt | 21 | ||||
-rw-r--r-- | doc/server/plugins/structures/bundler/snmpd.txt | 17 | ||||
-rw-r--r-- | doc/server/plugins/structures/bundler/torque.txt | 49 | ||||
-rw-r--r-- | doc/server/plugins/structures/bundler/yp.txt | 32 |
9 files changed, 293 insertions, 4 deletions
diff --git a/doc/server/index.txt b/doc/server/index.txt index 6e7f82693..17143dfe6 100644 --- a/doc/server/index.txt +++ b/doc/server/index.txt @@ -11,3 +11,8 @@ Bcfg2 Server plugins/index reports/index + +.. toctree:: + :hidden: + + configurationentries diff --git a/doc/server/plugins/structures/bundler/index.txt b/doc/server/plugins/structures/bundler/index.txt index 2f4275a96..d4a2cc2d1 100644 --- a/doc/server/plugins/structures/bundler/index.txt +++ b/doc/server/plugins/structures/bundler/index.txt @@ -204,7 +204,16 @@ The latter form is preferred if the if block contains multiple files. While this example is simple, the test in the if block can in fact be any python statement. -Examples --------- - -See [wiki:Plugins/Bundler/examples this] page for more Bundler examples. +Other examples +============== + +.. toctree:: + :maxdepth: 1 + + kernel + moab + nagios + ntp + snmpd + torque + yp diff --git a/doc/server/plugins/structures/bundler/kernel.txt b/doc/server/plugins/structures/bundler/kernel.txt new file mode 100644 index 000000000..2e3d84e93 --- /dev/null +++ b/doc/server/plugins/structures/bundler/kernel.txt @@ -0,0 +1,78 @@ +.. -*- mode: rst -*- + +.. _server-plugins-structures-bundler-kernel: + +kernel +====== + +This is a rather complex Bundle for the Linux kernel from a system with +a history of complexity. There are two kernel versions present on the +systems at all times (the current and the previous), so the package +names all contain versioning information. This includes kernel-specific +modules for various specialties - ``gm`` for Myrinet boards, ``gpfs`` +and ``pvfs`` for storage clients, and ``nvidia`` modules for machines +with Nvidia cards. Note that only the ``ia32`` machines have Nvidia +cards in them, and thus those entries only exist in that section. + +It is easy to see that there is duplication of effort between the +two architectures - both have the same ``linux`` package entry names, +for example. This Bundle could be arranged in many different ways, +some of which might be better than this one. Feel free to hack as needed. + +.. code-block:: xml + + <Bundle name='kernel' version='2.0'> + <Group name='sles8'> + <!-- =================== ia32 ==================== --> + <Group name='ia32'> + <Path name='/etc/lilo.conf'/> + <Path name='/boot/vmlinuz'/> + <Path name='/boot/initrd'/> + <Path name='/boot/vmlinuz.old'/> + <Path name='/boot/initrd.old'/> + <PostInstall name='/sbin/lilo'/> + <!-- Current kernel --> + <Package name='linux-2.4.21-314.tg1'/> + <Package name='linux-2.4.21-314.tg1-source'/> + <!-- Old kernel --> + <Package name='linux-2.4.21-309.tg1'/> + <Group name='gm'> + <Package name='gm-kernel-2.4.21-314.tg1'/> + <Package name='gm-kernel-2.4.21-309.tg1'/> + </Group> + <Group name='storage-client'> + <!-- Current kernel --> + <Package name='gpfs-modules-2.4.21-314.tg1'/> + <Package name='pvfs2-kernel-2.4.21-314.tg1'/> + <!-- Old kernel --> + <Package name='gpfs-modules-2.4.21-309.tg1'/> + <Package name='pvfs2-kernel-2.4.21-309.tg1'/> + </Group> + <Group name='nvidia'> + <Package name='NVIDIA-kernel-2.4.21-314.tg1'/> + <Package name='NVIDIA-kernel-2.4.21-309.tg1'/> + </Group> + </Group> + <!-- =================== ia64 ==================== --> + <Group name='ia64'> + <Path name='/boot/efi/SuSE/elilo.conf'/> + <!-- Current kernel --> + <Package name='linux-2.4.21-314.tg1'/> + <Package name='linux-2.4.21-314.tg1-source'/> + <!-- Old kernel --> + <Package name='linux-2.4.21-309.tg1'/> + <Group name='gm'> + <Package name='gm-kernel-2.4.21-314.tg1'/> + <Package name='gm-kernel-2.4.21-309.tg1'/> + </Group> + <Group name='storage-client'> + <!-- Current kernel --> + <Package name='gpfs-modules-2.4.21-314.tg1'/> + <Package name='pvfs2-kernel-2.4.21-314.tg1'/> + <!-- Old kernel --> + <Package name='gpfs-modules-2.4.21-309.tg1'/> + <Package name='pvfs2-kernel-2.4.21-309.tg1'/> + </Group> + </Group> + </Group> + </Bundle> diff --git a/doc/server/plugins/structures/bundler/moab.txt b/doc/server/plugins/structures/bundler/moab.txt new file mode 100644 index 000000000..e0d96be74 --- /dev/null +++ b/doc/server/plugins/structures/bundler/moab.txt @@ -0,0 +1,19 @@ +.. -*- mode: rst -*- + +.. _server-plugins-structures-bundler-moab: + +moab +==== + +This is a fairly simple Bundle for the Moab workload manager. + +.. code-block:: xml + + <Bundle name='moab' version='2.0'> + <Path name='/var/spool/moab'/> + <Path name='/var/spool/moab/moab.cfg'/> + <Group name='moab-server'> + <Path name='/etc/init.d/moab'/> + <Service name='moab'/> + </Group> + </Bundle> diff --git a/doc/server/plugins/structures/bundler/nagios.txt b/doc/server/plugins/structures/bundler/nagios.txt new file mode 100644 index 000000000..fa5b67f30 --- /dev/null +++ b/doc/server/plugins/structures/bundler/nagios.txt @@ -0,0 +1,59 @@ +.. -*- mode: rst -*- + +.. _server-plugins-structures-bundler-nagios: + +nagios +====== + +A Bundle for the Nagios service. This Bundle installs all of our local +Nagios plugins, takes into account that the SNMP package changed names +between SLES 8 and SLES 9, and works on both the Nagios server and +the clients. + +.. code-block:: xml + + <Bundle name='nagios-client' version='2.0'> + <Group name='sles8'> + <Package name='ucdsnmp'/> + </Group> + <Group name='sles9'> + <Package name='net-snmp'/> + </Group> + <Package name='nagios-plugins'/> + <Package name='perl-SNMP'/> + <Package name='radiusclient' /> + <Package name='postgresql-libs' /> + <Package name='mysql-shared' /> + <Path name='/etc/hosts.deny'/> + <Path name='/etc/services'/> + <Path name='/etc/snmpd.conf'/> + <Path name='/usr/lib/nagios/plugins/check_disks_scratchgpfs1.tg'/> + <Path name='/usr/lib/nagios/plugins/check_fs.mds'/> + <Path name='/usr/lib/nagios/plugins/check_gm_network.tg'/> + <Path name='/usr/lib/nagios/plugins/check_gpfs_wan.tg'/> + <Path name='/usr/lib/nagios/plugins/check_hung_jobs.tg'/> + <Path name='/usr/lib/nagios/plugins/check_mem.mds'/> + <Path name='/usr/lib/nagios/plugins/check_mem.tg'/> + <Path name='/usr/lib/nagios/plugins/check_nvidia_acceleration.tg'/> + <Path name='/usr/lib/nagios/plugins/check_os.mds'/> + <Path name='/usr/lib/nagios/plugins/check_procinfo.mds'/> + <Path name='/usr/lib/nagios/plugins/check_torque.tg'/> + <Path name='/usr/lib/nagios/plugins/check_uname_r.tg'/> + <Path name='/usr/lib/nagios/plugins/check_uname_r.tg.conf'/> + <Service name='snmpd'/> + <Group name='nagios-server'> + <Package name='nagios'/> + <Package name='nagios-devel'/> + <Package name='nagios-www'/> + <Path name='/etc/httpd/conf.d/nagios.conf'/> + <Path name='/etc/nagios/cgi.cfg'/> + <Path name='/etc/nagios/checkcommands.cfg'/> + <Path name='/etc/nagios/nagios.cfg'/> + <Path name='/etc/nagios/resource.cfg'/> + </Group> + </Bundle> + +.. note:: + + You may also want to have a look at the :ref:`NagiosGen + <server-plugins-generators-nagiosgen>` plugin. diff --git a/doc/server/plugins/structures/bundler/ntp.txt b/doc/server/plugins/structures/bundler/ntp.txt new file mode 100644 index 000000000..b1264b5ee --- /dev/null +++ b/doc/server/plugins/structures/bundler/ntp.txt @@ -0,0 +1,21 @@ +.. -*- mode: rst -*- + +.. _server-plugins-structures-bundler-ntp: + +ntp +=== + +Despite its lack of groups, this Bundle controls both ``ntp`` servers +and clients. It does this through the use of host-specific entries in the +``Cfg`` repository. It is left as an exercise for the reader to do this +better through use of groups. + +.. code-block:: xml + + <Bundle name='ntp'> + <Package name='xntp'/> + <Path name='/etc/sysconfig/xntp'/> + <Path name='/etc/sysconfig/clock'/> + <Path name='/etc/ntp.conf'/> + <Service name='xntpd'/> + </Bundle> diff --git a/doc/server/plugins/structures/bundler/snmpd.txt b/doc/server/plugins/structures/bundler/snmpd.txt new file mode 100644 index 000000000..2318f8ca1 --- /dev/null +++ b/doc/server/plugins/structures/bundler/snmpd.txt @@ -0,0 +1,17 @@ +.. -*- mode: rst -*- + +.. _server-plugins-structures-bundler-snmpd: + +snmpd +===== + +A simple bundle for a SNMP daemon with a package, a service and a +configuration file. + +.. code-block:: xml + + <Bundle name="snmpd" version="3.0"> + <Package name="snmpd"/> + <Service name="snmpd"/> + <Path name="/etc/snmp/snmpd.conf"/> + </Bundle> diff --git a/doc/server/plugins/structures/bundler/torque.txt b/doc/server/plugins/structures/bundler/torque.txt new file mode 100644 index 000000000..44e186541 --- /dev/null +++ b/doc/server/plugins/structures/bundler/torque.txt @@ -0,0 +1,49 @@ +.. -*- mode: rst -*- + +.. _server-plugins-structures-bundler-torque: + +torque +====== + += torque.xml = + +A longer Bundle that includes many group-specific entries. + +.. code-block:: xml + + <Bundle name='torque' version='1.0'> + <Service name='nfs'/> + <Service name='nfslock'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/spool'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/undelivered'/> + <Path name='/var/spool/torque/pbs_environment'/> + <Path name='/var/spool/torque/torque.server'/> + <Path name='/var/spool/torque/server_name'/> + <Service name='jumbo'/> + <Group name='torque-mom'> + <Service name='torque_mom'/> + <Path name='/etc/init.d/torque_mom'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/aux'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/checkpoint'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/mom_logs'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/mom_priv'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/mom_priv/jobs'/> + <Path name='/var/spool/torque/mom_priv/config'/> + <Path name='/var/spool/torque/mom_priv/prologue'/> + <Path name='/var/spool/torque/mom_priv/epilogue'/> + </Group> + <Group name='torque-server'> + <Service name='torque_server'/> + <Path name='/etc/init.d/torque_server'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/server_logs'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/server_priv'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/server_priv/accounting'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/server_priv/acl_groups'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/server_priv/acl_hosts'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/server_priv/acl_svr'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/server_priv/acl_users'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/server_priv/jobs'/> + <BoundPath type='directory' owner='root' group='root' perms='0755' name='/var/spool/torque/server_priv/queues'/> + </Group> + </Bundle> diff --git a/doc/server/plugins/structures/bundler/yp.txt b/doc/server/plugins/structures/bundler/yp.txt new file mode 100644 index 000000000..6eecb3304 --- /dev/null +++ b/doc/server/plugins/structures/bundler/yp.txt @@ -0,0 +1,32 @@ +.. -*- mode: rst -*- + +.. _server-plugins-structures-bundler-yp: + +yp +== + += yp.xml = + +Note that this Bundle includes **Group** sections. Toplevel elements +go to anybody that includes this Bundle, but clients that belong to +the **yp-client** and **yp-server** groups get their own specialized +treatment too. + +.. code-block:: xml + + <Bundle name='yp' version='2.0'> + <Package name='yp-tools'/> + <Path name='/etc/nsswitch.conf'/> + <Path name='/etc/yp.conf'/> + <Path name='/etc/defaultdomain'/> + <Group name='yp-client'> + <Package name='ypbind'/> + <Service name='ypbind'/> + <Service name='portmap'/> + </Group> + <Group name='yp-server'> + <Package name='ypserv'/> + <Service name='ypserv'/> + <Path name='/etc/ypserv.conf'/> + </Group> + </Bundle> |