- Mar 04, 2013
-
-
Iustin Pop authored
Currently, the iallocator interface requires LVM storage, due to the way it computes the node storage information. By changing the code to understand that GetVGName() can return None, and by setting the disk_total/disk_free node parameters to the value zero, we can workaround this issue until proper multi-storage reporting is implemented. The hail iallocator plugin works without changes once this is implemented, as it already handles non-LVM storage as "foreign" storage (with unlimited capacity). The patch also changes a bit how the parameters are retrieved and used; hopefully this is a bit safer and more readable. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
'MakeLegacyNodeInfo' is not the best place for this, but we'd have to duplicate it if we wanted a LVM-less version, so the easiest is to add an optional parameter that allows it to accept/skip LVM-less results. It still requires at most one VG result, so its behaviour isn't changed in this respect. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
This is similar to commit 8775e62a; the addition of node_whitelist broke this LU as well. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Bernardo Dal Seno <bdalseno@google.com>
-
- Mar 01, 2013
-
-
Dimitris Aragiorgis authored
Passing --net 0:add,ip=5.5.5.5 failed due to a reference of a non initialized variable (new_net_obj). Reorder the checks and add some comments to be readable. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Feb 28, 2013
-
-
Dimitris Aragiorgis authored
Remove any early returns in LUNetworkDisconnect/LUNetworkConnect and replace them with if-else statements. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Feb 26, 2013
-
-
Dimitris Aragiorgis authored
In this method self.tags might be None and cannot be used in join(). Use GetTags instead. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Dimitris Aragiorgis authored
networks config objects have UUIDs and thus should be included in _AllUUIDObjects(). Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Dimitris Aragiorgis authored
Locks for group instances are aquired only if conflicts are checked. To this end we must _CheckNodeGroupInstances() only then otherwise this check will always fail (owned_instances will be []). Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Dimitris Aragiorgis authored
Params passed in _CreateNewNic() are not yet evaluated and include the value passed by user for the network. A lookup must be done first in order to find the corresponding network UUID which should be stored in the newly created NIC object. Params passed in _ApplyNicMods() include the value passed by user for the network. Thus a lookup must be done first in order to find the corresponding network UUID. Then compare it with the existing value and act accordingly. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Feb 20, 2013
-
-
Dimitris Aragiorgis authored
LUNetworkConnect/LUNetworkDisconnect, in case locking is used, might lock instances that exist in the requested node group. The acquired locks should be checked if they are correct at the beginning of CheckPrereq() via _CheckNodeGroupInstances(). Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Iustin Pop authored
Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
- Feb 19, 2013
-
-
Dimitris Aragiorgis authored
Make LookupNetwork() return None in case target is None. This fixes Issue 380. Rapi passes network=None and the lookup should not fail. Make network client aware of new nic.network.gnt-network info shows the IPs of each instance inside the network. It parses nic.networks field of QueryInstances() output, which now is a list of uuids an not names. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Dimitris Aragiorgis authored
In case a NIC is not inside a network then netinfo None. Thus netinfo["name"] fails. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
- Feb 18, 2013
-
-
Dimitris Aragiorgis authored
In backend NICs arrive with netinfo filled. If nic.network is not None nic.netinfo is not too. Thus all the info is derived from HooksDict() and nic.network must not be checked. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Dimitris Aragiorgis authored
This was before the case too. Now is bit trickier because nic.network is uuid. Info must derive from nic.netinfo. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Dimitris Aragiorgis authored
This is needed in case more info than each nic's network uuid is to be returned. We need to lock networks to get valid data. For now only the name is returned as an extra field. All other can be added with trivial effort. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Dimitris Aragiorgis authored
Queries now return the network uuid as well as it's name. Here we only use info provided be LUInstanceQueryData context. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Dimitris Aragiorgis authored
Make _InstanceQuery gather all network info related to instance's NICs and in case of NETQ_INST in _NetworkQuery get all network uuids directly from nic.network Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Dimitris Aragiorgis authored
This will be needed for Instance Queries. It walks through the instance's NICs and returns a list network uuids that the NICs are attached to. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Dimitris Aragiorgis authored
Refactor Instance related LUs to support nic.network as a uuid. This removes all the unnecessary invocations to LookupNetwork(). Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
Dimitris Aragiorgis authored
This will be needed in the following patches where nic.network will refer to network's uuid and not name. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Helga Velroyen <helgav@google.com>
-
- Feb 15, 2013
-
-
Iustin Pop authored
Back when this was introduced, I mentioned that it breaks heavily tab completion (ob<TAB> doesn't work anymore), but at that moment I didn't have a suggestion what to name it. I think outils is good and short enough, and doesn't conflict with anything else, so here it goes. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
- Feb 13, 2013
-
-
Michele Tartara authored
Signed-off-by:
Michele Tartara <mtartara@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Feb 12, 2013
-
-
Iustin Pop authored
The documentation still points to /etc/ganeti/remote-commands, although the code is already using restricted-command. Update the documentation and a few docstrings accordingly. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Stratos Psomadakis authored
'rbd showmapped' output formatting differs between older and newer versions of the ceph tools. Try to use json output formatting if available (currently available only in the ceph master branch). For bobtail, argonaut and older releases fallback to manually parsing the 'rbd showmapped' output, handling the differences in the output format for each rbd version correctly. Signed-off-by:
Stratos Psomadakis <psomas@grnet.gr> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Guido Trotter authored
All recent-enough versions of linux see the xen paravirtual device as /dev/xvd*. This doesn't break old installations, as the default is only used on new clusters. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Helga Velroyen authored
Make _UnlockedLookupNetwork() raise OpPrereqError (instead of returning None) in case it does not find the requested network. Remove useless and duplicate code such as: if net_uuid is None: raise... This is a cherry-pick of commit 1cce2c47. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Helga Velroyen authored
Until now if one disconnects a network with --no-conflicts-check and then remove it, there is a possibility to leave instances with NICs referencing non-existing networks. This causes network queries, instance removal and modification to fail. This patch allows a network to be disconnected from a nodegroup, only if instances residing in the nodegroup do not have NICs attached to the network. Otherwise OpPrereqError is raised. The --no-conflicts-check option is removed from the gnt-network disconnect command as well. This is a cherry-pick of commit 6bb939a2. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Helga Velroyen <helgav@google.com> Reviewed-by:
Michele Tartara <mtartara@google.com>
-
Michael Hanselmann authored
This patch improves the error messages given when a “errors.AddressPoolError” exception is caught. Includes some small style fixes. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
- Feb 11, 2013
-
-
Dimitris Aragiorgis authored
This can be used in hypervisor code as well. For consistency export *NETWORK_NAME and not *NETWORK throughout the code. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Dimitris Aragiorgis authored
This info is not used by Ganeti and therefore is removed. Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Dimitris Aragiorgis authored
This slot was not used by Ganeti so the same info can be provided via tags. In order not to break configuration data we add a FromDict() method in Network config object that removes the deprecated network_type (if found) and then invoke the parent's method (which does the validation). Signed-off-by:
Dimitris Aragiorgis <dimara@grnet.gr> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Bernardo Dal Seno authored
Cluster-verify used to check that the value of exclusive_storage is uniform within node groups. Now, it's impossible to change the flag for a single node, so that check has been removed and an equivalent one has been added in ConfigWriter.VerifyConfig(). Unit test provided. The unit test covers only the new check, not the whole VerifyConfig method. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Bernardo Dal Seno authored
There's never been support for a configuration where nodes in the same node group have different values of the exclusive_storage flag. This patch disables the possibility to change the flag for individual nodes. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Bernardo Dal Seno authored
Before, only some upgrades were written back to the configuration file. A little refactoring of _UpgradeConfig() has been done to write unit tests. Signed-off-by:
Bernardo Dal Seno <bdalseno@google.com> Reviewed-by:
Guido Trotter <ultrotter@google.com>
-
Iustin Pop authored
Since now confd also serves a Luxi endpoint, the current message in cli.FormatError is misleading when actually failing to connect to it. The patch adds a somewhat hackish way to show the right daemon name. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
- Feb 08, 2013
-
-
Guido Trotter authored
1) Move the hooks environment dict generator inside the object. This also adds missing values such as network family and uuid. 2) Use the same generator both for the os environment and for the instance hooks. 3) Update manpage and hooks documentation. Also update a forgotten docstring about a tuple's content. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Guido Trotter authored
Although this does nothing for now, running it is safe, and consistent with how other objects behave. Signed-off-by:
Guido Trotter <ultrotter@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-
Iustin Pop authored
When absolutely no OSes are present on the cluster, the result of OpOsDiagnose is an empty list. This is currently handled in gnt-os as an error condition, probably due to how OpOsDiagnose used to return errors in the past. However, with the query backend, an empty list is a reasonable answer, so I see no reason why gnt-os should treat that as an error, especially as it doesn't give any hint of what is "wrong". Simply removing that code block allows it to proceed normally, and list no OSes. Signed-off-by:
Iustin Pop <iustin@google.com> Reviewed-by:
Michael Hanselmann <hansmi@google.com>
-
Michael Hanselmann authored
The method names were wrong due to copy & paste. Signed-off-by:
Michael Hanselmann <hansmi@google.com> Reviewed-by:
Iustin Pop <iustin@google.com>
-