Posts

Comparing file changes with git diff command

Image
Hello Guys, in this post we will explore about git diff command options when to use what option etc. Git basic work flow is going happen initially starts at work area. When you add the files then it will be in the stage area. Once you feel everything is good then we will commit those changes then it will goes to local repository area. In simple words we can say work area -> stage area -> repo area.   The pictorial representation of my understanding about the git workflow: Work flow for git diff command exeuction   How to Compare files in git to get the last changes? In git we have this nice feature to compare a file what has been changed who did the changes we can track them with the inputs we can pass as options to the 'git diff' command. Syntax: git diff [code-file] Examples: You can compare and see all the files which are changed with the last commit. git diff You can compare and see specific file, for example we consider index.html file recently modified and ...

HEALTHCHECK Instructions in Dockerfile

Image
 Hello Guys in this post I wish to explore more intresting instructions HEALTHCHECK which can be used in Dockerfile.  The most common requirement for any real-time projects monitoring using a side-car container which could run in parallel and try to check the process or application URL check or container reachability using ping command etc.  Dockerfie instruction HEALTHCHECK In Dockerfile we can have HEALTHCHECK instruction that allows us to know the condition of an application test runs as expected or not, when a container runs this will be returns a status as healthy, unhealthy based on the HEALTHCHECK command exit code. If the exit code 0 then returns healthy otherwise unhealthy. HEALTHCHECK [options] CMD [health check command] Example: HEALTHCHECK --interval=3s CMD ping c1 172.17.0.2 here are the Healthcheck options   --interval=time in sec (duration 30s is default)  --timeout=time in sec (duration 30s is default)  --start-period=time in ...

HAProxy on Docker load balance Swarm Nginx web services

Image
What is HAProxy do? HAProxy is a free and open-source load balancer that enables DevOps/SRE professionals to distribute TCP-based traffic across many backend servers. And also it works for Layer 7 load balancer for HTTP loads. HAProxy runs on Docker The goal of this post is to learn more about HAProxy, how to configure with a set of web servers as backend. It will accept requests from HTTP protocol. Generally, it will use the default port 80 to serve the real-time application requirement. HAProxy supports multiple balancing methods. While doing this experiment Nginx web app load balance with Swarm Ingress to HA proxy In this post, we have two phases first prepare the web applications running on high availability that is using multiple Docker machines to form a Swarm Cluster and then a web application deployment done using the 'docker service' command. Step 1: Create swarm Cluster on 3 machines using the following commands docker swarm init --advertise-addr=192.168.0.10 join...

Step by Step installation of Ansible Tower opensource version AWX

Image
Hello Guys, In this post, I would like to experiment with the installation of AWX on a new variety of Linux that is Alpine Linux. Prerequisites Here I will go with the Alpine Linux which is the default Operating System on  Play with  Docker  alternatively, You must have at least 3 boxes on either vagrant  or Any cloud instances (AWS) 1 Ansible engine remaining 2 for remote nodes AWX is GUI/web tool which is currently broken down to AWX-operator and AWX Task The AWX up to 18 version installations used docker based environments, where it uses the following Docker images from the Docker hub Postgress SQL Rabbit MQ MemCache Steps to install AWX 1. Update the repo on the Alpine Linux apk update 2. Installing with apk package manager 'add' subcommand will do the installation. apk add ansible This will be installing Ansible on Alpine Linux. Ansible installation on Play with Docker (PWD) instance   3. Validate the ansible installation using the version option. an...

Ansible the lineinfile, blockinfile and replace modules

Image
 Hello !! This post is for exploring the "lineinfile" vs 'blockinfile' and "replace" modules. The replace and the lineinfile use the path parameter to mark: The file to modify. lineinfile module is used to ensure[s] a particular line is in a file, or [to] replace an existing line using a back-referenced (backref) regular expression (regex). Use the replace module if you want to change multiple, similar lines The "dest" parameter is used for modules creating new files like template or copy modules. Just replace dest with path and both provided examples should work as expected. Adding lines in the file Adding a line in a file, if a file does not exist then it will create it. --- # Filename: adding_line.yml - name: testing LineInFile module hosts: localhost tasks: - name: Add a line to a file if the file does not exist lineinfile: path: /tmp/hosts line: 192.168.1.99 ansiblectl.devopshunter.com ctl cre...

How to run Ansible command when you don't have VM?

Image
 Hello Guys!! It's less than 5mins to read article There are different situations where you need to work but you have security restrictions, you cannot even run the vagrant boxes on your laptop. In such situations, If you are able to login to Docker Hub then you can play your playbooks for testing different modules which don't need to connect remotely to your managed nodes. That means you want to execute the module on the Ansible Controller node itself. Ansible container running on PWD (Play with Docker) Pre-requisites You must have a Docker Hub user account  You must have basic knowledge on Docker images, containers usage Good internet speed :) Steps to run Play with Docker  Step 1: Log in to your Docker Hub and launch the " Play with Docker " also known as PWD in short. Step 2: Create the Docker installed Nodes using "ADD NEW INSTANCE". Step 3: Search for the Ansible images either you can check at the command line with or search on the Docker H...

Ansible Comparison Membership Operators

Image
Hello everyone are you working on Ansible Automations?!!  This is post is for you to help, In this post you will find more interesting variable usages and their operations with different options such as comparison operators and membership operators. Comparison operators This is an example for Comparison operators --- # Filename: test_compare.yml - name: Comparison Operator example hosts: localhost gather_facts: false vars: a: "Vybhava" b: "Technologies" n: 100 m: 500 tasks: - debug: msg: - "This will compare numbers {{n}} and {{m}} " - " n == m: {{ n == m }}" - " n != m: {{ n != m }}" - " n > m: {{ n > m }}" - " n >= m: {{ n >= m }}" - " n <= m: {{ n <= m }}" - " n < m: {{ n < m }}" - "Compare Strings : a {{a}} and b {{b}}" - " a ==...