Commit Graph

5586 Commits

Author SHA1 Message Date
Sheng Yang 143b7bc0d8 CLOUDSTACK-1218: Use the first IP in the first vlan range for VR in shared network 2013-03-14 15:34:45 -07:00
Sheng Yang 3b9901d56d CLOUDSTACK-1232: Only support cidr=64 in IPv6 2013-02-26 19:37:45 -08:00
Sheng Yang 57f084fe5c CLOUDSTACK-1303: Fix NPE when extend vlan with ipv4 only 2013-02-21 16:38:39 -08:00
Sheng Yang 7945d306be CLOUDSTACK-1219, CLOUDSTACK-1220: Fix IPv6 error messages 2013-02-14 16:19:17 -08:00
Sheng Yang 0ea19fc2aa Fix a typo
CanUseForDeploy() didn't return correct result due to this
2013-02-08 14:48:54 -08:00
Sheng Yang 931372e5ca IPv6: CLOUDSTACK-1107: Add support for createVlanIpRange to extend existed network 2013-02-07 20:23:10 -08:00
Sheng Yang 422834578f IPv6: One network can have more than one vlans 2013-02-06 19:46:58 -08:00
Sheng Yang 6d41fe0296 IPv6: CLOUDSTACK-1141: Fix reboot router with IPv6 assigned VM 2013-02-06 13:57:31 -08:00
Sheng Yang 95e63bc1cf IPv6: CLOUDSTACK-1153: Fix integer overflow on IPv6 address calcuation
Use BigInteger, which is 128 bits long.
2013-02-05 17:32:40 -08:00
Sheng Yang ec206d69be IPv6: CLOUDSTACK-1113: Fix the mechanism to find the usable IP in the IPv6
The new policy is:
1. Generate a random IP.
2. Find the next available IP, start from the generated IP.
3. If we cannot find an available IP after certain times(10000 by default,
network.ipv6.search.retry.max) retry, give up.
2013-02-05 14:33:06 -08:00
Sheng Yang 81a40611f1 IPv6: Fix ip address in range check 2013-02-05 14:32:31 -08:00
Sheng Yang c2e457c2ba IPv6: Check startipv6, endipv6 and ip6Gateway with ip range 2013-02-04 15:33:03 -08:00
Sheng Yang 41a815e762 IPv6: Disable untested features
Conflicts:

	api/src/com/cloud/api/commands/DeployVMCmd.java
2013-02-04 15:32:37 -08:00
Sheng Yang ff06a26c4d IPv6: Rename public_ipv6_address to user_ipv6_address
Conflicts:

	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/network/UserIpv6Address.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
2013-02-04 15:28:25 -08:00
Sheng Yang 5941915648 IPv6: Add vlan overlap checking 2013-02-04 15:17:00 -08:00
Sheng Yang f5ee570ec3 IPv6: Verify if requested IPv4/IPv6 addresses are valid
Also rename NetUtils.isValidIPv6() to NetUtils.isValidIpv6()
2013-02-04 15:16:27 -08:00
Sheng Yang 249d8e09bb IPv6: move assignPublicIp6Address() from NetworkManager to new Ipv6AddressManager
Don't want to involve IP address management code in NetworkManager.

Conflicts:

	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/network/NetworkManager.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
2013-02-04 15:16:00 -08:00
Sheng Yang 44d0cd6621 IPv6: Add support for IPv6 on DeployVMCmd
Conflicts:

	api/src/com/cloud/api/commands/DeployVMCmd.java
	api/src/com/cloud/network/Network.java
	server/src/com/cloud/network/NetworkManagerImpl.java
2013-02-04 14:58:39 -08:00
Sheng Yang e89d9e6272 IPv6: Add details for domainrouter response 2013-01-31 18:14:51 -08:00
Sheng Yang bec030fda8 IPv6: Fix generate random ip in range.
Ported from ipv6 branch.
2013-01-31 17:16:53 -08:00
Sheng Yang f55c23318a IPv6: Add nic response to user vm 2013-01-31 17:05:02 -08:00
Sheng Yang f7047eba73 IPv6: Update NetworkResponse and NicResponse
Conflicts:

	api/src/com/cloud/api/response/NetworkResponse.java
	api/src/com/cloud/api/response/NicResponse.java
2013-01-31 15:39:18 -08:00
Sheng Yang 4f76eee258 IPv6: Fix VlanIpRangeResponse
Conflicts:

	api/src/com/cloud/api/response/VlanIpRangeResponse.java
2013-01-31 15:35:39 -08:00
Sheng Yang 730da70d7d IPv6: Fix missed AddressFormat in nic table 2013-01-31 00:45:50 -08:00
Sheng Yang 5e3408ee4a IPv6: Remove dualstack parameter from createNetworkCmd
We can tell if it's dual stack by looking into the startIp and startIpv6.
2013-01-30 23:48:54 -08:00
Sheng Yang 462a479605 IPv6: Fix getIp6FromRange() 2013-01-30 23:45:27 -08:00
Sheng Yang d30d23ee08 IPv6: Disable password and userdata service for ipv6 for now
Would add support later.
2013-01-30 23:45:21 -08:00
Sheng Yang e935a4fc01 IPv6: Enable IPv6 address for router 2013-01-30 23:44:55 -08:00
Sheng Yang 4bdc94aaf3 IPv6: Accept IPv6 parameter for createNetworkCmd
Also ass public_ipv6_address for ipv6 address management.

Extend nics and vlans for ipv6 address.

Add dependency to com.googlecode.ipv6(java-ipv6).

Modify dhcpcommand for ipv6.

Conflicts:

	api/src/com/cloud/agent/api/routing/DhcpEntryCommand.java
	pom.xml
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/dc/VlanVO.java
	server/src/com/cloud/network/NetworkManager.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/NetworkVO.java
	server/test/com/cloud/network/MockNetworkManagerImpl.java
	server/test/com/cloud/network/MockNetworkModelImpl.java
	server/test/com/cloud/vpc/MockNetworkManagerImpl.java
2013-01-30 23:44:37 -08:00
Kishan Kavala 0d3eaa63d6 CLOUDSTACK-1010: Fix count issue for listHosts command 2013-01-18 16:24:36 +05:30
Marcus Sorensen 318ff6a774 Summary: Allow ssh keypairs to be created if developer flag set and user ! cloud
Detail: Previously in the code we allowed the configuration to create ssh
keypairs and put them in the configuration table so that systemvms could have
ssh key auth and work properly if the user was 'cloud' or if the developer
configuration item was set to true. It got changed to requiring both the cloud
user and the developer flag (using an || on a negative) somwhere along the way.
This changes it back to && on a negative to allow us to run as non-cloud users
with the dev flag set, and for cloud to deploy properly without the developer
flag.

Signed-off-by: Marcus Sorensen <marcus@betterservers.com> 1358285190 -0700
2013-01-17 13:21:20 -08:00
Prachi Damle ae8df820fb https://issues.apache.org/jira/browse/CLOUDSTACK-993
Changes:
- Introduction of maven skipped the java code that inserts the admin user. This causes the NPE in management server while trying to find the user and also, admin user cannot login as expected.
- Fixing the insertion of the admin user as part of startup.

Conflicts:

	server/src/com/cloud/server/ConfigurationServerImpl.java
2013-01-16 17:22:02 -08:00
Chiradeep Vittal 1776659fe7 Network-refactor: move validateRule to LB manager since it now has access to LB elements.
NetworkServiceImpl does not need a cache of system network offerings
Ensure mocks build to new APIs.

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 18:36:29 -08:00
Chiradeep Vittal 745fae93f6 Network-refactor: some clean up of the NetworkService interface
- remove unused public apis
- remove unused members
- change visibility of methods to protected if they do not implement a method in the interface

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 18:36:23 -08:00
Chiradeep Vittal 728db6c8ca Network-refactor: fix bugs in components.xml discovered by unit tests
Provide injection tests for NetworkManager and FirewallManager

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:02 -08:00
Chiradeep Vittal 1339650c2c Network-refactor: remove unused members. Makes testing of injection a PIA.
Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:02 -08:00
Chiradeep Vittal 88df984ff3 Network-refactor: add a method for plugins to get the source nat ip
Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:02 -08:00
Chiradeep Vittal a34ce77b77 Network-refactor: verify that s2s provider gets injected as expected
Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:01 -08:00
Chiradeep Vittal 0c3001530f Network-refactor: move readonly interface NetworkModel into api project so that plugins can stop depending on the server project
Network-refactor: accidentally injected NetworkModel twice (revert one of them)

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:01 -08:00
Chiradeep Vittal 504264236c Network-refactor: In preparation for moving the read-only interface NetworkModel
to the api project, ensure that all methods use interfaces from the api project.
By moving it to the api project, it lessens the dependency of plugins on the server components.

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:01 -08:00
Chiradeep Vittal 6b6d8c5710 Network-refactor: Move code from NetworkManager to NetworkModel.
NetworkModel is intended as a read-only view on the network model.
This includes Networks, Nics, Ip address, PhysicalNetwork, NetworkOfferings, etc
The code in configure() and start() is used to support queries on the network model which is now the responsibility of the NetworkModel service

Network-refactor: Fix tests so that they get injected with the required NetworkModel mock

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:01 -08:00
Chiradeep Vittal 5a830c4db0 Network-refactor: Refactor NetworkManager into NetworkModel and NetworkManager.
NetworkManager's exclusive focus is now
 - handling plugins during orchestration, and
 - to deal with ip address allocation.
Those classes that used to refer to NetworkManager to get access to the datamodel now refer to NetworkModel

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-09 15:49:01 -08:00
Chiradeep Vittal af1abe4056 Forgot some element adapters + dont add JuniperSRX by default 2013-01-07 15:21:57 -08:00
Chiradeep Vittal c876f02c6f Clean up some unused imports 2013-01-07 15:21:36 -08:00
Chiradeep Vittal cf90685985 Remove old applyRules implementation 2013-01-07 14:26:09 -08:00
Chiradeep Vittal f4da21998c WIP : extract NetworkService
WIP : move stuff between network manager and network service.
      at this point there is about 700 lines of duplicated code
WIP: Leave creation of default offerings to NetworkManager init
WIP: clean up imports

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-07 14:25:03 -08:00
Chiradeep Vittal a64b386714 Move applyRules to the rightful place(s). Not sure why applyIps is required during applyRules, so we still have a reference back into a (simplified) applyRules in NetworkManager 2013-01-04 19:22:53 -08:00
Chiradeep Vittal e37f458a8d Rationalize the interface by injecting all service providers by the service provider interface instead of assuming everybody implements NetworkElement. This is step 2 and includes all the plugins
import cleanups - remove unneeded and add explicit classes

Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-04 15:13:47 -08:00
Chiradeep Vittal 3529c47248 Rationalize the interface by injecting ipDeployers. This is step 1 and includes 2 service providers - Remote AccessVPN and S2S VPN
Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-04 15:08:55 -08:00
Chiradeep Vittal b0a1a47d48 Not all network service providers need to be NetworkElements. NetworkElements are only those that are interested in L2 events. Since only NetworkElements were injected, and only in NetworkManagerImpl, this has led to all kinds of contortions. As a first step, enable individual service providers to be injected.
Signed-off-by: Chiradeep Vittal <chiradeep@apache.org>
2013-01-04 12:14:49 -08:00