Statistics
| Branch: | Tag: | Revision:

root / snf-cyclades-app / synnefo / api / networks.py @ 7f849a28

History | View | Annotate | Download (11.3 kB)

# Date Author Comment
b7d38981 12/04/2012 04:51 pm Dimitris Aragiorgis

Introduce network flavors to replace network types

Add tags and mode to network db model. Replace existing type with
flavor. Introduce 4 different flavors. Each flavor has mode, link,
mac_prefix, tags. Supported flavors are CUSTOM, IP_LESS_ROUTED,
MAC_FILTERED, PHYSICAL_VLAN and are hardcoded in db models....

77f45438 11/26/2012 12:38 pm Christos Stavrakakis

Issue commissions when creating server/networks

Issue commissions to the Quotaholder when creating a VM or a Network.
The VM/Network that is associated with the corresponding serial in DB.
Also, the serial is marked as accepted because at the end of the
transaction the resource will be present in the DB. Even in case the...

cd2b0bf5 11/12/2012 04:59 pm Christos Stavrakakis

Sort all API list_* responses

b10aa469 11/09/2012 06:15 pm Christos Stavrakakis

Use the per-user network limit setting

6639a243 11/08/2012 06:19 pm Christos Stavrakakis

Merge branch 'master' into devel-0.12

Conflicts:
snf-cyclades-app/synnefo/api/management/commands/flavor-list.py
snf-cyclades-app/synnefo/api/management/commands/server-list.py
snf-cyclades-app/synnefo/api/networks.py
snf-cyclades-app/synnefo/logic/rapi.py

17600d55 11/08/2012 12:02 pm Christos Stavrakakis

Forbid creation of non enabled networks

d1b1e683 11/06/2012 01:30 pm Dimitris Aragiorgis

PUBLIC_ROUTED minor changes

Do not allow api to create public networks and type other
than PRIVATE_MAC_FILTERED/PRIVATE_PHYSICAL_VLAN.

Rename PUBLIC_ROUTED_USE_POOL setting to PUBLIC_USE_POOL.

Let synnefo do IP pool management only if network is private or...

17c2ed57 11/06/2012 12:50 pm Christos Stavrakakis

Fix HTTP response code when refusing action

Return Forbidden(403) instead of Unauthorized(401) when refusing a
requested action, because the VM is suspended or the resource is public.
Unauthorized should be used only when authentication is required and has...

e221ade2 11/01/2012 01:24 pm Christos Stavrakakis

Do not allow any API action on suspended VMs

Do not allow any modification of any administratively suspended VM through the
API.

22a9959d 10/30/2012 12:49 pm Christos Stavrakakis

Do not allow actions to deleted networks

5e1d07d4 10/29/2012 05:14 pm Christos Stavrakakis

Return ServiceUnavailable when pools are depleted

Return ServiceUnavailable, instead of OverLimit, when pools of bridges,
mac-prefixes or IPs run out of resources.

3e316e90 10/11/2012 12:07 pm Christos Stavrakakis

Catch OverLimit error in network create

0c37a721 10/03/2012 01:39 pm Christos Stavrakakis

Change logging levels

bf5c82dc 10/03/2012 01:09 pm Christos Stavrakakis

Add extra logging

d2e73c0c 09/27/2012 03:59 pm Christos Stavrakakis

Fix race conditions when updating network objects

Use for_update() object manager in order to exclude race conditions
when updating network objects.

af6a3bc5 09/19/2012 01:16 pm Christos Stavrakakis

Unique mac-prefix only for mac-filtered networks

03992c72 09/19/2012 01:16 pm Christos Stavrakakis

Refactor bridge and mac-prefix pool tables

Redesign the implementation of pools and map mac-prefix and bridge pools
to that design.

Each pool type is mapped to a table in the database, and each row of
that table is a pool of that type. All pool tables must contain the...

7cfbbf32 09/07/2012 05:36 pm Christos Stavrakakis

New method for creating BackendNetwork entries

Create a new method to the Network model, in order to create the
BackendNetwork entries tha correspond to this network. Also remove
the custom save method, since when multiple public network will be
supported, we want them to be correlated with specific backends.

7fede91e 09/07/2012 05:36 pm Christos Stavrakakis

Implement multiple public networks

Implement multiple public networks in order to support:
- different public networks per backend
- non-consecutive IP ranges in each backend

To support this, public networks are treated different from private
ones. Namely, they are correlated with one backend (and so have...

b14725eb 09/07/2012 05:36 pm Christos Stavrakakis

Do not allow creation of two big/small networks

- Networks smaller than /29 are not supported in Ganeti.
- Big networks will result in degraded performance in Ganeti
and DB due to the big reservation map.

3878553d 08/06/2012 11:30 am Kostas Papadimitriou

Networks list api response fix

include deleted networks in reponse if changes-since parameter is set. This
enables ui application to identify deleted networks and remove them from
user interface.

f91dee69 07/27/2012 04:20 pm Christos Stavrakakis

Fix bug in creating network

Exclude deleted networks.

f4a66897 07/27/2012 03:40 pm Christos Stavrakakis

Limit allowed private networks per user

1cf6ac86 07/27/2012 02:57 pm Christos Stavrakakis

Store action when creating a network

3165f027 07/27/2012 02:57 pm Christos Stavrakakis

Implement MAC Prefix Management

In order to guarantee uniqueness of MAC address accross all backends,
synnefo assignes a unique mac prefix to each network in each backend.

A mac-prefix of 20 bits, which is picked from the MacPrefixPool, is
assigned to each Network. The mac-prefix of the network in each...

6eed1ede 07/23/2012 11:49 am Christos Stavrakakis

Limit allowed network size

Limit the size of networks that users can create, since big IP
pools can have negative impact on performance. Allowed network
size is controled by 'MAX_CIDR_BLOCK' setting.

4dba0480 07/23/2012 11:49 am Christos Stavrakakis

Add transaction control to API methods

Specially for create_instance and create_network methods, since a
VirtualMachine, Network object is created before sending the request
to the backend.

cc3f266e 07/23/2012 11:49 am Christos Stavrakakis

Add support for IPv6

- Extend the Network model with fields for holding the IPv6 subnet and
gateway.
- Update network API methods.
- Modify ganeti hooks to return IPv6 address for all network interfaces.
IPv6 is now derived from the IPv6 subnet of the network in Ganeti,...

6dd70a5c 07/23/2012 11:49 am Christos Stavrakakis

New management command for creating a network

Create a management command for creating networks. Also remove
the initial_data.json, since it is currently not necessary.

839e2bd0 07/23/2012 11:48 am Christos Stavrakakis

Update network settings

8b2515a9 07/23/2012 11:48 am Christos Stavrakakis

Filter deleted entries when changes-since is used

Modify list_networks and list_servers to filter deleted entries when
if-modified-since HTTP header is used, because deleted entries can be
updated after deletion through the reconciliation mechanism.

87994836 07/23/2012 11:43 am Christos Stavrakakis

Handle bridge/mac-prefix pool exhaustion

Raise Overlimit exception when either bridge or mac-prefix pool
is exhausted. Also prohibit public network creation.

0196d9a3 07/23/2012 11:43 am Christos Stavrakakis

Add dirty bit to NetworkInterface

Extend NetworkInterface model with a dirty bit, indicating whether
the index of the NIC is consistent with the one in Ganeti. This flag is
set when deleting a NIC, and is switched off after processing the
notification from Ganeti. Removing a NIC with the dirty bit on is not...

08b079e2 07/23/2012 11:42 am Stavros Sachtouris

Update servers/networks responses for new API

- Reponses for servers and netowrks details (list or solo) are now
consistent to recent backend changes.
- Methods get_nic_from_index and construct_nic_id have been created
- Syntax for nic removal from network/vm has been adjusted

b9a0b3d5 07/23/2012 11:42 am Stavros Sachtouris

When creating network, the label subnet can now be cdir in the json request

04fe9a86 07/23/2012 11:39 am Christos Stavrakakis

Fix bug in networks api

5061546f 07/23/2012 11:39 am Christos Stavrakakis

Temporary API modification for new style networks

ce55f211 07/02/2012 08:25 pm Kostas Papadimitriou

Simple per user quota mechanism for networks/vms

- New dict setting VMS_USER_QUOTA to allow setting per user quota
(overrides MAX_VMS_PER_USER setting)
- Private networks quota mechanism (based on MAX_NETWORKS_PER_USER and
NETWORKS_USER_QUOTA settings)...

4b3b8688 02/24/2012 05:51 pm Giorgos Verigakis

Use lib.astakos instead of our own middleware

2035039b 02/24/2012 05:49 pm Giorgos Verigakis

Switch to the logging middleware

cc875294 02/02/2012 05:10 pm Giorgos Verigakis

Merge remote-tracking branch 'origin/master' into astakos-integration

Conflicts:
runtests.sh
snf-cyclades-app/synnefo/aai/__init__.py
snf-cyclades-app/synnefo/aai/fixtures/auth_test_data.json
snf-cyclades-app/synnefo/aai/middleware.py
snf-cyclades-app/synnefo/aai/models.py...

9c0ac5af 01/30/2012 06:55 pm Kostas Papadimitriou

Renamed snf-app to snf-cyclades-app