• Please be aware: Kaspersky Anti-Virus has been deprecated
    With the upgrade to Plesk Obsidian 18.0.64, "Kaspersky Anti-Virus for Servers" will be automatically removed from the servers it is installed on. We recommend that you migrate to Sophos Anti-Virus for Servers.
  • The Horde webmail has been deprecated. Its complete removal is scheduled for April 2025. For details and recommended actions, see the Feature and Deprecation Plan.
  • We’re working on enhancing the Monitoring feature in Plesk, and we could really use your expertise! If you’re open to sharing your experiences with server and website monitoring or providing feedback, we’d love to have a one-hour online meeting with you.

Issue Error migrating from Plesk 12.5 to 17.0

Marko

New Pleskian
Hi all,

when I try to migrate from my old to the new system I get the following error in Migration Manager. This is what the log says:

+|2017-02-15_20:37:59,595|D|MT|core.utils.common.http_xml_client|||API request to https://xxx.xxx.xxx.xxx:xxxx/enterprise/control/agent.php:
=|2017-02-15_20:37:59,595|D|MT|core.utils.common.http_xml_client|||<?xml version="1.0" encoding="utf-8"?>
=|2017-02-15_20:37:59,595|D|MT|core.utils.common.http_xml_client|||<packet version="1.5.2.1">
=|2017-02-15_20:37:59,595|D|MT|core.utils.common.http_xml_client||| <server>
=|2017-02-15_20:37:59,595|D|MT|core.utils.common.http_xml_client||| <get>
=|2017-02-15_20:37:59,595|D|MT|core.utils.common.http_xml_client||| <stat/>
=|2017-02-15_20:37:59,595|D|MT|core.utils.common.http_xml_client||| </get>
=|2017-02-15_20:37:59,595|D|MT|core.utils.common.http_xml_client||| </server>
=|2017-02-15_20:37:59,595|D|MT|core.utils.common.http_xml_client|||</packet>
=|2017-02-15_20:37:59,595|D|MT|core.utils.common.http_xml_client|||
+|2017-02-15_20:37:59,599|D|MT|core.connections.checker|||Exception:
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker|||Traceback (most recent call last):
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/core/connections/checker.py", line 49, in check_plesk_api
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| plesk_server.run_test_api_request()
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/core/connections/plesk_server.py", line 53, in run_test_api_request
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| self._get_server_info()
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/core/utils/common/__init__.py", line 243, in wrapper
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| value = func(*args, **kw)
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/core/connections/plesk_server.py", line 57, in _get_server_info
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| return self.plesk_api().send(
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/core/utils/common/__init__.py", line 243, in wrapper
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| value = func(*args, **kw)
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/plesk/connections/target_server.py", line 118, in plesk_api
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| return self.conn.plesk_api()
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/core/utils/common/__init__.py", line 243, in wrapper
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| value = func(*args, **kw)
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/plesk/connections/target_connections.py", line 123, in plesk_api
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| ServerOperator.Dataset.STAT,
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/plesk/utils/xml_rpc/plesk/client.py", line 36, in send
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| return self.send_many(operation, **request_settings)[0]
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/plesk/utils/xml_rpc/plesk/client.py", line 77, in send_many
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| response = self.send_xml(request)
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/core/utils/common/http_xml_client.py", line 33, in send_xml
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| response = self.send_raw(request, extra)
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/core/utils/common/http_xml_client.py", line 27, in send_raw
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| return perform_http_request(self.url, data, headers, hostname=self.host)
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/core/utils/http_client.py", line 92, in perform_http_request
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| response = opener.open(request).read()
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/opt/plesk/python/2.7/lib64/python2.7/urllib2.py", line 431, in open
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| response = self._open(req, data)
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/opt/plesk/python/2.7/lib64/python2.7/urllib2.py", line 449, in _open
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| '_open', req)
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/opt/plesk/python/2.7/lib64/python2.7/urllib2.py", line 409, in _call_chain
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| result = func(*args)
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/usr/local/psa/admin/plib/modules/panel-migrator/backend/lib/python/parallels/core/utils/http_client.py", line 157, in https_open
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| return self.do_open(http_class, req, context=self._context)
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/opt/plesk/python/2.7/lib64/python2.7/urllib2.py", line 1197, in do_open
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| raise URLError(err)
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker|||URLError: <urlopen error [Errno 111] Connection refused>
+|2017-02-15_20:37:59,601|D|MT|core.workflow.runner.by_subscription|||Execute shutdown action 'cleanup'
+|2017-02-15_20:37:59,602|D|MT|core.workflow.runner.by_subscription|||Enter common action block
+|2017-02-15_20:37:59,602|D|MT|core.workflow.runner.by_subscription|||Checking whether it is required to execute action
+|2017-02-15_20:37:59,602|D|MT|core.workflow.runner.by_subscription|||START: Uninstall migration agent files
+|2017-02-15_20:37:59,603|D|MT|core.workflow.runner.by_subscription|||FINISH: Uninstall migration agent files
+|2017-02-15_20:37:59,603|D|MT|core.workflow.runner.by_subscription|||Checking whether it is required to execute action
+|2017-02-15_20:37:59,603|D|MT|core.workflow.runner.by_subscription|||START: Remove temporary users and SSH keys that were required to transfer files
+|2017-02-15_20:37:59,603|D|MT|core.workflow.runner.by_subscription|||FINISH: Remove temporary users and SSH keys that were required to transfer files
+|2017-02-15_20:37:59,604|D|MT|core.workflow.runner.by_subscription|||Checking whether it is required to execute action
+|2017-02-15_20:37:59,604|D|MT|core.workflow.runner.by_subscription|||START: Remove temporary SSH keys
+|2017-02-15_20:37:59,604|D|MT|core.workflow.runner.by_subscription|||FINISH: Remove temporary SSH keys
+|2017-02-15_20:37:59,605|D|MT|core.workflow.runner.by_subscription|||Checking whether it is required to execute action
+|2017-02-15_20:37:59,605|D|MT|core.workflow.runner.by_subscription|||START: Close SSH connections
+|2017-02-15_20:37:59,605|D|MT|core.connections.ssh.connection_pool|||Closing SSH connection to the source server 'source' (xxx.xxx.xxx.xxx)
+|2017-02-15_20:37:59,605|D|MT|core.workflow.runner.by_subscription|||FINISH: Close SSH connections
+|2017-02-15_20:37:59,605|D|MT|core.workflow.runner.by_subscription|||Checking whether it is required to execute action
+|2017-02-15_20:37:59,606|D|MT|core.workflow.runner.by_subscription|||START: Shutdown Windows rsync servers
+|2017-02-15_20:37:59,606|D|MT|core.workflow.runner.by_subscription|||FINISH: Shutdown Windows rsync servers
+|2017-02-15_20:37:59,606|D|MT|core.workflow.runner.by_subscription|||Checking whether it is required to execute action
+|2017-02-15_20:37:59,606|D|MT|core.workflow.runner.by_subscription|||START: Stop remote Windows agents
+|2017-02-15_20:37:59,606|D|MT|core.workflow.runner.by_subscription|||FINISH: Stop remote Windows agents
+|2017-02-15_20:37:59,606|D|MT|core.workflow.runner.by_subscription|||Exit common action block
+|2017-02-15_20:38:00,302|D|MT|core.workflow.runner.base|||MIGRATOR END: /usr/local/psa/admin/sbin/modules//panel-migrator/plesk-migrator generate-migration-list /usr/local/psa/var/modules/panel-migrator/sessions/20170215201351/config.ini --migration-list-format=json --migration-list-file=/usr/local/psa/var/modules/panel-migrator/sessions/20170215201351/migration-list-raw.json --skip-services-checks --include-existing-subscriptions --overwrite --reload-source-data
+|2017-02-15_20:38:00,302|E|MT|parallels|||Failed to connect to target Plesk server by Plesk API: <urlopen error [Errno 111] Connection refused>

Source Server: Centos 6.8, Plesk 12.5.30#59
Destination Server: Centos 7.3, Plesk 17.0.7#16

I already tried every KB i found and I have the ip address of the server in the trusted ips in fail2ban configuration.

Any idea what I can do?


Cheers,
Marko
 
Last edited:
Actually I tried all so far. To be on the safe side I deactivated firewalls on both systems and I deactivated the mod_sec module as well. Nothing changed. It must be related to those lines:

=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| File "/opt/plesk/python/2.7/lib64/python2.7/urllib2.py", line 1197, in do_open
=|2017-02-15_20:37:59,599|D|MT|core.connections.checker||| raise URLError(err)

but I can't find any log in httpd which says there is a block or deny or something.

Any more ideas?
 
Hello!

Could you please try to access your target Plesk API-RPC manually? For example, could you please perform the following call from shell on your target Plesk server:

curl --request POST \
--url https://<target Plesk hostname>:8443/enterprise/control/agent.php \
--insecure \
--header 'cache-control: no-cache' \
--header 'http_auth_login: <username of Plesk administorator>' \
--header 'http_auth_passwd: <password of Plesk administorator>' \
--data '<packet><server><get_protos/></server></packet>'

If all works fine at Plesk side, this request should return an XML with the list of versions of API which supported by your Plesk server. Or error code otherwise. Anyway, we can narrow it down.
 
Back
Top