Changes

Jump to navigation Jump to search
622 bytes added ,  20:44, 20 December 2007
Version 8 changes
Line 38: Line 38:  
* Status can be mailed on a daily, weekly or monthly schedule
 
* Status can be mailed on a daily, weekly or monthly schedule
 
* Option to display all existing archives of a job shown date, size, nbr of files and disk usage
 
* Option to display all existing archives of a job shown date, size, nbr of files and disk usage
* Option to send the public key to the source server
+
* Option to send the public key to the source server (SME Server only)
 
* Option to rise the backup server to a production server from a backup. For SME 7 only.
 
* Option to rise the backup server to a production server from a backup. For SME 7 only.
 
* The rise feature does not physically move data and therefore is extremly fast and needs (almost) no disk space
 
* The rise feature does not physically move data and therefore is extremly fast and needs (almost) no disk space
Line 50: Line 50:  
=== Download and Installation ===
 
=== Download and Installation ===
 
Download the '''''smeserver-affa''''' package from [http://mirror.contribs.org/smeserver/contribs/michaelw/sme7/affa/ one of the SME Server contrib mirrors] into an empty folder on your sme server
 
Download the '''''smeserver-affa''''' package from [http://mirror.contribs.org/smeserver/contribs/michaelw/sme7/affa/ one of the SME Server contrib mirrors] into an empty folder on your sme server
  wget <nowiki>http://mirror.contribs.org/smeserver/contribs/michaelw/sme7/affa/smeserver-affa-0.7.0-0.noarch.rpm</nowiki>
+
  wget <nowiki>http://mirror.contribs.org/smeserver/contribs/michaelw/sme7/affa/smeserver-affa-0.8.0-0.noarch.rpm</nowiki>
    
Configure the dag repositoy.{{Repository|dag}}
 
Configure the dag repositoy.{{Repository|dag}}
 
And install all necessary packages with the following command:
 
And install all necessary packages with the following command:
  yum localinstall /path/to/smeserver-affa*.rpm --enablerepo=dag
+
  yum localinstall --enablerepo=dag smeserver-affa-*.noarch.rpm
 
This will install SME Server Affa and a necessary dependency (perl-Filesys-DiskFree). There is no need for the signal-event post-upgrade/reboot.
 
This will install SME Server Affa and a necessary dependency (perl-Filesys-DiskFree). There is no need for the signal-event post-upgrade/reboot.
 +
{{Note box|After upgrade from versions <nowiki><=7</nowiki> you need to run the  command
 +
affa --send-key
 +
(w/o any arguments) to generate the ssh known host entries.}}
 +
    
=== Quick start example ===
 
=== Quick start example ===
Line 153: Line 157:  
| rsyncTimeout
 
| rsyncTimeout
 
| seconds || 900 || Rsync exits, if no data is transferred for the configured time. This avoids infinitely hanging in case of a network error.
 
| seconds || 900 || Rsync exits, if no data is transferred for the configured time. This avoids infinitely hanging in case of a network error.
 +
|-
 +
| BandwidthLimit
 +
| integer>=0 kilobytes per second|| 0 || Limits the data transfer rate. A value of zero specifies no limit.
 
|-  
 
|-  
 
| rsyncCompress
 
| rsyncCompress
Line 189: Line 196:  
| rsync--modify-window
 
| rsync--modify-window
 
| integer >= 0 || 0 || When comparing two timestamps, rsync treats the timestamps as being equal if they differ by no more than the modify-window value. This is normally 0 for an exact match. A value >= 0 is useful if you can't get the clocks of the source and the Affa server in sync.
 
| integer >= 0 || 0 || When comparing two timestamps, rsync treats the timestamps as being equal if they differ by no more than the modify-window value. This is normally 0 for an exact match. A value >= 0 is useful if you can't get the clocks of the source and the Affa server in sync.
|-
  −
| StrictHostKeyChecking
  −
| yes ''or'' no || yes || set to no to disable ssh host key check. Useful, when several servers behind a firewall should be reached over different forwarded ssh ports. Avoids the 'Offending key in...' prompt.
   
|}
 
|}
   Line 224: Line 228:     
  affa --send-key JOB
 
  affa --send-key JOB
Sends the public key to the host 'remoteHostName' as configured in the record of job JOB. Generates the DSA key, if not already done.
+
This first generates the DSA key for the Affa Server, if not already done. Then it sends the public key to the host 'remoteHostName' as configured in the record of job JOB and generates the job specific ssh known host entry.  
 
+
{{Note box|When initially doing this step, you will need to temporarily enable "Allow secure shell access using standard passwords" on the production server.}}
affa --send-key --host=TARGETHOST [--port=PORT]
+
{{Note box|The --send-key option only works on SME Server as a remote server and on systems where the keys are stored in /root/.ssh/authorized_keys2 and the commands /bin/cat, /bin/touch, /bin/grep and /bin/mv are available.}}
Sends the public key to the TARGETHOST. TARGETHOST is a FQHN or an IP address. Give PORT, if sshd on the TARGETHOST listens to another than the standard port 22. Generates the DSA key, if not already done.
  −
{{Note box|When initially doing this step, you will need to temporarily enable "Allow secure shell access using standard passwords" on the production server.  
  −
The --send-key option only works, if the public keys are stored in /root/.ssh/authorized_keys2 on the remote host. This is true for SME server}}
  −
 
  −
 
  −
affa --check-connections
  −
Checks the ssh login for all configured jobs.
      
  affa --full-restore JOB [ARCHIVE]
 
  affa --full-restore JOB [ARCHIVE]
Line 251: Line 248:  
Displays a table of all configured jobs with enable status, time of last and next run, size, disk usage and the number of scheduled (s), daily (d), weekly (w), monthly (m) and yearly (y) archives. Last time shows 'failed', if a job did not run in the last 24h. For disabled jobs 'Last' always shows 'failed' after 24 h. To see the date and time of the last run of those jobs use the --list-archives option. Column 'Next' shows the time when the next run will be started, if 'Enabled' is 'yes'. Column 'Disk usage' shows the usage of the partion, where the RootDir of the job is located on. If all jobs are located in the same RootDir, identical disk usage is shown for all jobs. If RootDir is /var/affa, the usage of the SME server system partition is shown.
 
Displays a table of all configured jobs with enable status, time of last and next run, size, disk usage and the number of scheduled (s), daily (d), weekly (w), monthly (m) and yearly (y) archives. Last time shows 'failed', if a job did not run in the last 24h. For disabled jobs 'Last' always shows 'failed' after 24 h. To see the date and time of the last run of those jobs use the --list-archives option. Column 'Next' shows the time when the next run will be started, if 'Enabled' is 'yes'. Column 'Disk usage' shows the usage of the partion, where the RootDir of the job is located on. If all jobs are located in the same RootDir, identical disk usage is shown for all jobs. If RootDir is /var/affa, the usage of the SME server system partition is shown.
 
<small><pre>
 
<small><pre>
Affa version 0.7.0 on backup.mydomain.de (10.204.48.2)
+
Affa version 0.8.0 on backup.mydomain.de (10.204.48.2)
 
+---------------+------+--------+-------+--------+------------+----------------+
 
+---------------+------+--------+-------+--------+------------+----------------+
 
| Job          | ENBL | Last  | Next  |  Size | Disk usage | N of s,d,w,m,y |
 
| Job          | ENBL | Last  | Next  |  Size | Disk usage | N of s,d,w,m,y |
Line 279: Line 276:  
Prints a 'graphical' timetable for all enabled jobs. The resolution is 30 minutes. Disabled jobs are not shown.
 
Prints a 'graphical' timetable for all enabled jobs. The resolution is 30 minutes. Disabled jobs are not shown.
 
<small><pre>
 
<small><pre>
Affa version 0.7.0 on backup.mydomain.de (10.204.48.2)
+
Affa version 0.8.0 on backup.mydomain.de (10.204.48.2)
 
     TIME 0:00    4:00    8:00    12:00    16:00    20:00   
 
     TIME 0:00    4:00    8:00    12:00    16:00    20:00   
 
       crm -X------ -------- -------- -------- -------- --------
 
       crm -X------ -------- -------- -------- -------- --------
Line 320: Line 317:  
Deletes the public dsa key on the remote server.
 
Deletes the public dsa key on the remote server.
 
{{Note box|The --revoke-key option only works, if the public keys are stored in /root/.ssh/authorized_keys2 on the remote host. This is true for SME server.}}
 
{{Note box|The --revoke-key option only works, if the public keys are stored in /root/.ssh/authorized_keys2 on the remote host. This is true for SME server.}}
 +
 +
affa --check-connections
 +
Checks the ssh login for all configured jobs.
 +
 +
affa --kill JOB
 +
Terminates the running job JOB and all its child processes (rsync processes).
 +
 +
    
=== Example setups ===
 
=== Example setups ===
Line 437: Line 442:  
  affa --list-archives prodserv
 
  affa --list-archives prodserv
 
<small><pre>
 
<small><pre>
Affa version 0.7.0 on affa1.mydomain.de (10.204.48.2)
+
Affa version 0.8.0 on affa1.mydomain.de (10.204.48.2)
 
+-----------------------------------------------------------------------------+
 
+-----------------------------------------------------------------------------+
 
| Job: prodserv                                                              |
 
| Job: prodserv                                                              |
Line 573: Line 578:  
==== Changelog ====
 
==== Changelog ====
 
<pre>
 
<pre>
 +
* Thu Dec 20 2007 Michael Weinberger
 +
  Version 0.8.0
 +
  added bash completion script
 +
  added option --kill JOB
 +
  improved INT and TERM signal handling
 +
  replaced all scp commands by rsync
 +
  added poperty BandwidthLimit (unit KBytes/sec)
 +
  each job write its own known hosts entry using ssh option HostKeyAliasOption
 +
  affa --send-key w/o arguments sends the keys for all jobs
 +
  removed Property StrictHostKeyChecking
 +
  UPDATE FROM VERSIONS<8: run the command 'affa --send-key' to generate the known hosts entries for all jobs
 +
 +
 
* Wed Dec 12 2007 Michael Weinberger
 
* Wed Dec 12 2007 Michael Weinberger
 
   Version 0.7.0
 
   Version 0.7.0
501

edits

Navigation menu