Highlighted
Contributor
Contributor

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

Jump to solution

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
Highlighted
Contributor
Contributor

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

0 Kudos
9 Replies
Highlighted
Expert
Expert

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.

0 Kudos
Highlighted
Enthusiast
Enthusiast

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

0 Kudos
Highlighted
Enthusiast
Enthusiast
0 Kudos
Highlighted
Contributor
Contributor

Hi IB_IT

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

0 Kudos
Highlighted
Contributor
Contributor

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

0 Kudos
Highlighted
Contributor
Contributor

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

0 Kudos
Highlighted
Contributor
Contributor

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

0 Kudos
Highlighted
Contributor
Contributor

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

0 Kudos
Highlighted
Hot Shot
Hot Shot

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....

0 Kudos