Hello,
Due to recent changes in the bootstrap process, engine master now requires vdsm-bootstrap
from vdsm master as well.
The major changes are listed bellow.
If you experience any issue, please CC me.
Regards,
Alon Bar-Lev.
commit ec60b1fe12273ef2d5a55183bc6031cfa4cbedbb
Author: Alon Bar-Lev <alonbl(a)redhat.com>
Date: Wed Aug 8 17:50:13 2012 +0300
bootstrap: send complete bootstrap from engine
CURRENT BEHAVIOR
vds_installer.py is part of ovirt-engine, upon bootstrap, the script is
sent to the node using ssh.
Then vds_installer.py pulls vds-bootstrap* files using HTTP from
engine.
The vds_installer.py and vds_bootstrap pulls ssh public key from engine
using HTTP.
NEW BEHAVIOR
vds_installer.py was moved into the vdsm-bootstrap and renamed to setup.
vdsm-bootstrap repository was updated to create directory per bootstrap
interface with 'setup' script.
ovirt-engine copies public key to node in similar way of firewall rules.
At bootstrap time, engine create tar archive from the bootstrap
directory, cache it and pipe the archive into node in order to extract
it and run the setup script.
No HTTP communication is needed.
No conflict with existing files.
CONFIGURATION
New: BootstrapCommand
Control which command is sent during bootstrap.
New: BootstrapCacheRefreshInterval
Control the interval of testing if cache is valid.
New: BootstrapPackageDirectory
Directory to pack and send to node.
New: BootstrapPackageName
Cache archive name (basename).
New: SSHKeyAlias
Engine SSH key alias
MODIFICATIONS
Use umask 0077 when transferring installations so accessible only to
logged on user.
Change-Id: I6f4a09ca9e66f0c9f5f4f7b283a5f43986b7e603
Signed-off-by: Alon Bar-Lev <alonbl(a)redhat.com>
commit 8d7d8ecb07cca8c47ae539115b581a7124923235
Author: Alon Bar-Lev <alonbl(a)redhat.com>
Date: Wed Jul 25 16:21:07 2012 +0300
bootstrap: new implementation for apache-sshd usage
Major changes:
1. Do not use temporary files for compression/decompression.
2. Do not use wget to pull large files, use ssh for all transfers.
3. One pass on files for digest, compress/decompress, send/receive.
4. Do not pull every 1 second for bytes/status.
5. Test for command status code.
6. File transfer using ssh and md5sum at same session, md5sum written to
stderr.
7. Limit buffer size when reading remote output, so we won't exhaust all
memory.
8. Do not echo back whole file content when sending file.
9. Consistent error, exception handling and debugging information.
10. More unit tests.
Split between pure ssh implementation[1] and application logic[2].
Unit tests now have their own dedicated generic sshd[3], for proper
work in embedded mode ssh apache-ssh-0.7.0 is required.
Separate unit tests dedicated to OVirtSSH implementation, by default
embedded apache-sshd is used, this can be overridden by setting
java system properties, see[4].
As unit tests takes long time, use -Penable-ssh-tests to activate.
[1] org.ovirt.engine.core.utils.ssh.OVirtSSH
[2] org.ovirt.engine.core.utils.hostinstall.MinaInstallWrapper
[3] org.ovirt.engine.core.utils.ssh.SSHD
[4] org.ovirt.engine.core.utils.ssh.TestCommon
Change-Id: I50ba60f2db364114907485da3074feb714615e0c
Signed-off-by: Alon Bar-Lev <alonbl(a)redhat.com>