RSSAmplifier

Blog

The /bin/bash Theory

A technical blog about some crap

the.binbashtheory.comRSS feed ↗13 posts

Latest posts

K3S SELinux

In the previous post I talked about how K3S manages bootstrap data in multi server clusters, and how it ensures a secure data throughout the start and reconciliation process, today’s post will be a little bit different, it will shed some light on a fairly complex subject which is how k3s starts on systems that support SELinux and what kind of policy that k3s installs. First I would like to…

How Does K3S Manages Bootstrap Data

K3S is a fully compliant lightweight kubernetes distribution with a minimum memory footprint, its perfect for edge devices however its designed from day one to work on production, for more information about K3S you can refer to the official documenation to get started with installation and management of k3s. In this post I am going to shed some light on how K3S manages bootstrap data and how is…

Manage Kubernetes locally with RKE DIND

Rancher Kubernetes Engine (RKE) is an open-source Kubernetes installer written in Golang which is easy to use and highly customizable, it uses containerized deployment for kubernetes components and can work on many platforms, it support installation on bare-metal and virtualized servers plus it supports integeration with many cloud providers including AWS, Openstack, VSphere, and Azure. For more…

Docker Tunneling in Go

A trick i learned recently is that Docker client in Golang can accept custom dialer which can be so useful to connect to a remote Docker engine through SSH tunneling, all you need is a working SSH connection to a remote server and Docker engine on this server that listens on a local UNIX socket. First let’s look at the NewClient function for Docker client: func NewClient(host string, version…

Kubernetes Installers (1): Kubespray

Kubernetes installation is considered a tough problem for any infrastructure operator, picking the right solution to deploy and run Kubernetes depends mainly on the user’s need, there is no one right solution for deploying Kubernetes however it depends on many variables including cloud provider, HA, network plugins, etc. These series of posts will try to list some different popular…

Creating Private Docker Registry 2.0 with Token Authentication Service

Docker Registry is a stateless server-side application that can act as a central repository for Docker images, Docker has its own free to use central registry called Docker Hub . Setting up your own Docker Registry in your production environment, gives you control over what image being stored and control over the Continuous Integration/Continuous Delivery (CI/CD) workflow, where you can push…

Using Ansible With Digitalocean

I started using Ansible about two months ago, because it appeared back then as an easy way to the automation world, it turns out, i was right. Ansible is a powerful configuration management and IT automation tool created by Michael DeHaan at 2012. Ansible can be used starting from gathering information about you local machine, rolling updates, deploying small software, all the way to orchestrating…

Amazon S3 Automated Backups

Amazon S3 buckets can be a great place to store regular backups, using AWS API storing backups at S3 buckets can be done easily. S3cmd is one of the free tools, that can send files to the S3 buckets as well as Google cloud storage. In this post i will demonstrate how to create automatic backup system that can send regular backups every day to S3 bucket using s3cmd tool. Creating S3 Bucket And…

Building Php Application With Docker

Using Docker, deploying application components in production environment can be done in minutes. In this post i will build a simple wordpress PHP application stack using Nginx (front-end container), and two Application servers (back-end containers) which are connected to a MySQL container. Using the link feature in docker, we will be able to link the containers with each other without the need to…

Control Resources With Cgroups

Controlling and limiting system resources is a great deal for sysadmins, especially on heavy loaded machines. When mentioning limiting or prioritization, some terms pop into my head like nice, and ulimit, that was before cgroups . CGroups (Control Groups) is a linux kernel feature written by Paul Menage and Rohit Seth at 2006, that limits and allocates system resources to different process groups.…

Using Overlayfs With Lxc

Overlay-filesystem (or Unionfs) is a filesystem service that uses union mount to mount different filesystems hierarchies to appear as one unified filesystem. The overlay-filesystem overlays one filesystem above the other into a layered representation. When a directory appears in both layers, overlayfs forms a merged directory for both of them. In case of two files have the same name in both…

Getting Started With Lxc

LXC (Linux Containers) is an OS-level Virtualization method, used to run separated linux containers on the same machine without hardware emulation layer between the containers and the OS. LXC uses some kernel features to create an isolated containers much like the ordinary virtual machines, the main kernel features that lxc relies on are: cgroups and namespaces . LXC also called lightweight…

Before You Start With Lxc and Docker

When i started reading about Docker i started with a normal search on Google and i read the Wikipedia article then i got stopped by some terminologies like process groups, cgroups, and namespace and i was like huh..!!, i wanted to start using docker and do the cool stuff everyone is talking about, but i needed to understand everything before getting my hands dirty. This lead to a weekend of search…