Skip to content

Support_postscripts_associated_with_rsync_files_to_be_run_after_rsync_in_xdcp

ligc edited this page Jul 30, 2015 · 6 revisions

Table of Contents

{{:Design Warning}}

Overview

This design is to cover adding new function to the xdcp rsync support to allow a post-processing script to be run when a file (for example test) is sync'd to the node. If a <test.post> script exists in the same directory on the Management Node as the file <test>, the <test.post> script or executable is run on the destination node after the file <test> is sync'd to the node. If the file <test> is not updated on the node, the <test.post> is not run. A good example of the use, is to have a script to restart a daemon, when the configuration file is sync'd to the node.

Format of the synclist file

The synclist file contains the configuration entries that specify where the files should be synced to. In the synclist file, each line is an entry which describes the location of the source files and the destination location of files on the target node.

The basic entry format looks like following:

path_of_src_file1 -&gt; path_of_dst_file1
path_of_src_file1 -&gt; path_of_dst_directory ( must end in /) 2.5 or later
path_of_src_file1 path_of_src_file2 ... -&gt; path_of_dst_directory

The path_of_src_file* should be the full path of the source file on the Management Node.

The path_of_dst_file* should be the full path of the destination file on target node.

The path_of_dst_directory should be the full path of the destination directory.

Since the synclist file is for common purpose, the target node need not be configured in it.

Example: the following synclist formats are supported:

sync file /etc/file2 to the file /etc/file2 on the node (with same file name)

/etc/file2 -&gt; /etc/file2

sync file /etc/file2 to the file /etc/file3 on the node (with different file name)

/etc/file2 -&gt; /etc/file3

sync file /etc/file4 to the file /etc/tmp/file5 on the node( different file name and directory). The directory will be automatically created for you.

/etc/file4 -&gt; /etc/tmp/file5

sync the multiple files /etc/file1, /etc/file2, /etc/file3, ... to the directory /tmp/etc (/tmp/etc must be a directory when multiple files are synced at one time). If the directory does not exist, xdcp will create it.

/etc/file1 /etc/file2 /etc/file3 -&gt; /tmp/etc

sync file /etc/file2 to the file /etc/file2 on the node ( with the same file name) (2.5 or later)

/etc/file2 -&gt; /etc/

sync all files in /home/mikey to directory /home/mikev on the node (2.5 or later)

/home/mikey/* -&gt; /home/mikey/

As of 2.6 a new stanza (EXECUTE:) will be added to the synclist file for the post script processing.

After the list of files to rsync ( as indicated above), you add the EXECUTE Stanza, followed by the list of postscripts to be run. The postscripts will be of the format /..../<filename>.post, where filename is one of the files that would be eligible to rsync in the file list above.

For example, the following synclist: xdcp syncs /.../file2, /.../file3 /.../file2.post to /.../file2, /.../file3 /.../file2.post on the node and runs /.../file2.post, if /.../file2 is updated by rsync on the node.

/.../file2 -&gt; /.../file3
/.../file2.post -&gt; /.../file2.post (optional, if not hierarchical cluster)
/.../file3 -&gt; /.../file3
/.../file3.post -&gt; /.../file3.post (optional, if not hierarchical cluster)
# the following are postscripts
EXECUTE:
/.../file2.post
/.../file3.post

Another example, the following rsyncs all the files in /home/mikey to the node and will execute filex.post, if the filex from /home/mikey was updated on the node.

/home/mikey/* -&gt; /home/mikey/
# the following are postscripts
EXECUTE:
/home/mikey/filex.post
/home/mikey/filey.post
     .
     .
     .

News

History

  • Oct 22, 2010: xCAT 2.5 released.
  • Apr 30, 2010: xCAT 2.4 is released.
  • Oct 31, 2009: xCAT 2.3 released. xCAT's 10 year anniversary!
  • Apr 16, 2009: xCAT 2.2 released.
  • Oct 31, 2008: xCAT 2.1 released.
  • Sep 12, 2008: Support for xCAT 2 can now be purchased!
  • June 9, 2008: xCAT breaths life into (at the time) the fastest supercomputer on the planet
  • May 30, 2008: xCAT 2.0 for Linux officially released!
  • Oct 31, 2007: IBM open sources xCAT 2.0 to allow collaboration among all of the xCAT users.
  • Oct 31, 1999: xCAT 1.0 is born!
    xCAT started out as a project in IBM developed by Egan Ford. It was quickly adopted by customers and IBM manufacturing sites to rapidly deploy clusters.
Clone this wiki locally