- Jul 23, 2013
-
-
Stratos Psomadakis authored
Signed-off-by:
Stratos Psomadakis <psomas@grnet.gr>
-
- Jun 19, 2013
-
-
Dimitris Aragiorgis authored
Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr>
-
Dimitris Aragiorgis authored
Add SHELL_ENV_INIT and XEN_CONFIG_DIR Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr>
-
Dimitris Aragiorgis authored
Add new script vif-ganeti that could be used instead of default vif-bridge in order NIC customization can be more flexible. Extract common code from kvm-ifup and insert it in a new file net-common that is being sourced by kvm-ifup and vif-ganeti and located under package lib dir (/usr/lib/ganeti/). Install vif-ganeti properly with make. Add a mkdir and ln rule in install-exec-hook so that the /etc/xen/scripts dir is created and the vif-ganeti scripts gets properly linked inside it. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Signed-off-by:
Thomas Thrainer <thomasth@google.com>
-
- Jun 17, 2013
-
-
Dimitris Aragiorgis authored
For every NIC write down a file that contains NIC's info (MAC, mode, link, network details), that can be sourced by any vif script. The file location is: /var/run/ganeti/xen-hypervisor/nic/<domname>/<nicidx>. This file is created upon cfg file creation and before starting the instance and can be sourced by an external script. Cleanup NIC dir when removing config files. Upon Xen configuration file removal, remove NIC dir as well. Add new hv param vif_script that allows execution of user defined networking script and overrides the one xend is configured with in xend-config.sxp Ensure that all run dirs exist for Xen hypervisor Xen hypervisor uses runtime files to store each NIC's related info. We need to check if parent dirs exist as well. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Signed-off-by:
Thomas Thrainer <thomasth@google.com>
-
- Feb 20, 2013
-
-
Dimitris Aragiorgis authored
Return -1 and not None for vg_size and vg_free and make volume_group_name optional in cluster config object in Haskell. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr>
-
- Jan 14, 2013
-
-
Dimitris Aragiorgis authored
This is needed in case an instance must be booted with an exact type of machine version (due to e.g. outdated drivers). If this hv param explicitly defined (during instance creation/modification) then the kvm process will be started having this version for the -M option. Otherwise the default (derived from _GetDefaultMachineVersion() will be used. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr>
-
- Jan 11, 2013
-
-
Constantinos Venetsanopoulos authored
-
- Jan 09, 2013
-
-
Michael Hanselmann authored
This will be used in QA to format network interface parameters. This is a cherry-pick of master commit eac9b7b8 Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Guido Trotter authored
This was fixed in stable-2.6, commit 053c356a Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Requested in issue 337. The parameter “bridge” was not documented and is therefore silently replaced with “master-netdev”. A note is added to “qa-sample.json” describing how comments work. This is a cherry-pick of master commit 3601d488 Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Commit ec0652ad (June 2009) removed the option. This is a cherry-pick of master commit 78453739 Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Jan 08, 2013
-
-
Dimitris Aragiorgis authored
kvm -M ? returns the supported machines (e.g. pc-1.1). Add _GetDefaultMachineVersion() function to get the default value. Upon kvm runtime file creation (this is in _GenerateKVMRuntime() invoked only in StartInstance()) append this info in kvm_cmd. During live migration the -incoming kvm process is started based on this file. In case of different KVM versions between source and target nodes there is a possibility (e.g. due to a kvm bug) for migration to fail silently. This patch forces the target node to emulate the same machine version used by running process. If KVM on target node does not support it the -incoming kvm process will crash and migration will be aborted. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr>
-
- Dec 22, 2012
-
-
Dimitris Aragiorgis authored
-
- Dec 20, 2012
-
-
Iustin Pop authored
I'm already setting this to a release date of tomorrow, since QA on the 2.6 branch has been clean. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Dec 19, 2012
-
-
Iustin Pop authored
Accidentally stumbled upon this while testing unrelated code on a machine with ~3K active jobs - the bash completion unittest was hanging. Upon investigation, it turns out that bash's ${var//pattern/repl/} is probably quadratic in the size of input (or worse, even): $ touch job-{1..500} $ time ( a=$(echo job-*); echo ${a//job-/}| wc -c; ) 1892 real 0m0.597s user 0m0.590s $ touch job-{1..1000} $ time ( a=$(echo job-*); echo ${a//job-/}| wc -c; ) 3893 real 0m4.654s user 0m4.580s We can easily fix this if we change to array-based substitution (once per element): $ time ( a=($(echo job-*)); echo ${a[*]/job-/} |wc -c; ) 3893 real 0m0.028s user 0m0.010s $ touch job-{1..10000} $ time ( a=($(echo job-*)); echo ${a[*]/job-/} |wc -c; ) 48894 real 0m0.233s user 0m0.220s This means that exactly when the master node is busy processing many jobs, we could accidentally start consuming lots of CPU in the bash completion, which is not good. Note: the code might have problems with filenames containing spaces (I didn't reset the IFS, etc.), but the original code had the same issue, I think. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Dec 14, 2012
-
-
Iustin Pop authored
During a normal configuration update, done via write to temp file and rename, this is what confd logs (slightly edited for clarity): 2012-12-14 01:05:53: ganeti-confd INFO Loaded new config, serial 21866 2012-12-14 01:06:18: ganeti-confd INFO File lost, trying to re-establish notifier 2012-12-14 01:06:18: ganeti-confd INFO Loaded new config, serial 21867 2012-12-14 01:07:09: ganeti-confd INFO File lost, trying to re-establish notifier 2012-12-14 01:07:09: ganeti-confd INFO Loaded new config, serial 21868 Since this happens always, we should demote the "File lost" messages to debug level, to keep the logs more clear. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
Iustin Pop authored
Note: I'll add tests for this on the master branch, but not here. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Bernardo Dal Seno authored
The only semantic change is the fix of the spelling of the option --ipolicy-disk-templates. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Dec 13, 2012
-
-
Iustin Pop authored
This fixes Issue 257. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Iustin Pop authored
Commit 1ce03fb1 (“Add ht-based result checks to opcodes”) introduced infrastructure for checking opcode results, and subsequent commits improved the list of opcodes which do declare a result, however this was not tested for dry-run mode operation. Furthermore, there's no authoritative list of which opcode/LUs support dry_run mode at all; currently, this is based/restricted on the list of CLI options, so… for now we disable the result verification if the opcode has been executed in dry_run mode. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Dec 12, 2012
-
-
Michael Hanselmann authored
This is in preparation for a 2.6.2 release. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
When all OS parameters should be unset (“gnt-os modify -H -xen-pvm foo”), a TypeError was raised. This fixes issue 311. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Nov 30, 2012
-
-
Dimitris Aragiorgis authored
This patch is taken from ganeti mailing list: http://goo.gl/LgukY Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr>
-
Dimitris Aragiorgis authored
In _GenerateDiskTemplate() we make use of params variable in case of ExtStorage. Hotplug code conflicts here. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr>
-
Dimitris Aragiorgis authored
-
Dimitris Aragiorgis authored
Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr>
-
- Nov 27, 2012
-
-
Dimitris Aragiorgis authored
Conflicts: lib/cmdlib.py tools/cfgupgrade Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr>
-
- Nov 26, 2012
-
-
Dimitris Aragiorgis authored
Remove pci_pool from hotplug_info. Hypervisor decides the pci slot based on current occupations. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr>
-
- Nov 22, 2012
-
-
Guido Trotter authored
In cmdlib we must only use the hypervisor class, and never instantiate it. As such we have to call GetHypervisorClass instead, to avoid getting an instance of it. This fixes Issue 316, because __init__ is not called from masterd anymore, and thus can't fail on EnsureDirs. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
- Nov 19, 2012
-
-
Iustin Pop authored
The 'command' attribute of the OpOobCommand command is defined with a default value of None, but its validation requires a member of constants.OOB_COMMANDS, which doesn't accept None. This result in the following error when submitting an opcode without the command: error type: wrong_input, error details: Parameter 'OP_OOB_COMMAND.command' fails validation I suspect this was simply a mistake, since the commit that introduced it (65e183af, “opcodes: Add opcode parameter definitions”) did lots of bulk updates. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Nov 15, 2012
-
-
Michael Hanselmann authored
s/exists/exist/ Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
- Nov 14, 2012
-
-
Dimitris Aragiorgis authored
Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr>
-
Guido Trotter authored
The text of the manpage explains that an index can be prepended to "remove" but the short help doesn't mention it. Adding it helps making the syntax clear. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Nov 12, 2012
-
-
Iustin Pop authored
Commit 6a1434d7 (“Make migration RPC non-blocking”) changed the API for reporting migration status, but has a small cosmetic bug: if the migration status if failure, but the RPC itself to get the status didn't fail, it shows the following error message: Could not migrate instance instance2: None since it always uses result.fail_msg, irrespective of which part of the if condition failed. This patch simply updates the msg if not already set, leading to: Could not migrate instance instance2: hypervisor returned failure Proper error display can be done once the migration status objects can return failure information as well, beside status. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Iustin Pop authored
Commit 6a1434d7 (“Make migration RPC non-blocking”) changed from raising HypervisorErrors to returning MigrationStatus objects. However, these objects don't have an "info" attribute, so they can't pass a reason back (which is in itself a bug); but the KVM hypervisor code attempts to do so, and fails at runtime with: Failed to get migration status: 'MigrationStatus' object has no attribute 'info' instead of the intended: Migration failed, aborting: too many broken 'info migrate' answers For now (on stable-2.6), let's just remove the "info" reason, and later we can add it back properly once we have a way to correctly represent migration status failures in the LU. This fixes issue 297. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
Currently, the code uses createFile, which has the effect of always truncating the file. This is bad, as the content of the PID file is wiped even when we wouldn't be able to lock it! We switch to openFd (createFile is just a wrapper over that), and we use an explicit set of flags; defaultFileFlags is already safe (trunc=False), but I prefer to set it explicitly with our desired flags. Note that this bug doesn't manifest in normal usage, as daemon-util won't try to start the daemon if already running. But if anyone or anything does call ganeti-confd explicitly, the pid file will be emptied and the daemon will keep trying to be restarted forever… Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Nov 08, 2012
-
-
Michael Hanselmann authored
pylint complained, I fixed it, and unfortunately pushed too early. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
Once again this will be used by forthcoming RAPI test. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Michael Hanselmann authored
A newly added test for RAPI will also verify the returned headers. A test in ganeti.rapi.client_unittest.py is split into smaller stand-alone tests. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-