6

Putting this question to the Sitecore crowd as it relates to the overall Coveo for Sitecore install, specifically the installation of Coveo Enterprise Search (CES).

I'm trying to automate the installation of Coveo CES server using the MSI bundled in the EXE provided, as outlined here.

Installing the EXE manually works, using all of the default options except for enabling the Admin Service, providing the relevant domains, credentials etc, and the admin service certificate is generated successfully.

My issue is that when the same configuration is installed silently via command line, the product and services get installed correctly, but the install fails during creation of the admin certificate. It appears there is no parameter available to specify the path for the admin certificate generation, but I'm not sure if this is the core issue.

Is there an additional parameter that is missing from the documentation? Or is there another workaround available to get this to work?

Here is the installation command I'm trying to execute:

"Coveo Enterprise Search 7.0 x64 (8388).msi" /qn /l* ces.log ADDLOCAL=BaseFeature,VCRedist,CESService,Admin,AdminService,CESConsole ISSITECORE=Yes INSTALLLOCATION=C:\cestest LOGONTYPE=account LOGONACCOUNT_DOMAIN=domain LOGONACCOUNT_USERNAME=coveo LOGONACCOUNT_PASSWORD=xxxxxx USE_ADMIN_SERVICE_SECURITY=Yes ADMINSERVICELOGON_USERNAME=coveoservice ADMINSERVICELOGON_PASSWORD=xxxxxx SKIP_SERVICES_CHECK=Yes

Here are the relevant lines out of the installation log:

Action started 12:48:00: CreateShortcuts.
Action ended 12:48:00: CreateShortcuts. Return value 1.
Action started 12:48:00: CA_CreateCertificateForAdminService.
SFXCA: Extracting custom action to temporary directory: C:\WINDOWS\Installer\MSI30DA.tmp-\
SFXCA: Binding to CLR version v2.0.50727
Calling custom action ManagedInstallerLib!ManagedInstallerLib.AdminServiceSecurity.CreateCertificateForAdminService
Generate the self signed certificate.
Import the certificate into the stores.
Bind the certificate.
Exception while securing the Admin Service...
An exception has occurred at source : mscorlib
System.FormatException: Input string was not in a correct format.
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at ManagedInstallerLib.AdminServiceSecurity.CreateCertificate(Session p_Session)
Done securing the Admin Service...
Action ended 12:48:12: CA_CreateCertificateForAdminService. Return value 1.
Action started 12:48:12: WriteRegistryValues.
Action ended 12:48:12: WriteRegistryValues. Return value 1.

Any pointers would be appreciated!

  • 2
    We tried to do a silent install as well and ran into the same issue. We were never able to get it to install successfully. The bigger issue we found was that, manually, you need to allow the wizard admin privileges during that step. If you wanted to do the same, according to Coveo, you need to disable UAC on the target server and then restart. That was something we weren't planning on doing in our production environment. – Nick Oct 19 '16 at 19:36
  • Interesting, thanks for the response. I guess there's a reason why Coveo have flagged the silent install method as unsupported! – computerjules Oct 19 '16 at 19:47
  • Nick is right. This has everything to do with access level on the machine. – ASura Oct 19 '16 at 20:23
  • Thanks ASURA - I understand that the installer requires admin privileges when run manually, this is something we are okay with and are currently doing. However, the main issue is the silent install failing as above, even when run as administrator. – computerjules Oct 19 '16 at 21:17
  • Does coveouser/Service account which will run Coveo has privileges to run the certificate process? My understanding is it will need to pull the certmanager from Windows and generate the certificates. – Vinicius Deschamps Oct 20 '16 at 18:10
2

I know this is late, but here are the undocumented properties for the Admin Service secure installation:

  • ADMIN_SERVICE_CES_SERVER_NAME This is used for the certificate Common Name
  • ADMIN_SERVICE_PORT Port for the secured Admin Service. The dialog will set it to 443 in an attended installation
  • ADMIN_SERVICE_CERTIFICATE_EXPORT_PATH Local path where the certificate will be created
  • ADMIN_SERVICE_PRIVATE_KEY_PASSWORD The password that will be used to secure the certificate's private key. Can be an empty string
7

Since the silent install documentation has been released, a new option has been added to the installer in order to create a certificate, point 18 of this doc:

https://onlinehelp.coveo.com/en/ces/7.0/administrator/installing_ces_on_the_master_server.htm

This does not seem to be in the silent option documentation. I asked Coveo Documentation team to update this doc: https://onlinehelp.coveo.com/en/ces/7.0/administrator/installing_or_updating_ces_silently.htm

They will need some time to do so and hopefully answer here once it is done.

  • 1
    One workaround would be to avoid securing the Admin Service for the moment. Coveo Enterprise Search 7.0 x64 (8388).msi" /qn /l* ces.log ADDLOCAL=BaseFeature,VCRedist,CESService,Admin,AdminService,CESConsole ISSITECORE=Yes INSTALLLOCATION=C:\cestest LOGONTYPE=account LOGONACCOUNT_DOMAIN=domain LOGONACCOUNT_USERNAME=coveo LOGONACCOUNT_PASSWORD=xxxxxx USE_ADMIN_SERVICE_SECURITY=No SKIP_SERVICES_CHECK=Yes Typically, your indexing farm (CM and Coveo server) are behind a DMZ, so already secured. Securing the Admin Service is an additional layer of security which is often an overkill. – Simon Langevin Oct 21 '16 at 13:19
  • I presumed this was a case of missing documentation. I'll leave this open for now and alert Coveo, and update if/when I hear anything further. Thanks – computerjules Oct 21 '16 at 19:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.