<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://port25.technet.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Port 25: The Open Source Community at Microsoft : Technical Analysis, Kishi Malhotra</title><link>http://port25.technet.com/archive/tags/Technical+Analysis/Kishi+Malhotra/default.aspx</link><description>Tags: Technical Analysis, Kishi Malhotra</description><dc:language>en</dc:language><generator>CommunityServer 2007.1 (Build: 40109.1145)</generator><item><title>Systems Manageability Part 7 - Log Management and Analysis</title><link>http://port25.technet.com/archive/2007/08/07/part-7-log-management-and-analysis.aspx</link><pubDate>Tue, 07 Aug 2007 15:57:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:4143</guid><dc:creator>kishi</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=4143</wfw:commentRss><comments>http://port25.technet.com/archive/2007/08/07/part-7-log-management-and-analysis.aspx#comments</comments><description>&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;Level-Set&lt;/strong&gt; &amp;ndash; &lt;strong&gt;Log Management:&lt;/strong&gt; This section includes open-source technology directed primarily on host-based logging, log file rotation and log file analysis.&amp;nbsp; Many of these tools are very common free and open-source software tools that are distributed and preconfigured with most of the major Linux systems, including major vendors such as RedHat and Novell.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;I. Logrotate&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;Logrotate&lt;/strong&gt; is a very popular application utilized in a number of Linux systems, including all RedHat and SUSE based systems.&amp;nbsp; The logrotate utility typically runs periodically via cron, a task scheduling application.&amp;nbsp; The utility will read a configuration file (/etc/logrotate.conf), and archive and compress log files according to the configuration.&amp;nbsp; Administrators can configure when log files should be rotated based on age and size, and how long backlogs should be maintained.&amp;nbsp; Older archived log files can then be swapped out and replaced with newer archives.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;II. Syslogd and klogd&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;Typical Linux systems utilize a &lt;em&gt;syslog&lt;/em&gt; daemon to capture log messages from userspace applications and write them to text-based log files or send them to a logging host over the network.&amp;nbsp; The syslogd daemon is often accompanied by a klogd application which is designed to capture and log kernel messages.&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;The behavior of the syslog daemon can be configured via the &lt;em&gt;/etc/syslog.conf&lt;/em&gt; configuration file.&amp;nbsp; All messages captured by syslog are categorized by &lt;em&gt;facility&lt;/em&gt; and &lt;em&gt;priority&lt;/em&gt;.&amp;nbsp; Messages can then be sent to particular log files or logging hosts, or dropped completely based on their facility and priority attributes.&lt;/font&gt;&lt;/p&gt;&lt;table border="0" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="margin-left: 1.45in; border-collapse: collapse"&gt;&lt;tbody&gt;&lt;tr style="height: 28.75pt"&gt;&lt;td style="border-right: black 1pt solid; padding-right: 5.4pt; border-top: black 1pt solid; padding-left: 5.4pt; background: #cccccc; padding-bottom: 0in; border-left: black 1pt solid; width: 145.25pt; padding-top: 0in; border-bottom: windowtext 1pt solid; height: 28.75pt" width="194"&gt;&lt;font face="Verdana"&gt;Facilities&lt;/font&gt;&lt;/td&gt;&lt;td style="border-right: black 1pt solid; padding-right: 5.4pt; border-top: black 1pt solid; padding-left: 5.4pt; background: #cccccc; padding-bottom: 0in; border-left: medium none; width: 142.75pt; padding-top: 0in; border-bottom: windowtext 1pt solid; height: 28.75pt" width="190"&gt;&lt;font face="Verdana"&gt;Priorities&lt;/font&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height: 180.4pt"&gt;&lt;td style="border-right: black 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #e0e0e0; padding-bottom: 0in; border-left: black 1pt solid; width: 145.25pt; padding-top: 0in; border-bottom: black 1pt solid; height: 180.4pt" valign="top" width="194"&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; auth or security&lt;/font&gt; &lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; authpriv&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cron&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; daemon&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; kern&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lpr&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mail&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mark&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; news&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; syslog&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; user&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; uucp&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; local0 through local7&lt;/font&gt;&lt;/p&gt;&lt;/td&gt;&lt;td style="border-right: black 1pt solid; padding-right: 5.4pt; border-top: medium none; padding-left: 5.4pt; background: #e0e0e0; padding-bottom: 0in; border-left: medium none; width: 142.75pt; padding-top: 0in; border-bottom: black 1pt solid; height: 180.4pt" valign="top" width="190"&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; debug&lt;/font&gt; &lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; info&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; notice&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; warning or warn&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; err or error&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; error&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; crit&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;-&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; emerg or panic&lt;/font&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;em&gt;List of syslog facilities and priorities.&lt;/em&gt;&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;III. Syslog-ng&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;The &lt;strong&gt;syslog-ng&lt;/strong&gt; application aims to be an enhanced drop-in replacement for the traditional syslog daemon.&amp;nbsp; It provides many of the same features of the standard syslog daemon, but includes additional features such as advanced message filtering based on content, remote logging via UDP or TCP, and the ability to write log files to a database such as MySQL or PostgreSQL.&amp;nbsp; More recent SUSE-based systems such as SLES10 have switched to syslog-ng as the default syslog server.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;IV. Viewing Logs&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;Most log files on a Linux system are stored in plain-text, which means they can be viewed and parsed using a number of different command-line tools.&amp;nbsp; Typical utilities such as &lt;em&gt;tail, head, grep, cat, less, more, sed&lt;/em&gt; and &lt;em&gt;awk&lt;/em&gt; can be used to view and filter log messages via the command line.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;There are also a myriad of utilities designed to parse and view log files via a GUI or web browser.&amp;nbsp; Some utilities are even designed to handle specific log formats, such as those generated by Linux&amp;rsquo;s Netfilter firewall subsystem.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;em&gt;&lt;strong&gt;&lt;a name="_Toc158034354" title="_Toc158034354"&gt;&lt;/a&gt;GNOME System Log Viewer&lt;/strong&gt;&lt;/em&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;The GNOME system includes a GTK-based system log viewing application that displays system logs via the GUI.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;em&gt;&lt;strong&gt;&lt;a name="_Toc158034356" title="_Toc158034356"&gt;&lt;/a&gt;YaST System Log Module&lt;/strong&gt;&lt;/em&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;SUSE-based systems using YaST typically include a module called &lt;em&gt;View System Log&lt;/em&gt; (called internally as &lt;em&gt;view_anymsg&lt;/em&gt;).&amp;nbsp; Similar to the GNOME System Log viewer, the YaST module allows an administrator to view many of the various system logs without using the command-line.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;V. Log Analysis&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;&lt;em&gt;&lt;a name="_Toc158034359" title="_Toc158034359"&gt;&lt;/a&gt;LogWatch&lt;/em&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;The &lt;em&gt;logwatch&lt;/em&gt; utility is designed to parse system logs and located any entries that might indicate security threat or system failure and send an email report to a designated address.&amp;nbsp; Logwatch is distributed with RedHat Enterprise Linux systems.&amp;nbsp; The following is an excerpt from the RPM description:&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;em&gt;&amp;ldquo;LogWatch is a customizable log analysis system. LogWatch parses through your system&amp;#39;s logs for a given period of time and creates a report analyzing areas that you specify, in as much detail as you require. LogWatch is easy to use and claims that it will work right out of the package on almost all systems. Note that LogWatch now analyzes Samba logs.&amp;rdquo;&lt;/em&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;LogWatch is typically executed periodically via &lt;em&gt;cron&lt;/em&gt;, a task scheduling application.&amp;nbsp; &amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;&lt;em&gt;&lt;a name="_Toc158034361" title="_Toc158034361"&gt;&lt;/a&gt;LogCheck&lt;/em&gt;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;The &lt;em&gt;logcheck&lt;/em&gt; utility is a part of the &lt;strong&gt;Sentry Tools&lt;/strong&gt; project that also includes portsentry, a utility designed to detect port scans.&amp;nbsp; Similar to the LogWatch utility, the software is designed to parse system log files, find log entries that may indicate security problems and send an email to a preconfigured address.&amp;nbsp; Also similar to the LogWatch utility, logcheck relies on the standard &lt;em&gt;cron&lt;/em&gt; utility to be periodically executed.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;That does it for Log Management and Analysis section. We have one last blog to go and certainly hope that you found the information we have captured for you useful. If you&amp;rsquo;re running any special toolsets or customizable scripts for log management and analysis and would like to share your experience with us, please send us your feedback and as always, THANK YOU for tuning into Port25.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=4143" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/Kishi+Malhotra/default.aspx">Kishi Malhotra</category><category domain="http://port25.technet.com/archive/tags/Technical+Analysis/default.aspx">Technical Analysis</category><category domain="http://port25.technet.com/archive/tags/Management/default.aspx">Management</category><category domain="http://port25.technet.com/archive/tags/Community/default.aspx">Community</category><category domain="http://port25.technet.com/archive/tags/Server+Center/default.aspx">Server Center</category></item><item><title>Systems Manageability Part 3 - Provisioning and Deployment</title><link>http://port25.technet.com/archive/2007/05/03/systems-manageability-part-3-provisioning-and-deployment.aspx</link><pubDate>Thu, 03 May 2007 17:29:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:3864</guid><dc:creator>kishi</dc:creator><slash:comments>17</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=3864</wfw:commentRss><comments>http://port25.technet.com/archive/2007/05/03/systems-manageability-part-3-provisioning-and-deployment.aspx#comments</comments><description>&lt;font face="Verdana" size="2"&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;I want to start this blog with a note of Thanks to &lt;a href="http://softwareblogs.intel.com/author/ajay-mungara/" style="color: blue; text-decoration: underline; text-underline: single"&gt;Ajay Mungara&lt;/a&gt;, the Manageability Developer Community Manager from Intel and &amp;ldquo;einhverfr&amp;rdquo;, both of whom gave some very constructive &lt;a href="http://port25.technet.com/archive/2007/03/21/systems-manageability-part-1-why-manageability-matters.aspx#comments" style="color: blue; text-decoration: underline; text-underline: single"&gt;feedback&lt;/a&gt; on the previous blog. In the next six blogs to follow, including this one, I will do a &amp;ldquo;deep-dive&amp;rdquo; into the six specific areas we covered under the &amp;ldquo;Systems Manageability&amp;rdquo; &lt;a href="http://port25.technet.com/archive/2007/04/06/systems-manageability-part-2-scope-methodology-and-ontology.aspx" style="color: blue; text-decoration: underline; text-underline: single"&gt;ontology&lt;/a&gt;. &lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;Let&amp;rsquo;s start this blog with the first of the six categories from the ontology - &amp;nbsp;&lt;strong&gt;&amp;ldquo;Deployment and Provisioning&amp;rdquo;&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;Level-Set: Deployment and Provisioning as we understand it, encompasses all tasks related to the initial installation of an operating system on remote system, as well as post-installation of software on a remote system.&amp;nbsp; Much of these toolsets are geared toward automated system provisioning and cloning. There&amp;rsquo;s lots of different tools out there that can be used but we have focused on the most popular ones, namely Kickstart, Autoyast, &amp;ldquo;Bare-Metal&amp;rdquo; provisioning and RedHat Network. In the paragraphs to follow, we have attempted to lay out our understanding of these tools after using them in the OSSL:&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;I.KICKSTART:&lt;/strong&gt; is an automated installation utility for RedHat-based systems, including Fedora Core and RHEL based systems.&amp;nbsp; Kickstart software requires the creation of a configuration file (similar to an &amp;ldquo;answer file&amp;rdquo; in Windows lingo) which contains all the information the installation program will require to install the operating system.&amp;nbsp; The configuration file and all the RPM software packages are typically kept on a remote server such as a HTTP or FTP. The location of the Kickstart configuration file is typically passed to the kernel at boot time.&amp;nbsp; For example, once the bootloader (GRUB, LILO) loads, the user is often presented with a &amp;ldquo;boot:&amp;rdquo; prompt that allows the user to pass arguments to the kernel.&amp;nbsp; To load a kickstart configuration file from a remote server one would type the following:&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size: 10pt; font-family: Lucida Console"&gt;boot:&lt;/span&gt;&lt;/strong&gt;&lt;span style="font-size: 10pt; font-family: Lucida Console"&gt; linux ks=http://&amp;lt;server&amp;gt;/location/of/kickstart.cfg&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;The administrator can then create multiple Kickstart configuration files for different configurations.&amp;nbsp; With the addition of a PXE-based server, much of the provisioning process can be automated. A Kickstart configuration file is simply a text file, which can be created and edited manually with any text-editor.&amp;nbsp; A GUI-based Kickstart file creation program called system-config-kickstart is also available from the Fedora and RHEL distributions. Both kickstart and autoYaST provide the ability to run arbitrary commands during the post-installation phase.&amp;nbsp; This allows administrators to run individual commands, or entire shell scripts to automate any post installation tasks that may be required.&amp;nbsp; RedHat provides a GUI-based tool to assist one in building a kickstart configuration , however in practice it is very easy to customize the configuration file by hand.&amp;nbsp; The ability to run shell commands via the post-configuration phase is simple yet extremely powerful.&amp;nbsp; &lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;II. AutoYaST:&lt;/strong&gt; is another automated installation utility, similar to RedHat&amp;rsquo;s Kickstart utility, but used primarily with SUSE-based systems.&amp;nbsp; Novell provides a YaST2 module for autoYaST, which is a GUI tool that can be used to create an autoYaST configuration file &amp;ndash; also similar to RedHat&amp;rsquo;s system-config-kickstart utility. Many of the same rules and procedures used with the kickstart utility also apply to autoYaST.&amp;nbsp; Administrators that need to deploy SUSE clients or servers can create any number of autoYaST configuration files to fit a particular system profile.&amp;nbsp; These can then be used to automate the installation of a SUSE system over a network.&amp;nbsp; When combined with PXE/DHCP setup administrators can deploy and start a SUSE install without using any physical media (i.e. an installation CD/DVD).&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;III. Bare-Metal Provisioning:&lt;/strong&gt; Automated deployment tools such as Kickstart and Autoyast support system provisioning via HTTP, (T)FTP and NFS.&amp;nbsp; Completely automated installations can also be configured using the Pre-Execution Environment (PXE), DHCP, tftp and kickstart or autoyast.&amp;nbsp; By automating the boot process, it no longer becomes necessary to manually initialize the installation process via a CDROM or other bootable medium. &lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;Many cluster deployment solutions utilize these very same technologies to deploy large numbers of nodes in a very short time.&amp;nbsp; &lt;a href="http://www.rocksclusters.org/wordpress/" style="color: blue; text-decoration: underline; text-underline: single"&gt;ROCKS&lt;/a&gt;, for example, automates the booting and (re)deployment cluster nodes on the network using PXE, DHCP and kickstart, a process that can sometimes require less than 10-minutes for a single node.&amp;nbsp; Proprietary tools such as CSM, IBM&amp;rsquo;s cluster management software, also utilizes PXE, DHCP and kickstart or autoYaST to (re)provision cluster nodes as needed.&lt;/font&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;&lt;a name="_Toc158034249"&gt;&lt;/a&gt;Configuring a PXE Server for Automated Installations:&lt;/strong&gt; There are two common utilities one may use to configure a PXE server on Linux.&amp;nbsp; Testing for this scenario was done using a RedHat based system.&amp;nbsp; Therefore some aspects of the following descriptions, such as locations of configuration files, will be RedHat-centric.&amp;nbsp; The general necessity of the configuration and the components, however, are not distribution specific.&lt;/font&gt;&lt;/li&gt;&lt;ul&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;pxeos&lt;/strong&gt; &amp;ndash; This utility can be used to configure operating system descriptions within the PXE boot files.&amp;nbsp; Operating system descriptions include the OS name, the protocol used to obtain the OS files (HTTP, FTP, NFS) and the full URI and path to the installation files.&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;system-config-netboot &lt;/strong&gt;&amp;ndash; The system-config-netboot utility is a graphical application that can perform many of the same tasks as the pxeos utility.&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;&lt;a name="_Toc158034250"&gt;&lt;/a&gt;Configuring DHCP:&lt;/strong&gt; The DHCP daemon can be configured via the /etc/dhcpd.conf file.&amp;nbsp; Those options that are specific to allowing PXE boot clients are listed below.&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Lucida Console"&gt;&lt;font size="2"&gt;allow bootp;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Lucida Console"&gt;&lt;font size="2"&gt;class &amp;quot;pxeclients&amp;quot; {&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Lucida Console"&gt;&lt;font size="2"&gt;match if substring(option vendor-class-identifier, 0, 9) = &amp;quot;PXEClient&amp;quot;;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-family: Lucida Console"&gt;&lt;font size="2"&gt;&amp;nbsp;&amp;nbsp; filename &amp;quot;linux-install/pxelinux.0&amp;quot;;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-family: Lucida Console"&gt;&lt;font size="2"&gt;}&lt;/font&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;&lt;a name="_Toc158034251"&gt;&lt;/a&gt;Configuring TFTP:&lt;/strong&gt; The TFTP daemon must first be enabled via xinetd super daemon.&amp;nbsp; The following configuration is added to /etc/xinetd.conf, or sometimes /etc/xinetd.d/tftp, depending on the distribution:&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;&lt;/font&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;service tftp&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; disable&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = no&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; port&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;= 69&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; socket_type&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = dgram&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; protocol&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = udp&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; wait&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = yes&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; user&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = root&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; server&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = /usr/sbin/in.tftpd&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; server_args&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;= -s /tftpboot&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; per_source&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 11&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cps&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = 100 2&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: 'Lucida Console'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; flags&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = IPv4&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size: 10pt; font-family: Lucida Console"&gt;}&lt;/span&gt; &lt;p&gt;&lt;em&gt;&lt;font face="Verdana" size="2"&gt;&lt;strong&gt;TFTP Configuration in xinetd.conf&lt;/strong&gt;&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;The directory /tftpboot/linux-install is the default used by the system-config-netboot configuration tool.&amp;nbsp; The directory contains kernels and the necessary configuration files required to boot a system and begin a kickstart installation.&amp;nbsp; The configuration file /tftpboot/linux-install/pxelinux.cfg/pxeos.xml contains specific definitions about which network install profiles are available to PXE boot clients.&lt;/font&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;That&amp;rsquo;s it for the Provisioning and Deployment section. As always, please let us know if you found the above mentioned useful and any comments/feedback you may have. Thank you for tuning into Port25.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;/font&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=3864" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/Kishi+Malhotra/default.aspx">Kishi Malhotra</category><category domain="http://port25.technet.com/archive/tags/Technical+Analysis/default.aspx">Technical Analysis</category><category domain="http://port25.technet.com/archive/tags/Management/default.aspx">Management</category><category domain="http://port25.technet.com/archive/tags/Community/default.aspx">Community</category><category domain="http://port25.technet.com/archive/tags/Server+Center/default.aspx">Server Center</category></item><item><title>Systems Manageability – Part 2: Scope, Methodology and Ontology</title><link>http://port25.technet.com/archive/2007/04/06/systems-manageability-part-2-scope-methodology-and-ontology.aspx</link><pubDate>Fri, 06 Apr 2007 18:14:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:3705</guid><dc:creator>kishi</dc:creator><slash:comments>5</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=3705</wfw:commentRss><comments>http://port25.technet.com/archive/2007/04/06/systems-manageability-part-2-scope-methodology-and-ontology.aspx#comments</comments><description>&lt;p&gt;&lt;font face="Verdana" size="2"&gt;In my last blog called &amp;ldquo;&lt;a href="http://port25.technet.com/archive/2007/03/21/systems-manageability-part-1-why-manageability-matters.aspx" style="color: blue; text-decoration: underline; text-underline: single"&gt;Why Manageability Matters&lt;/a&gt;&amp;rdquo; I talked about why we chose to work on &amp;ldquo;Systems Manageability&amp;rdquo; as a whole and get a grassroots understanding of it within the context of Linux and Open Source space. In this blog, I&amp;rsquo;m going to address the Methodology and Ontology of the Systems Manageability project. This will shed immediate light on how we approach, design and implement projects in the &lt;a href="http://port25.technet.com/default.aspx" style="color: blue; text-decoration: underline; text-underline: single"&gt;OSSL&lt;/a&gt;. Let&amp;rsquo;s start with the main goals and purpose behind the project. &lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;font face="Verdana" size="2"&gt;I.&amp;nbsp; Systems Manageability Project Goals: &lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Survey the scope, depth and breadth of Linux manageability solutions, primarily utilizing open source software&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Use the knowledge from the research to develop an understanding of Manageability landscape in the Linux and Open Source&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Build and simulate common Linux management solutions in the OSSL (SMORG scale &amp;ndash; small and medium sized organizations )&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Understand if a cohesive Linux manageability stack exists today--Understand manageability focus from a Linux Sysadmin&amp;rsquo;s perspective (SMORG scale)&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;Once we defined what we needed to get into, yet another realization dawned on us, which was the sheer size and volume of the data and information that was staring at us in the face. Let&amp;rsquo;s just say &amp;ldquo;overwhelmed&amp;rdquo; was a mild word compared to what we were looking at. My colleague, Steve Zarkos and I immediately realized that it was time to trim the scope of what we were doing and limit ourselves to what&amp;rsquo;s achievable in three months and with two people J. This called for drawing up what we considered to be &amp;ldquo;out-of-scope&amp;rdquo;, which was:&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;font face="Verdana" size="2"&gt;II. Out-of-scope:&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Enterprise-level Management Stacks such as HP Openview, Tivoli etc.&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Security and user management, which is a very large area in itself, and would include policies, permissions, authentication, identity management etc.&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Asset management frameworks that allow for inventory management, asset tracking etc.&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana" size="2"&gt;Disaster recovery and planning which would include backup technologies and data protection management&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;&lt;font face="Verdana" size="2"&gt;III. Systems Manageability Project Methodology: &lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;The approach taken for the project was simple and scientific. The project was divided into three stages:&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;img border="0" height="100" src="http://port25.technet.com/photos/images/images/3703/original.aspx" width="827" /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;font face="Verdana"&gt;&lt;strong&gt;&lt;font size="2"&gt;Stage 1&lt;/font&gt;&lt;/strong&gt;&lt;font size="2"&gt; &amp;ndash; Discovery and Definition: We would explore, uncover and scour the Linux Manageability landscape for toolsets, apps and frameworks prevalent in the SMORG scale workspace today&lt;/font&gt;&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana"&gt;&lt;strong&gt;&lt;font size="2"&gt;Stage 2&lt;/font&gt;&lt;/strong&gt;&lt;font size="2"&gt; &amp;ndash; Lab Implementation: We would implement the results of our research which would be actual Linux and Open Source products in the Lab&lt;/font&gt;&lt;/font&gt;&lt;/li&gt;&lt;li&gt;&lt;font face="Verdana"&gt;&lt;strong&gt;&lt;font size="2"&gt;Stage 3&lt;/font&gt;&lt;/strong&gt;&lt;font size="2"&gt; &amp;ndash; Analysis and Conclusion: After discovering, defining and implementing Linux and Open Source based manageability toolsets, apps and frameworks in the lab, we would spend time understanding their form, function and experience to draw conclusions&lt;/font&gt;&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;&lt;font face="Verdana" size="2"&gt;IV. Systems Manageability Project Ontology (classification):&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;The hardest and most challenging aspect of the project was to develop some sort ontology, characterization or classification of the manageability technologies prevalent in the IT environments today.&amp;nbsp; The diagram below represents the overall &amp;quot;buckets&amp;quot; defined as part of this exercise.&amp;nbsp; Each section of the diagram is broken down to provide a detailed breakdown of each of these Systems Manageability classifications represented:&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;img border="0" height="330" src="http://port25.technet.com/photos/images/images/3704/original.aspx" width="484" /&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;In the next blog to follow, I will break down the first segment of ontology i.e. &amp;ldquo;Provisioning and Deployment&amp;rdquo; and discuss our research with all of you. Meanwhile, we always look forward to hearing from you, our audience and urge you for any feedback you may have about the topic. Thank You for tuning into Port25. &lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana" size="2"&gt;Cheers!&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font face="Verdana"&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=3705" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/Kishi+Malhotra/default.aspx">Kishi Malhotra</category><category domain="http://port25.technet.com/archive/tags/Technical+Analysis/default.aspx">Technical Analysis</category><category domain="http://port25.technet.com/archive/tags/Management/default.aspx">Management</category><category domain="http://port25.technet.com/archive/tags/Server+Center/default.aspx">Server Center</category></item><item><title>What Lies Beneath: Setting up underlying HPC tools</title><link>http://port25.technet.com/archive/2006/12/21/what-lies-beneath-setting-up-underlying-hpc-tools.aspx</link><pubDate>Thu, 21 Dec 2006 22:34:00 GMT</pubDate><guid isPermaLink="false">af7480c4-26b7-468d-87b0-2acebabb473d:3387</guid><dc:creator>kishi</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://port25.technet.com/rsscomments.aspx?PostID=3387</wfw:commentRss><comments>http://port25.technet.com/archive/2006/12/21/what-lies-beneath-setting-up-underlying-hpc-tools.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;This blog continues what I started writing about w/ &lt;a href="http://port25.technet.com/archive/2006/12/01/thinking-about-hpc-infrastructure.aspx"&gt;Thinking About HPC Infrastructure&lt;/a&gt;&amp;nbsp;and what Frank wrote in about in &lt;a href="http://port25.technet.com/archive/2006/10/20/Overloading-_2700_Clusters_2700_.aspx"&gt;Overloading Clusters&lt;/a&gt;. &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;After reading thru the previous blogs on HPC, someone might ask &amp;ldquo;What are some of the core components of HPC ?&amp;rdquo;. After all, once you&amp;rsquo;ve seen the outside of a Maserati or a Pantera DeTomaso, you&amp;rsquo;re not going to be satisfied just by ogling at it. Even after a test drive, the engineer in you will want to pop the hood and see what&amp;rsquo;s inside. Taking a similar approach let&amp;rsquo;s uncover some underlying HPC technologies by looking at any basic HPC setup. Once all the provisioning has been completed, the HPC system will be physically deployed with an OS and relevant drivers, utilities etc. Yet, before the actual HPC application can get installed across, there remains a critical step in the process, i.e. configuration of cluster and file system along with any tools and interfaces such as MPI (Message Passing Interface) etc. After peeling through the HPC application layer, its worthwhile to do a &amp;ldquo;deep-dive&amp;rdquo; into what really runs the HPC clusters. A broad category of these tools are:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Cluster Management tools e.g. CSM&lt;/li&gt;&lt;li&gt;Job Scheduling tools e.g. SCALI, Maui&lt;/li&gt;&lt;li&gt;Resource Management tools e.g. Torque&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;If you&amp;rsquo;re trying to understand the &amp;ldquo;WHY&amp;rdquo; behind the existence of these tools and their importance, take a look at Cluster Management for example. Cluster configuration, installation and management can be difficult and requires intimate familiarity with the HPC hardware, OS, underlying architecture etc. Without specific tools that attend to and manage specific underlying HPC sub-components, HPC just won&amp;rsquo;t be what it is. So, it is worthwhile to understand the unique installation experience of the tools, such as the ones listed above to understand the complexity of HPC systems. Ready &amp;ndash; let&amp;rsquo;s dive in to the installation and function of these tools:&lt;/p&gt;&lt;p&gt;1. &lt;strong&gt;SCALI&lt;/strong&gt;: The &lt;a href="http://www.scali.com/"&gt;SCALI&lt;/a&gt; management and MPI software packages provide deployment, monitoring and job scheduling services for a cluster.&amp;nbsp; After you deploy this software, you will be able see all the compute nodes that may have been preconfigured or are configured on your system. Scali will enable you to monitor the systems and run jobs using the SCALI graphical interface.&amp;nbsp; In order to license the SCALI software, you must utilize the scainstall command to produce a &lt;em&gt;license request file.&lt;/em&gt;&amp;nbsp; This file can then be sent to SCALI to receive a permanent key. For those that need some hand-holding through this, luckily SCALI provides very comprehensive documentation on their website.&amp;nbsp; A large portion of the SCALI Manage User&amp;rsquo;s Guide is dedicated to pre-setup planning and configuration of the cluster and the network.&amp;nbsp; The documentation provides detailed recommendations about how you can set up their Ethernet-based network environment and out-of-band management network.&amp;nbsp; The documentation also provides a general overview about how to install and configure higher performance interconnects, including bonded Ethernet, Infiniband, Myrinet and SCI. The SCALI Manage interface provides simple tools to assist in configuring and testing DET, Infiniband, and Myrinet devices for use with the SCALI MPI implementation.&amp;nbsp; The SCALI MPI software supports multiple Infiniband stacks including Mellanox, Topspin, Voltaire and Infinicon.&lt;/p&gt;&lt;p&gt;2. &lt;strong&gt;HP-MPI&lt;/strong&gt;: &lt;a href="http://h21007.www2.hp.com/dspp/tech/tech_TechDocumentDetailPage_IDX/1,1701,1238,00.html"&gt;HP-MPI&lt;/a&gt; is Hewlett-Packard&amp;rsquo;s Linux-based implementation of the Message Passing Interface (MPI).&amp;nbsp; Many of the utilities distributed with HP-MPI are similar to other common MPI utilities such as MPICH - e.g. mpicc, mpirun, etc. In order to utilize the HP-MPI software, a license is required for each CPU core in the cluster.&amp;nbsp; To obtain a license file you are required to obtain the MAC address from each node (typically eth0) and input that information into a form at licensing.hp.com.&amp;nbsp; The resulting file can then be copied to the compute node. The HP-MPI software is non-functional until licensing files are generated for the nodes&lt;/p&gt;&lt;p&gt;3. &lt;strong&gt;CSM&lt;/strong&gt; (&lt;strong&gt;Cluster Systems Management&lt;/strong&gt;): The &lt;a href="http://www-03.ibm.com/servers/eserver/clusters/software/csm.html"&gt;CSM&lt;/a&gt; software suite is designed to automate the deployment and management of cluster nodes.&amp;nbsp; Nodes can be remotely installed with an operating system as well as the CSM software for later monitoring.&amp;nbsp; The CSM software supports RedHat and Novell on multiple platforms.&amp;nbsp; In order to obtain and install the CSM software one must register with IBM&amp;rsquo;s website and download the required RPMs. In order to configure CSM, it can remotely install the operating system and/or the CSM software on the compute nodes.&amp;nbsp; Much like Platform ROCKS, CSM makes use of PXE functionality and RedHat&amp;rsquo;s kickstart or the autoyast software to remotely install the operating system. The CSM software provides multiple methods for defining the nodes that should be deployed and managed:&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;a. The first method involves creating a hostname mapping (hostmap) file, which is a colon-delimited file that defines a number of attributes of each node&lt;br /&gt;b. The second method also involves manually creating and editing a &amp;ldquo;node definition&amp;rdquo; (nodedef) file.&amp;nbsp; This is the method suggested by the documentation for use with small clusters&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;Proper remote power and remote console capabilities greatly ease the administration and deployment of the compute nodes, however according to the &lt;em&gt;&lt;u&gt;CSM FAQ&lt;/u&gt;&lt;/em&gt; remote power management is not absolutely required. All the compute nodes must be rebooted (remotely or manually).&amp;nbsp; They are then PXE booted and installed with RHEL4 using the kickstart installation system.&lt;/p&gt;&lt;p&gt;4. &lt;strong&gt;Maui and Torque&lt;/strong&gt;: Both Torque and Maui are free software which must be compiled from the source distribution on the head node.&amp;nbsp; Maui is an open-source job scheduler for compute clusters.&amp;nbsp; It supports a number of task management features not found in other parallel batch processing software including policy-based scheduling and prioritization of tasks. Torque is an open-source resource manager for managing compute nodes and scheduled jobs.&amp;nbsp; It can integrate with Maui to provide additional features for scheduling and managing scheduled tasks.&amp;nbsp; Installation of Torque can be done using the guidance available in the &lt;a href="http://www.clusterresources.com/torquedocs20/1.1installation.shtml"&gt;&lt;em&gt;Torque 2.0 Admin Manual&lt;/em&gt;&lt;/a&gt;&lt;em&gt; .&lt;/em&gt;&amp;nbsp; &lt;/p&gt;&lt;p&gt;5. &lt;strong&gt;Platform Rocks&lt;/strong&gt;: &lt;a href="http://www.platform.com/Products/Platform.OCS/"&gt;Platform Rocks&lt;/a&gt; is a cluster deployment software that facilitates the deployment of various software stacks (&amp;ldquo;rolls&amp;rdquo;) onto the compute nodes.&amp;nbsp; The software is capable of deploying the base operating system and utilities required for cluster administration, management and scheduling.&amp;nbsp; The software can also manage configuration and updates to ensure consistency throughout the cluster. &lt;em&gt;Platform Rocks&lt;/em&gt; is a suite of utilities that are packaged together as separate installable rolls.&amp;nbsp; One of the main goals of the software is to allow for easy installation and integration of third-party rolls and applications.&amp;nbsp; One unique aspect to the Platform Rocks installation approach is that the software installs an operating system on the head node, and also installs all the required rolls at the same time.&amp;nbsp; The software can also automatically set up the subsystem required to install an operating system and other packages on the compute nodes (such as management agents, etc). &lt;/p&gt;&lt;p&gt;That about does it for a quick &amp;ldquo;deep-dive&amp;rdquo;. Let me insert a gentle reminder that these are not the only cluster or resource management technologies out there in the HPC space but rather the ones most prevalent. If you have additional tools that you have worked with, we&amp;rsquo;d like to hear from you and thank you for tuning in to Port 25. &lt;strong&gt;HAPPY HOLIDAYS!&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;font face="Verdana" size="2"&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://port25.technet.com/aggbug.aspx?PostID=3387" width="1" height="1"&gt;</description><category domain="http://port25.technet.com/archive/tags/Kishi+Malhotra/default.aspx">Kishi Malhotra</category><category domain="http://port25.technet.com/archive/tags/Technical+Analysis/default.aspx">Technical Analysis</category><category domain="http://port25.technet.com/archive/tags/HPC/default.aspx">HPC</category><category domain="http://port25.technet.com/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://port25.technet.com/archive/tags/Server+Center/default.aspx">Server Center</category></item></channel></rss>