InfluxDB max user`s password length

Apparently Microsoft is not alone when it comes to utterly retarded design decisions. A few years ago when signing up for a Microsoft account I discovered that for some reason they enforce a maximum password lenght of 16 characters or something around that. Well, InfluxDB not only does the same thing but also silently fails to create the user account when the password is considered too long. Took me at least half an hour to figure out why this piece of trash kept vomiting {"error":"authorization failed"}. Double checked my docker-compose file, curl parameters, read InfluxDB useless documentation which, of course, makes no mention of password lenght limits. …

Posted on

Weihrauch HW 77 K pellet comparision

This is gonna be a very unusual post, in some way it is still about technology even if it is not about the usual IT stuff I write of. I have a Weihrauch HW 77 K spring air rifle I mostly use to shoot in my backyard or terrace. When it comes to air guns I always have troubles finding proper reviews and comparisons online, so I figure it might be worth sharing my findings here. …

Posted on

New Gohugo theme

Since I apparently got recurring readers (no, for real, I do) I suspect someone might actually have noticed how the look of the blog changed drastically a few weeks ago. To explain what happened a bit of backstory is required; this blog is built using a static website generator called Gohugo, the way it works is basically the following: choose or build a theme from scratch. Write some articles in Markdown or some other memetic markup language. Customize the theme and look of the website by editing a yaml configuration file. Feed everything to the Gohugo binary which will produce some sleek plain HTML, CSS and maybe JS files. rsync the files to a webserver. ?? Profit!! Couple of months ago Gohugo developers introduced a few changes in the site builder engine that broke backward compatibility with every existing theme, unfortunately the developer of the one I was using still has to make it compatible. So here is how uwot.eu got a nice solarized look. …

Posted on

Kubernetes cluster for manufacturing engineering: tale of an epic commissioning

- Introduction A quite big company that produces parts for some of the most important automotive industry companies was interested in a cloud-based system to monitor the overall efficiency of their production machines, analyze some key parameters and optimize the production activities scheduling. Goal of the project was to connect eleven industrial manufacturing machines to the cloud, extract specific machine data and develop a web application for the visualization and management of such data, while guaranteeing information confidentiality and security. Furthermore, one fundamental requirement of such system has been the bidirectional integration with the customer’s ERP system, in order to synchronize the production JOBs and manage their execution on the corresponding machines. To fulfill such requirements, the project team has engineered and then implemented an hybrid edge-cloud solution in which the software has been packed into various containers that are orchestrated and managed, at the edge level, by a Kubernetes cluster. This technology ensures an optimal load balancing between the available resources as well as a high availability in case of hardware or software failures. While IT enterprises do not question the value of containerized applications anymore, the use of such kind of technologies within a manufacturing environment hasn’t been completely explored yet. In the following paragraphs we will go into details on how we engineered and built the system despite all the difficulties we had to overcome. …

Posted on

FreeBSD, Nginx and htpasswd file generation

On most Linux distros it is possible to generate the htpasswd file entries simply using the htpasswd command line util. On FreeBSD the easiest way to accomplish the same task is using OpenSSL itself: openssl passwd -apr1 Enter the password twice to get a nice hash, copy that in the htpasswd file with the usual user:password_hash syntax.

Posted on

Disable head parking Western Digital drives

Most Western Digital hard drives’ firmware let the heads park themselves after a certain amount of seconds in case the disk is not actively performing any operation. This might be useful to keep power consumption under control but is actually harmful for disks that run 24/7 (WD Red for example). Luckily there is a way to disable head parking, this can be done directly from Linux using a tool called idle3ctl. …

Posted on

FreeBSD, NGINX and TLSv1.3

After a six months hiatus here is a new blogpost. This saturday I finally found the time to upgrade the configuration of the server that hosts this very website. Software stack is pretty simple: FreeBSD (version 12.0-p6),nginx (version 1.15.10) and OpenSSL (version 1.1.1a-freebsd). Install the required software: $ pkg install nginx-devel py36-certbot Get a SSL certificate from letsencrypt: $ certbot-3.6 certonly --standalone -d domain.tld -d www.domain.tld Certfiles location is /usr/local/etc/letsencrypt/live/<domain.tld>, you might, or might not, want to move them to another directory. …

Posted on

qemu/KVM PCI passthrough

PCI passthrough is the process of attaching a PCI-E device directly to a VM; CPU support (namely VT-D for Intel and AMD-V for AMD) and motherboard support (IOMMU) are required for PCI passthrough to work properly. Hardware configuration used: AMD Ryzen 1700x Gigabyte X370 K7 Nvidia Geforce GTX260 32 GiB of RAM and a few HDDs Fedora 29 as host OS The system only has a single graphic card because it is normally used as headless compute server for which a GPU is not really required; the graphic card is also very very old Nvidia Geforce GTX260 with a standard non UEFI BIOS. If using an UEFI enabled graphic card it is probably required to install the OS in UEFI mode using a virtual UEFI BIOS. This guide assumes you already have a working Windows virtual machine and are familiar with libvirt. First of all, edit GRUB to enable IOMMU and blacklist nouveau kernel module so that the graphic card is not picked up anymore by the host: …

Posted on