diff options
author | Narayan Desai <desai@mcs.anl.gov> | 2006-01-23 22:35:40 +0000 |
---|---|---|
committer | Narayan Desai <desai@mcs.anl.gov> | 2006-01-23 22:35:40 +0000 |
commit | edca0b698637c3fd0a70af7e4752a46afca938d3 (patch) | |
tree | 658fad717833200ccb4e3725c811ccce7c10fc8d /doc/deployment.xml | |
parent | 8ca8a153dfc6bd81ede9f5cff1ee3f111ae053ee (diff) | |
download | bcfg2-edca0b698637c3fd0a70af7e4752a46afca938d3.tar.gz bcfg2-edca0b698637c3fd0a70af7e4752a46afca938d3.tar.bz2 bcfg2-edca0b698637c3fd0a70af7e4752a46afca938d3.zip |
last step of repo switches
git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@1716 ce84e21b-d406-0410-9b95-82705330c041
Diffstat (limited to 'doc/deployment.xml')
-rw-r--r-- | doc/deployment.xml | 214 |
1 files changed, 4 insertions, 210 deletions
diff --git a/doc/deployment.xml b/doc/deployment.xml index d687ea187..1114589d3 100644 --- a/doc/deployment.xml +++ b/doc/deployment.xml @@ -52,58 +52,6 @@ ports. </para> - <variablelist> - <varlistentry> - <term>Package</term> - <listitem> - <para> - A software package. This entity includes a package name - and version number. It may optionally include installation - information (such as a package source URL) if one is - needed. - </para> - </listitem> - </varlistentry> - <varlistentry> - <term>ConfigFile</term> - <listitem> - <para> - A configuration file. This entity includes a file path, - owner, group, permissions, and file contents. - </para> - </listitem> - </varlistentry> - <varlistentry> - <term>SymLink</term> - <listitem> - <para> - A symbolic link. This entity includes a source and - destination. - </para> - </listitem> - </varlistentry> - <varlistentry> - <term>Service</term> - <listitem> - <para> - A service (de)activation. This controls services, a la - chkconfig or update-rc.d. Services are restarted - whenever co-located configuration entities are - modified. This ensures that any configuration changes - are flushed out to all active processes. - </para> - </listitem> - </varlistentry> - <varlistentry> - <term>Directory</term> - <listitem> - <para> - A filesystem directory. This entity includes an owner, - group and permissions. - </para> - </listitem> - </varlistentry> - </variablelist> </section> <section> @@ -129,166 +77,12 @@ </section> <section> - <title>Object Oriented Configs</title> - <para> - One of the most powerful and useful parts about bcfg2 metadata - system is the ability to have truely Object Oriented configs. I - have found that this has made me understand the machines I am - managing in a whole new light. Instead of focusing on what is - installed, I now focus on how machines relate to each other, or - what pieces of the metadata are similar in their configs. To - illistrate this think about the following example machines: - </para> - - <itemizedlist> - <listitem><para>A users desktop machine</para></listitem> - <listitem><para>A multiuser compute machine</para></listitem> - <listitem><para>A users home machine. (telecommuter)</para></listitem> - </itemizedlist> - <para> - These 3 machines have 3 distinct focuses for usage, but in reality - they can have a very similar metadata, depending on how the config is - broken up or the view that is taken of the config. If you focus first - on where the machines are the same it will help to build the common - metadata. below is what all 3 machines have in common: - </para> - <itemizedlist> - <listitem><para>users need to have the software they need to perform - there work. </para></listitem> - </itemizedlist> - <para> - let just encode this into metadata by creating a Class called - common-software that contains all the common software between all 3 - machines. - </para> - <programlisting> - <![CDATA[ - <Class name='common-software'> - <Bundle ... /> - .... - </Class> - ]]> - </programlisting> - <para> - now we need to find where they differ: - </para> - <variablelist> - <varlistentry> - <term>Desktop machines</term> - <listitem> - <itemizedlist> - <listitem> - <para>need to have a GUI interface( Xwindows or what not )</para> - </listitem> - <listitem> - <para>use NIS for authentification</para> - </listitem> - <listitem> - <para>use Autofs to mount home directories</para> - </listitem> - </itemizedlist> - </listitem> - </varlistentry> - <varlistentry> - <term>Multiuser compute machines</term> - <listitem> - <itemizedlist> - <listitem> - <para>only accessible by SSH, No GUI interface</para> - </listitem> - <listitem> - <para>use NIS for authentification</para> - </listitem> - <listitem> - <para>use Autofs to mount home directories</para> - </listitem> - </itemizedlist> - </listitem> - </varlistentry> - <varlistentry> - <term>Home machine</term> - <listitem> - <itemizedlist> - <listitem> - <para>need to have a GUI interface( Xwindows or what not )</para> - </listitem> - <listitem> - <para>use static password file</para> - </listitem> - <listitem> - <para>use local disk for home directories</para> - </listitem> - </itemizedlist> - </listitem> - </varlistentry> - </variablelist> - <para> - As you can see that there are common things pairwise in these configs - that can be further exploited by the object oriented system of bcfg2 - </para> - <programlisting> - <![CDATA[ - <Class name="Gui-Interface"> - <Bundle ... /> - ... - </Class> - <Class name="NIS-Autofs"> - <Bundle ... /> - ... - </Class> - ]]> - </programlisting> - <para> - now all that is left is to ensure that all needs are met and we find - we need to make one more class: - </para> - <programlisting> - <![CDATA[ - <Class name="static-password-local-disk"> - <Bundle ... /> - ... - </Class> - ]]> - </programlisting> - <para> - Now we can mix and match these classes together to build the 3 - profiles or even build new profiles with these descrete entities. - </para> - <programlisting> - <![CDATA[ - <Profile name='desktop'> - <Class name='common-software'/> - <Class name="Gui-Interface"/> - <Class name="NIS-Autofs"> - </Profile> - <Profile name='computerserver'> - <Class name='common-software'/> - <Class name="NIS-Autofs"> - </Profile> - <Profile name='home-desktop'> - <Class name='common-software'/> - <Class name="Gui-Interface"/> - <Class name="static-password-local-disk"> - </Profile> - <Profile name='bare-system'> - <Class name='common-software'/> - </Profile> - ]]> - </programlisting> - <para> - The free form object oriented fashion in which metadata can be - constructed is truely a double edge sword. On one hand you can build - up a nice list of descrete entities that can compose even the most - complicated configs, but it also allows for the creation of entities - that could provide monolithic solutions to each machines config. It is - all in how one views the machines and how much they are willing to - harness the power of the OO based metadata system. - </para> - </section> - <section> - <title>Tips & Tricks</title> + <title>Bcfg2 Server Administration</title> + <para/> + </section> + <section> <title>An example application of bcfg2</title> <para> |