diff --git a/lib/config.py b/lib/config.py index a4134f55183c322a221b4690f1572ca7e948fe15..e41014ff338648d350b92ed1ee5adac0dddf0183 100644 --- a/lib/config.py +++ b/lib/config.py @@ -687,6 +687,12 @@ class ConfigWriter: all_lvs = instance.MapLVsByNode() logging.info("Instance '%s' DISK_LAYOUT: %s", instance.name, all_lvs) + all_macs = self._AllMACs() + for nic in instance.nics: + if nic.mac in all_macs: + raise errors.ConfigurationError("Cannot add instance %s:" + " MAC address '%s' already in use." % (instance.name, nic.mac)) + instance.serial_no = 1 self._config_data.instances[instance.name] = instance self._config_data.cluster.serial_no += 1