[FIX] Containers do not start after upgrade to PVC 4.0 on Windows Datacenter edition

Article ID: 4608 
Last Review: Oct,6 2008
Author: Basalyko Roman APPLIES TO:
  • Virtuozzo Containers for Windows 4.0

Symptoms

Windows Datacenter edition is installed on the node. After upgrade from Virtuozzo 3.5.1 to PVC 4.0 all CTs do not start.

The following error appers:

C:\Documents and Settings\ZArmaGuedon>vzctl start 105
Starting container ...
Unexpected error 0x0 SCM(Service Control Manager) startup waiting timeout for co
ntainer 105
Container 105 is not started
Exec '@VzOnShutdown' failed in container 105

New created CTs start without any problems.

Cause

Most likley the reason of the problem is that Virtuozzo 3.5.1 for Standard/Enterprise Windows versions was used and as sequence all CTs were created based on Enterprise/Standard template.  When upgrade is done PVC 4 installs Datacenter templates as it detects Windows edition automatically.

As Datacenter is different than Enterprise/Standard template, containers fail to start.

Resolution

Note: This configuration is not valid and the best way is to have another Standard/Enterprise node and move these containers there.

However as workaround the following things might be done:

1. Stop ServiceCT and any other running containers(if any)

vzctl stop 1

2. Undeploy current w2k3 template (now it is w2k3 for DC)

vzpkgdeploy -u w2k3

Do the same for w2k3_r2, if you have one installed.

3. Move \vz\Templates\__cache\w2k3<full_template_name>.efd out of \vz\Templates folder.

Note: Please ensure that there are not old even renamed templates neither in \vz\Templates nor in \vz\Templates\__cache

4. Copy old Enterprise/Standard template  from \vz\Templates\__cache\oldtemplates\w2k3.efd to \vz\Templates\__cache\w2k3.efd

5. Deploy w2k3 template:

vzpkgdeploy -i w2k3


6. Recreate ServiceCT

7. Start all Conatiners.

Please note that new container created on DC template after upgrade won't start.

Note: This solution is just a kind of workaround and cannot guarantee proper Containers work in the future. So, the best way it to have a node with Standard or Enterprise Windows Edition and move Containers there.


Subscription for this article changesSubscription for this article changes

Please provide feedback on this article

Did this article help you solve your issue?
Yes
No
Partially
I do not know yet
 
Strongly Agree   Strongly Disagree
  9 8 7 6 5 4 3 2 1
The article is easy to understand
The article is accurate
Additional Comments:
*Please provide us with your email address in case we need to contact you.
* - required fields