64 Commits

Author SHA1 Message Date
Pearl Dsilva
830f3061bc
SystemVM optimizations (#5831)
* Support for live patching systemVMs and deprecating systemVM.iso. Includes:
- fix systemVM template version
- Include agent.zip, cloud-scripts.tgz to the commons package
- Support for live-patching systemVMs - CPVM, SSVM, Routers
- Fix Unit test
- Remove systemvm.iso dependency

* The following commit:
- refactors logic added to support SystemVM deployment on KVM
- Adds support to copy specific files (required for patching) to the hosts on Xenserver
- Modifies vmops method - createFileInDomr to take cleanup param
- Adds configuratble sleep param to CitrixResourceBase::connect() used to verify if telnet to specifc port is possible (if sleep is 0, then default to _sleep = 10000ms)
- Adds Command/Answer for patch systemVMs on XenServer/Xcp

* - Support to patch SystemVMs - VMWare
- Remove attaching systemvm.iso to systemVMs
- Modify / Refactor VMware start command to copy patch related files to the systemvms
- cleanup

* Commit comprises of:
- remove docker from systemvm template - use containerd as container runtime
- update create-k8s-binaries script to use ctr for all docker operations
- Update userdata sent to the k8s nodes
- update cksnode script, run during patching of the cks/k8s nodes

* Add ssh to k8s nodes details in the Access tab on the UI

* test

* Refactor ca/cert patching logic

* Commit comprises of the following changes:
- Use restart network/VPC API to patch routers
- use livePatch API support patching of only cpvm/ssvm
- add timeout to the keystore setup/import script

* remove all references of systemvm.iso

* Fix keystore-cert-import invocation + refactor cert timeout in CP/SS VMs

* fix script timeout

* Refactor cert patching for systemVMs + update keystore-cert-import script + patch-sysvms script + remove patchSysvmCommand from networkelementcommand

* remove commented code + change core user to cloud for cks nodes

* Update ownership of ssh directory

* NEED TO DISCUSS - add on the fly template conversion as an ExecStartPre action (systemd)

* Add UI changes + move changes from patch file to runcmd

* test: validate performance for template modification during seeding

* create vms folder in cloudstack-commons directory - debian rules

* remove logic for on the fly template convert + update k8s test

* fix syntax issue - causing issue with shared network tests

* Code cleanup

* refactor patching logic - certs

* move logic of fixing rootdiskcontroller from upgrade to kubernetes service

* add livepatch option to restart network & vpc

* smooth upgrade of cks clusters

* Support for live patching systemVMs and deprecating systemVM.iso. Includes:
- fix systemVM template version
- Include agent.zip, cloud-scripts.tgz to the commons package
- Support for live-patching systemVMs - CPVM, SSVM, Routers
- Fix Unit test
- Remove systemvm.iso dependency

* The following commit:
- refactors logic added to support SystemVM deployment on KVM
- Adds support to copy specific files (required for patching) to the hosts on Xenserver
- Modifies vmops method - createFileInDomr to take cleanup param
- Adds configuratble sleep param to CitrixResourceBase::connect() used to verify if telnet to specifc port is possible (if sleep is 0, then default to _sleep = 10000ms)
- Adds Command/Answer for patch systemVMs on XenServer/Xcp

* - Support to patch SystemVMs - VMWare
- Remove attaching systemvm.iso to systemVMs
- Modify / Refactor VMware start command to copy patch related files to the systemvms
- cleanup

* Commit comprises of:
- remove docker from systemvm template - use containerd as container runtime
- update create-k8s-binaries script to use ctr for all docker operations
- Update userdata sent to the k8s nodes
- update cksnode script, run during patching of the cks/k8s nodes

* Add ssh to k8s nodes details in the Access tab on the UI

* test

* Refactor ca/cert patching logic

* Commit comprises of the following changes:
- Use restart network/VPC API to patch routers
- use livePatch API support patching of only cpvm/ssvm
- add timeout to the keystore setup/import script

* remove all references of systemvm.iso

* Fix keystore-cert-import invocation + refactor cert timeout in CP/SS VMs

* fix script timeout

* Refactor cert patching for systemVMs + update keystore-cert-import script + patch-sysvms script + remove patchSysvmCommand from networkelementcommand

* remove commented code + change core user to cloud for cks nodes

* Update ownership of ssh directory

* NEED TO DISCUSS - add on the fly template conversion as an ExecStartPre action (systemd)

* Add UI changes + move changes from patch file to runcmd

* test: validate performance for template modification during seeding

* create vms folder in cloudstack-commons directory - debian rules

* remove logic for on the fly template convert + update k8s test

* fix syntax issue - causing issue with shared network tests

* Code cleanup

* add cgroup config for containerd

* add systemd config for kubelet

* add additional info during image registry config

* address comments

* add temp links of download.cloudstack.org

* address part of the comments

* address comments

* update containerd config - as version has upgraded to 1.5 from 1.4.12 in 4.17.0

* address comments - simplify

* fix vue3 related icon changes

* allow network commands when router template version is lower but is patched

* add internal LB to the list of routers to be patched on network restart with live patch

* add unit tests for API param validations and new helper utilities - file scp & checksum validations

* perform patching only for non-user i.e., system VMs

* add test to validate params

* remove unused import

* add column to domain_router to display software version and support networkrestart with livePatch from router view

* Requires upgrade column to consider package (cloud-scripts) checksum to identify if true/false

* use router software version instead of checksum

* show N/A if no software version reported i.e., in upgraded envs

* fix deb failure

* update pom to official links of systemVM template
2022-04-21 13:40:19 -03:00
John Bampton
182899d0b5
Add Python flake8 linting for W291 trailing whitespace with Super-Linter (#4687)
* refactor: remove trailing whitespace from Python files

* Add the GitHub Super-Linter

Add Python flake8 linting for W291 trailing whitespace

* Add licenses
2022-03-28 11:40:26 -03:00
Remi Bergsma
5fed4f41d7 Rename xapi plugins for s3 and swift to make them work after renaming the calls
Renaming introduced in a8212d9ef458dd7ac64b021e6fa33fcf64b3cce0

This PR is to address comments in PR #970
2015-10-27 14:07:29 +01:00
wilderrodrigues
efa34361df CLOUDSTACK-8607 - Changed update script to return exit code based on the result
- Changed location of the update_host_passwd script
   - Updated the patch files for XenServer
   - Updated the script path on LibvirtComputing class
   - Removed the hostIP from the LibvirtUpdateHostPasswordCommandWrapper execute() method
2015-07-03 14:29:57 +02:00
wilderrodrigues
0dd02ce043 CLOUDSTACK-8607 - Adding support to update host passwd on XenServer hypervisors
- Adding update_host_passwd to VRScripts
   - Add accessor method to host password on CitrixResourceBase
   - Add implementation to CitrixUpdateHostPasswordCommandWrapper
   - Improve testUpdateHostPasswordCommand() unit test on CitrixRequestWrapperTest
   - Add line to patch files on xenserver directory

Concerning the LibVirt change:

   - I forgot to assing the return of the getDefaultHypervisorScriptsDir() method to the hypervisorScriptsDir variable
2015-07-03 10:24:44 +02:00
Anthony Xu
2dc1c7bec8 get rrd through http directly instead of xapi plugins 2014-03-26 18:04:41 -07:00
Sheng Yang
3e097a0fb2 CLOUDSTACK-5779: Clean up leftover VR script in Xen 2014-03-11 13:22:14 -07:00
Harikrishna Patnala
55237f8b15 CLOUDSTACK-5507: Unable to add XenServer 5.6 host to cloudstack
Fixed "ImportError: No module named cloudstack_pluginlib" on Xenserver 5.6

Signed-off-by: Jayapal <jayapal@apache.org>
2013-12-18 12:03:03 +05:30
Anthony Xu
1ddc0b99fe put CS/XS plugin log into seperate directory 2013-12-10 01:23:46 -08:00
tuna
79a7ce871e make SDN GRE work with XCP 1.6 2013-12-09 23:33:14 +07:00
Anthony Xu
5a062e155c put shell scripts to a seperate directory in XS
use same scripts for both XS and XCP
2013-12-03 02:05:34 -08:00
Marcus Sorensen
ac59a4f136 Summary: Move Xen vmdata to new, non-ssh method
Detail: KVM recently got a patch that did away with a few dozen ssh calls
when programming virtual router (CLOUDSTACK-3163), saving several seconds
for each vm served by the virtual router when the router is rebooted. This
patch updates Xen to use the same method, and cleans up the old script refs.

Reviewed-by: Sheng Yang, Prasanna Santhanam
2013-07-30 21:45:36 -06:00
Sanjeev Neelarapu
aa60105a84 CLOUDSTACK-2543: [Multiple_IP_Ranges] Failed to create IP alias on router vm
createipAlias.sh/deleteipAlias.sh won't be copied to XenServer host.
The directory of the scripts should be ".." rather "../../.." in all the xenserver patches file.
Corrected the path to ".." because the scripts are located at scripts/vm/hypervisor/xenserver/xenserver56/patch
2013-05-20 20:40:59 +05:30
Harikrishna Patnala
ffe90c0059 CLOUDSTACK-2085: VM weight on xen remain same as before vmscaleup ;because "Add-To-VCPUs-Params-Live.sh" is not getting copied on xs host
Fixed by updating the patch files that has
 entries to copy scipts on xenserver. Here we added
 Add-To-VCPUs-Params-Live.sh

Added a check on Host params whether host restricts Dynamic memory control(DMC) to able to allow scale up VM.
If DMC is not enabled then static max and min are set to SO.

Signed Off by - Nitin Mehta <nitin.mehta@citrix.com>
2013-05-15 16:17:21 +05:30
Bharat Kumar
052c24c4d1 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.

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
2013-05-13 17:06:44 +05:30
Edison Su
b70c1a5a84 Backs NFS-based secondary storage with an S3-compatible object store. Periodically, a reaper thread synchronizes templates and ISOs stored on a NFS secondary storage mount with a configured S3 object store. It also pushes snapshots to the object store when they are created and downloads them in other zones on-demand. In addition to permitting the use of commodity or IaaS storage solutions for static assets, it provides a means of automatically synchronizing template and ISO assets across multiple zones. 2012-12-13 23:18:37 -08:00
Chip Childers
806d033fe3 CLOUDSTACK-330: Correct Citrix information to be Apache in several .py files
Signed-off-by: Chip Childers <chip.childers@gmail.com>
2012-10-12 12:18:56 -04:00
Alena Prokharchyk
634cd78baa Merge branch 'master' into vpc
Conflicts:
	api/src/com/cloud/api/ApiConstants.java
	api/src/com/cloud/api/BaseCmd.java
	api/src/com/cloud/api/ResponseGenerator.java
	api/src/com/cloud/api/commands/ListNetworksCmd.java
	api/src/com/cloud/api/response/NetworkResponse.java
	api/src/com/cloud/event/EventTypes.java
	api/src/com/cloud/network/NetworkService.java
	client/tomcatconf/commands.properties.in
	scripts/network/domr/getDomRVersion.sh
	scripts/network/domr/ipassoc.sh
	scripts/network/domr/l2tp_vpn.sh
	scripts/network/domr/networkUsage.sh
	scripts/network/domr/router_proxy.sh
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/dao/IPAddressDao.java
	server/src/com/cloud/network/dao/IPAddressDaoImpl.java
	setup/apidoc/gen_toc.py
	setup/db/create-schema.sql
	wscript
2012-06-28 17:41:40 -07:00
David Nalley
d630fa8697 license header changes for scripts folder from Chip Childers 2012-06-23 00:58:00 -04:00
anthony
a4d0f91cfe VPC : use routerProxy to call l2tpVpn
Conflicts:

	core/src/com/cloud/agent/resource/virtualnetwork/VirtualRoutingResource.java
2012-06-15 14:26:20 -07:00
anthony
c75fe80125 VPC : use routerProxy to call networkUsage.sh
Conflicts:

	core/src/com/cloud/hypervisor/vmware/resource/VmwareResource.java
2012-06-15 14:25:21 -07:00
anthony
251a91f5b3 VCP : use routerProxy to call checkrouter script 2012-06-15 14:24:18 -07:00
anthony
8c1700a3a4 VPC : introduce router_proxy.sh, resource should use this as a proxy to call scripts inside domr
already did this for ipassoc and getDomRVersion
2012-06-15 14:22:49 -07:00
frank
2f634c0913 Switch to Apache license 2012-04-03 04:50:05 -07:00
anthony
3a4ee0d486 removed unused files 2012-02-27 13:59:09 -08:00
anthony
6d39e10b76 get fsimage from sp2 for XenServer 5.6 GA 2012-02-24 15:03:34 -08:00
anthony
f964c4d227 bug 10363 : cleanup vhd in primary storage if download template to primary storage fails
Conflicts:

	core/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
	scripts/vm/hypervisor/xenserver/vmops
2012-01-10 13:56:29 -08:00
anthony
c25cb29f10 remove nfs.py patch 2012-01-10 13:56:29 -08:00
anthony
c97010a160 BackupSnapshot to Swift 2011-10-18 18:11:09 -07:00
Sheng Yang
89e45bd671 bug 11130: Add GetDomRVersionCmd 2011-09-29 14:50:11 -07:00
anthony
9730160e63 typo 2011-09-14 20:39:57 -07:00
Sheng Yang
3549067d55 bug 11307: Add BumpUpPriorityCommand 2011-09-14 16:22:19 -07:00
anthony
c2dd960405 VLAN patch for XenServer 5.6 2011-08-15 13:55:06 -07:00
anthony
b63bee2d9a bug 10197: add some scripts which is used in upgrade 2011-07-28 15:07:08 -07:00
Sheng Yang
a492c07e4c bug 9154: redundant virtual router
Add CheckRouterCommand for XenServer

Now VMware/Xen/KVM all support redundant virtual router.
2011-06-14 15:45:29 -07:00
anthony
5b1a421e62 bug 8712: prepare from snapshot db migration 2011-03-08 17:10:27 -08:00
anthony
0c2a639a2d bug 6772: use vhd-util to coalesce snapshots into primary storage
status 6772: resolved fixed
2011-03-07 19:47:29 -08:00
anthony
a9c36d7b79 use new vhd-util for xenserver 2011-03-07 19:47:29 -08:00
anthony
7ec201bc69 bug 5405: version file is not needed
status 5405: resolved fixed
2011-01-28 20:06:54 -08:00
anthony
9e63416da3 merge setupxenserver 2011-01-28 18:58:50 -08:00
Frank
ec98a539b4 merge premium xenserver scripts to oss 2011-01-28 17:42:27 -08:00
Chiradeep Vittal
8a1ca01f44 Bug 8199: insert generated private key where it is expected 2011-01-28 12:24:20 -08:00
anthony
b732208c23 change file name 2011-01-04 10:39:05 -08:00
anthony
9249ee199f add setupBonding script 2011-01-03 19:22:07 -08:00
anthony
2be0b45297 support xenserver 5.6 fp1 in oss 2010-12-20 14:18:10 -08:00
anthony
baa6666897 create xenserver 5.6 patch file 2010-12-17 20:21:28 -08:00
anthony
44a8fdf918 fixed mount issue 2010-12-17 20:07:09 -08:00
anthony
a8a6419bf4 remove scsiutil.py 2010-12-17 16:18:34 -08:00
anthony
d35fbad6f5 get 5.6 NFSSR.py 2010-12-17 16:07:37 -08:00
anthony
f1bdebb628 remove LUNperVDI.py 2010-12-17 16:02:11 -08:00