Commit Graph

202 Commits

Author SHA1 Message Date
Alena Prokharchyk
56b3561033 bug 12856: network offerings with services w/o providers support
status 12856: resolved fixed
2012-01-17 16:17:09 -08:00
Alena Prokharchyk
c87c3bc665 bug 12065: verify that provider supports service capability
status 12065: resolved fixed
2012-01-17 12:39:07 -08:00
Sheng Yang
73dbaf4c9f bug 12997: Prevent creating LB and firewall rule on different provider
status 12997: resolved fixed
2012-01-10 19:02:31 -08:00
Sheng Yang
5886109fb9 bug 12556: Check guest network cidr when add pod 2012-01-09 16:42:57 -08:00
frank
ea422af8a9 Bug 12777 - Add storage network configuration into CloudStack
Let StorageGuru inherit PodBaseNetworkGuru
2012-01-06 11:07:14 -08:00
Sheng Yang
89ca2fe48e bug 12656: Add restriction for network update and new rules
status 12656: resolved fixed
2012-01-05 21:08:41 -08:00
Sheng Yang
ba23973d53 bug 12656: Refactor IP associate process
Introduce the concept of Ip Deployer. The IP deployer would be responible for
apply IP to the element. Most element's IP deployer is itself, but it can be
someone else if we want to implement inline mode in the future.
2012-01-05 21:08:28 -08:00
Alena Prokharchyk
d4e0fbda83 bug 12686: added search by zoneId to the listNetworkOfferings 2012-01-04 12:31:59 -08:00
Sheng Yang
3263fd596e bug 10904: add a global config to enable/disable automatically add the vm to the default security group
status 10904: resolved fixed
2011-12-13 14:48:44 -08:00
Sheng Yang
7aed9ea76d Add checking for specified cidr when create network and update network 2011-12-06 16:28:57 -08:00
Edison Su
2e79da0ce5 kvm is working now 2011-12-05 18:07:00 -08:00
Alena Prokharchyk
7b8287d323 bug 10804: Api and middle layer support for default route feature 2011-12-05 14:53:45 -08:00
Alena Prokharchyk
6e3cbaab6f SecurityGroupProvider is added automatically in Disabled state during the zone creation 2011-11-29 10:13:02 -08:00
Alena Prokharchyk
5ea4133d7b createNetworkOffering: verify that individual services can be enabled for each provider specified for the network offering 2011-11-18 14:46:10 -08:00
Alex Huang
84d5f0514e Changed network tags to network name as we no longer need to send the entire network tags down to the resource. 2011-11-18 14:28:16 -08:00
Alena Prokharchyk
337c07c0d1 Default gateway service to sourceNat service in the API 2011-11-17 16:28:10 -08:00
Alena Prokharchyk
5571afa471 Virtual router elements: prepare nics only when VirtualRouter is a provider for at least one service in the network 2011-11-17 14:33:22 -08:00
Alena Prokharchyk
0bb325ac12 Call implement() and shutdown() methods for providers only when the provider serves a service for the network 2011-11-17 13:53:53 -08:00
Alena Prokharchyk
790b33bdfc More validation to network and network offering creation/upgrade 2011-11-16 14:53:38 -08:00
Alena Prokharchyk
bb2a8cf7ea NaaS: added "subdomainAccess" parameter to domain level network object. The parameter defines whether the network can be accessed from the subdomains. If the parameter is not specified, it would be defaulted to allow.subdomain.network.access Global Config param 2011-11-14 18:13:47 -08:00
Alena Prokharchyk
87f5150e38 Basic zone is fixed and works with new NaaS now 2011-11-14 10:46:05 -08:00
Alena Prokharchyk
039e09ce93 * Introduced aclType parameter for createNetwork command (can hold 2 values now: Account and Domain). This parameter defines the access control type to the network object. If it's account -
only owner of the network can access it; if it's domain - all accounts in the domain and domain children can have an access.
* aclType replaces 2 old fields: isShared and isDomainSpecific.
* All 2.2.x account specific networks will have aclType=Account; 2.2.x Domain specific networks - aclType=domain; 2.2.x Zone level networks - aclType=Domain with domainId = Root domain id
2011-11-10 18:34:56 -08:00
Sheng Yang
bde1f6d2de Merge branch 'networkasservice'
Conflicts:
	api/src/com/cloud/api/commands/CreateRedundantVirtualRouterElementCmd.java
	api/src/com/cloud/api/commands/CreateVirtualRouterElementCmd.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/network/ExternalNetworkDeviceManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/offerings/NetworkOfferingVO.java
	setup/db/create-schema.sql
2011-11-10 16:36:08 -08:00
Alex Huang
f6fcaa49ec Merge complete except for virtualnetworkappliancemanager 2011-11-10 15:18:16 -08:00
Sheng Yang
8616705293 NaaS: Add getPhysicalNetworkId() 2011-11-09 15:23:13 -08:00
Alena Prokharchyk
50cf9cb8fb Removed unused code 2011-11-08 15:54:56 -08:00
alena
3a845d2d75 Keep Service/Provider map per network as well as per networkOffering (to handle the case when there are multiple providers defined for the same service in the network offering, and only one is picked when the network is created) 2011-11-07 16:16:03 -08:00
prachi
810f9e4034 While creating Zone, adding default VirtualRouter provider and instance to the default Physical Network.
Also adding default trafficTypes to through server-setup.xml
2011-11-07 14:43:41 -08:00
alena
17a7b7cda4 listNetworkOfferings: added an ability to filter based on the Services supported 2011-11-07 10:53:28 -08:00
alena
3e20c60d6d Fixed vm deployment in Basic zone 2011-11-02 17:02:44 -07:00
alena
f42c9e434f Basic zone: the System Guest network offering can be created from any Shared Guest network offering.
Limitation:
* in order to make the networkOffering choice, only one Shared network has to be Enabled at the moment when Basic zone is being created
2011-11-02 15:44:53 -07:00
prachi
6aa743165a Changes to support Enable/ Disable services of a service provider added to physical network:
- ListSupportedNetworkServiceProvidersCmd will now return Providers along with its element's services and boolean 'canEnableIndividualServices' that indicates if for this Provider services can be enabled/disabled
- add & update NetworkServiceProvider changed to take in the list of services to enable. While adding a provider, if list is null then all services supported by the element are enabled by default.
- ListNetworkServices enhanced to take in a provider name and returns services of that specific provider.
2011-11-01 18:03:55 -07:00
alena
2250dff349 1) Removed tags from the network object
2) Get hypervisor tags from the physical network instead.
2011-11-01 17:42:06 -07:00
Alex Huang
da78937d30 Removed some useless methods 2011-11-01 16:57:22 -07:00
alena
9560e92015 physicalNetworkId is optional in createNetwork api. Works as follows:
* can be specified for Shared network only
* if not specified for the Shared networks, try to locate it based on the zoneId and tags. If tags is not null, pick up first physicalNetwork from the zone that has matching tags. If tags is null, and there are none/more than 1 physical netwroks in the zone, error out.
2011-11-01 15:49:39 -07:00
alena
80dc2c0b1a Don't send security group commands to the backend when 1) securtiy group service is disabled in the network offering and 2) security group service provider is supported on the physical network 2011-11-01 12:07:32 -07:00
alena
d315e57b0e Renamed "type" to "guestType" 2011-10-27 16:51:42 -07:00
alena
fe0b685e95 Security group is a service now 2011-10-27 16:49:20 -07:00
Sheng Yang
e1e96c0bb3 NaaS: Add ServiceProviders
Added PortForwardingServiceProvider, StaticNatServiceProvider, rename
PasswordServiceProvider to UserDataServiceProvider(may rename to a better name
later).

Add related function for service providers.
2011-10-27 11:55:10 -07:00
Edison Su
193474a595 Storage migration: if it's basic network and migrate to different pod, need to reallocate network 2011-10-25 19:20:18 -07:00
alena
96843be30a Pass cleanup parametet to shutdown() method of the networkElement. Based on this parameter, the element can decide if it wants to destroy the instances, or just shut them down 2011-10-25 18:48:59 -07:00
alena
525a0a7675 1)Changed implementation for restart network: call shutdown/implement methods as a part of it
2)Re-apply all existing firewall rules as a part of implement call. TODO: Cleanup all existing rules from the backend (leave them in the DB) as a part of shutdown call
2011-10-25 18:24:24 -07:00
prachi
780e0efe79 Removing references to DataCenter - providers, using the networkoffering -> providers map instead.
TODO:
- Still leaving the provider columns in data_center schema as-is for CloudKit and BareMetal
- ExternalNetworkDeviceMgrImpl still needs to fix the dataCenter.setProviders calls and externalNetworkApplicance usage checks to see if zone has external networking.
2011-10-24 18:06:33 -07:00
alena
f6717e0a23 1) Method name change
2) Rely on SourceNatService when decide if DirectNetworkGuru and GuestNetworkGuru should handle the network
2011-10-24 17:30:14 -07:00
alena
75c8e33226 Removed guestIpType from network/networkOffering 2011-10-24 17:05:00 -07:00
alena
abca3dda9d Added ability to list network offerings availabe for network upgrade using listNetworkOfferings command with "networkId" parameter.
Limitations:

* can't upgrade to the network offering with lesser number of services
* can upgrade only when the service provider of the original offering is not external (domR, dhcp, elb) to the external type of the provider
2011-10-21 15:36:01 -07:00
alena
219978a9be Create network using physical network id 2011-10-20 18:25:13 -07:00
alena
ceda05298e Deprecate guestIpType in networkOffering api. Use type (Shared/Isolated) instead 2011-10-19 16:38:39 -07:00
alena
c00058adc2 Added type (Shared/Isolated) to the networkOffering/networks 2011-10-13 17:33:41 -07:00
Sheng Yang
0121c0516d Network: Add Service providers
In the past, the NetworkElement would cover almost all the functionality that
e.g.  virtual router can cover: firewall, source NAT, static NAT, password,
VPN... So anyone want to implement the NetworkElement would have to implement
these service's specific methods, even it wouldn't support it. Also, if we want
to find a e.g. FirewallServiceProvider, we have to proceed all the current
network service providers, to call a method to know if it support such service.
That's neither elegant nor scaling way to do it.

As the first step, this patch separates each ServiceProvider from NetworkElement
(there are some interface already out of NetworkElement, so this patch slightly
modifies them too), and only the class would implement the correlated interface, would
have the ability to do these services.
2011-10-10 11:45:39 -07:00