cron.weekly issue #26: PHP-PM, Ubuntu Snap, Jenkins 2.0, Xamarin, Tredly, SOLR & Linux basicsMay 1, 2016 - Mattias Geniar
Welcome to cron.weekly issue #26 for Sunday, May 1st, 2016.
A slightly shorter issue this time as I’m in the middle of moving places and things are a bit hectic.
Enjoy this edition and expect a bigger one next week. If I’ve missed important news that didn’t make it here, let me know!
The PHP-PM runtime is a relatively new way to run your PHP code, next to the already existing PHP-FPM method. Benchmarks show up to 800% improved throughput, reaching an increadible 4.000 req/s on commodity hardware.
A very good reminder that Ubuntu’s LTS releases cover the security updates for the “main” repository (around 7.000 packages) but does not cover the “universe” repository, which exceeds over 45.000 packages and is widely used by many sysadmins.
Writing a “duplicate file finder” isn’t easy, as there are many caveats to consider. This technical post explains some of those in more detail.
A more readable version of the PDF mentioned last week: why after almost a decade, process scheduling on Linux still isn’t the most performant one.
The Rust language has introduced a new intermediate compiler state: MIR. For the Rust community, this means much faster compilation time for Rust applications, faster execution time and more precise type checking.
Ubuntu 16.04 introduced the “Snappy” package manager, a new package format specifically for Ubuntu. This post covers the good parts (portability & access to latest releases), the bad (diskspace consumption) and the ugly (the fact that X11 windowing still leaves the user with an insecure system).
Soon, we’ll be able to further protect our mailservers by enabling “Strict Transport Security” (as known from the HTTP world) in our SMTP servers. The Strict Transport Security enforces the use of encrypted communication.
Tools & Projects
The ‘make’ command, used for building software from source to deploying entire applications, can also control multiple applications in parallel using ‘jobs’. This article further explains the concept.
This tool, by the Yelp team, is built on top of Elasticsearch, Logstash and Kibana and proves the alerting on inconsistencies and anomalies in the data. If you have data being written into Elasticsearch in near real time and want to be alerted when that data matches certain patterns, ElastAlert is the tool for you. If you can see it in Kibana, ElastAlert can alert on it.
This kernel (experimental) kernel module allows you to use your graphic cards’ memory as “system” memory. By using persistent memory allocation in OpenGL, you can keep that video memory in active RAM.
Ubuntu Make is a command line tool which allows you to download the latest version of popular developer tools on your installation, installing it alongside all of the required dependencie, enable multi-arch on your system if you are on a 64 bit machine. Basically, one command to get your system ready to develop for Ubuntu.
This script takes screenshots of every file diff through a Git repo’s commit history. Very useful if you want so share those diffs in a classroom or presentation.
The new release of Jenkins (2.0) is out: you can now more easily describe the chain of automation in your build process through “pipelines“, the most prominent powerful feature of the 2.0 release. Lots of usability and visual differences in this release too. If you’re just getting started with Jenkins, the 2.0 release should make the barrier of entry a lot lower and easier to configure.
The RouterSploit Framework is an open-source exploitation framework dedicated to embedded devices.
The Xamarin project has gone full open source: with Xamarin you can right your applications in open source .NET and compile them for iOS, Android and Windows in one click.
Remote terminal application that allows roaming, supports intermittent connectivity, and provides intelligent local echo and line editing of user keystrokes. Mosh is a replacement for SSH. It’s more robust and responsive, especially over Wi-Fi, cellular, and long-distance links.
A python project that can show the bandwidth usage per process.
Back in 2014, several anti-systemd folks launched Devuan, a fork of Debian without systemd. Behind the scenes they’ve been making steady progress to remove all systemd components, and they’ve just launched their first Beta version.
A new player in the container market: Tredly offers containers based on the FreeBSD platform.
Augeas is a configuration editing tool. It parses configuration files in their native formats and transforms them into a tree. Configuration changes are made by manipulating this tree and saving it back into native config files.
Guides & Tutorials
An impressive 600 page PDF on running SOLR, how to use Documents/Fields/Schema’s, understanding indexing and basic operations, performance tuning, day-to-day management of SOLR and scalability.
A look inside Docker’s DNS round-robin load balancing mechanisme.
This guide lets you use Dropbox as a git repository server, easily keeping multiple version of one repository in sync with the power of Dropbox.
If you’re just getting started with Linux, the amount of choice in distributions can be overwhelming. Which one do you pick? Ubuntu/Debian/CentOS? Once you’ve figured that out, which desktop environment do you pick? KDE, Gnome, Unity? This video explains the differences and give a good introduction to the world of Linux.
Once you’ve picked your Linux distro with the video guide above, this textual guide can help you get started with Linux: it explains user interfaces, shells and terminals, entering commands, … By the looks of it, all the basics are covered.
In an effort to increase security, this guide sets up DNSSEC (cryptographic validation of the DNS records you’re using) and DNSCrypt, which encrypts the DNS traffic between you and your DNS resolver. This offers both validation (DNSSEC) as well as encryption (DNSCrypt).
As sysadmins, we see segfaults as a “developer problem”: the application quit in an unexpected way, the developer should have a look at it. This post has lots of code examples that can give us more insights into why a program segfaults in the first place.
This video shows how facebook operates its configuration deployment at scale: testing, managing and deploying all of their infrastructure code. Their new configuration management system is no longer cfengine2 but a tool built on Chef.