Various Parallels Operations Automation (POA) tasks to provision Linux or Windows services fail with the error message "Attribute 'protected' is not declared for element 'VAR'", as in the example below:
"Destination host 'hostname.hosting.local' (#10), IP '192.168.10.101': Attribute 'protected' is not declared for element 'VAR'".
Another possible error:
"undefined symbol: _ZNK3SDK8Platform10Properties13getStringListERKSs".
POA Agent was not updated properly on the host.
Reinstall POA Agent on the problem host. The ID, hostname and IP address of the problem server can be found in the failed task properties.
It is important to use the latest available version of POA Agent. See below for instructions on how to get it.
During a fresh installation or upgrade, POA stores all the required packages in a repository which is usually located on the POA Management Node in the
/usr/local/pem/install/tarballs folder (Linux) or
C:\Program Files (x86)\SWsoft\PEM\install\tarballs\ (Windows).
The POA packages repository is also usually available through a web interface with a URL like:
http://POA\_MN\_IP/tarballs (where POA_MN_IP is the IP address of the POA Management Node).
The easiest way to get the most up-to-date version of POA Agent (as well as any other package) is to retrieve it from the POA packages repository.
POA Agent for Linux hosts:
If the Linux server is a physical node or Virtual Machine (not a Parallels Virtuozzo Containers (PVC) container), use the steps below to update POA Agent manually on the server:
- Log into the POA Management Node and go to the packages repository folder mentioned above
- Go to the sub-folder with packages for the operating system and architecture of the problem server. For example, for CentOS 5 x86_64, the proper sub-folder will be
CentOS/5/x86_64/YUM. For RedHat Enterprise Server 4, it will be
- Find the latest version of the
pleskdRPM package, upload it to the problem Linux server and update POA Agent on it.
For example, you may find the following POA Agent packages in the POA repository:
The latest package in this case is pleskd-22.214.171.124-1.parallels.i386.rpm - this is the one we should use.
Alternatively, log into the problem Linux hardware node and try to update POA Agent using 'yum':
# yum update pleskd
During Linux server registration, POA configures its own YUM repository on the Linux server, so 'yum' must know where to get the latest version of the 'pleskd' package (from the POA packages repository). If this method fails, follow the procedure above to update the RPM package manually.
If the problem Linux server is a PVC container (VPS), update POA Agent using the corresponding application template:
- Log into the PVC server where the problem Linux VPS is running. You can find the IP address of the PVC server in the POA Provider Control Panel in the VPS list.
- Find the ID of the problem VPS using its hostname or IP address and the vzlist utility
Make sure that POA Agent is installed on the Linux server as a PVC application template using the vzpkg utility, as in the example below:
# vzpkg list 1044 centos-5-x86_642012-07-09 07:44:41 centos-5-x86_64 pa54-pleskd 2012-10-04 08:16:08
In the example above, the pa54-pleskd application template is installed in container #1044.
Use the vzpkg utility to update the template in the container:
# vzpkg update 1044 pa54-pleskd
If this does not solve the problem, try to update POA Agent using the instructions for a hardware node provided above.
POA Agent for Windows hosts:
Get the latest version of the POA Agent installer for Windows
PAgent.exefor 5.5) from the POA packages repository at the following path:
POA for Linux:
POA for Windows:
C:\Program Files (x86)\SWsoft\PEM\install\tarballs\Win32Bin\install_win_sn.exe C:\Program Files (x86)\SWsoft\PEM\install\tarballs\Win32Bin\PAgent.exe
Upload the POA Agent installer binary to the problem Windows host, run it and follow the wizard instructions to update POA Agent.