893 Commits

Author SHA1 Message Date
Pearl Dsilva
b47b99b142 fix adding multiple pf rules 2023-10-26 09:26:31 -04:00
Pearl Dsilva
c857e3a9c5 add license 2023-10-25 18:47:49 -04:00
Pearl Dsilva
be49197bc5 Support to add and delete Port forward rules 2023-10-25 18:42:44 -04:00
Pearl Dsilva
37c530085e Merge branch 'nsx-integration' of https://github.com/apache/cloudstack into nsx-static-nat 2023-10-24 14:02:53 -04:00
Nicolas Vazquez
f46b7883a8
[NSX] Allow NSX isolated networks (#8132)
* Add network offerings for NSX on isolated networks

* Fix offerings creation

* In progress NSX isolated network

* Fixes

* Fix NIC allocation to router
2023-10-24 15:00:41 -03:00
Pearl Dsilva
07a031d1c8 fix issues with static nat 2023-10-24 13:01:43 -04:00
Pearl Dsilva
9e51bdfaa9 NSX: Create and delete NSX Static Nat rules 2023-10-23 15:05:46 -04:00
Pearl Dsilva
be2b8edd20
NSX: Refactor Network & VPC offering (#8110)
* [NSX] Refactor API wrapper operations

* Network offering changes for NSX

* fix services and provider combination

* address comments: rename param

* update nsx_mode parameter

---------

Co-authored-by: nvazquez <nicovazquez90@gmail.com>
2023-10-23 12:50:13 -03:00
Pearl Dsilva
69ded800e9
modify NSX resource naming convention (#8095)
* modify NSX resource naming convention

* remove unused imports

* add a setup phase between desgin and implementation of a network for intermediary steps

* add method to all classes
2023-10-23 12:31:30 -03:00
Pearl Dsilva
8337486fdc
Nsx unit tests (#8090)
* Add tests

* add test for NsxGuestNetworkGuru

* add unit tests for NsxResource

* add unti tests for NsxElement

* cleanup

* [NSX] Refactor API wrapper operations

* update tests

* update tests - add nsxProviderServiceImpl test

* add unit test - NsxServiceImpl

* add license

* Big refactor

* Address review comment

* change network cidr to cidr to prevent NPE

* add domain and zone names to the various networks - vpc & tier

* fix tests

---------

Co-authored-by: nvazquez <nicovazquez90@gmail.com>
2023-10-12 22:30:47 -03:00
Nicolas Vazquez
3f8f9e294b
[NSX] Refactor API wrapper operations (#8059)
* [NSX] Refactor API wrapper operations

* Big refactor

* Address review comment

* change network cidr to cidr to prevent NPE

* add domain and zone names to the various networks - vpc & tier

---------

Co-authored-by: Pearl Dsilva <pearl1594@gmail.com>
2023-10-12 19:39:01 -03:00
Nicolas Vazquez
7332e6dbda
[NSX] Fix DHCP relay config deletion was missing zone name (#8068) 2023-10-10 12:05:19 -03:00
Pearl Dsilva
dc1665cba7
[NSX] Cleanup DHCP Relay config on segment deletion (#108)
* Cleanup DHCP Relay config on segment deletion

* update segment & relay name generators and call delete dhcprelay after deletion of segment

* address comment
2023-10-08 21:00:42 -03:00
Nicolas Vazquez
e7e511b685
[NSX] Create a DHCP relay and add it to a VPC tier segment (#107)
* Create DHCP relay command and execute request

* In progress integrate with networking

* Create DHCP relay config on the network VR allocation

* Revert domain router dao changes

* Create DHCP relay con VR nic plug to NSX network

* Link DHCP relay config to segment after creation
2023-10-08 20:59:16 -03:00
Pearl Dsilva
272704c4a7 move creation of segments to design phase 2023-09-27 11:32:17 -04:00
Pearl Dsilva
15f704e530 add sleep before deletion of vpc / tier g/w for ports to be removed 2023-09-27 06:37:55 -04:00
Pearl Dsilva
3132bfdffa update offering 2023-09-26 09:37:53 -04:00
Pearl Dsilva
33a29dce03 add route advertisement 2023-09-25 12:09:14 -04:00
Pearl Dsilva
eae9c4784e Merge branch 'main' of https://github.com/apache/cloudstack into nsx-integration 2023-09-25 07:57:43 -04:00
Pearl Dsilva
4f4bd2ac43 ui: fix password field, and backend changes 2023-09-25 07:55:40 -04:00
Pearl Dsilva
61bc513d6f add ui changes + update nsx_provider table transport zones + use NSX broadcast domain for add nics to router 2023-09-21 17:59:56 -04:00
John Bampton
4eb110af73
Remove unneeded duplicate words (#7850) 2023-09-18 13:16:33 +02:00
Pearl Dsilva
56861e1f36 fix test / build failure 2023-09-13 14:23:16 -04:00
Pearl Dsilva
9d9c334bd2 address code smells - part 1 2023-09-13 14:23:16 -04:00
Pearl Dsilva
7dcf2d50cb add license 2023-09-13 14:23:16 -04:00
Pearl Dsilva
6996c4a2c0 add create/delete segment and UI integration 2023-09-13 14:23:16 -04:00
Pearl Dsilva
35fc737030 cleanup and add skeletal code for network creation 2023-09-13 14:23:16 -04:00
Pearl Dsilva
2cbefc9910 add license 2023-09-13 14:23:16 -04:00
Pearl Dsilva
7575a4da82 Add support to create and delete nsx tier-1 gateway 2023-09-13 14:23:16 -04:00
Pearl Dsilva
415e61a23f update response and add license 2023-09-13 14:23:16 -04:00
Pearl Dsilva
0b7491a9d2 add NSX resource , api client, create tier1 gw 2023-09-13 14:23:16 -04:00
Pearl Dsilva
5ef6ac103f add nsxresource 2023-09-13 14:23:16 -04:00
Pearl Dsilva
bc8504952b add delete nsx controller operation 2023-09-13 14:23:16 -04:00
Pearl Dsilva
43443a5074 add default VPC offering and update upgrade path 2023-09-13 14:23:16 -04:00
Pearl Dsilva
f32d901125 add license 2023-09-13 14:23:16 -04:00
Pearl Dsilva
d12ef91d99 add support for adding and listing nsx provider to a zone 2023-09-13 14:23:16 -04:00
Pearl Dsilva
0aafa68a66 add upgrade path and daos
\n add nsx controller command
2023-09-13 14:23:15 -04:00
nvazquez
94bdc33993 Fix module not loading on startup 2023-09-13 14:23:15 -04:00
Pearl Dsilva
a533af4c2b NSX integration - skeletal code 2023-09-13 14:23:15 -04:00
Wei Zhou
f6b2a58727 Merge branch '4.18' 2023-09-07 08:56:35 +02:00
Abhishek Kumar
f049f5409e
server: fix dualstack ipv6 networks for vxlan (#7933)
Fixes #7926

Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
2023-09-07 08:46:45 +02:00
Vishesh
47b6f0fd05
Fix tungsten unit test (#7904) 2023-08-24 10:07:11 -03:00
Daan Hoogland
ea832bce13 Merge branch '4.18' 2023-08-22 11:44:45 +02:00
Sina Kashipazha
d296f54c7f
Api: update command domainId/account descriptions (#7876) 2023-08-20 15:44:31 +02:00
Nicolas Vazquez
8b5ba13b81
plugins: Add Custom hypervisor minimal changes (#7692)
### Description

Design document: https://cwiki.apache.org/confluence/display/CLOUDSTACK/%5BDRAFT%5D+Minimal+changes+to+allow+new+dynamic+hypervisor+type%3A+Custom+Hypervisor

This PR introduces the minimal changes to add a new hypervisor type (internally named Custom in the codebase, and configurable display name), allowing to write an external hypervisor plugin as a Custom Hypervisor to CloudStack

The custom hypervisor name is set by the setting: 'hypervisor.custom.display.name'. The new hypervisor type does not affect the behaviour of any CloudStack operation, it simply introduces a new hypervisor type into the system.

CloudStack does not have any means to dynamically add new hypervisor types. The hypervisor types are internally preset by an enum defined within the CloudStack codebase and unless a new version supports a new hypervisor it is not possible to add a host of a hypervisor that is not in part of the enum. It is possible to implement minimal changes in CloudStack to support a new hypervisor plugin that may be developed privately

This PR is an initial work on allowing new dynamic hypervisor types (adds a new element to the HypervisorType enum, but allows variable display name for the hypervisor)

##### Proposed Future work:
Replace the HypervisorType from a fixed enum to an extensible registry mechanism, registered from the hypervisor plugin

#### Feature Specifications
- The new hypervisor type is internally named 'Custom' to the CloudStack services (management server and agent services, database records).
- A new global setting ‘hypervisor.custom.display.name’ allows administrators to set the display name of the hypervisor type. The display name will be shown in the CloudStack UI and API.
   - In case the ‘hypervisor.list’ setting contains the display name of the new hypervisor type, the setting value is automatically updated after the ‘hypervisor.custom.display.name’ setting is updated.
- The new Custom hypervisor type supports:
   - Direct downloads (the ability to download templates into primary storage from the hypervisor hosts without using secondary storage)
   - Local storage (use hypervisor hosts local storage as primary storage)
   - Template format: RAW format (the templates to be registered on the new hypervisor type must be in RAW format)
- The UI is also extended to display the new hypervisor type and the supported features listed above.
- The above are the minimal changes for CloudStack to support the new hypervisor type, which can be tested by integrating the plugin codebase with this feature.


#### Use cases
This PR allows the cloud administrators to test custom hypervisor plugins implementations in CloudStack and easily integrate it into CloudStack as a new hypervisor type ("Custom"), reducing the implementation to only the hypervisor supported specific storage/networking and the hypervisor resource to communicate with the management server.

- CloudStack admin should be able to create a zone for the new custom hypervisor and add clusters, hosts into the zone with normal operations
- CloudStack users should be able to execute normal VMs/volumes/network/storage operations on VMs/volumes running on the custom hypervisor hosts
2023-08-16 20:53:24 +05:30
dahn
cf249f64a3
api: Force-stop descriptions (#7866) 2023-08-16 08:31:32 +02:00
Vishesh
55f0801b18
Remove powermock from network elements (#7791) 2023-08-07 09:24:26 +02:00
John Bampton
6f4503488b
pre-commit: apply end-of-file-fixer to all files (#7551) 2023-08-02 13:47:21 +02:00
Vishesh
a738204e8a
Remove powermock from nicira nvp (#7789) 2023-07-28 13:24:25 +02:00
Daan Hoogland
6bb95c0200 Merge release branch 4.18 to main
* 4.18:
  Storage and volumes statistics tasks for StorPool primary storage (#7404)
  proper storage construction (#6797)
  guarantee MAC uniqueness (#7634)
  server: allow migration of all VMs with local storage on KVM (#7656)
  Add L2 networks to Zones with SG (#7719)
2023-07-19 10:59:19 +02:00