cron.weekly issue #84: Hadoop, UUID, Evil.sh, GDB, rl, Monica, SFTP, Containers & more


cron.weekly is a newsletter about Linux, open source & webdevelopment. Want to get it in your inbox every Sunday? Subscribe below!

I respect your privacy and you won't get spam. Ever. Just a weekly-ish newsletter about Linux and open source.

Want to help support this blog? Try out Oh Dear, the best all-in-one monitoring tool for your entire website, co-founded by me (the guy that wrote this blogpost). Start with a 10-day trial, no strings attached.

We offer uptime monitoring, SSL checks, broken links checking, performance & cronjob monitoring, branded status pages & so much more. Try us out today!

Image of Mattias Geniar

Mattias Geniar, June 11, 2017

Follow me on Twitter as @mattiasgeniar

Welcome to cron.weekly issue #84 for Sunday, June 11th, 2017.

Lots of new tools & guides again this time, it’s a really packed issue. I’m always amazed at the rate the community can write high-quality guides and ship new open source projects – Keep it up!

To my dad, who’s also subscribed; happy Father’s Day! You’re the reason I’m in IT today.

Enjoy your Sunday folks.

News

Hadoop servers are exposing five petabytes of insecure data – 200 times more than MongoDB

Lots of Hadoop systems out there that are (accidentally) exposing terrabytes of data … This was only a matter of time, and there are still plenty of unauthenticated protocols running behind unfirewalled servers.

Prometheus vs. Grafana vs. Graphite – A Feature Comparison

Deciding on new technology is always hard, which is why I like posts like these. A good comparison of time series databases, focussing on Prometheus, Grafana & Graphite.

You are not Google

This post focusses on the dev-side of things, but I believe it applies to Ops as well. It’s always nice to read how Google or other “companies at scale” handle things, but most of us have to keep our feet on the ground and be pragmatic about design choices, whether those are software or infrastructure. In this post, trade-offs of Cassandra vs. PostgreSQL are considered.

A Brief History of the UUID

There are UUIDs all around us, from database identifiers to cluster memberships to … This post dives into the history of the UUID.

Full Stack Fest 2017: Problems of today, wonders from the future.

Are you a curious mind? Full Sack Fest is a week-long conference based in the amazing city of Barcelona that peeks into the web of tomorrow! Serverless, Blockchain, WebVR, Distributed Web, Progressive Web Apps… Come and see. Early bird tickets available! Use CRONWEEKLY to get 10% off! (Sponsored)

Tools & Projects

Datadog: all your infrastructure, in one place

Track & alert on the health and performance of every server, container, and app in any environment, with Datadog. Sign up for a free 14-day trial. (Sponsored)

welder

“I wrote it out of frustration with Ansible”. Welder allows you to set up a Linux server with plain shell scripts.

warp

warp lets you securely share your terminal with one simple command: `warp open`. When connected to your warp, clients can see your terminal exactly as if they were sitting next to you.

evil.sh

This one’s already slightly older, but still worth it if you hadn’t hear of it! This repo contains subtle and not-so-subtle shell tweaks that will slowly drive people insane. Think BOFH.

gdb 8.0

The GNU Debugger reaches a 8.0 milestone; improvements for C++ & python, new target architectures & programming languages I’ve never even heard of. 🙂

rl

Rate limit messages from stdin. (keep or drop those exceeding the limit). Useful when ‘tail -f’ on a quickly increasing file or sending data to a remote system. Many use cases here!

kbsecret

kbsecret is a combined library/utility that provides a secret management interface for KBFS and Keybase.

riddler

This tool convert `_docker inspect_` to opencontainers (OCI compatible) runc spec.

GNU Taler

One-Click Cash Payments, GNU Taler is an electronic payment system under development.

duplicacy

Duplicacy is a new generation cross-platform cloud backup tool based on the idea of Lock-Free Deduplication. It supports all major cloud storage providers like Amazon S3, Google Cloud Storage, Microsoft Azure, Dropbox, …

goldfish

A HashiCorp Vault UI panel written with VueJS and Vault native Go API.

monica

Personal Relationship Manager – a CRM to manage your friends and family, written in Laravel (PHP).

easy-makefile

This is a makefile designed to be dropped in to a project and for the most part “just work” after a little bit of configuration in a config.mk file.

Grafana 4.3

Point releases usually aren’t that interesting, but this one adds experimental MySQL backend support to Grafana. Grafana now allows you to query and visualize data from a MySQL compatible database.

Guides & Tutorials

AsterLabs.io: Is your monitoring causing problems or solving them?

Nagios got you down? False alarms ruining your sleep? If you’re looking to fix your monitoring and need expert help, we should chat. (Sponsored)

Kubernetes Production Patterns & Anti-patterns

A solid set of principles to follow when running Kubernetes, including improved build stages for Docker, dealing with zombie & orphaned containers, logging, …

How To Enable SFTP Without Shell Access on Ubuntu 16.04

This guide configures an SSH daemon to limit SFTP access to one directory with no SSH access allowed on per user basis.

VirtualBox: Are You Getting Your Money’s Worth?

A quick comparison of VirtualBox to LXC, Docker & the likes and then a good set of CLI tools to help working with VirtualBox.

Linux Containers Internals (Part I)

A good intro with the necessary tools & one-liners to interpret containers, detect isolation and a fair amount of code to show how those things get implemented.

Async IO on Linux: select, poll, and epoll

This thorough write-up gives you a good description of ‘select’, ‘poll’ and ‘epoll’ system calls. It’s all about how to monitor a lot of file descriptors for new input/output.

MySQL Rabbit Hole: Adventure in data recovery

A very familiar tale, especially when you’re just starting out managing MySQL databases. Accidentally removing files, how do you go about recovering data?

Exploring /dev/input

In this post, the author explores what you can possibly do with access to /dev/input directory.

An introduction to timekeeping in Linux VMs

Some more low-level details, this time on time keeping, this time focussing on KVM, Xen, and Hyper-V related time-keeping techniques and the corresponding parts of the Linux kernel.

sed one-liners

A big collection of useful `sed` examples.

Linux Bridge: how it works

Linux bridge is a layer 2 virtual device that on its own cannot receive or transmit anything unless you bind one or more real devices to it. In this post, you dive deep into the config and inner workings of Linux Bridges.



Want to subscribe to the cron.weekly newsletter?

I write a weekly-ish newsletter on Linux, open source & webdevelopment called cron.weekly.

It features the latest news, guides & tutorials and new open source projects. You can sign up via email below.

No spam. Just some good, practical Linux & open source content.