Commit Graph

82 Commits

Author SHA1 Message Date
Lisa Zangrando ebc4694782 Fixed _processServerCreate()
This commit fixes the setting of the quota type (for Ocata).

Change-Id: Ic7bdaa31e2028256d49cbbc0b1b41ab88e4fe1b4
Sem-Ver: bugfix
2017-09-21 15:22:18 +02:00
Lisa Zangrando 7a9395ce23 Restored setQuotaTypeServer()
This commit restores the method setQuotaTypeServer() which set the
server type as metadata.

Change-Id: I09dfafdbe73d59eb43c09c79a50a5449e63833e4
Sem-Ver: bugfix
2017-09-20 08:23:00 +00:00
Lisa Zangrando 1a237bdfde Restore() incorrectly increases the queue size
This commit fixes the restore() method.

Change-Id: I03a626392079413f9449152a7cecf6234887b372
Sem-Ver: bugfix
2017-09-15 15:06:16 +02:00
Lisa Zangrando 56c8d155ac Synergy should scale up the oldest user requests from the queue
The oldest requests should be processed quite first as soon as
the user priority increases. This commit fixes the issue.

BUG: #1717464
Change-Id: Iafc74531775d00aeb653cc92092b2bc7775f52d8
Sem-Ver: bugfix
2017-09-15 09:12:12 +00:00
Lisa Zangrando a45e054ec9 Mechanism that performs user actions before Synergy deletes the VMs
In synergy is missing a useful mechanism which allows the user to
perform some actions (e.g. exporting data) into the VMs before
Synergy deletes them from the shared quota once their TTL is expired.
This commit implements such mechanism.

BUG: #1717253
Change-Id: Iabd0eb5eeda53c483189725446cb6f459c1053e8
Sem-Ver: feature
2017-09-15 07:44:38 +00:00
Jenkins a131617b32 Merge "Configuration parameters updated" 2017-09-11 07:50:43 +00:00
Lisa Zangrando 16dd2b906e Configuration parameters updated
This commit updates the default values of some parameters
defined in synergy_scheduler.conf

Change-Id: I2673fc4e45b3f2c1278a61eea0ce483ef364bff3
Sem-Ver: bugfix
2017-09-11 07:42:39 +00:00
Lisa Zangrando 0fcc947d16 Termination of expired servers
If, for some reasons, the termination of one of the expired VMs fails,
the iteration finishes by reporting the message error. This fix lets
Synergy to continue on terminating the remaining VMs.

BUG: #1715823
Change-Id: I1dbd984f6fb5c7588349b025828887e21d950f84
Sem-Ver: bugfix
2017-09-08 08:18:58 +00:00
Vincent Llorens 631437a032 fix small typo preventing scheduler initialization
This typo lead to the following message when Synergy started:
> ERROR - unrecoverable error: 'KeystoneManager' object has no attribute 'project_domaini_name'

Change-Id: I49fe371b662291a16b2111e9eece134040c7d45f
Sem-Ver: bugfix
2017-08-22 14:43:44 +00:00
Lisa Zangrando ef0bd4556d Added support for policy.json in packaging process
This commit updates the packaging files for supporting the new
authorization mechanism based on policy.json

Change-Id: I001fba11b9c59ef34a10bf92ab7241f37efd4668
Sem-Ver: feature
2017-08-11 09:02:58 +02:00
Lisa Zangrando 91f82cc654 Project manager problems concerning the adding and removing projects
This commit fixes the _addProject() and _removeProject() methods.

Change-Id: Iebdb0f841f92aabfc947ba716fbe894ac4b9d1e0
Sem-Ver: bugfix
2017-08-10 12:52:41 +02:00
Lisa Zangrando 16f6a8e0b2 Authorization policies changed
This commit updates some authorization policies.

Change-Id: Id83efb8c83c8caa2a2b2a9a403a3d5b86fd48859
Sem-Ver: bugfix
2017-08-09 13:08:43 +02:00
Jenkins 8e6fda3e64 Merge "Added queue usage to project" 2017-08-03 13:13:54 +00:00
Lisa Zangrando f8ca81d631 Added queue usage to project
This commit adds some info about the queue usage to
each project

Change-Id: If14ca606148b0dbd2b22bfa470196b2db7c47d07
Sem-Ver: bugfix
2017-08-03 14:52:51 +02:00
Jenkins 48fee76b46 Merge "Missing security support" 2017-08-02 09:55:38 +00:00
Lisa Zangrando 4480adc159 Missing security support
This commit includes an advanced Keystone based authorization plugin.

Bug: #1691352
Change-Id: Icb5d534c2a684f5efe7abf3b64227d66a3fbc2b6
Sem-Ver: feature
2017-08-02 09:38:39 +00:00
Lisa Zangrando 5923091fda Synergy should never raise Exception
Replaced any occurrence of "raise Exception" with "raise SynergyError".

Bug: #1690795
Change-Id: I064a7219de1323670660dacd02f2513e56981d0c
Sem-Ver: bugfix
2017-08-02 09:31:16 +00:00
Lisa Zangrando 5f28805ca7 Added support for OpenStack Ocata to NovaManager
This commit updates NovaManager for supporting the Ocata version

BUG: #1704801
Change-Id: Icad9c14b14f34d16861caf82845b0e847085556c
Sem-Ver: feature
2017-07-31 15:01:39 +02:00
Lisa Zangrando 94456be8fc Partition Director requires configuring Synergy through RESTful API
Partition Director, the INDIGO-DataCloud service, requires the setting
of the Synergy configuration (e.g. the list of projects allowed the
access the shared quota, their values, etc) through the RESTful API.
This implies some changes at configuration level of Synergy: some
parameters must be drop out from the synergy_scheduler.conf file and
the stored into a database. The use of the database for storing
configuration parameters will be useful even for configuring Synergy
in high availability mode.

Bug: #1690123
Change-Id: Id8f9c6b0e0a2804b43984f7353dc3fc0882cd651
Sem-Ver: feature
2017-07-19 10:54:10 +00:00
Lisa Zangrando 23e9382c7d Added support for notifications to KeystoneManager
This update enables KeystoneManager to receive asynchronous
notifications about the users and projects status from Keystone
service

Change-Id: Ia75b89c825bb8536e0462eff7a873699b219d781
Sem-Ver: bugfix
2017-07-18 10:13:31 +00:00
Lisa Zangrando fc16dbd695 MessagingAPI should be implemented as common module
nova_manager.py implements the NovaManager which interacts with Nova
service but even provides the MessagingAPI class which interacts with
the AMQP system. This fix moves the MessagingAPI in common/messaging.py.

Bug: 1690133
Change-Id: Ifed11126a1af227950c03ccffc48d577fb631ded
Sem-Ver: bugfix
2017-05-11 14:42:06 +02:00
Lisa Zangrando 0e5e7b46de The SchedulerManager doesn't receive all the compute.instance.delete.end notifications
Sometimes the SchedulerManager doesn't receive the "compute.instance.delete.end"
notifications of VMs destroyed before to be active.

Bug: #1690126
Change-Id: If874d436b825e2f430e246ccc7663df1bebd461c
Sem-Ver: bugfix
2017-05-11 12:59:08 +02:00
Lisa Zangrando 56061a4aaf Add new "synergy_topic" parameter
The new "synergy_topic" parameter simplifies the Synergy integration with Nova.

Bug: #1672409
Change-Id: I00f7e6ce7b6c4b22d9267d2b956c599fb71c68a2
Sem-Ver: feature
2017-03-13 15:27:21 +01:00
Lisa Zangrando b16ab75ca6 Fix a possible shared quota consistency issue
It may happen that a VM instance goes in error during the building phase.
Although the server is deleted by Synergy, the compute node may not send
the notification about the cancellation by leaving the shared quota not
consistent. This fix addresses this issue.

Bug: #1668199
Change-Id: I9ff9eed7b234117e24ae629fdd3e00ae7ce528cd
Sem-Ver: bugfix
2017-02-27 10:17:11 +01:00
Lisa Zangrando 92892640d7 Fix the bug concerning the user which is still showed after deletion
Bug: #1663639
Change-Id: Ifc0278076913475282c15d2092caa57354145487
Sem-Ver: bugfix
2017-02-23 15:31:12 +01:00
Lisa Zangrando e45ce144b4 Fix the share percentage
This fix solves the problem of the calculation of the user
share which keeps memory of deleted users.

bug: #1663644
Change-Id: Ie591b60a413ab16c90fa6adc5a1f5be3046e0122
Sem-Ver: bugfix
2017-02-20 17:34:24 +01:00
Jenkins a00088c413 Merge "Fix the error: Arguments already parsed" 2017-02-20 11:18:49 +00:00
Anh Tran 61a80c47a7 Remove unused logging import
Change-Id: I801b5a4991e2678ea45c99b836638b05e842e003
2017-02-20 11:27:05 +07:00
Lisa Zangrando b41121390f Fix the error: Arguments already parsed
On Newton, the startup of Synergy fails and the reported message in synergy.log is:
"ERROR - manager 'NovaManager' instantiation error: arguments already parsed: cannot
register CLI option". We fix this bug in this commit.

- removed unuseful conductor interfaces

bug: #1664567
Change-Id: I501196c40efd6fbd0e3e3669005441e7a8c23364
Sem-Ver: bugfix
2017-02-16 15:32:43 +01:00
Lisa Zangrando 667d6cd6e3 Fix the TypeError: not all arguments converted during string formatting
This commit fixes the bug concerning the use of a wrong logging format
into the SchedulerManager.

Bug: #1664608
Change-Id: Id39fab710571e21be1e4580621a2f698febf2a7a
Sem-Ver: bugfix
2017-02-14 16:27:40 +01:00
Jenkins f21b883247 Merge "Removed logging message" 2017-01-30 09:30:30 +00:00
Lisa Zangrando f9619e8797 Fix a bug related to NUMA topology
Previously, one could encounter the following error:
"NumaTopologyNotFound: Instance does not specify a NUMA topology"

Bug: #1659794
Change-Id: I065e4ed0cfe56c3026b9eefc473fe6baf0889baf
Sem-Ver: bugfix
2017-01-30 09:15:13 +00:00
Lisa Zangrando 5887b41fdd Removed logging message
The logging message is not needed anymore.

Change-Id: Id83a4752415785bc1108f0787cf2e2ee940a535f
2017-01-30 10:08:27 +01:00
Jenkins b3504c00db Merge "Retry mechanism improved and fixed" 2017-01-27 16:43:18 +00:00
Lisa Zangrando e107158e9b Time data does not match format '%Y-%m-%dT%H:%M:%S.%fZ'
Bug: #1659807
Change-Id: Iec6bf294562d9df8d2db7dbd212b7d35e91ad43a
Sem-Ver: bugfix
2017-01-27 13:47:33 +01:00
Lisa Zangrando 89537e9f99 Retry mechanism improved and fixed
Bug: #1659780
Change-Id: Ifabc4f0ce576fc5c0348fe591d0ca92abe2f7b64
Sem-Ver: bugfix
2017-01-27 11:28:27 +01:00
Jenkins 80ef20c334 Merge "Add support for Keystone domains" 2017-01-25 16:29:51 +00:00
Jenkins 2180a51e92 Merge "Heat and Synergy interfere on the management of the users trust" 2017-01-25 15:35:43 +00:00
Lisa Zangrando e7e36a1fbd Add support for Keystone domains
This feature fixes even the bug #1659246

Change-Id: I189455f5b1c546304e4b9b3ce9f6c17ebdf0d133
Sem-Ver: feature
2017-01-25 15:24:34 +01:00
Lisa Zangrando 75696d2e6b Heat and Synergy interfere on the management of the users trust
Heat and Synergy use the Trust mechanism for making service delegations.
Synergy must be able to distinguish the trusts created by Heat from the
ones created by itself.

Change-Id: I5fdc04fdf94397f8f3b5f336bbaf22781e3ed467
Sem-Ver: bugfix
2017-01-25 13:48:03 +00:00
Lisa Zangrando ea89a0f8d2 Synergy and Ceilometer compete for consuming AMQP notifications
Synergy and Ceilometer compete for consuming the notifications about
the VM state changes because both listen on the "notifications" AMQP topic.

- added a new configuration parameter for SchedulerMaanger: "notification_topic"

Change-Id: I444aeac5539bc4b6994f8722637e7aba7d82dc78
Sem-Ver: bugfix
2017-01-25 13:40:32 +00:00
Lisa Zangrando a858311eb9 Add support for the automatic recycle of DB connections
This solves the error 'Lost connection to MySQL server during query'
due to MySQL, which removes connections after a timeout.

- added a new configuration parameter for QueueManager: 'db_pool_recycle'

Change-Id: I2974f414afa6cb3d44e85dd3e05600cfd49cb905
Sem-Ver: bugfix
2017-01-25 10:11:46 +01:00
Jenkins 358d5d453d Merge "Add support for AMQP HA to NovaManager" 2017-01-20 14:44:28 +00:00
Jenkins 5bc82944c4 Merge "Enable SSL for OpenStack Trust" 2017-01-20 14:44:23 +00:00
Jenkins ebe95a1761 Merge "QuotaManager: private quota shrinking must not be always allowed" 2017-01-20 14:42:38 +00:00
Lisa Zangrando 87c83deaaa Enable SSL for OpenStack Trust
Added support to SSL connections

Change-Id: I03cfb4fef50b6fee805369883f0d4436f9d6567f
Sem-Ver: feature
2017-01-20 14:37:13 +00:00
Lisa Zangrando 7926137bb5 Add support for AMQP HA to NovaManager
- AMQP HA cluster support added
- added the new 'amqp_hosts' configuration attribute

Change-Id: I20973b3a66540814b86970628270dc83adab8018
Sem-Ver: feature
2017-01-20 14:34:44 +00:00
Lisa Zangrando 12d2842596 use API v3 for KeystoneManager.getUsers()
Before, KeystoneManager.getUsers() used the OLD v2.0 API version.


Change-Id: I49c10c8a3452b84c02de441f28d23c60ae505db4
Sem-Ver: feature
2017-01-20 13:26:09 +00:00
Lisa Zangrando 449d35439d QuotaManager: private quota shrinking must not be always allowed
QuotaManager not allows the private quota shrinking if
the current resource usage exceeds the new size.

Change-Id: Ie86314d137991a755ec178b82d3716b3fc35bc0e
Sem-Ver: bugfix
2017-01-20 12:50:28 +01:00
Lisa Zangrando 447f11d315 NovaManager and KeystoneManager are not SSL-enabled
NovaManager and KeystoneManager MUST support the HTTPS connections
for interacting with the OpenStack services.

- added two new manager config options: ssl_ca_file and ssl_cert_file

Change-Id: Ibacbf3504badd65a792c72c9134e2c7c13adea69
Sem-Ver: feature
2017-01-16 12:59:30 +01:00