0 Replies Latest reply: Jul 7, 2015 8:23 AM by Lucas Blancher RSS

    Upgrading Qlik Sense 1.0.1 to 2.0 - Migration failed: Hostname/IP doesn't match certificate's altnames: Error: Hostname/IP doesn't match certificate's altnames

    Lucas Blancher

      Hey Everyone,

           I just wanted to share my experience upgrading to Qlik Sense 2.0.  I had some issues, but was able to resolve them, I'm hoping what I've found will help someone else.

       

      Environment:

      - Windows Server 2012

      - Qlik Sense 1.1 to Qlik Sense 2.0.1

      - Qlik Sense Configured using IP and not host name.  Ie, XXX.XXX.XXX.XXX no qliksense.bizxcel.local

       

      Error Message:

      Logger  Severity               Date      MicroSeconds   Message

      17b3e342-7d61-4abd-ab07-0fc9c51e3c94              INFO      2015-07-02T17:04:18.038Z            576059360.5       Initial state set to 'Migration pending'

      17b3e342-7d61-4abd-ab07-0fc9c51e3c94              INFO      2015-07-02T17:04:18.040Z            576061226           Transitioned state from 'Migration pending' to 'Migration in progress'

      17b3e342-7d61-4abd-ab07-0fc9c51e3c94              WARN   2015-07-02T17:04:18.256Z            576277020.1       Migration failed: Hostname/IP doesn't match certificate's altnames: Error: Hostname/IP doesn't match certificate's altnames\n    at SecurePair.<anonymous> (tls.js:1389:23)\n    at SecurePair.emit (events.js:92:17)\n    at SecurePair.maybeInitFinished (tls.js:979:10)\n    at CleartextStream.read [as _read] (tls.js:471:13)\n    at CleartextStream.Readable.read (_stream_readable.js:340:10)\n    at EncryptedStream.write [as _write] (tls.js:368:25)\n    at doWrite (_stream_writable.js:225:10)\n    at writeOrBuffer (_stream_writable.js:215:5)\n    at EncryptedStream.Writable.write (_stream_writable.js:182:11)\n    at write (_stream_readable.js:601:24)\nFrom previous event:\n    at Function.Promise$Defer (C:\\Program Files\\Qlik\\Sense\\ServiceDispatcher\\Node\\migration-service\\src\\node_modules\\bluebird\\js\\main\\promise.js:267:13)\n    at new e (C:\\Program Files\\Qlik\\Sense\\ServiceDispatcher\\Node\\migration-service\\src\\migrate\\mocks\\deferred.js:1:127)\n    at Object.o.rpc (C:\\Program Files\\Qlik\\Sense\\ServiceDispatcher\\Node\\migration-service\\web\\assets\\core\\models\\rpc-session.js:1:2575)\n    at o.rpc (C:\\Program Files\\Qlik\\Sense\\ServiceDispatcher\\Node\\migration-service\\web\\assets\\core\\models\\engine.js:1:2297)\n    at o [as openDoc] (C:\\Program Files\\Qlik\\Sense\\ServiceDispatcher\\Node\\migration-service\\web\\assets\\core\\models\\engine.js:1:1452)\n    at Object._.openApp (C:\\Program Files\\Qlik\\Sense\\ServiceDispatcher\\Node\\migration-service\\web\\assets\\core\\models\\engine.js:1:2706)\n    at C:\\Program Files\\Qlik\\Sense\\ServiceDispatcher\\Node\\migration-service\\src\\migrate\\migrate.js:1:959\nFrom previous event:\nFrom previous event:\n    at new Promise (C:\\Program Files\\Qlik\\Sense\\ServiceDispatcher\\Node\\migration-service\\src\\node_modules\\bluebird\\js\\main\\promise.js:84:37)

      17b3e342-7d61-4abd-ab07-0fc9c51e3c94              INFO      2015-07-02T17:04:18.257Z            576278677.3       Transitioned state from 'Migration in progress' to 'Migration failed'

      17b3e342-7d61-4abd-ab07-0fc9c51e3c94              INFO      2015-07-02T17:04:18.258Z            576279473.3       Notifying callback URI

      17b3e342-7d61-4abd-ab07-0fc9c51e3c94              WARN   2015-07-02T17:04:18.289Z            576310403.4       Failed to notify callback URI 'https://XXX.XXX.XXX.XXX:4242/qrs/app/17b3e342-7d61-4abd-ab07-0fc9c51e3c9... Hostname/IP doesn't match certificate's altnames

      17b3e342-7d61-4abd-ab07-0fc9c51e3c94              INFO      2015-07-02T17:04:18.290Z            576311158.9       Log closed, migration completed

       

      What is happening:

       

      During the upgrade, Qlik Sense must migrate all of the Qlik Sense applications to 2.0, this is done via a migration process who's logs can be found at C:\ProgramData\Qlik\Sense\Log\AppMigration

       

      Cause:

        Node.js has issues handling self signed certificates based on IP instead of hostname.

       

      Resolution:

      1. Modify C:\Program Files\Qlik\Sense\ServiceDispatcher\Node\Migration-Service\src\node_modules\bluebird\js\main\promise.js to add a line between lines 84 and 85.  Add in process.env.NODE_TLS_REJECT_UNAUTHORIZED = 0; on the new blank line

       

      2. Modify C:\Program Files\Qlik\Sense\ServiceDispatcher\Node\Migration-Service\src\utils\request.js.  Find the following command ‘rejectUnauthorized: !0,’ and change it to ‘rejectUnauthorized: 0,'.

       

      Now you should be able to go back to the QMC and migrate each of your applications.

       

      For more information on what i found and what i think might be happening, please check on my blog post on the topic at  http://bizxcel.com/blog-post/upgrading-qlik-sense-20-%E2%80%93-applications-not-migrated-after-updatehostnameip-doesnt-match

       

      Happy Qlik'ing,

      Lucas Blancher

      BizXcel Inc.

      BizXcel.com