3.10.1 Change virtual server specifications (CPU and memory)
Function
This service template changes the specified resource settings (CPU and memory) of a virtual server in a Hyper-V environment.
This service template requires the following servers:
- Hyper-V server
A server on which Hyper-V is installed
- Virtual server
A virtual server managed by Hyper-V
The following is an overview of the processing:
(1) The service asks whether CPU and memory settings are to be changed. If you do not want to change either the CPU settings or the memory settings, the service ends abnormally.
(2) The service makes sure that the virtual server is stopped.
If the virtual server is running, the User-Response Wait plug-in is executed to check whether the virtual server is to be shut down.
Users who have Modify permission can use this plug-in to specify an email destination, message, timeout value, and information to be displayed.
If you select "Shutdown" from the GUI of the User-Response Wait plug-in, the virtual server shuts down.
If you select "Cancel" or a timeout occurs while waiting for a response, the service ends abnormally without changing the virtual server specifications.
(3) The target settings for the CPU and memory resources of the virtual server are changed.The settings that can be changed are listed below.
CPU settings that can be changed:
- Number of virtual processors
- Number of reserved virtual processor resources
- Maximum number of virtual processor resources
- Relative Weight setting of virtual processor resources
- Processor compatibility
- Maximum number of processors that can be used on a NUMA node
- Maximum number of NUMA nodes that can be used by a socket
Memory settings that can be changed:
- Startup RAM (MB)
- Whether to enable dynamic memory
- Minimum RAM for dynamic memory (MB)
- Maximum RAM for dynamic memory (MB)
- Buffer for dynamic memory
- Memory weight
- Maximum size of memory available on a NUMA node (MB)
Prerequisites
See the Release Notes for the latest support statuses of prerequisite products in the system, prerequisite products in the service-template execution system, and OSs of prerequisite products in the service-template execution system.
Prerequisite products in the system:
JP1/Automatic Operation 11-10 or later
Prerequisite products in the service-template execution system:
(1) Prerequisite products on the Hyper-V server
- Windows Server 2016 Hyper-V
OSs of prerequisite products in the service-template execution system:
(1) Prerequisite OS for the Hyper-V server
- Windows Server 2016 Standard/Datacenter
Note: Exceptions are environments in which Server Core/Nano Server is installed.
(2) Prerequisite OS for the virtual server
- Windows Server 2012 Standard/Datacenter or Windows Server 2012 R2 Standard/Datacenter
- Windows Server 2016 Standard/Datacenter
Note: Exceptions are environments in which Server Core/Nano Server is installed.
Conditions for using the prerequisite products in the service-template execution system:
(1) The name of each virtual server must be unique within a single Hyper-V server.
Cautions
(1) Do not execute multiple instances of this service simultaneously on the same virtual server.
(2) You can use certain HTML tags when specifying the property UserResponseplugin.dialogText. The tags and attributes that can be used are the same as those that can be used for the User-Response Wait plug-in. For details, see the topic about the User-Response Wait plug-in in this product manual.
(3) The maximum number of virtual processors that can be set for a virtual server differs depending on the Hyper-V server.
(4) The values that can be specified for the memory-related settings of a virtual server differ depending on the Hyper-V server.
(5) If the service ends abnormally, some CPU or memory settings might have been changed.
(6) If you select "yes" for the property hyperv.selectVmCpuChange and then execute the service without entering a value for any CPU-related setting, the service ends abnormally. Similarly, if you select "yes" for the property hyperv.selectVmMemoryChange and then execute the service without entering a value for any memory-related setting, the service ends abnormally.
(7) If you select "Shutdown" from the GUI of the User-Response Wait plug-in, the virtual server shuts down. Data in the files that are currently being edited on the virtual server will not be saved.
Version
02.50.00
Tags
Modify VM,Hyper-V 2016
Property list
The following shows the list of the property groups set in the property:
Property group |
Description |
Initial display |
---|---|---|
Virtual-system environment information |
Specify Hyper-V information. |
Y |
Virtual server information |
Specify information about the virtual server whose specifications are to be changed and whether items to be changed exist. |
Y |
Virtual server CPU settings |
These settings are the CPU settings that can be changed for the virtual server. To change the settings, specify a value for at least one property. |
N |
Virtual server memory settings |
These settings are the memory settings that can be changed for the virtual server. To change the settings, specify a value for at least one property. |
N |
User response wait option |
The option is used for user response after the virtual server starts. If necessary, change the value of this option. |
N |
The following shows the list of the properties to be displayed in the "Service Definition" window:
- (Legend)
-
R: The property must be specified.
O: The property can be omitted. However, the property might be mandatory depending on what is specified for other properties. See the Description of each property.
Property key |
Property name |
Description |
I/O type |
Shared |
Required |
Property group |
---|---|---|---|---|---|---|
hyperv.targetHost |
Hyper-V server host name |
Specifies the host name or IP address of the Hyper-V server. IPv6 addresses are not supported. |
Input |
Disabled |
R |
Virtual-system environment information |
UserResponsePlugin.toAddress |
TO addresses |
Specify the email addresses to enter in the TO field of notification emails sent when the service is waiting for a user response. Separate multiple addresses with commas. Example: mailA,mailB |
Input |
Disabled |
O |
User response wait option |
UserResponsePlugin.ccAddress |
CC addresses |
Specify the email addresses to enter in the CC field of notification emails sent when the service is waiting for a user response. Separate multiple addresses with commas. Example: mailA,mailB |
Input |
Disabled |
O |
User response wait option |
UserResponsePlugin.bccAddress |
BCC addresses |
Specify the email addresses to enter in the BCC field of notification emails sent when the service is waiting for a user response. Separate multiple addresses with commas. Example: mailA,mailB |
Input |
Disabled |
O |
User response wait option |
UserResponsePlugin.mailSubject |
Subject line |
Specify the subject line of notification emails sent when the service is waiting for a user response. |
Input |
Disabled |
O |
User response wait option |
UserResponsePlugin.mailBody |
Email text |
Specify the body text of notification emails sent when the service is waiting for a user response. |
Input |
Disabled |
O |
User response wait option |
UserResponsePlugin.encodeType |
Encoding |
Specify the encoding of notification emails sent when the service is waiting for a user response. The encodings you can specify are us-ascii, iso-2022-jp, shift_jis, euc-jp, and utf-8. If you omit this property, utf-8 is set. |
Input |
Disabled |
O |
User response wait option |
UserResponsePlugin.dialogText |
Additional dialog box text |
Enter additional text to appear in the response input dialog box, in text or HTML format. Supported HTML tags are anchor tags, bold tags, break tags, font tags, italics tags, and underline tags. |
Input |
Disabled |
O |
User response wait option |
UserResponsePlugin.responseTimeOut |
Response timeout time (minutes) |
Specify how long (in minutes) the service waits for a user response before timing out. In the event of a response timeout, the service will terminate abnormally. |
Input |
Disabled |
R |
User response wait option |
The following shows the list of the properties to be displayed on the "Service Definition" window and the "Submit Service" window:
Property key |
Property name |
Description |
I/O type |
Shared |
Required |
Property group |
---|---|---|---|---|---|---|
hyperv.vmName |
Virtual server name |
Specifies the name of the virtual server. (This is the name of the virtual server as it is displayed in Hyper-V. This is not the host name in the OS.) |
Input |
Disabled |
R |
Virtual server information |
hyperv.selectVmCpuChange |
Whether to change the virtual server CPU settings |
If you want to change the virtual server CPU settings, select "yes". If you do not want to change the virtual server CPU settings, select "no". |
Input |
Disabled |
R |
Virtual server information |
hyperv.selectVmMemoryChange |
Whether to change the virtual server memory settings |
If you want to change the virtual server memory settings, select "yes". If you do not want to change the virtual server memory settings, select "no". |
Input |
Disabled |
R |
Virtual server information |
hyperv.cpuCount |
Number of virtual processors |
Specify the number of virtual processors to be set on a virtual server. Specify an integer of 1 or greater. |
Input |
Disabled |
O |
Virtual server CPU settings |
hyperv.cpuReserve |
Number of reserved virtual processor resources |
Specify the number of virtual processor resources reserved by each virtual server. Specify an integer that does not exceed "Maximum number of virtual processor resources" within the range from 0 to 100. |
Input |
Disabled |
O |
Virtual server CPU settings |
hyperv.cpuMaximum |
Maximum number of virtual processor resources |
Specify the maximum number of virtual processor resources that can be used by each virtual server. Specify an integer that is equal to or greater than "Number of reserved virtual processor resources" within the range from 0 to 100. |
Input |
Disabled |
O |
Virtual server CPU settings |
hyperv.cpuRelativeWeight |
Relative weight of virtual processor resources |
Specify the relative weight of virtual processor resources among virtual servers. Specify an integer in the range from 0 to 10,000. |
Input |
Disabled |
O |
Virtual server CPU settings |
hyperv.cpuCompatibilityForMigrationEnabled |
Processor compatibility |
To enable processor compatibility, specify "true". To disable processor compatibility, specify "false". If specification is omitted, the current setting does not change. |
Input |
Disabled |
O |
Virtual server CPU settings |
hyperv.cpuMaximumCountPerNumaNode |
Maximum number of processors that can be used on a NUMA node |
Specify the maximum number of processors that can be used on a virtual NUMA (Non-Uniform Memory Architecture) node. Specify an integer of 1 or greater. |
Input |
Disabled |
O |
Virtual server CPU settings |
hyperv.nodeMaximumCountPerNumaSocket |
Maximum number of NUMA nodes that can be used by a socket |
Specify the maximum number of virtual NUMA (Non-Uniform Memory Architecture) nodes that can be used by one socket. Specify an integer of 1 or greater. |
Input |
Disabled |
O |
Virtual server CPU settings |
hyperv.memoryStartupMegaBytes |
Startup RAM (MB) |
Specify (in MB) the amount of memory to be used during the startup of the virtual server. Specify an integer of 8 or greater that is a multiple of 2. |
Input |
Disabled |
O |
Virtual server memory settings |
hyperv.dynamicMemoryEnabled |
Whether to enable dynamic memory |
To enable dynamic memory on the virtual server, specify "true". To disable dynamic memory on the virtual server, specify "false". If specification is omitted, the current setting does not change. |
Input |
Disabled |
O |
Virtual server memory settings |
hyperv.dynamicMemoryMinimumMegaBytes |
Minimum RAM for dynamic memory (MB) |
Specify (in MB) the minimum amount of dynamic memory. Specify a multiple of 2 in the range from 8 to the "Startup RAM" value. Specify this item only when dynamic memory is enabled. |
Input |
Disabled |
O |
Virtual server memory settings |
hyperv.dynamicMemoryMaximumMegaBytes |
Maximum RAM for dynamic memory (MB) |
Specify (in MB) the maximum amount of dynamic memory. Specify a multiple of 2 that is not smaller than 8 and the "Startup RAM" value. Specify this item only when dynamic memory is enabled. |
Input |
Disabled |
O |
Virtual server memory settings |
hyperv.dynamicMemoryBuffer |
Buffer for dynamic memory |
Specify the percentage of memory to be reserved as the buffer for dynamic memory of Hyper-V. Specify an integer in the range from 5 to 2,000. Specify this item only when dynamic memory is enabled. |
Input |
Disabled |
O |
Virtual server memory settings |
hyperv.memoryPriority |
Memory weight |
Specify the priority that is applied when available memory is allocated to multiple virtual servers. Specify an integer in the range from 0 to 100. |
Input |
Disabled |
O |
Virtual server memory settings |
hyperv.memoryMaximumAmountMegaBytesPerNumaNode |
Maximum size of memory available on a NUMA node (MB) |
Specify (in MB) the maximum amount of memory that can be used on a virtual NUMA (Non-Uniform Memory Architecture) node. Specify an integer of 8 or greater. |
Input |
Disabled |
O |
Virtual server memory settings |
The following shows the restrictions on inputs to the properties displayed in the "Service Definition" window:
Property key |
Characters that can be input |
---|---|
hyperv.targetHost |
Enter up to 256 halfwidth alphanumeric characters. You can also use periods (.) and hyphens (-). |
UserResponsePlugin.toAddress |
A maximum of 1024 characters can be entered. Characters that can be used include alphanumeric characters and symbols. |
UserResponsePlugin.ccAddress |
A maximum of 1024 characters can be entered. Characters that can be used include alphanumeric characters and symbols. |
UserResponsePlugin.bccAddress |
A maximum of 1024 characters can be entered. Characters that can be used include alphanumeric characters and symbols. |
UserResponsePlugin.mailSubject |
A character string of no more than 256 characters can be entered. |
UserResponsePlugin.mailBody |
A character string of no more than 1024 characters can be entered. |
UserResponsePlugin.encodeType |
Select one of the following values: us-ascii,iso-2022-jp,shift_jis,euc-jp,utf-8 |
UserResponsePlugin.dialogText |
A character string of no more than 512 characters can be entered. |
UserResponsePlugin.responseTimeOut |
Integer between 1 and 9999 can be entered. |
The following shows the restrictions on inputs to the property displayed on the "Service Definition" window and the "Submit Service" window:
Property key |
Characters that can be input |
---|---|
hyperv.vmName |
Enter a character string of up to 100 characters. The character string must not start with a space, end with a space or period (.), or contain the following characters: < > | ; & ' " * ? [ ] ` , % \ / : |
hyperv.selectVmCpuChange |
Select one of the following values: yes,no |
hyperv.selectVmMemoryChange |
Select one of the following values: yes,no |
hyperv.cpuCount |
Integer of 1 or greater |
hyperv.cpuReserve |
An integer in the range from 0 to 100 |
hyperv.cpuMaximum |
An integer in the range from 0 to 100 |
hyperv.cpuRelativeWeight |
An integer in the range from 0 to 10,000 |
hyperv.cpuCompatibilityForMigrationEnabled |
Select one of the following values: true,false |
hyperv.cpuMaximumCountPerNumaNode |
Integer of 1 or greater |
hyperv.nodeMaximumCountPerNumaSocket |
Integer of 1 or greater |
hyperv.memoryStartupMegaBytes |
Integer of 8 or greater |
hyperv.dynamicMemoryEnabled |
Select one of the following values: true,false |
hyperv.dynamicMemoryMinimumMegaBytes |
Integer of 8 or a greater |
hyperv.dynamicMemoryMaximumMegaBytes |
Integer of 8 or greater |
hyperv.dynamicMemoryBuffer |
An integer in the range from 5 to 2,000 |
hyperv.memoryPriority |
An integer in the range from 0 to 100 |
hyperv.memoryMaximumAmountMegaBytesPerNumaNode |
Integer of 8 or greater |
Flow specification details
The following table shows the detailed specification of the flow:
Hierarchy |
Display name |
Plug-in |
||
---|---|---|---|---|
Plug-in name |
Description |
Error recovery method |
||
1 |
checkVmSpecChange |
Flow Plug-in |
Checks whether the virtual server specifications (CPU and memory) need to be changed. If both of the properties hyperv.selectVmCpuChange and hyperv.selectVmMemoryChange are set to "no", the service terminates abnormally. |
-- |
1-1 |
Judge Value Plug-in |
Checks whether the property hyperv.selectVmCpuChange is set to "no". |
After removing the cause of the error, run the service again. |
|
1-2 |
Flow Plug-in |
Checks whether the virtual server specifications (CPU and memory) need to be changed. |
-- |
|
1-2-1 |
Judge Return Code Plug-in |
Checks whether the property hyperv.selectVmMemoryChange is set to "no". |
After removing the cause of the error, run the service again. |
|
1-2-2 |
Abnormal-End Plug-in |
Terminates the service abnormally if the virtual server specifications (CPU and memory) do not need to be changed. |
Check the settings of the properties hyperv.selectVmCpuChange and hyperv.selectVmMemoryChange. To run the service, "yes" must be selected for one of these properties. |
|
2 |
checkHyperv2016VMState |
Flow Plug-in |
Checks the status of a virtual server. If it is still running, the plug-in asks the user whether the virtual server is to be stopped. |
-- |
2-1 |
Obtain virtual server status |
Obtains the status of the specified virtual server. |
After removing the cause of the error, run the service again. |
|
2-2 |
Judge Value Plug-in |
Checks whether the specified virtual server has stopped. |
After removing the cause of the error, run the service again. |
|
2-3 |
Flow Plug-in |
Asks the user whether the virtual server is to be stopped. If the user chooses to stop it, this plug-in shuts down the virtual server. |
-- |
|
2-3-1 |
User-Response Wait Plug-in |
Asks the user whether the virtual server is to be stopped, and then waits for the user's response. |
After removing the cause of the error, run the service again. |
|
2-3-2 |
Obtain virtual server status |
Obtains the status of the specified virtual server. |
After removing the cause of the error, run the service again. |
|
2-3-3 |
Judge Value Plug-in |
Checks whether the virtual server needs to be shut down. |
After removing the cause of the error, run the service again. |
|
2-3-4 |
Shut down virtual server |
Shuts down a virtual server. |
After removing the cause of the error, run the service again. |
|
3 |
changeHyperV2016VMSpec |
Flow Plug-in |
Changes the virtual server specifications. |
-- |
3-1 |
Judge Value Plug-in |
Judges whether to change the memory settings of a virtual server. |
After removing the cause of the error, run the service again. |
|
3-2 |
Change virtual server memory settings |
Changes the memory settings of a virtual server. |
After removing the cause of the error, run the service again. |
|
3-3 |
Judge Value Plug-in |
Judges whether to change the CPU settings of a virtual server. |
After removing the cause of the error, run the service again. |
|
3-4 |
Change virtual server CPU settings |
Changes the CPU settings of a virtual server. |
Part of the CPU settings or memory settings of the virtual server might have been changed. After checking the task log and removing the cause of the error, run the service again. |