Introduction At the 7th DevOps Camp in May 2017 I listened to a very interesting talk by Frank Prechtel and Andreas Heidoetting called “Welche Software für Infrastructure as Code? — Puppet vs. Chef vs. Ansible vs. Saltstack - welches Tool für welchen Einsatzzweck?” (Which software for Infrastructure as Code? — Puppet vs. Chef vs. Ansible vs. Saltstack - which tool for what use case?).
In that talk, they arranged those tools along two axes:
I wanted to try out Ceph at home, but hesitated, because it usually requires several physical boxes containing several disks to tap its full potential. Still, because the old virtualized ZFS setup proved quite complicated and inflexible, I decided to give Ceph a try. In the end, it still proved to be complicated, but offeres many unique benefits, such as easy storage expansion as well as efficient and fine-tuneable space usage.
Keeping a dozen virtual machines up-to-date can be quite a task. In this post, I will show how to do it automatically and efficiently using yum-cron, a local mirror with rsync, and saltstack.
I will also describe the setup of a “custom” RPM repository to distribute packages built with the awesome fpm
Automatic updates with yum-cron Downloading and applying updates with yum can be automated using yum-cron, which is more or less a wrapper around yum that runs peridodically with cron (hence the name).
I am going to start this blog with a post about the blog itself.
In my opinion, simple text files and command line tools is where it’s at, so after some googling, I stumbled about Hexo, and just decided to try it out, because I wanted to get experience with blogging and the accompanying software.
Hexo is not actually a complete blogging platform, but simply a static site generator. It takes markdown files, and turns them into nice HTML files with CSS and everything.
This post will detail my setup that uses rsyslog to send JSON-formatted log messages to an ELK stack.
The result Let’s start with an overview of what we get in the end:
The log structure The setup uses rsyslog to send two different kinds of logs to the logserver: the good old syslog, and logfiles written by applications, for example nginx access logs. Both will be formatted as JSON and sent to the logserver via TCP for further processing.