Posts

How to check Mac OS X Version and other related information

Image
There are few ways you can use to check OS X version. First and simple one is the GUI. Just click on the  Apple menu (  ) at the top left of your screen, and choose  About This Mac. What but if you don't have access to GUI or you want to fetch these details through scripts, then you can use below CLI methods to find out the same. 1. sw_vers - This command will show the ProductName, ProductVersion and BuildVersion.   2. System Profile (system_profile) -  3.  Mac OS X user defaults system 4. Let the System speak it for you :)- 5. Kernal and Machine Architecture Details(uname)- Different available options-

Running and Dynamically Scaling your Jenkins (CI/CD) platform on Kubernetes

Image
Overview            Now a days in the fast moving and changing world, we need a CI/CD platform which we can scale in/out as per requirements. This auto scaling feature help us to be cost effective and don't need to worry about the changing demands. In this article will go through the implementation of same kind of setup. Here we'll create Jenkins setup which will be on Kubernetes and scale automatically as per needs. Interesting thing is that for this demo you don't need any specific inhouse or cloud platform. We are going to do this exercise using Docker Desktop. I have done this on Windows, but if you can use this for Mac as well. Just want to summarize the tools, not going in deapth as assuming that most of  the guys are aware on these tool sets. Otherwise suggest to follow documentation. Jenkins -        Jenkins is the leading open source automation server, Jenkins provides hundreds ...

Points to keep in mind while starting you migration journey towards Kubernetes

Image
Things to bear in mind while migrating to Kubernetes :  Recently I have been reading book "Cloud Native DevOps with Kubernetes" and found some interesting facts about the migration towards container and Kubernetes. Thought of sharing those with you. Below are the point we should know and consider while moving towards cloud native or DevOps culture using kubernetes. • Kubernetes clusters are made up of master nodes, which run the control plane, and worker nodes, which run your workloads.  • Production clusters must be highly available, meaning that the failure of a master node won’t lose data or affect the operation of the cluster.  • It’s a long way from a simple demo cluster to one that’s ready for critical production workloads. High availability, security, and node management are just some of the issues involved.  • Managing your own clusters requires a significant investment of time, effort, and expertise. Even then, you can still get it wrong....

Kubernetes || Remove Namespace stuck in terminating state after delete

Currently, we are getting some issues while deleting the namespace in Kubernetes(AKS). When we run " kubectl delete ns " command, it got stuck and after sometime, if we abort this it will remain in terminating state forever. Below is the kubernetes version we are using- $ kubectl version Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.0", GitCommit:"ddf47ac13c1a9483ea035a79cd7c10005ff21a6d", GitTreeState:"clean", BuildDate:"2018-12-03T21:04:45Z", GoVersion:"go1.11.2", Compiler:"gc", Platform:"linux/amd64"} Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.5", GitCommit:"753b2dbc622f5cc417845f0ff8a77f539a4213ea", GitTreeState:"clean", BuildDate:"2018-11-26T14:31:35Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"} Here, we will see how we ...

TMUX (part-2) Installation and Basics

Image
In the last Article ( tmux-Terminal Multiplexer Intro - Part-1 ), we just discussed what is tmux, comparison with terminals and how this can be helpful in our day to day activities. Today, lets discuss about the Installation and some basics stuff about the tmux. Installation- So, if you are using mac then install tmux as below:               $ brew install tmux  If using ubuntu then you can install using "apt-get" as below:               $  sudo apt-get install -y tmux  To verify, if the installation is completed successfully by checking the version-               $ tmux -V               tmux 2.6 If you want then you can also do the installation using the source code. Starting tmux: Start tmux just typing using command "tmux":               $...

tmux-Terminal Multiplexer Intro - Part-1

Image
tmux - Everything in one terminal( Mouse-Free Development ;) ) What is tmux-                         tmux is a terminal multiplexer. It helps us to use one single terminal/window to launch multiple terminals. e.g. in your first terminal launch tmux and then load top command. After that, you can create another window and load some database CLI console. Now we have two programs running in the same original terminal. An interesting thing is that within the same session, you can switch back and forth these programs. Nowadays each modern Operating System provides terminals with multitab functionality. its not something new with tmux. But main feature that tmux provides is running more than one programs simultaneous. In tmux, we have a feature called "pane". "Pane" is again a new window inside tmux window. We can have multiple panes which can be arranged in horizontal or vertical. This again h...

How to change data directory for Docker with systemd

Image
How to change the data directory for Docker with systemd ? Recently I was playing with docker and got the issue with system space utilization which got full when I tried to pull some new images form docker hub. The reason was that partition was full where docker was storing all data including images.      Usually, By default docker store its all data in /var/ partition which is usually will be in root"/" partition or have can have the separate partition. In my case that was in root "/" partition. So I thought of moving this data directory to somewhere else. Moving this directly to non OS or non-default partition will be a good habit as it will not harm data if something goes wrong with the system. You have different option to do this - 1. Use "--graph=/data/docker/data" in systemd file i.e. "/usr/lib/systemd/system/docker.service" as below -                 ExecStart=/usr/bin/dockerd --graph="/data/docker/da...

Push Docker Images to Azure Container Registry (ACR)

Image
How to Push you custom Docker Images to Azure Container Registry? In this post, We will be going to see that how we can tag and push our custom docker images to ACR i.e. Azure Container Registry.  Azure CLI We are going to use Azure CLI during whole setup. So make sure you have Azure CLI installed and you are able to run "az" command. You can check your CLI version using | az --version | as below- If you don't have installed. you can download and install it from |https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest|. Note - I am assuming here that - you have already logged in with Azure CLI. If you haven't, then please do that using |az login|. You have already created ACR in specific Resource Group. If not, then do that using |az group create [OPTIONS]|. Login to Azure Container Registry- Fetch name of ACR using command |az acr list -g {group_name} -o table|. Then, use command |az acr logi...

Site Reliability Engineering Cookbook

Minikube - How to set up local kubernetes cluster

Image
Question - How to setup local kubernetes cluster using minikube? First of all lets describe briefly about "What is kubernetes?". Well, Kubernetes is open-source container orchestration tool which is used for deployments automation and scaling of containers on large scale environments. There are plenty of other features that it can do. Please go to the main site (https://kubernetes.io/) to explore more. In this specific post, we'll try to setup full kubernetes cluster on local machine. This should be used on Production like env, this is only for doing local testing and getting test of kubernetes on local server without investing much.             We will make use of "minikube" for this setup. Below is the "minikube" Architecture. Env and Version Details -    - Host OS - Windows 10    - Hypervisor - Vritualbox Requirements - 1. Hypervisor -                Install s...