FATAL: failed to initialize LdapProvisioning

Ask questions about your setup or get help installing ZCS server (ZD section below).
Post Reply
kayasaman
Posts: 20
Joined: Thu Nov 22, 2018 9:05 pm

FATAL: failed to initialize LdapProvisioning

Post by kayasaman »

Hi,

I'm trying to upgrade from zcs-8.7.11_GA_1854.RHEL6_64 to zcs-8.8.10_GA_3039.RHEL6_64 and am finding a big problem with LDAP.

Currently I have tried the standard upgrade using the ./install script which went ok but complained about 'LdapProvisioning'. I then tried running a software only using the -s switch but still the same error??

I tried reading up and around the subject but unfortunately I haven't found anything of help.

The closest I could find which really was in the debug and trouble shooting of ldap was this thread: viewtopic.php?f=15&t=59186&start=10 - though the subject was completely different.

If I run:

Code: Select all

zmprov -l gs `zmhostname` zimbraServiceEnabled


The result I get is this:

Code: Select all

[] FATAL: failed to initialize LdapProvisioning
com.zimbra.common.service.ServiceException: system failure: attr description in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr uid in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraId in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraHABSeniorityIndex in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: habGroup
attr zimbraAddressListGalFilter in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraIsAddressListActive in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraAddressListLdapFilter in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraHabGroup in file /opt/zimbra/conf/attrs/zimbra-ocs.xml: unknown class in AttributeClass: zimbraHabGroup
attr zimbraAddressList in file /opt/zimbra/conf/attrs/zimbra-ocs.xml: unknown class in AttributeClass: zimbraAddressList

ExceptionId:main:1542920351004:653fea23293a69d5
Code:service.FAILURE
	at com.zimbra.common.service.ServiceException.FAILURE(ServiceException.java:288)
	at com.zimbra.cs.account.AttributeManager.getInstance(AttributeManager.java:201)
	at com.zimbra.cs.account.ldap.LdapProvisioning.getBasicDLAttrs(LdapProvisioning.java:373)
	at com.zimbra.cs.account.ldap.LdapProvisioning.<init>(LdapProvisioning.java:312)
	at com.zimbra.cs.account.ldap.LdapProvisioning.<init>(LdapProvisioning.java:276)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at com.zimbra.cs.account.Provisioning.getInstance(Provisioning.java:287)
	at com.zimbra.cs.account.Provisioning.getInstance(Provisioning.java:244)
	at com.zimbra.cs.account.ProvUtil.initProvisioning(ProvUtil.java:1004)
	at com.zimbra.cs.account.ProvUtil.main(ProvUtil.java:3955)
The Zimbra system is pretty much stock running on CentOS 6.

Could anyone help me out here?? Thanks.
kayasaman
Posts: 20
Joined: Thu Nov 22, 2018 9:05 pm

Re: FATAL: failed to initialize LdapProvisioning

Post by kayasaman »

Hi, This is the full error from the install sequence:

Code: Select all

Restoring existing configuration file from /opt/zimbra/.saveconfig/localconfig.xml...done
Operations logged to /tmp/zmsetup.20181123-210236.log
Adding /opt/zimbra/conf/ca/ca.pem to cacerts
Upgrading from 8.7.11_GA_1854 to 8.8.10_GA_3039
Stopping zimbra services...done.
This appears to be 8.7.11_GA
Starting mysql...done.
Checking ldap status...not running.
Checking ldap status...not running.
Starting ldap...done.
Checking ldap status...already running.
Running mysql_upgrade...done.
Stopping mysql...done.
[] FATAL: failed to initialize LdapProvisioning
com.zimbra.common.service.ServiceException: system failure: attr description in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr uid in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraId in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraHABSeniorityIndex in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: habGroup
attr zimbraAddressListGalFilter in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraIsAddressListActive in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraAddressListLdapFilter in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraHabGroup in file /opt/zimbra/conf/attrs/zimbra-ocs.xml: unknown class in AttributeClass: zimbraHabGroup
attr zimbraAddressList in file /opt/zimbra/conf/attrs/zimbra-ocs.xml: unknown class in AttributeClass: zimbraAddressList

ExceptionId:main:1543007054451:4a3397dc6d331c85
Code:service.FAILURE
	at com.zimbra.common.service.ServiceException.FAILURE(ServiceException.java:288)
	at com.zimbra.cs.account.AttributeManager.getInstance(AttributeManager.java:201)
	at com.zimbra.cs.account.ldap.LdapProvisioning.getBasicDLAttrs(LdapProvisioning.java:373)
	at com.zimbra.cs.account.ldap.LdapProvisioning.<init>(LdapProvisioning.java:312)
	at com.zimbra.cs.account.ldap.LdapProvisioning.<init>(LdapProvisioning.java:276)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at com.zimbra.cs.account.Provisioning.getInstance(Provisioning.java:287)
	at com.zimbra.cs.account.Provisioning.getInstance(Provisioning.java:244)
	at com.zimbra.cs.account.ProvUtil.initProvisioning(ProvUtil.java:1004)
	at com.zimbra.cs.account.ProvUtil.main(ProvUtil.java:3955)
Updating zimbraLDAPSchemaVersion to version '1537160923'
Applying updates for 8.8.6_GA 
Updating global config and COS's with attributes introduced after 8.7.11_GA...failed.
Stopping ldap...done.
Upgrade complete.

Checking ldap status....not running.
Starting ldap...done.
[] FATAL: failed to initialize LdapProvisioning
com.zimbra.common.service.ServiceException: system failure: attr description in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr uid in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraId in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraHABSeniorityIndex in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: habGroup
attr zimbraAddressListGalFilter in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraIsAddressListActive in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraAddressListLdapFilter in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraHabGroup in file /opt/zimbra/conf/attrs/zimbra-ocs.xml: unknown class in AttributeClass: zimbraHabGroup
attr zimbraAddressList in file /opt/zimbra/conf/attrs/zimbra-ocs.xml: unknown class in AttributeClass: zimbraAddressList

ExceptionId:main:1543007110956:3c5a51d2054ffd76
Code:service.FAILURE
	at com.zimbra.common.service.ServiceException.FAILURE(ServiceException.java:288)
	at com.zimbra.cs.account.AttributeManager.getInstance(AttributeManager.java:201)
	at com.zimbra.cs.account.ldap.LdapProvisioning.getBasicDLAttrs(LdapProvisioning.java:373)
	at com.zimbra.cs.account.ldap.LdapProvisioning.<init>(LdapProvisioning.java:312)
	at com.zimbra.cs.account.ldap.LdapProvisioning.<init>(LdapProvisioning.java:276)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at com.zimbra.cs.account.Provisioning.getInstance(Provisioning.java:287)
	at com.zimbra.cs.account.Provisioning.getInstance(Provisioning.java:244)
	at com.zimbra.cs.account.ProvUtil.initProvisioning(ProvUtil.java:1004)
	at com.zimbra.cs.account.ProvUtil.main(ProvUtil.java:3955)
Setting defaults...[] FATAL: failed to initialize LdapProvisioning
com.zimbra.common.service.ServiceException: system failure: attr description in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr uid in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraId in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraHABSeniorityIndex in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: habGroup
attr zimbraAddressListGalFilter in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraIsAddressListActive in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraAddressListLdapFilter in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraHabGroup in file /opt/zimbra/conf/attrs/zimbra-ocs.xml: unknown class in AttributeClass: zimbraHabGroup
attr zimbraAddressList in file /opt/zimbra/conf/attrs/zimbra-ocs.xml: unknown class in AttributeClass: zimbraAddressList

ExceptionId:main:1543007126485:ebf824efd265ec79
Code:service.FAILURE
	at com.zimbra.common.service.ServiceException.FAILURE(ServiceException.java:288)
	at com.zimbra.cs.account.AttributeManager.getInstance(AttributeManager.java:201)
	at com.zimbra.cs.account.ldap.LdapProvisioning.getBasicDLAttrs(LdapProvisioning.java:373)
	at com.zimbra.cs.account.ldap.LdapProvisioning.<init>(LdapProvisioning.java:312)
	at com.zimbra.cs.account.ldap.LdapProvisioning.<init>(LdapProvisioning.java:276)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at com.zimbra.cs.account.Provisioning.getInstance(Provisioning.java:287)
	at com.zimbra.cs.account.Provisioning.getInstance(Provisioning.java:244)
	at com.zimbra.cs.account.ProvUtil.initProvisioning(ProvUtil.java:1004)
	at com.zimbra.cs.account.ProvUtil.main(ProvUtil.java:3955)
done.
Setting defaults from existing config...done.
Checking for port conflicts
Setting defaults from ldap...done.
[] FATAL: failed to initialize LdapProvisioning
com.zimbra.common.service.ServiceException: system failure: attr description in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr uid in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraId in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraHABSeniorityIndex in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: habGroup
attr zimbraAddressListGalFilter in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraIsAddressListActive in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraAddressListLdapFilter in file /opt/zimbra/conf/attrs/zimbra-attrs.xml: invalid class: addressList
attr zimbraHabGroup in file /opt/zimbra/conf/attrs/zimbra-ocs.xml: unknown class in AttributeClass: zimbraHabGroup
attr zimbraAddressList in file /opt/zimbra/conf/attrs/zimbra-ocs.xml: unknown class in AttributeClass: zimbraAddressList

ExceptionId:main:1543007279780:c10c8393505a921f
Code:service.FAILURE
	at com.zimbra.common.service.ServiceException.FAILURE(ServiceException.java:288)
	at com.zimbra.cs.account.AttributeManager.getInstance(AttributeManager.java:201)
	at com.zimbra.cs.account.ldap.LdapProvisioning.getBasicDLAttrs(LdapProvisioning.java:373)
	at com.zimbra.cs.account.ldap.LdapProvisioning.<init>(LdapProvisioning.java:312)
	at com.zimbra.cs.account.ldap.LdapProvisioning.<init>(LdapProvisioning.java:276)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:442)
	at com.zimbra.cs.account.Provisioning.getInstance(Provisioning.java:287)
	at com.zimbra.cs.account.Provisioning.getInstance(Provisioning.java:244)
	at com.zimbra.cs.account.ProvUtil.initProvisioning(ProvUtil.java:1004)
	at com.zimbra.cs.account.ProvUtil.main(ProvUtil.java:3955)

Main menu

   1) Common Configuration:
I was thinking about re-initializing the ldap db after taking a backup, then restoring the backup however I'm not sure if that will solve the issue as it looks like either some schemas are broken or perhaps ldif files are corrupted though I did attempt to remove the config directory after reading:

https://wiki.zimbra.com/wiki/Specific_D ... store_Ldap

https://zimbra.github.io/installguides/ ... grade.html

but of course as you can see it hasn't solved the problem :-(

Any advise would be great just so that I can get my mail system back online again :-)
kayasaman
Posts: 20
Joined: Thu Nov 22, 2018 9:05 pm

Re: FATAL: failed to initialize LdapProvisioning

Post by kayasaman »

So unfortunately as I have no idea what went wrong with the install.sh script upgrade attempt I attempted a different solution to the problem.

The solution I used was best described here:

https://wiki.zimbra.com/wiki/ZCS_to_ZCS_rsync_Migration

https://wiki.zimbra.com/wiki/Zimbra_Rel ... .0/Upgrade

1. stop any zimbra service { service zimbra stop }
2. backup the old /opt/zimbra instance - mv zimbra zimbra.old
3. run install script uninstall - ./install.sh -u
4. run install script again - ./install.sh
5. stop new zimbra instance
6. Using guide restore MySQL - note that as mine is single server install there is no need to use remote IP address in rsync: simply: rsync dir1 dir2 <- with options is fine
Import the MySQL Data

Delete the MySQL data on the New Server and copy the MySQL data from the Old Server.

1. On the New Server, move the default database aside:

mv -f /opt/zimbra/db/data/* /backup/old

2. Copy the MySQL data to the New Server:

(on Old Server)
rsync --delete -axvzKHS /opt/zimbra/db/data/* [newserver-IP-address]:/opt/zimbra/db/data/

Note: if you are having any problems moving over the MySQL data as raw data files, you can instead export the data from the Old Server and import it to the New Server, as described here: http://wiki.zimbra.com/wiki/MySQL_Backup_and_Restore
7. Copy Inboxes across - again adapt commands, so no need for ssh and IP addresses in my case
Copy the Message Blob Data

Copy the following files from the Old Server to the New Server

1. On New Server, move aside default files:

mv -f /opt/zimbra/store/* /backup/old
mv -f /opt/zimbra/index/* /backup/old

2. Rsync all files to the new server, as user root:

(on Old Server)
rsync -e ssh --delete -axvzKHS /opt/zimbra/store/* [newserver-IP-address]:/opt/zimbra/store/
rsync -e ssh --delete -axvzKHS /opt/zimbra/index/* [newserver-IP-address]:/opt/zimbra/index/
8. I did attempt to use the ldap sequence but I kept running into errors... so my only option as this point was to:

Code: Select all

mv /opt/zimbra/data/ldap /opt/zimbra/data/ldap.bak
rsync -axvzKHS /opt/zimbra.old/data/ldap /opt/zimbra/data/
9. Fix permissions:
Fix the Permissions

Confirm that all permissions are correct on the new server:

1. As root, run the zmfixperms script to repair any potential permissions problems with files under /opt/zimbra:

(as root)
/opt/zimbra/libexec/zmfixperms

2. For best results, run the -extended option to confirm correct perms for all files, although this may take longer:

(as root)
/opt/zimbra/libexec/zmfixperms -extended

At this stage I found that I could not go to the 'Updates' page in the Admin UI as a result of this error:

Code: Select all

Message: system failure: unable to modify attrs: object class violation 
- unable to modify attributes: ldap 
host=domain.com:389: object class 'zimbraGlobalConfig' 
requires attribute 'zimbraLDAPSchemaVersion' Error code: service.FAILURE 
Details:soap:Receiver
It is virtually the same error as I was getting from the install.sh upgrade??

The solution here seemed to be to run:

Code: Select all

/opt/zimbra/libexec/installer/util/modules/postinstall.sh
then restart the zimbra service.


As I was having such a big issue with ldap I decided to create a dummy install in a VM then import the - hopefully upgraded - ldap instance:

https://wiki.zimbra.com/wiki/LDAP_data_import_export
viewtopic.php?t=20268

Original System:

Code: Select all

su - zimbra
 /opt/zimbra/libexec/zmslapcat /backup
Dummy ldap test VM:

Code: Select all

scp -r oldserverIP:/backup/ldap.bak /backup/
su - zimbra
ldap stop
cd /opt/zimbra/data/ldap
mv mdb mdb.old
mkdir -p mdb/db
/opt/zimbra/libexec/zmslapadd /backup/ldap.bak
ldap start
Import complete!

Test search for users:

Code: Select all

ldapsearch -x -H ldapi:/// -D uid=zimbra,cn=admins,cn=zimbra -w {passwd} |grep {user}
- that should find it! :-)
Post Reply