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/06/16 00:38:02 UTC

[8/51] [abbrv] git commit: VPC : revert some change

VPC : revert some change


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

Branch: refs/heads/vpc
Commit: e69561b8577757c3bbfdf3f9ea4af3a0fd9a1ce1
Parents: 3e5f391
Author: anthony <an...@cloud.com>
Authored: Tue Jun 12 15:32:06 2012 -0700
Committer: Alena Prokharchyk <al...@citrix.com>
Committed: Fri Jun 15 14:32:47 2012 -0700

----------------------------------------------------------------------
 .../com/cloud/network/guru/ControlNetworkGuru.java |   19 +++++++++++++-
 .../network/lb/ElasticLoadBalancerManagerImpl.java |    6 ++++
 .../router/VirtualNetworkApplianceManagerImpl.java |   18 ++++++++-----
 wscript                                            |    2 +-
 4 files changed, 35 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e69561b8/server/src/com/cloud/network/guru/ControlNetworkGuru.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/guru/ControlNetworkGuru.java b/server/src/com/cloud/network/guru/ControlNetworkGuru.java
index 807bf31..4427be7 100755
--- a/server/src/com/cloud/network/guru/ControlNetworkGuru.java
+++ b/server/src/com/cloud/network/guru/ControlNetworkGuru.java
@@ -106,7 +106,14 @@ public class ControlNetworkGuru extends PodBasedNetworkGuru implements NetworkGu
     @Override
     public NicProfile allocate(Network config, NicProfile nic, VirtualMachineProfile<? extends VirtualMachine> vm) throws InsufficientVirtualNetworkCapcityException,
             InsufficientAddressCapacityException {
-       
+    	
+        if(vm.getHypervisorType() == HypervisorType.VMware && vm.getType() != VirtualMachine.Type.DomainRouter) {
+        	NicProfile nicProf = new NicProfile(Nic.ReservationStrategy.Create, null, null, null, null);
+            String mac = _networkMgr.getNextAvailableMacAddressInNetwork(config.getId());
+            nicProf.setMacAddress(mac);
+            return nicProf;
+        }
+        
         if (nic != null) {
             throw new CloudRuntimeException("Does not support nic specification at this time: " + nic);
         }
@@ -130,6 +137,15 @@ public class ControlNetworkGuru extends PodBasedNetworkGuru implements NetworkGu
 	            String mac = _networkMgr.getNextAvailableMacAddressInNetwork(config.getId());
 	            nic.setMacAddress(mac);
 	            return;
+        	} else {
+        		// in basic mode and in VMware case, control network will be shared with guest network
+	            String mac = _networkMgr.getNextAvailableMacAddressInNetwork(config.getId());
+	            nic.setMacAddress(mac);
+	            nic.setIp4Address("0.0.0.0");
+	            nic.setNetmask("0.0.0.0");
+	            nic.setFormat(AddressFormat.Ip4);
+	            nic.setGateway("0.0.0.0");
+        		return;
         	}
         }
         
@@ -142,7 +158,6 @@ public class ControlNetworkGuru extends PodBasedNetworkGuru implements NetworkGu
         nic.setNetmask("255.255.0.0");
         nic.setFormat(AddressFormat.Ip4);
         nic.setGateway(NetUtils.getLinkLocalGateway());
-        nic.setDeviceId(0);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e69561b8/server/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java b/server/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java
index 17b4050..1870518 100644
--- a/server/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java
+++ b/server/src/com/cloud/network/lb/ElasticLoadBalancerManagerImpl.java
@@ -856,6 +856,12 @@ public class ElasticLoadBalancerManagerImpl implements
                     // always add management explicit route, for basic networking setup
                     buf.append(" mgmtcidr=").append(_mgmtCidr);
                     buf.append(" localgw=").append(dest.getPod().getGateway());
+
+                    if (dc.getNetworkType() == NetworkType.Basic) {
+                        // ask elb vm to setup SSH on guest network
+                        buf.append(" sshonguest=true");
+                    }
+
                 }
 
                 controlNic = nic;

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e69561b8/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
index ad99885..216622e 100755
--- a/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
+++ b/server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
@@ -1210,12 +1210,8 @@ public class VirtualNetworkApplianceManagerImpl implements VirtualNetworkApplian
             s_logger.error("Didn't support redundant virtual router without public network!");
             return null;
         }
-        //Check if control network has to be set on VR
-        boolean controlNetwork = true;
-        if ( dest.getDataCenter().getNetworkType() == NetworkType.Basic ) {
-            // in basic mode, use private network as control network
-            controlNetwork = false;
-        }
+
+        
         
         //1) Get deployment plan and find out the list of routers
         boolean isPodBased = (dest.getDataCenter().getNetworkType() == NetworkType.Basic || 
@@ -1589,6 +1585,13 @@ public class VirtualNetworkApplianceManagerImpl implements VirtualNetworkApplian
                         buf.append(" mgmtcidr=").append(_mgmt_cidr);
                         buf.append(" localgw=").append(dest.getPod().getGateway());
                     }
+                    
+
+                    if (dc.getNetworkType() == NetworkType.Basic) {
+                        // ask domR to setup SSH on guest network
+                        buf.append(" sshonguest=true");
+                    }
+
                 }
             } else {
                 //Remove public and guest nics from the profile
@@ -1704,7 +1707,8 @@ public class VirtualNetworkApplianceManagerImpl implements VirtualNetworkApplian
 
         NicProfile controlNic = null;
 
-        if( dcVo.getNetworkType() == NetworkType.Basic) {
+        if(profile.getHypervisorType() == HypervisorType.VMware && dcVo.getNetworkType() == NetworkType.Basic) {
+            // TODO this is a ugly to test hypervisor type here
             // for basic network mode, we will use the guest NIC for control NIC
             for (NicProfile nic : profile.getNics()) {
                 if (nic.getTrafficType() == TrafficType.Guest && nic.getIp4Address() != null) {

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/e69561b8/wscript
----------------------------------------------------------------------
diff --git a/wscript b/wscript
index f8b7aea..9507336 100644
--- a/wscript
+++ b/wscript
@@ -5,7 +5,7 @@
 # if you change 'em here, you need to change it also in cloud.spec, add a %changelog entry there, and add an entry in debian/changelog
 
 
-VERSION = '3.0.3.2012-06-12T20:28:54Z'
+VERSION = '3.0.3.2012-06-12T21:55:09Z'
 APPNAME = 'cloud'
 
 import shutil,os