Commit Graph

980 Commits

Author SHA1 Message Date
Alex Huang abbae2aa87 Fixed the problem with offerings and templates. These two items due to a previous patch all the way back in 2.1.x versions uses the removed column incorrectly. No one fixed since then. Hence, there's a bunch of findbyidincludingremoved calls in the cloudstack code around these two items. 2013-08-26 17:31:10 -07:00
Alex Huang ff6b3fd11a Removed getzone 2013-08-26 17:31:08 -07:00
Toshiaki Hatano 914e7c4542 Revert "CLOUDSTACK-2328: Linux native VXLAN support on KVM hypervisor"
This reverts commit 34ae32e0c2.
2013-08-24 07:12:23 +00:00
Toshiaki Hatano 34ae32e0c2 CLOUDSTACK-2328: Linux native VXLAN support on KVM hypervisor
Initial patch for VXLAN support.
Fully functional, hopefully, for GuestNetwork - AdvancedZone.

Patch Note:
 in cloudstack-server
- Add isolation method VXLAN
- Add VxlanGuestNetworkGuru as plugin for VXLAN isolation
- Modify NetworkServiceImpl to handle extended vNet range for VXLAN isolation
- Add VXLAN isolation option in zoneWizard UI

 in cloudstack-agent (kvm)
- Add modifyvxlan.sh script that handle bridge/vxlan interface manipulation script
-- Usage is exactly same to modifyvlan.sh
- BridgeVifDriver will call modifyvxlan.sh instead of modifyvlan.sh when VXLAN is used for isolation

Database changes:
- No change in database structure.
- VXLAN isolation uses same tables that VLAN uses to store vNet allocation status.

Known Issue:
- Some resource still says 'VLAN' in log even if VXLAN is used
- in UI, "Network - GuestNetworks" dosen't display VNI
-- VLAN ID field displays "N/A"
2013-08-24 01:39:11 +00:00
Koushik Das 502c1db103 CLOUDSTACK-3441: [Load Test] High delays between VM being allocated to Pod and network implementation causing delays in VM deployment
The locking code in implement/shutdown network code was not efficient. Even in order to check the current state of the network lock was getting acquired which is not required. This resulted in delays in deploy VM as can be seen from attached logs where the code waited on the lock just to check if network is implemented.
As part of the fix moved out code that is checking if the network is already implemented or shutdowned outside the lock.
2013-08-21 15:25:45 +05:30
Koushik Das 534e0977c3 CLOUDSTACK-2131: [Performance][Enhancement] Avoid checking for providers that are not enabled while creating network.
For some scenarios like prepare nic, all network service providers are checked which is not efficient and also introduces unnecessary dependencies.
The check to use only the required providers is already there for implement, shutdown operation on network. Put the same check for all missing cases.
2013-08-21 12:48:51 +05:30
Alex Huang f23f1530e7 Removed missing class from application context 2013-08-19 14:13:31 -07:00
Alex Huang 092e20204a Divided NetworkManagerImpl into two files: NetworkManagerImpl and IpAddressManagerImpl 2013-08-19 14:13:29 -07:00
Alex Huang 4ba359c3fe Moved VirtualMachineManager into engine 2013-08-19 14:13:28 -07:00
Alex Huang 5495f10bce Revert "Reverting the range of commits that broke the build"
This reverts commit b59e3aaefc.
2013-08-08 15:02:40 -07:00
Bharat Kumar 5f2f5181e9 CLOUDSTACK-4083 if a failure occurs while adding VM to another network (this should be the first vm in the subnet). The ip alias created as a part of this process is not removed.
Signed-off-by: Sheng Yang <sheng.yang@citrix.com>
2013-08-08 10:31:15 -07:00
Prasanna Santhanam b59e3aaefc Reverting the range of commits that broke the build
This reverts commits 30c33415..f6a2c817bc

Signed-off-by: Prasanna Santhanam <tsp@apache.org>
2013-08-08 14:46:56 +05:30
Alex Huang 942f282a6e Moved config into it's own package 2013-08-07 16:41:02 -07:00
Likitha Shetty 31fe99ef91 CLOUDSTACK-4025. NPE observed during VM start.
NPE was hit during VM start because the network it was to be deployed in didn't get implemented - Handling this failure.
2013-08-07 13:28:27 +05:30
Murali Reddy 42b81009b9 CLOUDSTACK-4013: [PortableIP] [MultiplePhysicalNetworks] Associate
portable IP is trying to insert network id as physical network id

ensuring network id, physical network id, source network id are properly
set for portable ip in user_ip_address and vlan tables
2013-08-06 17:16:58 +05:30
Alena Prokharchyk fc33d69b2a CLOUDSTACK-4023: lock the network during the shutdownNetwork (just the way we do when implement network)
Conflicts:
	server/src/com/cloud/network/NetworkServiceImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
2013-08-02 13:20:47 -07:00
Alena Prokharchyk a3b86573b9 CLOUDSTACK-4020: lock nic entry in releaseNic method. Otherwise multiple threads can try to release the same nic at the same time, and it will lead to NPEs and backend failures
Conflicts:
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
2013-08-01 16:19:10 -07:00
Marcus Sorensen 566ce3e625 Summary: Fix null pointer and op_networks blocker to account cleanup
Detail: Accounts can fail in cleanup/gc process due to inconsistent op_networks
table and null pointer in looking up account for event publishing.

BUG-ID: CLOUDSTACK-3957
Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1375204815 -0600
2013-07-30 11:22:11 -06:00
Murali Reddy b2fdfc5084 CLOUDSTACK-3642: [Usage][PortableIP] CS is not generating usage events
for portable IPs

generating usage event for acquire and release
2013-07-30 19:01:10 +05:30
Murali Reddy c520aae346 CLOUDSTACK-2991: [PortableIPRange] CS should not allow portable IP with
sourceNAT service on it

if a portable ip is first IP associated with a non-VPC network, then its
being considered as source nat IP. This fix adds exemption for portable
IP not to be considred for source nat.
2013-07-30 15:49:09 +05:30
Bharat Kumar a8387568f3 Fixed the conditon which checks for the provider's capabilty and reapply ipaliases on virtual router restart.
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-29 17:40:00 +05:30
Likitha Shetty b7a483608f CLOUDSTACK-3735. Domain deletion fails even when the networks within the domain have been destroyed.
When a network is destroyed remove the corresponding network entry from domain_network_ref and account_network_ref table
2013-07-24 20:03:51 +05:30
Alex Huang 1325014a03 Changed VirtualMachineProfile to be non-generic. From here on VirtualMachineManager will only manage vm instance. It doesn't understand the difference between different types of VMs. This makes the vmsync code to be generic across all vms. 2013-07-22 11:48:11 -07:00
Alena Prokharchyk 823c72552e InternalLb: fixed creation for default network offering with internal lb support - public lb support should be disbaled on it 2013-07-19 13:20:57 -07:00
Murali Reddy 28aaa7534a CLOUDSTACK-3642: [Usage][PortableIP] CS is not generating usage events
for portable IPs

generating usage events for acquire/release of portable IP
2013-07-19 18:45:14 +05:30
Bharat Kumar d73bb22802 Incorportaed the review changes Now dhcpservice IPs are removed when last vm from the subnet is removed. Rebased with master.
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-17 12:35:06 +05:30
Bharat Kumar dd33abffbe Cloudstack-2997 Make haproxy maxconn configurable
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-17 10:06:11 +05:30
Bharat Kumar 6b549074fa Cloudstack-3313 Cannot deploy vm in ipv6 network
Signed-off-by: Abhinandan Prateek <aprateek@apache.org>
2013-07-17 10:06:11 +05:30
ahuang 11e1e585b1 UserContext switched to CallContext. Added generic storage mechanism for other code to carry information throughout a call. Made the calling User and Account a must have. Added an interface to carry entities in error. Fixed up the code. Part of the vmsync branch 2013-07-16 11:24:21 -07:00
Murali Reddy 4466492484 CLOUDSTACK-3444: Unable to transfer portalbe IP between ISOLATED network and VPC
Tiered Network

When portable IP is transferred across the zones, we emulate portable IP
as provisioned in new zone's physical network carrying public traffic
and logical public network. network Id, and physical network id both
were bieng set to same physical network id resulting in IP association
to fail. This fix ensures both network and physcial network are set
appropriatley.
2013-07-15 08:48:50 +05:30
Alena Prokharchyk 3984287434 CLOUDSTACK-3458: network GC thread - acquire global lock to prevent multiple MS from running the GC thread on the network at the same time 2013-07-11 09:37:57 -07:00
Murali Reddy ea8b85af2a CLOUDSTACK-234: create/delete firewa/lb/pf rule: send ip assoc command
only on first rule is created on the IP and last rule is revoked on the
IP

Current suboptima logic of IP Assoc

 - On associate IP to GuestNetwork there is an IPAssoc command sent to
   corresponding network service providers of the network
 - On every rule apply on IP associated with the network send IP assoc
   to the network service providers
 - On every rule deletion on IP associated with a network sernd IP assoc
   command to the network service providers

With this fix logic of IP assoc is changed as below which eliminates
executio of unnessary and expensive IpAssocCommand resource command

 - On associate IP to GuestNetwork, associate IP only to the network,
   Untill any service is associated with the IP dont send IP Assoc
 - On creation of first rule on the IP send IPAssoc to corresponding
   network service provider. Since IP is used for a service, IPAssoc
   need to be sent to correpondign service provider
 - On deletion of last rule on the IP send IPAssoc to corresponding
   network service provider. When last rule is deleted, IP has no
   service associated with it, so send IP assoc to service provider to
   remove the IP association
2013-07-08 14:52:12 +05:30
Hugo Trippaers 41fa79f65c The millisecond to second calculation was done with a bit shift of 10.
This is in effect a division by 1024, while time in ms should be divided
by 1000. The difference of 24 adds up to about a 381 day difference
today. This confuses anybody checking the timestamps in the logs.
2013-07-04 18:39:03 +02:00
Alena Prokharchyk 54c2133590 CLOUDSTACK-2984: createNetwork call - when vlan is specified, check that its not coming from the physical network vnet range as this range is used for dynamic vlan allocation during the network implementation stage 2013-07-01 16:17:43 -07:00
Murali Reddy 0f40cfbea8 CLOUDSTACK-2045: [Multiple IPs Per Nic] This feature is not working well
in case of networks with external devices after GC

add an exception for networks that use external networking devices and has
secondary guest IP's allocated. On network GC, when network goes through
implement phase a new vlan is allocated, based on the acquired VLAN id cidr
of the network is decided in case of external networking case. While NIC
uses reservation strategy 'Start' which ensures that new primary ip is
allocated for the NiC from the new CIDR. Secondary IP's have hardcoded
IP's in  network rules. So prevent network GC.
2013-06-28 12:26:20 +05:30
Murali Reddy ff167134e4 CLOUDSTACK-3214: transferring portable IP across zones with enableStatic
NAT does not work

making an exception for portabe IP, so that if the current datacenter with
portable IP is associated is different from destiantion data center

also on transfer on to new zone, transfer the portable ip association to
new data center, physical network id's
2013-06-26 19:29:55 +05:30
Alena Prokharchyk 1eacd7872e Update resource count for networks only when the network is non system and Isolated. Before we used to update the count only when offering had specifyVlan=false. And in 4.2 even isolated networks can have this attribute set to true, and we have to count them 2013-06-25 13:46:35 -07:00
Jayapal 6a7ae637dd CLOUDSTACK-1578 Egress default policy configurable using network offering in xenserver with VR as firewall provider 2013-06-24 13:37:00 +05:30
Kishan Kavala b422d8ddd9 CLOUDSTACK-2819: Revoke existing ACL items if the new ACL is empty 2013-06-20 17:06:06 +05:30
Edison Su 5f28dcc6bb merge to master 2013-06-19 22:41:13 -07:00
Edison Su 9aec9c605c merge to master 2013-06-19 18:16:47 -07:00
Sheng Yang b3fb4851ee Fix regression of return Userdata provider when caller asked for DHCP
It's introduced by:

commit 052c24c4d1
Author: Bharat Kumar <bharat.kumar@citrix.com>
Date:   Mon May 13 17:02:27 2013 +0530

    CLOUDSTACK-702: Multiple ip ranges in different subnets.

This commit get userdata provider when caller asked for dhcp provider, thus
result in trouble e.g.

ERROR [cloud.async.AsyncJobManagerImpl] (Job-Executor-11:job-10) Unexpected
exception while executing
org.apache.cloudstack.api.command.user.network.DeleteNetworkCmd
java.lang.ClassCastException:
com.cloud.baremetal.networkservice.BaremetalUserdataElement_EnhancerByCloudStack_5dee69d2
cannot be cast to com.cloud.network.element.DhcpServiceProvider
        at
com.cloud.network.NetworkManagerImpl.getDhcpServiceProvider(NetworkManagerImpl.java:3309)
...
2013-06-19 17:06:06 -07:00
Alena Prokharchyk d66e9c7b51 CLOUDSTACK-2843: Provideded an ability to turn off the synchronization being done on the CS agent side,
for number of commands participating in Vm deployment process, as parallel deployment is supported on the hypervisor side.
The behavior is controlled by global config varirables:

"execute.in.sequence.hypervisor.commands" (false by default) sets/resets the synchronization for commands:
=========================
StartCommand
StopCommand
CreateCommand
CopyVolumeCommand

"execute.in.sequence.network.element.commands" (false by default) sets/resets the synchronization for commands:
==========================
DhcpEntryCommand
SavePasswordCommand
UserDataCommand
VmDataCommand

As a part of the fix, increased the global lock timeout to 30 mins in several VR scripts:
===========================
edithosts.sh
savepassword.sh
userdata.sh

to support situations when multiple concurrent calls to the script are being made.
2013-06-19 10:12:13 -07:00
Alena Prokharchyk 5d0a1cee13 CLOUDSTACK-2883: create default network offering with internal lb support (if doesn't exist already) 2013-06-17 16:13:19 -07:00
Likitha Shetty 770cf02ccf Global config to disable an account from acquiring public ips and guest vlans from the system if the account
has dedicated resources and the dedicated resources have all been consumed - use.system.public.ips and use.system.guest.vlans
Both configs are configurable at the account level too.
2013-06-17 17:54:36 +05:30
Min Chen 18aeef3ef1 Merge branch 'master' (up to commit
c30d9be3ce) into object_store.
2013-06-12 11:20:32 -07:00
Sheng Yang 4a14ea8a4d CLOUDSTACK-1771: Fix ipv6 address for router
Now it won't change(as ipv4 address) after router is destroyed.
2013-06-06 18:04:35 -07:00
Alena Prokharchyk f4a1a2ff38 Allow account to have multiple networks with customer defined cidrs as we already let it happen when the cidr is taken from the physical network config 2013-06-06 11:52:15 -07:00
Anthony Xu 271cf92ab7 allow subdomain access parent domain's network 2013-05-29 16:27:08 -07:00
Anthony Xu a8bb62c35c lockRow doesn't work without transaction, start transaction before lockRow 2013-05-29 15:48:23 -07:00