VMware Cloud Community
daniel_abreu1
Contributor
Contributor
Jump to solution

Error Upgrading VMware vCenter Server from 5.x to 6.0 - Database pre upgrade server

Hi Guys

I'm having a issue trying to upgrade my VCSA 5.1 U3 to VCSA 6 "Build" 3040890

the erro occurs during VMware vCenter Server Database pre-upgrade checks

My database embebed and is Postgres

I Checked the logs in

"CollectRequirements_com.vmware.vcdb_2015_12_30_09_34.log"

and I found these events

2015-12-30T11:35:09.101Z INFO __main__ Set root upgrade folder to: /var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/payload/component-scripts

2015-12-30T11:35:09.229Z INFO __main__ Context file /var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/upgrade_working_directory/system-data/upgrade-com.vmware.vcdb-upgradeContext does not exist. Use default context

2015-12-30T11:35:09.230Z INFO extensions Found upgrade phase <module 'vcdb' from '/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/payload/component-scripts/vcdb/__init__.pyc'>:CollectRequirements'

2015-12-30T11:35:09.230Z INFO extensions Executing upgrade phase '<module 'vcdb' from '/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/payload/component-scripts/vcdb/__init__.pyc'>:CollectRequirements' with context {u'destinationVcPlatform': u'Linux', u'resourceDir': u'/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/upgrade_working_directory', u'locale': u'en', u'destinationPlatform': u'Linux', u'destinationVcVersion': u'6.0', u'sourceVcPlatform': u'Linux', u'sourcePlatform': u'Linux', 'logDir': '/var/log/vmware/upgrade', u'sourceSsoVersion': u'5.1', u'sourceVcVersion': u'5.1', u'destinationSsoVersion': u'6.0', u'systemExportDir': u'/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/upgrade_working_directory/system-data'}.

2015-12-30T11:35:09.231Z INFO vcdb Configuring log folder paths in /var/log/vmware/upgrade

2015-12-30T11:35:09.231Z INFO vcdb Retrieving DB type...

2015-12-30T11:35:09.231Z INFO vcdb DB type retrieved: PostgreSQL

2015-12-30T11:35:09.247Z INFO vcdb Retrieving DB user...

2015-12-30T11:35:09.294Z INFO vcdb DB user retrieved: vc

2015-12-30T11:35:09.309Z INFO vcdb Retrieving DB password...

2015-12-30T11:35:09.383Z INFO vcdb DB password retrieved: ****

2015-12-30T11:35:09.404Z INFO vcdb Validating source embedded schema...

2015-12-30T11:35:31.562Z INFO vcdb Souce embedded schema validation completed.

2015-12-30T11:35:31.568Z WARNING transport.local BAD REQUEST: Cannot execute ['/opt/vmware/vpostgres/1.0/bin/psql', '-U', 'postgres', '-d', 'VCDB', '-t', '-c', "\n               SELECT ceil(sum(pg_relation_size(C.oid)) / (1024*1024)) as disk_size\n                 FROM pg_class C\n                 LEFT JOIN pg_namespace N\n                   ON N.oid = C.relnamespace\n                WHERE nspname IN ('vc', 'vpx') and relkind in ('r', 't')\n               \n                           AND relname NOT LIKE 'vpx_hist_stat%'\n                           AND relname NOT LIKE 'vpx_sample_time%'\n                           AND relname NOT LIKE 'vpx_event%'\n                           AND relname NOT LIKE 'vpx_task%'\n                           AND relname NOT LIKE 'vpx_property_bulletin%'\n                           "]. Error: [Errno 2] No such file or directory

2015-12-30T11:35:31.568Z ERROR __main__ Upgrade Phase 'vcdb:CollectRequirements' failed. Exception:

Traceback (most recent call last):

  File "/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/payload/componentPhaseLauncher.py", line 379, in main

    executionResult = systemExtension(exeContext)

  File "/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/libs/sdk/extensions.py", line 94, in __call__

    result = self.extension(*args)

  File "/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/libs/sdk/extensions.py", line 110, in _func

    return func(*args)

  File "/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/payload/component-scripts/vcdb/__init__.py", line 1667, in doCollectUpgradeRequirements

    req = doLinuxCollectReq(context)

  File "/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/payload/component-scripts/vcdb/__init__.py", line 1026, in doLinuxCollectReq

    sizeCore, sizeSet = CoreSetSizeLinux()

  File "/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/payload/component-scripts/vcdb/__init__.py", line 503, in CoreSetSizeLinux

    sizeCore = num(getPsqlQueryResult(sqlCore))

  File "/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/payload/component-scripts/vcdb/__init__.py", line 471, in getPsqlQueryResult

    return read_db_value(cmd)

  File "/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/payload/component-scripts/vcdb/__init__.py", line 199, in read_db_value

    localStderr=tempFileNameErr)

  File "/var/tmp/vmware-upgrade-requirements/cis-upgrade-runner/libs/sdk/component_assistant.py", line 273, in execCommand

    raise _convertToComponentAssistantError(e)

ComponentAssistantError

Looking at VMware KB, i found this articles, that is similar, but is for VCSA Windows and SQL DB

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=211556...

Has anyone know how to solve this issue?

Thanks very much

1 Solution

Accepted Solutions
daniel_abreu1
Contributor
Contributor
Jump to solution

Hi guys, i did the upgrade in another way.... I Installed a fresh vCenter 6.0, and I did a removal the hosts from old vCenter and then I added again to the new VCSA 6.0

Regards

Daniel

View solution in original post

Reply
0 Kudos
9 Replies
IB_IT
Expert
Expert
Jump to solution

If you are upgrading VCSA, then you shouldn't be using the pre-upgrade checks...from this kb (older kb, but I would think still relevant) you cannot run pre-upgrade checks on appliances:

VMware KB: Using the VMware vCenter Server Database Pre-Upgrade Checker

Note: The Pre-Upgrade Checker works only with vCenter Server installations on Windows. The Pre-Upgrade Checker does not work with the vCenter Server Appliance.

Reply
0 Kudos
Jimmy15
Enthusiast
Enthusiast
Jump to solution

First of all , it is more of migration less of upgrade. you need to initiate fresh installation of VCSA 6 and choose upgrade from the wizard. There will be option to upgrade from 5.1u3 or 5.5.

regards

Pankaj


regards



PS: Mark kudos or correct answer as appropriate 🙂
Reply
0 Kudos
Jimmy15
Enthusiast
Enthusiast
Jump to solution

Below two are really helpful links

http://www.vladan.fr/how-to-upgrade-from-vcsa-5-5-to-6-0/

vSphere 6.0 Documentation Center

Regards

Pankaj


regards



PS: Mark kudos or correct answer as appropriate 🙂
Reply
0 Kudos
daniel_abreu1
Contributor
Contributor
Jump to solution

Hi IB_IT

This pre check I didn't manually... It's automatic check when you are upgrading VCSA too

Reply
0 Kudos
daniel_abreu1
Contributor
Contributor
Jump to solution

Hi Pankaj

I Followed these steps, but the upgrade process stops at the compatibility check specifically at DB checks.

Another question, if I don't fix this issue.

Can I disable HA from my cluster and remove my both hosts with ESXi 5.1.. And then initiate a fresh installation of VCSA 6.0 and re-add the hosts to the new VCSA? Without downtime for VMs and troubles adding the hosts  to the new VCSA

Bests regards

Daniel

Reply
0 Kudos
daniel_abreu1
Contributor
Contributor
Jump to solution

Hi guys, i did the upgrade in another way.... I Installed a fresh vCenter 6.0, and I did a removal the hosts from old vCenter and then I added again to the new VCSA 6.0

Regards

Daniel

Reply
0 Kudos
gravasio
Contributor
Contributor
Jump to solution

I'm having the same problem.

Someone managed to solve the error?

It seems that the upgrade is looking for the psql client in the path of the VCSA 5.5

Reply
0 Kudos
ahdzc
Contributor
Contributor
Jump to solution

has someone fixed this issue

I found this link but did not work for me

virtuallyPeculiar: vCenter Appliance upgrade to 6.0 fails with "Internal error occurs during VMware ...

which says to

You can address this by creating a symbolic link to the correct path by running the below command:

"ln -s /opt/vmware/vpostgres/current/bin /opt/vmware/vpostgres/1.0/bin" 

same issue and message I can not upgrade

Reply
0 Kudos
kopper27
Hot Shot
Hot Shot
Jump to solution

I opened a case since the workaround posted here did not work

so they documented my ticket like this

Internal KB interno  # 2142954

"Cause: The installer is searching for a DB config from /opt/vmware/vpostgres/1.0/bin/psql instead of db config from /opt/vmware/vpostgres/9.0"

they told me they had like 3 more cases like this escalated to get a resolution....

Reply
0 Kudos