Archives

Tue
08
May
Sarath Pillai's picture

How To Delete A Git Branch Locally And Remotely

Deleting a git branch from local as well as remote

The one single tool that dominates the version controlling space is none other than GiT. There are many reasons for its popularity and adoption. It is distributed in nature, it is decentralized, you can do almost every operation locally (meaning connectivity is only required while pushing the changes).

Another killer feature git offers is “branches”. Although many other version controlling tools offer branching feature, none of them implemented branching in the manner git implemented it (it is extremely light weight). Unlike other version controlling tools, switching between branches is lightning fast in Git.

 

Tue
01
May
Sarath Pillai's picture

Difference Between .bashrc and .bash_profile

Difference between .bashrc and .bash_profile

Bash is the default shell on most Linux distributions, and is pretty powerful because it supports many programming features as well. For example, bash supports conditional statements like if and else, variables, case statements, loops and much more. In this article, we will try to explore two main configuration files used by bash shell when it is launched.

 

The reason why I decided to write about this is due to the confusion and doubts floating around regarding these two configuration files. Mainly because both can be used for similar purposes, so why two files instead of having one.

 

Mon
23
Apr
Sarath Pillai's picture

Difference Between Process And Thread in Linux

Processes Versus Threads

We always hear people using two terms very often. One is “Process” and the other is “thread”.  Which one is process and which one is thread, and what differentiates the two is often confusing to many folks.

In this article, we will try to uncover each of these in the context of Linux operating system, and understand their primary differences.

Let us first start with processes, and then move to threads. The most common definition you can find about process is “It is an instance of a program, that is under execution”.  What does that even mean?

Wed
21
Mar
Sarath Pillai's picture

What is a System Call in Unix/Linux

System Calls

Let me start this article by stating the fact that “Linux is a multi user and multiprocessing operating system.”  That sentence is quite simple and straightforward to understand. Because we all know the fact that multiple users can be logged into the same Linux machine, and can do their individual tasks, all at the same time.
 

You generally cannot have a multiuser operating system, without having the capability of multiprocessing. Because to make two users logged in at the same time, the computer needs to run multiple processes at the same time (think of two different shell process for those users, think of two different text editors opened by those two users, think of the GUI interfaces opened by those two users..and so on, all at the same time).
 

Thu
15
Mar
Sarath Pillai's picture

How To Configure MySQL Cluster with Multiple Masters on Ubuntu 16.04

Multiple Masters in MySQL

MySQL is one of the popular Relational database management systems out there. Installing and configuring MySQL is quite straightforward and simple. For smaller websites and blogs, the standard setup of a single MySQL server works perfectly well.  But creating a high availability setup with multiple masters is quite tricky. The popular model that people generally use for a multi node setup in MySQL is master/slave setup (where the slave is generally used for read only operations to reduce number of requests on the master).

In this article, we will be discussing a method to create a multi master MySQL cluster (where read/write requests can be served by any node in the cluster).

Thu
11
Jan
Sarath Pillai's picture

How To Run Multiple Commands In Parallel on Linux

Parallal Execution of Commands in Linux

Traditionally computers can only do one single thing at a time. It generally does not do multitasking. Well, in most cases (with single core computers - meaning computers with one single CPU), the computer gives you an illusion that multiple things are happening simultaneously.  

 

You might be running multiple things at the same time on a computer, but the computer will always execute one single task from your list of tasks at a time. But it will quickly switch to the next task, and then the next task and then the next (so basically in a way you can say that multiple tasks are progressing one by one).

 

Mon
08
Jan
Sarath Pillai's picture

How to Increase the Size of Root Volume in Google Cloud Platform - GCP

Increase Root Volume

Google cloud platform is one of the popular public cloud providers out there. It has many features like Load Balancing, Container Engine (to run docker containers in google cloud), Virtual Private Networks, Interconnecting services (to connect your in house network to cloud), SQL Services, Object storage services and many more. In this article, we will be discussing one basic and very essential activity that we all need to perform when required.  

 

Wed
03
Jan
Sarath Pillai's picture

How Does Ansible Work ?

How Does Ansible Work

Imagine that you are a Linux System Administrator, working for a small financial services company. Your company being in the finance sector, is always worried, about security of the applications and servers.

Your company recently took a critical step of firing an engineer on the charges of leaking financial and business critical data to an outsider.

Let us assume that you are now assigned with a task to remove and disable the recently fired employee's user on all the servers in your critical environment. This being a very critical and security related stuff, you do not have much time at hand to plan this out. There are around 50 servers in your environment, which should be patched asap.

 

Mon
01
Jan
Sarath Pillai's picture

Terraform Tutorial: How to Install Terraform ?

How to Install Terraform on Mac and Linux

Cloud infrastructure is being leveraged by almost everyone these days. There are many configuration management tools to manage configuration state of the servers in the form of code. Tools like Puppet, Chef and Ansible are well suited for configuration management. Managing things with code is much more reliable compared to manual effort put by system administrators and operations engineers, it also brings in all the good things that software development methodologies offer(like versioning the configuration state, reverting to a previous state, and collaboration). 

Cloud Infrastructure can also be dealt in the form of code. Hence there are a number of tools that are generally called "Provisioning tools". We are going to see the method to install one such provisioning tool called Terraform on Linux & Mac.

Mon
01
Jan
Sarath Pillai's picture

Terraform Tutorial: What is Terraform ?

Terraform Tutorial: What is It?

I am sure about the fact that by now, most of us have used public cloud services like AWS, Azure, & Google Cloud. Well, if not all three, at least aws for sure(because aws is the biggest player in the public cloud service offering). Creating your infrastructure on top of these public cloud is pretty straightforward and easy, if done manually, by using their respective web console.  However, it is not that simple to automate the infrastructure building process in a reusable fashion. Please keep the fact in mind that we are talking about automating the “infrastructure” here and not about your applications and services running on your servers.
 

When I say infrastructure, I am referring to the below in the cloud..

Pages

Subscribe to RSS - Archives