diff --git a/source/adminguide/systemvm.rst b/source/adminguide/systemvm.rst index 7a035485da..011149fa15 100644 --- a/source/adminguide/systemvm.rst +++ b/source/adminguide/systemvm.rst @@ -76,11 +76,18 @@ templates for hypervisor and architecture which are in use in the zone if not already present will be automatically registered and seeded on the secondary storage. -ARM 64-bit template(s) will be downloaded from the official repository -and the same workflow for the registration and seeding will be used. If -the automatic download and seeding of ARM 64-bit template fails, the -template can be manually registered in a multi-architecture zone or -will need manual registration and seeding in a ARM 64-bit only zone. +Template(s) will be downloaded from the configured repository +and the same workflow for the registration and seeding will be used. +Repository for downloading the templates can be configured using +/etc/cloudstack/management/server.properties file by updating the +``system.vm.templates.download.repository`` property. + +If the automatic download and seeding of template fails, the +template can be registered and seeded manually. +UI/API can be used to register the template if the secondary storage VM is +running in the zone. In case the secondary storage VM is not present then +manual registration and seeding can be done using ``cloud-install-sys-tmplt`` +script. Changing the Default System VM Template diff --git a/source/installguide/management-server/_database.rst b/source/installguide/management-server/_database.rst index 4fab82aef6..eeb070603f 100644 --- a/source/installguide/management-server/_database.rst +++ b/source/installguide/management-server/_database.rst @@ -286,6 +286,20 @@ MySQL. See :ref:`install-database-on-separate-node`. done.” If the servlet container is Tomcat7 the argument --tomcat7 must be used. + .. note:: + Since CloudStack 4.23.0, the ``cloudstack-setup-management`` command + can download SystemVM templates on demand when they are not present. + + Use the ``--systemvm-templates`` argument to specify which templates to + download. Valid values are ``all``, ``kvm-aarch64``, ``kvm-x86_64``, + ``xenserver``, and ``vmware``. A comma-separated list combining any of + these identifiers can also be supplied (for example + ``kvm-x86_64,xenserver``). If not specified, ``kvm-x86_64`` template + will be downloaded by default. + + For offline environments, provide a custom repository URL with the + ``--systemvm-templates-repository`` argument so the installer can fetch + templates from an internal mirror. .. _install-database-on-separate-node: @@ -518,4 +532,18 @@ The following command creates the cloud user on the database. so ensure that the firewalld is disabled or ensure the correct firewalld rules are in place to allow traffic to ports 8080, 8250 and 9090 to the management server. + .. note:: + Since CloudStack 4.23.0, the ``cloudstack-setup-management`` command + can download SystemVM templates on demand when they are not present. + + Use the ``--systemvm-templates`` argument to specify which templates to + download. Valid values are ``all``, ``kvm-aarch64``, ``kvm-x86_64``, + ``xenserver``, and ``vmware``. A comma-separated list combining any of + these identifiers can also be supplied (for example + ``kvm-x86_64,xenserver``). If not specified, ``kvm-x86_64`` template + will be downloaded by default. + + For offline environments, provide a custom repository URL with the + ``--systemvm-templates-repository`` argument so the installer can fetch + templates from an internal mirror. diff --git a/source/quickinstallationguide/qig.rst b/source/quickinstallationguide/qig.rst index 7f08777b19..868cbb3cb5 100644 --- a/source/quickinstallationguide/qig.rst +++ b/source/quickinstallationguide/qig.rst @@ -402,23 +402,43 @@ up the management server by issuing the following command: # cloudstack-setup-management + .. note:: + Since CloudStack 4.23.0, the ``cloudstack-setup-management`` command + can download SystemVM templates on demand when they are not present. -System Template Setup -~~~~~~~~~~~~~~~~~~~~~ + Use the ``--systemvm-templates`` argument to specify which templates to + download. If not specified, ``kvm-x86_64`` template will be downloaded + by default. + + For offline environments, provide a custom repository URL with the + ``--systemvm-templates-repository`` argument so the installer can fetch + templates from an internal mirror. -CloudStack uses a number of system VMs to provide functionality for accessing -the console of Instances, providing various networking services, and -managing various aspects of storage. -We need to download the systemVM Template and deploy that to the secondary storage. -We will use the local path (/export/secondary) since we are already on the NFS server itself, -but otherwise you would need to mount your Secondary Storage to a temporary mount point, and use -that mount point instead of the /export/secondary path. +System Template Setup +~~~~~~~~~~~~~~~~~~~~~ -Execute the following script: +CloudStack relies on several System VMs (for example SSVM and CPVM) to +provide console access, networking services and storage management. Manual +installation of System VM templates is not required in recent CloudStack +releases. Since 4.16.0, automatic seeding of System VM templates has been +supported; the ``cloudstack-management`` package historically included bundled +templates and the Management Server seeded them to secondary storage during +startup or when a secondary store was added to a zone. Starting with 4.23.0, +CloudStack supports on-demand downloading of System VM templates when they +are not present locally or bundled with the package. + +Templates are typically obtained in two ways: during initial setup via +``cloudstack-setup-management`` or automatically at Management +Server startup and secondary store addition (the Management Server +will attempt to download and seed any missing templates). + +When automated mechanisms are unsuitable, templates can be downloaded and +deployed to secondary storage using the helper script. On the secondary +storage host (or a temporary mount of the secondary store) run:: .. parsed-literal:: - + /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt \ -m /export/secondary \ -u |sysvm64-url-kvm| \