You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by al...@apache.org on 2012/07/18 02:44:31 UTC

git commit: VPC: added one more default network offering for VPC - the one not having LB service

Updated Branches:
  refs/heads/vpc a1333649d -> 6ad2388c7


VPC: added one more default network offering for VPC - the one not having LB service


Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/6ad2388c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/6ad2388c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/6ad2388c

Branch: refs/heads/vpc
Commit: 6ad2388c72c074d9ff6151b03a132b8f3306cc36
Parents: a133364
Author: Alena Prokharchyk <al...@citrix.com>
Authored: Tue Jul 17 17:41:07 2012 -0700
Committer: Alena Prokharchyk <al...@citrix.com>
Committed: Tue Jul 17 17:46:17 2012 -0700

----------------------------------------------------------------------
 api/src/com/cloud/offering/NetworkOffering.java    |    1 +
 .../configuration/ConfigurationManagerImpl.java    |   74 ++++++++-------
 .../src/com/cloud/network/NetworkManagerImpl.java  |   13 +++-
 .../com/cloud/server/ConfigurationServerImpl.java  |   33 ++++++-
 4 files changed, 84 insertions(+), 37 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6ad2388c/api/src/com/cloud/offering/NetworkOffering.java
----------------------------------------------------------------------
diff --git a/api/src/com/cloud/offering/NetworkOffering.java b/api/src/com/cloud/offering/NetworkOffering.java
index 5a30f51..a514ccf 100644
--- a/api/src/com/cloud/offering/NetworkOffering.java
+++ b/api/src/com/cloud/offering/NetworkOffering.java
@@ -48,6 +48,7 @@ public interface NetworkOffering {
     public final static String DefaultIsolatedNetworkOffering = "DefaultIsolatedNetworkOffering";
     public final static String DefaultSharedEIPandELBNetworkOffering = "DefaultSharedNetscalerEIPandELBNetworkOffering";
     public final static String DefaultIsolatedNetworkOfferingForVpcNetworks = "DefaultIsolatedNetworkOfferingForVpcNetworks";
+    public final static String DefaultIsolatedNetworkOfferingForVpcNetworksNoLB = "DefaultIsolatedNetworkOfferingForVpcNetworksNoLB";
 
 
     long getId();

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6ad2388c/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
index dd3f9e8..3a44b55 100755
--- a/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
+++ b/server/src/com/cloud/configuration/ConfigurationManagerImpl.java
@@ -3178,49 +3178,53 @@ public class ConfigurationManagerImpl implements ConfigurationManager, Configura
             }
         }
 
-        Map<Capability, String> lbServiceCapabilityMap = serviceCapabilityMap.get(Service.Lb);
+        
         boolean dedicatedLb = false;
         boolean elasticLb = false;
-        if ((lbServiceCapabilityMap != null) && (!lbServiceCapabilityMap.isEmpty())) {
-            String isolationCapability = lbServiceCapabilityMap.get(Capability.SupportedLBIsolation);
-            if (isolationCapability != null) {
-                _networkMgr.checkCapabilityForProvider(serviceProviderMap.get(Service.Lb), Service.Lb, Capability.SupportedLBIsolation, isolationCapability);
-                dedicatedLb = isolationCapability.contains("dedicated");
-            } else {
-                dedicatedLb = true;
-            }
-
-            String param = lbServiceCapabilityMap.get(Capability.ElasticLb);
-            if (param != null) {
-                elasticLb = param.contains("true");
-            }
-        }
-
-        Map<Capability, String> sourceNatServiceCapabilityMap = serviceCapabilityMap.get(Service.SourceNat);
         boolean sharedSourceNat = false;
         boolean redundantRouter = false;
-        if ((sourceNatServiceCapabilityMap != null) && (!sourceNatServiceCapabilityMap.isEmpty())) {
-            String sourceNatType = sourceNatServiceCapabilityMap.get(Capability.SupportedSourceNatTypes);
-            if (sourceNatType != null) {
-                _networkMgr.checkCapabilityForProvider(serviceProviderMap.get(Service.SourceNat), Service.SourceNat, 
-                        Capability.SupportedSourceNatTypes, sourceNatType);
-                sharedSourceNat = sourceNatType.contains("perzone");
+        boolean elasticIp = false;
+        if (serviceCapabilityMap != null && !serviceCapabilityMap.isEmpty()) {
+            Map<Capability, String> lbServiceCapabilityMap = serviceCapabilityMap.get(Service.Lb);
+            
+            if ((lbServiceCapabilityMap != null) && (!lbServiceCapabilityMap.isEmpty())) {
+                String isolationCapability = lbServiceCapabilityMap.get(Capability.SupportedLBIsolation);
+                if (isolationCapability != null) {
+                    _networkMgr.checkCapabilityForProvider(serviceProviderMap.get(Service.Lb), Service.Lb, Capability.SupportedLBIsolation, isolationCapability);
+                    dedicatedLb = isolationCapability.contains("dedicated");
+                } else {
+                    dedicatedLb = true;
+                }
+
+                String param = lbServiceCapabilityMap.get(Capability.ElasticLb);
+                if (param != null) {
+                    elasticLb = param.contains("true");
+                }
             }
 
-            String param = sourceNatServiceCapabilityMap.get(Capability.RedundantRouter);
-            if (param != null) {
-                _networkMgr.checkCapabilityForProvider(serviceProviderMap.get(Service.SourceNat), Service.SourceNat, 
-                        Capability.RedundantRouter, param);
-                redundantRouter = param.contains("true");
+            Map<Capability, String> sourceNatServiceCapabilityMap = serviceCapabilityMap.get(Service.SourceNat);
+            if ((sourceNatServiceCapabilityMap != null) && (!sourceNatServiceCapabilityMap.isEmpty())) {
+                String sourceNatType = sourceNatServiceCapabilityMap.get(Capability.SupportedSourceNatTypes);
+                if (sourceNatType != null) {
+                    _networkMgr.checkCapabilityForProvider(serviceProviderMap.get(Service.SourceNat), Service.SourceNat, 
+                            Capability.SupportedSourceNatTypes, sourceNatType);
+                    sharedSourceNat = sourceNatType.contains("perzone");
+                }
+
+                String param = sourceNatServiceCapabilityMap.get(Capability.RedundantRouter);
+                if (param != null) {
+                    _networkMgr.checkCapabilityForProvider(serviceProviderMap.get(Service.SourceNat), Service.SourceNat, 
+                            Capability.RedundantRouter, param);
+                    redundantRouter = param.contains("true");
+                }
             }
-        }
 
-        Map<Capability, String> staticNatServiceCapabilityMap = serviceCapabilityMap.get(Service.StaticNat);
-        boolean elasticIp = false;
-        if ((staticNatServiceCapabilityMap != null) && (!staticNatServiceCapabilityMap.isEmpty())) {
-            String param = staticNatServiceCapabilityMap.get(Capability.ElasticIp);
-            if (param != null) {
-                elasticIp = param.contains("true");
+            Map<Capability, String> staticNatServiceCapabilityMap = serviceCapabilityMap.get(Service.StaticNat);
+            if ((staticNatServiceCapabilityMap != null) && (!staticNatServiceCapabilityMap.isEmpty())) {
+                String param = staticNatServiceCapabilityMap.get(Capability.ElasticIp);
+                if (param != null) {
+                    elasticIp = param.contains("true");
+                }
             }
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6ad2388c/server/src/com/cloud/network/NetworkManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/NetworkManagerImpl.java b/server/src/com/cloud/network/NetworkManagerImpl.java
index 4514b3f..f0e49ab 100755
--- a/server/src/com/cloud/network/NetworkManagerImpl.java
+++ b/server/src/com/cloud/network/NetworkManagerImpl.java
@@ -1461,7 +1461,18 @@ public class NetworkManagerImpl implements NetworkManager, NetworkService, Manag
         if (_networkOfferingDao.findByUniqueName(NetworkOffering.DefaultIsolatedNetworkOfferingForVpcNetworks) == null) {
             offering = _configMgr.createNetworkOffering(NetworkOffering.DefaultIsolatedNetworkOfferingForVpcNetworks,
                     "Offering for Isolated VPC networks with Source Nat service enabled", TrafficType.Guest,
-                    null, false, Availability.Required, null, defaultVPCOffProviders,
+                    null, false, Availability.Optional, null, defaultVPCOffProviders,
+                    true, Network.GuestType.Isolated, false, null, false, null, false);
+            offering.setState(NetworkOffering.State.Enabled);
+            _networkOfferingDao.update(offering.getId(), offering);
+        }
+        
+        if (_networkOfferingDao.findByUniqueName(NetworkOffering.DefaultIsolatedNetworkOfferingForVpcNetworksNoLB) == null) {
+            //remove LB service
+            defaultVPCOffProviders.remove(Service.Lb);
+            offering = _configMgr.createNetworkOffering(NetworkOffering.DefaultIsolatedNetworkOfferingForVpcNetworksNoLB,
+                    "Offering for Isolated VPC networks with Source Nat service enabled and LB service disabled", TrafficType.Guest,
+                    null, false, Availability.Optional, null, defaultVPCOffProviders,
                     true, Network.GuestType.Isolated, false, null, false, null, false);
             offering.setState(NetworkOffering.State.Enabled);
             _networkOfferingDao.update(offering.getId(), offering);

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/6ad2388c/server/src/com/cloud/server/ConfigurationServerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/server/ConfigurationServerImpl.java b/server/src/com/cloud/server/ConfigurationServerImpl.java
index 27e96b9..a0d10b6 100755
--- a/server/src/com/cloud/server/ConfigurationServerImpl.java
+++ b/server/src/com/cloud/server/ConfigurationServerImpl.java
@@ -1020,7 +1020,7 @@ public class ConfigurationServerImpl implements ConfigurationServer {
                 NetworkOffering.DefaultIsolatedNetworkOfferingForVpcNetworks,
                 "Offering for Isolated Vpc networks with Source Nat service enabled",
                 TrafficType.Guest,
-                false, false, null, null, true, Availability.Required,
+                false, false, null, null, true, Availability.Optional,
                 null, Network.GuestType.Isolated, false, false);
 
         defaultNetworkOfferingForVpcNetworks.setState(NetworkOffering.State.Enabled);
@@ -1045,6 +1045,37 @@ public class ConfigurationServerImpl implements ConfigurationServer {
             s_logger.trace("Added service for the network offering: " + offService);
         }
         
+        // Offering #7
+        NetworkOfferingVO defaultNetworkOfferingForVpcNetworksNoLB = new NetworkOfferingVO(
+                NetworkOffering.DefaultIsolatedNetworkOfferingForVpcNetworksNoLB,
+                "Offering for Isolated Vpc networks with Source Nat service enabled and LB service Disabled",
+                TrafficType.Guest,
+                false, false, null, null, true, Availability.Optional,
+                null, Network.GuestType.Isolated, false, false);
+
+        defaultNetworkOfferingForVpcNetworksNoLB.setState(NetworkOffering.State.Enabled);
+        defaultNetworkOfferingForVpcNetworksNoLB = _networkOfferingDao.persistDefaultNetworkOffering(defaultNetworkOfferingForVpcNetworksNoLB);
+        
+        Map<Network.Service, Network.Provider> defaultVpcNetworkOfferingProvidersNoLB = new HashMap<Network.Service, Network.Provider>();
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.Dhcp, Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.Dns, Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.UserData, Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.NetworkACL, Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.Gateway, Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.SourceNat, Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.StaticNat, Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.PortForwarding, Provider.VPCVirtualRouter);
+        defaultVpcNetworkOfferingProvidersNoLB.put(Service.Vpn, Provider.VPCVirtualRouter);
+        
+        for (Service service : defaultVpcNetworkOfferingProvidersNoLB.keySet()) {
+            NetworkOfferingServiceMapVO offService = new NetworkOfferingServiceMapVO
+                    (defaultNetworkOfferingForVpcNetworksNoLB.getId(), service, defaultVpcNetworkOfferingProvidersNoLB.get(service));
+            _ntwkOfferingServiceMapDao.persist(offService);
+            s_logger.trace("Added service for the network offering: " + offService);
+        }
+        
+        
+        
         txn.commit();
     }