Demystifying Containers – Part II: Container Runtimes

This second blog post (and talk) is primary scoped to container runtimes, where we will start with their historic origins before digging deeper into two dedicated projects: runc and CRI-O. We will initially build up a great foundation about how container runtimes work under the hood by starting with the lower level runtime runc. Afterwards, we will utilize the more advanced runtime CRI-O to run Kubernetes native workloads, but without even running Kubernetes at all. Introduction In the previous part of this series we discussed Linux Kernel Namespaces and everything around to build up a foundation about containers and their basic isolation techniques. Now we want to dive deeper into answering the question: “How to actually run containers?”. We will do so without being overwhelmed by the details of Kubernetes’ features or security related topics, which will be part of further blog… Leggi tuttoDemystifying Containers – Part II: Container Runtimes

Demystifying Containers – Part I: Kernel Space

This series of blog posts and corresponding talks aims to provide you with a pragmatic view on containers from a historic perspective. Together we will discover modern cloud architectures layer by layer, which means we will start at the Linux Kernel level and end up at writing our own secure cloud native applications. Simple examples paired with the historic background will guide you from the beginning with a minimal Linux environment up to crafting secure containers, which fit perfectly into todays’ and futures’ orchestration world. In the end it should be much easier to understand how features within the Linux kernel, container tools, runtimes, software defined networks and orchestration software like Kubernetes are designed and how they work under the hood. Part I: Kernel Space This first blog post (and talk) is scoped to Linux kernel related topics, which will… Leggi tuttoDemystifying Containers – Part I: Kernel Space

Due

Dicono che durante la nostra vita abbiamo due grandi amori. Uno con il quale ti sposerai o vivrai per sempre, può essere il padre o la madre dei tuoi figli: con questa persona otterrai la massima comprensione per stare il resto della tua vita insieme.E dicono che c’è un secondo grande amore, una persona che perderai per sempre. Qualcuno con cui sei nato collegato, così collegato, che le forze della chimica scappano dalla ragione e ti impediranno sempre di raggiungere un finale felice. Fino a che un giorno smetterai di provarci, ti arrenderai e cercherai un’altra persona che finirai per incontrare. Però ti assicuro che non passerà una sola notte senza aver bisogno di un altro suo bacio, o anche di discutere una volta in più. Tutti sanno di chi sto parlando, perché mentre stai leggendo queste righe, il suo… Leggi tuttoDue

La felicità …

Crescendo impari che la felicità non e’ quella delle grandi cose. Non e’ quella che si insegue a vent’anni, quando, come gladiatori si combatte il mondo per uscirne vittoriosi. La felicità non e’ quella che affannosamente si insegue credendo che l’amore sia tutto o niente; non e’ quella delle emozioni forti che fanno il “botto” e che esplodono fuori con tuoni spettacolari. La felicità non e’ quella di grattacieli da scalare, di sfide da vincere mettendosi continuamente alla prova. Crescendo impari che la felicità e’ fatta di cose piccole ma preziose. E impari che il profumo del caffe’ al mattino e’ un piccolo rituale di felicità, che bastano le note di una canzone, le sensazioni di un libro dai colori che scaldano il cuore, che bastano gli aromi di una cucina, la poesia dei pittori della felicità, che basta il… Leggi tuttoLa felicità …

Perché Simone ?

Coloro che riescono meglio nella vita, spesso non sono i più capaci (a meno di avere delle doti naturali fuori dal comune, cosa che non mi ispira più di tanto) quanto piuttosto i più determinati. E’ sopratutto la determinazione a permettere il raggiungimento di un risultato desiderato, motivo per il quale ammiro tantissimo, ancora di più chi parte da una situazione sfavorevole e raggiunge risultati inimmaginabili solo perchè ci ha creduto, ha combattuto per un sogno, non lo ha mai perso di vista anche nelle difficoltà. Intorno al concetto di motivazione esiste molto disorientamento, sopratutto oggi. Vedo tanti ragazzi che hanno gettato la spugna ancora prima di cominciare, non vedo il fuoco nei loro occhi, non vedo il famoso occhio della tigre, credo perchè la nostra cultura ha smarrito il senso dell’impegno e delle volontà individuali, siamo portati a pensare la motivazione… Leggi tuttoPerché Simone ?

Apache server-status

To the uninitiated, the mod_status output can look like so much gobbledegook, but it’s really quite straightforward. Let’s take a look at some sample output. Apache Server Status for somedomain.com Server Version: Apache/1.3.9 (Unix) PHP/4.0b3 Server Built: Mar 4 2000 17:01:01 The first few lines identify and provide a brief description of your server. The server version information includes an incomplete list of some of the modules compiled into your server. Our example server is running on a Unix system and has been compiled with support for the PHP scripting language. (The level of detail provided by the server version line may be limited by the ServerTokens configuration directive.) Current Time: Thursday, 13-Apr-2000 17:22:36 PDT Restart Time: Thursday, 13-Apr-2000 17:15:26 PDT Parent Server Generation: 14 Server uptime: 7 minutes 10 seconds Total accesses: 42 – Total Traffic: 187 kB CPU… Leggi tuttoApache server-status

Logging the php mail function

From php version 5.3.0 we can use the directive mail.log to log who’s calling the function mail(). When someone calls the function mail() from a php script we can get some info about the sender in our log. I will enable logging globally. You can choose yourself where to activate it, editing your php.ini for cli, cgi, apache2, fpm… To enable it globally: sudo echo “mail.log = /var/log/phpmail.log” > /etc/php5/conf.d/mail.ini phpmail.log is the log filename used in my example. Then create the file: touch /var/log/phpmail.log chmod 777 /var/log/phpmail.log …and restart apache or process manager you are using: /etc/init.d/apache2 restart or /etc/init.d/php5-fpm restart

Troubleshooting High I/O Wait in Linux

Linux has many tools available for troubleshooting some are easy to use, some are more advanced. I/O Wait is an issue that requires use of some of the more advanced tools as well as an advanced usage of some of the basic tools. The reason I/O Wait is difficult to troubleshoot is due to the fact that by default there are plenty of tools to tell you that your system is I/O bound, but not as many that can narrow the problem to a specific process or processes. Answering whether or not I/O is causing system slowness To identify whether I/O is causing system slowness you can use several commands but the easiest is the unix command top. # top top – 14:31:20 up 35 min, 4 users, load average: 2.25, 1.74, 1.68 Tasks: 71 total, 1 running, 70 sleeping, 0… Leggi tuttoTroubleshooting High I/O Wait in Linux