- Dec 20, 2012
-
-
Constantinos Venetsanopoulos authored
With this commit we introduce the External Storage Interface to Ganeti, abbreviated: ExtStorage Interface. The ExtStorage Interface provides Ganeti with the ability to interact with externally connected shared storage pools, visible by all VM-capable nodes. This means that Ganeti is able to handle VM disks that reside inside a NAS/SAN or any distributed block storage provider. The ExtStorage Interface provides a clear API, heavily inspired by the gnt-os-interface API, that can be used by storage vendors or sysadmins to write simple ExtStorage Providers (correlated to gnt-os-interface's OS Definitions). Those Providers will glue externally attached shared storage with Ganeti, without the need of preprovisioned block devices on Ganeti VM-capable nodes as confined be the current `blockdev' disk template. To do so, we implement a new disk template called `ext' (of type DTS_EXT_MIRROR) that passes control to externally provided scripts (the ExtStorage Provider) for the template's basic functions: create / attach / detach / remove / grow The scripts reside under ES_SEARCH_PATH (correlated to OS_SEARCH_PATH) and only one ExtStorage Provider is supported called `ext'. The disk's logical id is the tuple ('ext', UUID.ext.diskX), where UUID is generated as in disk template `plain' and X is the disk's index. Signed-off-by:
Constantinos Venetsanopoulos <cven@grnet.gr> Signed-off-by:
Iustin Pop <iustin@google.com> [iustin@google.com: small simplification in bdev code, pylint fixes] Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Dec 17, 2012
-
-
Iustin Pop authored
The 'temporary' library add support for create temporary directories/files beyond what is offered in the base library (which is somewhat limited, and hard to use in tests). Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
- Dec 12, 2012
-
-
Helga Velroyen authored
Signed-off-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
- Dec 05, 2012
-
-
Dato Simó authored
configure.ac advertised that the HLINT environment variable could be set to specify the path to the 'hlint' tool. However, HLINT was being initialized to "no" inside configure.ac, which broke this usage. Signed-off-by:
Dato Simó <dato@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Nov 21, 2012
-
-
Michael Hanselmann authored
It is no longer “--enable-remote-commands”, but rather “--enable-restricted-commands”. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Also update configure.ac. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Nov 19, 2012
-
-
Michael Hanselmann authored
- Remote unnecessary quote characters - Change some uses of “test "$foo"” to “test -n "$foo"” - Merge “if/else/if” into “if/elif” - Wrap lines longer than 80 characters and add a test to “make check” Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Nov 16, 2012
-
-
Michael Hanselmann authored
By default remote commands are disabled and need to be explicitely enabled at build time. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Nov 13, 2012
-
-
Iustin Pop authored
Some GHC flags are very useful, but only appear in more recent GHC versions. To support the use of such flags while still supporting older compilers, let's add conditional checks and enabling based on the results. Currently only `-fwarn-incomplete-uni-patterns` is enabled, which detects refutable patterns in lambda expressions and pattern bindings (e.g. "let (Just x) = y"); such constructs are bad as they can lead to runtime exceptions. Additionally, fix an existing such bad construct in a test case; we workaround it by using error, since that should never fail. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Michele Tartara authored
This will be needed for the data collectors of the monitoring agent. * Detection of the library * Creation of the appropriate variables * Update to the installation documentation Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Oct 26, 2012
-
-
Michael Hanselmann authored
With the move away from “setup-ssh”, Paramiko is no longer necessary to configure SSH on nodes. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Oct 22, 2012
-
-
Michael Hanselmann authored
- Debian Squeeze and up have a package named “python-coverage”, but it doesn't use the same binary name as upstream (“coverage”). - Said package includes a patch to use symlinks instead of file copies for jQuery. If files from previous runs are around, an exception is raised. This is fixed by removing all regular files and symlinks before generating a report. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Oct 18, 2012
-
-
Iustin Pop authored
Commit 21a5e56c forgot to rename a variable used in a conditional (of course shell didn't complain about unused vars), so the AM_CONDITIONAL was always false. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Adeodato Simo <dato@google.com>
-
- Oct 12, 2012
-
-
Bernardo Dal Seno authored
This is a small bug-fix only release. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Oct 10, 2012
-
-
Iustin Pop authored
This patch cleans up the Haskell library detection and defaults. First, it makes the base compiler/libraries required, per the email discussion. It then adds two new small autoconf macros, on to check for a required Haskell library and one to do custom action based on test results. We use these macros to cleanup and simplify a bit the module detection: - rapi, confd, and split query are auto detected and enabled if _all_ required libraries are present - unittests are enabled if _all_ required libraries are present The patch also updates the documentation regarding required libraries. After this patch, base Ganeti fully buildable on Debian Squeeze/Ubuntu Lucid. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Oct 09, 2012
-
-
Iustin Pop authored
We try to automatically enable the htools-rapi and split query (if confd and htools-rapi are enabled) options. This is our intended default configuration, and allows easier test of the new code path. Further cleanups for checking whether confd can be enabled will come later. The move block is due to the fact that we first have to check for htools-rapi, and only then we can auto-enable the feature. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Oct 02, 2012
-
-
Iustin Pop authored
This will need some more configure.ac checks for required libraries, which will come later with the Haskell dependencies reorganisation. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Sep 28, 2012
-
-
Michael Hanselmann authored
Some parts of the code still use a hardcoded user name: root. This patch replaces all with a constant specified at build time. The end goal is to make it possible to run a Ganeti cluster without any special privileges (of course this will prevent some functionality from working). Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Sep 18, 2012
-
-
Michael Hanselmann authored
This is needed for virtual clusters where a non-root user is used to run the daemons. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Aug 28, 2012
-
-
Iustin Pop authored
And expand cli.GetClient() to allow opening the query socket, instead of the main master socket. Finally, enable the query socket use in gnt-cluster version, since that is already implemented fully in Queryd.hs/hconfd. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
- Jul 27, 2012
-
-
Iustin Pop authored
Phew, it wasn't easy, but… Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
- Jul 24, 2012
-
-
Iustin Pop authored
This is a trivial release, with just bug fixes, so a small change log. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Jul 19, 2012
-
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Jul 13, 2012
-
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Jul 03, 2012
-
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
- Jun 25, 2012
-
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Agata Murawska <agatamurawska@google.com>
-
- Jun 19, 2012
-
-
Michael Hanselmann authored
Commit 8a69b3a8 changed the DRBD barriers disabled by default if “--disable-drbd-barriers” is used to “bfd”, where “d” stands for disk-drain. DRBD's upstream updated their documentation[1] to say disk drains should always be used. [1] http://git.drbd.org/?p=drbd-8.3.git;a=commit;h=f952dcfed57acf Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Jun 12, 2012
-
-
Iustin Pop authored
I've added the changes under beta1, not beta2, since it's easier to keep it separate. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Jun 11, 2012
-
-
Iustin Pop authored
Currently, the lint target does a sequential: pep8, pylint, pylint on the QA sources. hlint is run only when explicitly requested. This patch reorganises the lint target by: - splitting the current lint target into separate pylint (slow), pylint-qa (fast), pep8 (fast) targets - making lint itself depend on the above plus hlint - both pep8 and hlint are optional, based on whether the said binaries were detected at configure time make -j is slightly faster after this patch (1m18s → 1m7s). Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Jun 01, 2012
-
-
René Nussbaumer authored
Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- May 31, 2012
-
-
René Nussbaumer authored
This is needed so we can specify the xen command upon configure time Signed-off-by:
René Nussbaumer <rn@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- May 23, 2012
-
-
Iustin Pop authored
Finally! Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- May 11, 2012
-
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Apr 11, 2012
-
-
Michael Hanselmann authored
Also update NEWS file. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
If GHC_PKG_QUICKCHECK contains multiple values, the test would fail with “too many arguments”. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Mar 27, 2012
-
-
Iustin Pop authored
We switch from vmlinuz-2.6-… to vmlinuz-3-…. To do this nicely, we also add a ./configure-time setting for the KVM instance kernel. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Mar 23, 2012
-
-
Iustin Pop authored
This patch changes configure.ac Makefile.am so that the user can pass: - --disable-confd (or --enable-confd=no) to disable it completely - --enable-confd=yes or --enable-confd=python to select the traditional implementation (this is the default setting) - --enable-confd=haskell to select hconfd The only "not nice" thing is that I've chosen to keep the hconfd.hs/hconfd name, and we rename it after install via an install-exec-hook. The other choice is possible too (to rename the source file/binary). One additional note is that if we select haskell, the _rule_ for creating daemons/ganeti-confd dissapears; whereas if we select python, the rule for htools/hconfd still exists (one can build it explicitly), it just is not installed. This is due to the different way in which the rules are declared. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
Iustin Pop authored
By accident, commit a002ed79 introduced the qemu-img checks in the htools block. I found this also by mistake while investigating another issue :) Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
René Nussbaumer <rn@google.com>
-
- Mar 22, 2012
-
-
Michael Hanselmann authored
Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Mar 21, 2012
-
-
Iustin Pop authored
A later, more complete patch, will allow selecting between either the Python version or the Haskell version. This is just a temporary solution to help building without all the needed Haskell libraries. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-