mirror of
https://github.com/apache/cloudstack.git
synced 2025-11-02 20:02:29 +01:00
191 lines
8.5 KiB
XML
191 lines
8.5 KiB
XML
<?xml version='1.0' encoding='utf-8' ?>
|
|
<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
<!ENTITY % BOOK_ENTITIES SYSTEM "cloudstack.ent">
|
|
%BOOK_ENTITIES;
|
|
]>
|
|
|
|
<!-- Licensed to the Apache Software Foundation (ASF) under one
|
|
or more contributor license agreements. See the NOTICE file
|
|
distributed with this work for additional information
|
|
regarding copyright ownership. The ASF licenses this file
|
|
to you under the Apache License, Version 2.0 (the
|
|
"License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing,
|
|
software distributed under the License is distributed on an
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
KIND, either express or implied. See the License for the
|
|
specific language governing permissions and limitations
|
|
under the License.
|
|
-->
|
|
<section id="changing-service-offering-for-vm">
|
|
<title>Changing the Service Offering for a VM</title>
|
|
<para>To upgrade or downgrade the level of compute resources available to a virtual machine, you
|
|
can change the VM's compute offering.</para>
|
|
<orderedlist>
|
|
<listitem>
|
|
<para>Log in to the &PRODUCT; UI as a user or admin.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>In the left navigation, click Instances.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Choose the VM that you want to work with.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>(Skip this step if you have enabled dynamic VM scaling; see <xref
|
|
linkend="change-cpu-ram-for-vm"/>.)</para>
|
|
<para>Click the Stop button to stop the VM. <inlinemediaobject>
|
|
<imageobject>
|
|
<imagedata fileref="./images/stop-instance-icon.png"/>
|
|
</imageobject>
|
|
<textobject>
|
|
<phrase>StopButton.png: button to stop a VM</phrase>
|
|
</textobject>
|
|
</inlinemediaobject>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Click the Change Service button.<inlinemediaobject>
|
|
<imageobject>
|
|
<imagedata fileref="./images/change-service-icon.png"/>
|
|
</imageobject>
|
|
<textobject>
|
|
<phrase>ChangeServiceButton.png: button to change the service of a VM</phrase>
|
|
</textobject>
|
|
</inlinemediaobject></para>
|
|
<para>The Change service dialog box is displayed.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Select the offering you want to apply to the selected VM.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Click OK.</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
<section id="change-cpu-ram-for-vm">
|
|
<!-- CS-17394 -->
|
|
<title>CPU and Memory Scaling for Running VMs</title>
|
|
<para>(Supported on VMware and XenServer)</para>
|
|
<para>It is not always possible to accurately predict the CPU and RAM requirements when you
|
|
first deploy a VM. You might need to increase these resources at any time during the life of a
|
|
VM. You can dynamically modify CPU and RAM levels to scale up these resources for a running VM
|
|
without incurring any downtime.</para>
|
|
<para>Dynamic CPU and RAM scaling can be used in the following cases:</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>User VMs on hosts running VMware and XenServer.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>System VMs on VMware.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>VMware Tools or XenServer Tools must be installed on the virtual machine.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>The new requested CPU and RAM values must be within the constraints allowed by the
|
|
hypervisor and the VM operating system.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>New VMs that are created after the installation of &PRODUCT; 4.2 can use the dynamic
|
|
scaling feature. If you are upgrading from a previous version of &PRODUCT;, your existing
|
|
VMs created with previous versions will not have the dynamic scaling capability unless you
|
|
update them using the following procedure.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</section>
|
|
<section id="update-vms">
|
|
<title>Updating Existing VMs</title>
|
|
<para>If you are upgrading from a previous version of &PRODUCT;, and you want your existing VMs
|
|
created with previous versions to have the dynamic scaling capability, update the VMs using
|
|
the following steps:</para>
|
|
<orderedlist>
|
|
<listitem>
|
|
<para>Make sure the zone-level setting enable.dynamic.scale.vm is set to true. In the left
|
|
navigation bar of the &PRODUCT; UI, click Infrastructure, then click Zones, click the zone
|
|
you want, and click the Settings tab.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Install Xen tools (for XenServer hosts) or VMware Tools (for VMware hosts) on each VM
|
|
if they are not already installed.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Stop the VM.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Click the Edit button.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Click the Dynamically Scalable checkbox.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Click Apply.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Restart the VM.</para>
|
|
</listitem>
|
|
</orderedlist>
|
|
</section>
|
|
<section id="configure-dynamic-scaling">
|
|
<title>Configuring Dynamic CPU and RAM Scaling</title>
|
|
<para>To configure this feature, use the following new global configuration variables:</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>enable.dynamic.scale.vm: Set to True to enable the feature. By default, the feature is
|
|
turned off.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>scale.retry: How many times to attempt the scaling operation. Default = 2.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</section>
|
|
<section id="dynamic-scaling-howto">
|
|
<title>How to Dynamically Scale CPU and RAM</title>
|
|
<para>To modify the CPU and/or RAM capacity of a virtual machine, you need to change the compute
|
|
offering of the VM to a new compute offering that has the desired CPU and RAM values. You can
|
|
use the same steps described above in <xref linkend="changing-service-offering-for-vm"/>, but
|
|
skip the step where you stop the virtual machine. Of course, you might have to create a new
|
|
compute offering first.</para>
|
|
<para>When you submit a dynamic scaling request, the resources will be scaled up on the current
|
|
host if possible. If the host does not have enough resources, the VM will be live migrated to
|
|
another host in the same cluster. If there is no host in the cluster that can fulfill the
|
|
requested level of CPU and RAM, the scaling operation will fail. The VM will continue to run
|
|
as it was before.</para>
|
|
</section>
|
|
<section id="dynamic-scaling-limitations">
|
|
<title>Limitations</title>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>You can not do dynamic scaling for system VMs on XenServer.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>&PRODUCT; will not check to be sure that the new CPU and RAM levels are compatible
|
|
with the OS running on the VM.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>When scaling memory or CPU for a Linux VM on VMware, you might need to run scripts in
|
|
addition to the other steps mentioned above. For more information, see <ulink
|
|
url="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1012764"
|
|
>Hot adding memory in Linux (1012764)</ulink> in the VMware Knowledge Base.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>(VMware) If resources are not available on the current host, scaling up will fail on
|
|
VMware because of a known issue where &PRODUCT; and vCenter calculate the available
|
|
capacity differently. For more information, see <ulink
|
|
url="https://issues.apache.org/jira/browse/CLOUDSTACK-1809"
|
|
>https://issues.apache.org/jira/browse/CLOUDSTACK-1809</ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>On VMs running Linux 64-bit and Windows 7 32-bit operating systems, if the VM is
|
|
initially assigned a RAM of less than 3 GB, it can be dynamically scaled up to 3 GB, but
|
|
not more. This is due to a known issue with these operating systems, which will freeze if
|
|
an attempt is made to dynamically scale from less than 3 GB to more than 3 GB. </para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</section>
|
|
</section>
|
|
|