Skip to main content

Posts

Showing posts from 2020

Stream IoT data to S3 - the simple way

This article introduces infinimesh as a Kubernetes-native IoT platform built to integrate massive device fleets without cloud lock-in, and highlights its expanding plugin ecosystem for Elastic, Redis TimeSeries, SAP HANA, Snowflake and cloud-native object storage. Using lightweight Go-based Docker containers, plugins can run securely in user environments—even on AWS free-tier instances—while streaming device data directly into existing infrastructures like S3 or MinIO. The step-by-step example shows how quickly CloudConnect can move IoT data into object storage using docker-compose, with the plugin internally batching device payloads through Redis before exporting them as CSV. In benchmarking, the architecture handled millions of devices sending frequent JSON updates, demonstrating how infinimesh plugins simplify large-scale IoT data integration with minimal resource overhead. First, a short introduction to infinimesh , an Internet of Things (IoT) platform which runs completely in Kub...

Embedded IoT Linux won't reboot - how to fix and repair

I have a lot of embedded systems running in my product testing lab or at home, all of them either as Raspberries or self-made PCB with Yocto. Sometimes I can't reboot some systems, I think its the journald which causes some issues with SSD Cards, the error-message usually is: Failed to open /dev/initctl Anyhow, if you have this issue - a reboot can be force-forced: systemctl --force --force reboot Since a forced reboot does not sync the journal, the system typically comes up with a damaged FS. The remote fsck can be initiated by extending the command above with sudo tune2fs -i 1m /dev/DISK && touch /forcefsck && systemctl --force --force reboot (assumed you have access to a shell, via SSH or local access). When all goes fine, the system comes up with a clean FS. All this fuss comes from the SSD r/w actions, a well designed IoT embedded devices should have a flash mem part for the running OS.

Kubernetes - delete all pods with a certain status

"How to delete all pods with a status like Error" - that is a question I often get. The DevOps answer is a one-liner, filtering by status.reason and the status we want to query, es example: kubectl get po -A --all-namespaces -o json | jq '.items[] | select(.status.reason!=null) | select(.status.reason | contains("Evicted")) | "kubectl delete po \(.metadata.name) -n \(.metadata.namespace)"' | xargs -n 1 bash -c In that case we delete all pods with the Status "Evicted". But it works for every status based filtering.