----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/11027/#review20481 -----------------------------------------------------------
Ship it! Ship It! - Koushik Das On May 13, 2013, 9:34 a.m., bharat kumar wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/11027/ > ----------------------------------------------------------- > > (Updated May 13, 2013, 9:34 a.m.) > > > Review request for cloudstack, Abhinandan Prateek and Koushik Das. > > > Description > ------- > > Cloudstack-702. Multiple ip ranges in different subnets. > > This feature enables adding of guest ip ranges (public ips) form different > subnets. > > In order to provide the dhcp service to a different subnet we create an > ipalias on the router. This allows the router to listen to the dhcp request > from the guest vms and respond accordingly. Every time a vm is deployed in > the new subnet we configure an ip alias on the router. Cloudstack uses > dnsmasq to provide dhcp service. We need to configure the dnsmasq to issue > ips on the new subnets. Added a new class dnsmasqconfigurator which generates > the dnsmasq confg file, this file replaces the old config in the router. > > The details of the alias ips are stored in db in the nic_ip_alias table. > Every time a new subnet is added one of the ip from the subnet is used to > configure the ip alias. > > I have pushed the code to > https://github.com/bvbharatk/cloud-stack/tree/Cloudstack-702 , also rebased > the code with master. > I need to test the code for advanced sg enabled network using kvm. > > This is duplicate of the pervious review request > https://reviews.apache.org/r/10948/. please ignore it. > > I have added the unit test > Marvin tests are at > https://git-wip-us.apache.org/repos/asf?p=cloudstack.git;h=53e4965 > > Also accomodated some of the changes suggested by koushik. > corrected the import statements. renamed the IpAlias command to createIpAlias > command. > > This feature supports only ipv4 > > > This addresses bug Cloudstack-702. > > > Diffs > ----- > > api/src/com/cloud/agent/api/to/DnsmasqTO.java PRE-CREATION > api/src/com/cloud/exception/MissingParameterValueException.java > PRE-CREATION > api/src/com/cloud/network/element/DhcpServiceProvider.java f73590c > api/src/com/cloud/vm/NicIpAlias.java PRE-CREATION > client/tomcatconf/applicationContext.xml.in a41797e > core/src/com/cloud/agent/api/routing/CreateIpAliasCommand.java PRE-CREATION > core/src/com/cloud/agent/api/routing/DeleteIpAliasCommand.java PRE-CREATION > core/src/com/cloud/agent/api/routing/DnsMasqConfigCommand.java PRE-CREATION > core/src/com/cloud/agent/api/routing/IpAliasTO.java PRE-CREATION > > core/src/com/cloud/agent/resource/virtualnetwork/VirtualRoutingResource.java > b9bda4d > core/src/com/cloud/network/DnsMasqConfigurator.java PRE-CREATION > engine/schema/src/com/cloud/dc/dao/VlanDao.java cc82632 > engine/schema/src/com/cloud/dc/dao/VlanDaoImpl.java 100295b > engine/schema/src/com/cloud/network/dao/IPAddressDao.java 3d588fa > engine/schema/src/com/cloud/network/dao/IPAddressDaoImpl.java 73f310f > engine/schema/src/com/cloud/vm/dao/NicDao.java 12efe08 > engine/schema/src/com/cloud/vm/dao/NicDaoImpl.java fa30168 > patches/systemvm/debian/config/root/createIpAlias.sh PRE-CREATION > patches/systemvm/debian/config/root/deleteIpAlias.sh PRE-CREATION > patches/systemvm/debian/config/root/dnsmasq.sh PRE-CREATION > > plugins/hypervisors/baremetal/src/com/cloud/baremetal/networkservice/BaremetalDhcpElement.java > b72d1c8 > > plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java > 6d7e0e7 > > plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java > bac361d > > plugins/network-elements/midonet/src/com/cloud/network/element/MidoNetElement.java > 804e4a6 > scripts/vm/hypervisor/xenserver/createipAlias.sh PRE-CREATION > scripts/vm/hypervisor/xenserver/deleteipAlias.sh PRE-CREATION > scripts/vm/hypervisor/xenserver/vmops 30b5300 > scripts/vm/hypervisor/xenserver/xcpserver/patch b7961bb > scripts/vm/hypervisor/xenserver/xenserver56/patch 36dba3d > scripts/vm/hypervisor/xenserver/xenserver56fp1/patch d20e60f > scripts/vm/hypervisor/xenserver/xenserver60/patch c9125f4 > server/src/com/cloud/configuration/ConfigurationManager.java d2f8319 > server/src/com/cloud/configuration/ConfigurationManagerImpl.java fdc0ffb > server/src/com/cloud/network/NetworkManager.java 34a092a > server/src/com/cloud/network/NetworkManagerImpl.java 29c04ed > server/src/com/cloud/network/addr/PublicIp.java 25e9d30 > server/src/com/cloud/network/element/VirtualRouterElement.java 28473cc > server/src/com/cloud/network/router/VirtualNetworkApplianceManager.java > fcf650f > server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java > e3dd06b > server/src/com/cloud/vm/dao/NicIpAliasDao.java PRE-CREATION > server/src/com/cloud/vm/dao/NicIpAliasDaoImpl.java PRE-CREATION > server/src/com/cloud/vm/dao/NicIpAliasVO.java PRE-CREATION > server/test/com/cloud/configuration/ValidateIpRangeTest.java PRE-CREATION > server/test/com/cloud/network/MockNetworkManagerImpl.java eb5fc25 > server/test/com/cloud/vpc/MockConfigurationManagerImpl.java 9058798 > server/test/com/cloud/vpc/MockNetworkManagerImpl.java 84ae818 > server/test/com/cloud/vpc/MockVpcVirtualNetworkApplianceManager.java > 2886af4 > > server/test/org/apache/cloudstack/networkoffering/CreateNetworkOfferingTest.java > 92aa2a2 > server/test/resources/createNetworkOffering.xml 90342c5 > setup/db/db/schema-410to420.sql 6e74537 > > Diff: https://reviews.apache.org/r/11027/diff/ > > > Testing > ------- > > Tested this with xenserver in basic zone. > > > Thanks, > > bharat kumar > >