IBM Customizer – Do not reboot the worker node – personal reminder

Rule #1: Drain the worker node before a reboot. 
Consequences if you do not follow the Rule #1: the mongo-db gets corrupt and you need to repair it.
Steps to repair the customizer DB: delete the contents in mongo-node-0, mongo-node-1 and mongo-node-2’s subdirectory /data/db/ and register the customizer apps in the appregistry again.

I’m sure that there’s a way to repair the mongo db directories…

IBM Component Pack 6.0.0.6 upgrade Kubernetes 1.11.1 to 1.11.5

According to this cve There’s a potential issue with kubernetes 1.11.1 which is used in the component pack 6.0.0.6.
So I was wondering if it is possible to upgrade the kubernetes version to the patched point release 1.11.5.
The long version can be found in the official documentation.

The short version:

#on Master Node

yum-config-manager --enable kubernetes

yum install kubeadm-1.11.5-0 --disableexcludes=kubernetes

kubeadm upgrade plan
kubeadm upgrade apply v1.11.5

#Masterupdate
kubectl drain $MASTER --ignore-daemonsets
yum install kubectl-1.11.5-0 kubelet-1.11.5-0 --disableexcludes=kubernetes
kubectl uncordon $MASTER

yum-config-manager --disable kubernetes

#repeat for each master goto Masterupdate

#for each node
kubectl drain $NODE

#Nodeupdate
#on node $NODE

yum-config-manager --enable kubernetes
yum install kubectl-1.11.5-0 kubelet-1.11.5-0 kubeadm-1.11.5-0 --disableexcludes=kubernetes

yum-config-manager --disable kubernetes
kubeadm upgrade node config --kubelet-version $(kubelet --version | cut -d ' ' -f 2)
systemctl daemon-reload
systemctl restart kubelet

#back on the master
kubectl uncordon $NODE

#repeat for each node: restart from Nodeupdate

The upgrade on my little lab environment (1 Master + 3 Worker) went smooth.

XPage partial refresh stopped working after upgrade to Domino 10

We updated our servers to domino 10. Suddenly one app did not work any more. After digging around I found this helpfull page in stackoverflow

The solution is as easy as putting xsp.error.disable.0380=true in the xsp properties

Tagged with: ,

Domino Query Language – personal reminder

DQL uses space as a sparator at the moment

a) view.form='MyForm'

is not the same as

b) view.form = 'MyForm'

=> a) does not work…

IBM Connections Component Pack 6.0.0.6 – reveal the elasticsearch secret

In order to combine elasticsearch and Connections you need some of the elasticsearch certificates. With version < 6.0.0.6 those certificates could be found in /opt/certs. With the latest release, they are created directly into your kubernetes cluster.

With this simple line, created by Toni Feric, you can export the certs


kubectl -n connections get secret elasticsearch-secret -o json | egrep '\.txt|\.p12|\.key|\.pem' | sed -e 's/^ *//' -e 's/,$//' -e 's/"//g' | awk -F':' '{print "echo"$2" | base64 -d >"$1}' | bash

The result should look like this:

IBM Component Pack 6.0.0.6 – quest for the missing elasticsearchsecret

Now the Customizer is up and running. Now I tried to put the elasticsearch stack. Following the IBM documentation, I was able to add a new worker node, dedicated solely for elasticsearch.
Putting the additional images in my dockerregistry, installing the helm charts. So far so good. But my es-master, es-data and es-client would not start. The log revealed the missing elasticsearch-secret. After some hints from Nico directing my search to the connections-env part. There’s parameter “createSecret=false” which drew my attention.

A short helm delete connections-env --purge and reinstall of the connections-env with createSecret=true did the trick.

IBM Connections Component Pack 6 Installation – Customizer

Today I tried to install a small POC environment for the Customizer only. 1 master node and 2 workers.
Following the IBM documentation is straight forward. In my POC I relied on the Deploying a non-HA Kubernetes platform path.
I went through the docs and copied all the pieces into a couple of shell scripts. So I’d be able to restart from scratch if something goes wrong.

The only point I had issues was on how to setup the docker image registry. For my POC I did not want to fiddle around with certificates. So I decided to follow this link. If I had updated the daemon.json file on every worker node too, I would have been much more efficient. After this little change, my worker nodes were finally able to pull the images.

Despite the documentaions first impression, the overall installation experience was interesting.

At the moment I only run the customizer on my POC environment. After a clean reboot all 3 Nodes take less then 8GB ram. Lets see how this will raise if I start using the the customizer tomorrow.

IBM Connections Component Pack 6.0.0.5 iFix 1 – First impressions Customizer

Direct link to the download
The update is really easy. But I only use the customizer at the moment.

In short: remove the old pods, upload the new images to the environment and install the new pods with helm. No need to redeploy the IBM Cloud Private.
Of course, this did not work in my lab.
First after the connections-env install, the mongo-2 instance did not start. Something during the shutdown was ok, cleaning the volumen solved the issue.

Then only mongo and appregistry-client started, the rest stayed in ContainerCreating.
kubectl logs redis-server-0 -n connections did not show anything
kubectl describe pod redis-server-0 -n connections mentioned that the redis-secret-volume could not be mounted.
kubectl get secrets -n connections did not list the redis-secret. Either it had never been there before, or it must have been removed while uninstalling the 6.0.0.5 pods.
So after recreating the secret the pods started finally and my lab is back online.

One thing that seems to be fixed: CSS/JS files are now longer delivered twice to the browser.
It should now be possible to deliver svg files too.

IBM Connections Customizer first steps – Improve Search Results View

At the beginning of August, we had an interesting training for IBM Connections Customizer.

Everything you need to know is here: Customizer on Github

Hide unnecessary things in connections is easy, just inject the appropriate css. Which is much easier than without the customizer.

Then I had a look at the more advanced samples on opencode4connections.org. These are good samples, but do not have a practical use in our environment.
So I decided to opensource a tiny sample which improved our Connections slightly. Source is here.

This small sample changes the search results page so it opens the results in a new tab instead of the current page.

The real challenge started, when I tried to filter or page through the results. Customizer injected scripts start, when the page reloads.
Filtering the searchresults does not reload the page…
Thanks to David Walsh’s site I added the MutationObserver.

Now filtering/paging the results works.

IBM Connections Customizer shipped with Orient Me 6.0.0.4 AKA IC Component Pack

Just downloaded the IC Component Pack 6.0.0.4 formerly known as OrientMe.
This should now include the Connections Customizer….

Top