SOLVED: Not possible to install new nodes in Qlik Sense June 2018 environment

I worked out the issue preventing me to add additional nodes to a Qlik Sense Enterprise suystem whose central node had been updated to June 2018.

The June 2018 version of Qlik Sense Enterprise relies on a database called “SenseServices” to be available in the Postgres db (as in earlier versions, Postgres can run on the central node or on some other server).

When running the June 2018 installer on a new server (which is to be added as a new node in a Sense Enterprise cluster), the installer verifies that the SenseServices database exists. If it does not, you get an error half-way through the installer:

SenseServices db is missing

 

Maybe there is info somewhere that you need to create a new “SenseServices” db in Postgress before installing additional Sense nodes… but I looked (a lot) without finding anything.

Continue reading “SOLVED: Not possible to install new nodes in Qlik Sense June 2018 environment”

Butler SOS v2.0 – Real-time error and warning dashboards for Qlik Sense

This one is long overdue, but finally here: Butler SOS v2.0

The new version is an almost complete re-write of v1.0. Changes are plentiful and include

  • All warnings and errors stored by Sense in its log database are now pulled into Butler SOS, from where it can be graphed and acted upon.
    This is a big deal, as it was previously not possible to get notifications or alerts when errors or warnings started to pile up in the logs.
  • Operational health metrics are still pulled from Qlik Sense, but this is now done directly from the QIX engine rather than via a hard-to-secure virtual proxy.
  • Using certificates for authentication with Sense removes potential security issues with v1.0.
  • Config file is now YAML instead of JSON. More human readable and with inline comments.
  • Config file now allows for more fine-grained control of Butler SOS.
  • Several bugs fixed, especially around sending metrics to MQTT.

The readme file on GitHub has all the details, here are some screen shots to get you started though:

 

The new version is available on GitHub.

 

PS. This is blog post # 100. Yaaay!!!

Ptarmigan Labs is open for business!

Wow – after 10 years and one day at Spotify the time has come to take the next step.

Going forward I will work in my own company, Ptarmigan Labs AB.
The company’s focus will be more or less the same as what I have spent the past 6-7 years doing at Spotify, i.e. helping people, teams and organisations understanding, enriching and making use of their data.

Qlik Sense will remain my main focus, the Qlikosphere is really heating up with lots of interesting new features both launched and around the corner.
During the past 12 months Qlik Sense has really taken great steps towards becoming a proper enterprise grade BI platform.
Given this development I am really looking forward to Qonnections 2018 and the announcements that are likely to happen there. Interesting times!

You can reach me via info <at> ptarmiganlabs.com, or on LinkedIn.
My open source projects are found on GitHub, as always.

Onward!

How to set up free SSL certificates for Qlik Sense

I recently had a need for an isolated Qlik Sense environment, in order to test some of the new features of Qlik Sense September 2017.

While it works perfectly fine to run Sense with self-signed certificates, you then get browser warnings that the certificates are not valid etc. That might be fine, but as the test at hand involved testing my app duplicator service for Qlik Sense (which require a proper SSL cert) together with the September 2017 version of Sense, I needed a proper SSL certificate.

As I have good experiences using the free certificates of Let’s Encrypt (they secure this blog, for example) I thought it would be a good exercise figuring out how to use them together with Qlik Sense Enterprise.

The notes below are largely reminders-to-self, in case I need to do this again some day. Maybe they can also be useful for others out there.

Continue reading “How to set up free SSL certificates for Qlik Sense”

Monitoring and auto-starting Node.js services on Windows Server

When relying on various Node.js services (e.g. Butler SOS, Butler, App Duplicator etc), you quickly run into the challenge to ensure all services are always up and running.
A failing service might be fine, as long as it is quickly restarted in a predictable way.

A concrete example could be Qlik Sense or QlikView apps that send status messages to Slack during the execution of their reload scripts. Those messages will fail if Butler is for some reason not running.

This leads us to the conclusion that the services must automatically be

a) started when a server is rebooted, and
b) restarted if they for some reason terminate/die.

Enter process monitors.

At their core, process monitors ensure that the desired processes are always running, i.e. bullet b) above. Some process monitors also offer additional features such as zero-downtime restart of services, memory and performance profiling of the monitored services, being able to monitor different kinds of processes (not only Node.js ditto).

Adding to the pain is the fact that Sense and QlikView runs on Windows servers, meaning that all those great tools available on Linux cannot be used.

Looking at Node.js specifially, I have found two process monitors to work well on Windows: Forever and PM2.

Continue reading “Monitoring and auto-starting Node.js services on Windows Server”

Qlik Sense app duplicator 2.0 released

On the surface everything looks the same.

Under the hood everything has changed.

The 2.0 release of the Qlik Sense app duplicator is a major update. Most code has been refactored.

The most notable changes are:

  • Switched to using Enigma.js for talking to the Sense engine, instead of the previously used Qsocks library. Enigma is open source just like Qsocks, but the former is supported and actively developed by Qlik themselves – that is really important.
  • Much improved logging.
  • A nasty bug has been fixed.
    The app duplicator would fail semi-silently when multiple app duplication requests were sent to it simultaneously. No more of that – the duplicator now handles also high-load scenarios gracefully, and have been battle-tested in hands-on sessions when many developers created their own apps from templates at the same time. Nice.The 2.0 version is available on GitHub, as always.