synctool

Software Screenshot:
synctool
Software Details:
Version: 5.3 / 6.0 RC1
Upload Date: 20 Feb 15
Developer: Walter de Jong
Distribution Type: Freeware
Downloads: 4

Rating: 3.0/5 (Total Votes: 1)

synctool is an administrative tool for working with clusters of computers.

synctool copies configuration files to groups of machines in your cluster based on what groups (or classes) they are in. By doing so, it keeps the configuration on that group of machines synchronized (or, "in sync").

If needed, synctool will restart or reload any daemons, as you wish. synctool can be easily extended to do other administrative tasks, such as checking daemons, checking free disk space, installing packages, etc. or any other task you want it to do.

synctool was developed by Walter de Jong from 2003 to 2006.

synctool simplyfies system administration by working with the following concepts:

· a host can be part of one or more groups, or classes
· files are designated a class by means of filename extension
· the 'overlay' directory tree contains the files and directories that should be copied (or 'synced') to the target host
· when certain files are updated, you will want to execute a script (eg, /etc/init.d/daemon restart)
· simplicity. It uses the power of rsync and ssh to distribute the files.
· extendibility. Make synctool more powerful by writing plugin scripts.

Installation:

· copy the contents of the bin/ directory to your local software directory, like /usr/local/bin/

These executables should be available on every node in your cluster. It is easy to use a shared filesystem for this, or use rcp, scp, rsync, or whatever file distribution mechanism you already have.

· setup a synctool repository on the master node:

mkdir /var/lib/synctool

· usually the masterdir is only accessible by root:

chown root.root /var/lib/synctool
chmod 700 /var/lib/synctool

· setup initial synctool repository directories:

mkdir /var/lib/synctool/overlay
mkdir /var/lib/synctool/delete
mkdir /var/lib/synctool/tasks
mkdir /var/lib/synctool/scripts

· edit the configuration file

cp synctool.conf.example /var/lib/synctool/synctool.conf
vi /var/lib/synctool/synctool.conf

· edit the .sh scripts to contain the correct path names

vi /usr/local/bin/synctool-local.sh
vi /usr/local/bin/synctool.sh


You should decide whether or not you want to administrate your master node with synctool as well. This is a personal preference; sometimes it is easier to apply synctool to the master node as well, sometimes it is wiser not to. The hosts that are under synctool's control are listed in synctool.conf, so if you want to exclude it, leave it out of the config file.

As stated in the README, the synctool python program does not do any network communication (like, for example, cfengine does). This means you have to synchronize the repository to all nodes in the cluster by other means; rsync is perfectly suited to do this job. It is also possible to put the synctool repository on a shared filesystem. This is not recommended for large clusters for performance reasons. By default, synctool is deployed together with a wrapper script synctool.sh
that does the following:

* rsync the repository to all nodes
* run synctool on all nodes via ssh

synctool uses rsync with ssh to copy files to all nodes. This means you will need to set up ssh with passwordless login for root from the masternode to the cluster nodes. This has some security implications. Be sure you understand every security aspect before bluntly opening up the nodes. See the SSH documentation (for OpenSSH, see http://www.openssh.org ) on possible ways to achieve this.

For sites with extra tight security, it is possible to configure ssh to run only specific (synctool) commands, or maybe you want to adapt the synctool.sh wrapper script so that it suits your security needs.

What is new in this release:

  • Many new things were added in this major release. synctool now features node range syntax, which can be used on the command-line as well as in the config file to easily select or define ranges of nodes.
  • Templates are new; they allow you to generate config files on the fly from a stanza file and some variables.
  • synctool can now easily manage multiple clusters using one admin node, and it's also better at handling multiple operating systems.
  • The new purge feature is ideal for making perfect mirrors of directory trees.

What is new in version 5.3:

  • This version fixed a number of small issues and notably two larger ones: the PATH environment variable is now searched for the configured commands.
  • This helps on multi-platform setups.
  • The --erased-saved option now is an action by itself.
  • Using --erased-saved will no longer trigger other updates to occur inadvertently.

What is new in version 5.1:

  • This version fixes a number of bugs present in the previous release.
  • The comma-separated list of nodes and groups on the command line was not being parsed correctly in certain cases.
  • Whenever output was being printed to stderr, the node name would not be printed in front of the message.
  • An alternative way of uniquely identifying a node within the cluster was added.
  • dsh-ping now also supports fping and Solaris ping.

What is new in version 5.0:

  • HTML documentation has been added to the project.
  • You may now use "synctool -e" to erase the ".saved" files.
  • You may use the new command "dsh-ping" to check whether your nodes are alive.
  • You may use the new command "dsh-pkg" to do package management.
  • A new terse output mode has been added.
  • The options -1, --single, --diff, and --ref may now be given multiple times on the command-line.
  • Post-scripts for directories are now being run in the target directory rather than in the parent directory.
  • Many new configuration parameters have been added.
  • And there is more.

What is new in version 4.7.1:

  • In some cases the "ignore" keyword would not actually cause the designated files or directories to be ignored. This bug has been fixed. dsh and dcp now accept the -q, --quiet option.

What is new in version 4.7:

  • The synctool software itself is now being kept up to date automatically on client nodes. This makes upgrading synctool a breeze.
  • Making some typos on the command line, like with "-diff" and using multiple slashes in filenames, could lead to undesired effects.
  • This is no longer a problem in the new version. synctool no longer prints a Python stack trace when hitting Ctrl-C.
  • The backwards compatibility with older versions of Python has been improved.
  • Two very useful contributions have been added to the package: a .bash_completion file and a graphical synctool-diff tool.

What is new in version 4.6.1:

  • Version 4.6.1 is a bugfix release to 4.6
  • It also contains contributed control files needed for making .deb packages for the Debian GNU/Linux OS, which can be found under contrib/debian/

What is new in version 4.5:

  • option '--download' does an md5 checksum of the downloaded file

What is new in version 4.3:

  • Versions prior to this release would not run update scripts when a directory was changed. This problem has been resolved.
  • The dsh command has gained the -a option, which helps in formatting the output in a more readable way.
  • Central logging of changes applied by synctool to a logfile on the master node is now easily configured in the configuration file.

Requirements:

  • Python
  • rsync

Other Software of Developer Walter de Jong

import_checker
import_checker

2 Jun 15

Comments to synctool

Comments not found
Add Comment
Turn on images!