CoreOS with vagrant quick start

Tested steps as of today

19th Aug 2016

Using Windows 10 enterprise edition

You should have

  • Vagrant
  • Git (Gitbash)
  • Virtualbox

execute these steps


$ vagrant ssh
CoreOS alpha (1122.0.0)
Last login: Fri Aug 19 04:40:07 2016 from
core@core-01 ~ $


Enjoy and let me know how it goes for you!




Agile as per english dictionary means able to move quickly and easily.

Agile inshort means iterative / incremental development methodology.

It promotes

  • Adaptive planning
  • Evolutionary development and delivery
  • A time-boxed iterative approach
  • Encourages rapid and flexible response to change

In simple terms I called it test based development where requiierement evolves with each iteration

Honestly, last part of setence likes and cherished by all cutomers, think about you being one of them and have all right to say what qualities your desired software should have during the course of development would be big plus.

Agile philosophy push these key items forefornt

  • Customer satisfaction by rapid delivery of useful software
  • Welcome changing requirements, even late in development
  • Working software is delivered frequently (weeks rather than months)
  • Close, daily cooperation between business people and developers
  • Working software is the principal measure of progress
  • Sustainable development, able to maintain a constant pace
  • Regular adaptation to changing circumstances


Application Lifecycle Management (ALM) tools

Application lifecycle management (ALM) is the product lifecycle management (governance, development, and maintenance) of application software.

It comprises of

  • requirements management
  • software architecture
  • computer programming
  • software testing
  • software maintenance
  • change management
  • project management
  • release management

Some of the popular tools I have used which will discuss in this article

  • Team Foundation Server from Microsoft
  • IBM Rational Team Concert from IBM
  • uberSVN WANdisco
  • Visual Studio Application Lifecycle Management Microsoft  

To begin with will start with Team Foundation Server from Microsoft 

Team Foundation Server (commonly abbreviated to TFS) is a Microsoft product which provides

  • source code management (either via Team Foundation Version Control or Git),
  • reporting,
  • requirements management,
  • project management (for both agile software development and waterfall teams),
  • automated builds,
  • lab management,
  • testing
  • release management capabilities.

It covers the entire Application Lifecycle Management. TFS can be used as a back end to numerous integrated development environments but is designed to provide the most benefit by serving as the back end to Microsoft Visual Studio or Eclipse.


DevOps & TEM

I will be writing series of articles on DevOps and TEM (Test Environment Management) under DevOps category.

What is DevOps in nutshell
Development keeps changing things based on user or market demands for new features (and fixes of existing features). Operations try to keep everything as constant as possible in order to deliver maximum availability and stability of software services. These two contradicting goals create a bottleneck when it comes to delivery of business value. Some people, albeit misguided, call this bottleneck “Quality Assurance”.

To give brief background on how I exposed to DevOps term.

I basically manage and maintain infrastrcture (server farms, data centres, cloud and virtualization) along with deploying application on it.

However, it’s my very first article on this topic.

I been using multiple automation tools to manage non production environments in past.

Industry picked up automation trend on

  • Continuous Integration
  • Continuous Delivery
  • Automated Acceptance Testing
  • System and Application Monitoring

And DevOps is the group responsible to facilitate it.

I will write soon in details on different applications can be used for these automations.

The challenge for this profile is to maintain infrastructure and at the same time deploy application and trust me those are mutually exclusive to each other.

……..So what do we need……..Aha!!! we need tool for that isn’t it!



Networking stuff for the day

How to find corresponding mac address from given IP address on system?

ARP stands for Address Resolution Protocol, which is used to find the media access control address of a network neighbor for a given IPv4 Address.

On Ubuntu this is how you find mac address
$>ifconfig -a | grep HWaddr

What is a NAT IP address?

Network Address Translation (NAT) is the process where a network device, usually a firewall, assigns a public address to a computer (or group of computers) inside a private network. The main use of NAT is to limit the number of public IP addresses an organization or company must use, for both economy and security purposes.

Quick guide to Websphere MQ

It is the Messaging style of communication the communication takes place between Queue Managers.

Firstly the application program writes to the some name queue then the queue manager determines the location of those queues and handles all of the communication.

MCA ( Message channel agent ) is the Queue Manager program to perform the network communication.

If messages to be delivered to the remote queue the queue manager checks it and put it into the transmission queue to process further.

MQPUT (write) to MQGET (read)

IBM WebSphere reference architecture




Reduce the service to bare business logic

Resource Manager Or Queue manger owns the queue (MCA – Message channel agent)



Application –> MQ Interface (MQI) –>Queue Manager –> Process Definition –> Queues

Major Calls

  • MQPUT – Write
  • MQPUT1
  • MQGET – Read

Minor Calls


MQ Messages = Header + Application Data

Header – Message descriptor

WebSphere MQ largest message size is 100 MB

Easily process data in parallel


Call and return


Program MQI

retrieve messages from queue

Lets now jump in and create the real life example

I will share an example of StockQuote (i.e. stock price)

We require IBM WebSphere MQ Explorer 7.1 software



* Command: “E:\Program Files\IBM\WebSphere MQ\bin\crtmqm” -sa StockQuotes
WebSphere MQ queue manager created.
Directory ‘E:\Program Files\IBM\WebSphere MQ\qmgrs\StockQuotes’ created.
The queue manager is associated with installation ‘Installation1’.
Creating or replacing default objects for queue manager ‘StockQuotes’.
Default objects statistics : 74 created. 0 replaced. 0 failed.
Completing setup.
Setup completed.
exitvalue = 0
* Command: “E:\Program Files\IBM\WebSphere MQ\bin\strmqm” StockQuotes
WebSphere MQ queue manager ‘StockQuotes’ starting.
The queue manager is associated with installation ‘Installation1’.
5 log records accessed on queue manager ‘StockQuotes’ during the log replay phase.
Log replay for queue manager ‘StockQuotes’ complete.
Transaction manager state recovered for queue manager ‘StockQuotes’.
WebSphere MQ queue manager ‘StockQuotes’ started using V7.1.0.0.
exitvalue = 0
* Command: “E:\Program Files\IBM\WebSphere MQ\bin\runmqsc” StockQuotes
5724-H72 (C) Copyright IBM Corp. 1994, 2011. ALL RIGHTS RESERVED.
Starting MQSC for queue manager StockQuotes.
AMQ8626: WebSphere MQ listener created.
One MQSC command read.
No commands have a syntax error.
All valid MQSC commands were processed.
exitvalue = 0
* Command: “E:\Program Files\IBM\WebSphere MQ\bin\runmqsc” StockQuotes
5724-H72 (C) Copyright IBM Corp. 1994, 2011. ALL RIGHTS RESERVED.
Starting MQSC for queue manager StockQuotes.
AMQ8021: Request to start WebSphere MQ listener accepted.
One MQSC command read.
No commands have a syntax error.
All valid MQSC commands were processed.
exitvalue = 0

Perl is still alive

After going through number of online Perl conference videos, its evident that language still got lot to offer than what people explored so far.

Joining the bandwagon back!!!

Find files on solaris

Find all the files under /u* which are 30 days old and greater than 1gb

find /u* -type f -mtime +30 -size +1024000 | xargs ls -ltr | awk -F" " '{print $5 " "  $9}' | sort -r -n | awk -F" " '{print $2}' | xargs du -h | less

Putty and Plink command line options

Putty can be used as remote ssh client tool.

However today I learn few tricks on it.

It can be used as command line tool to execute script on remote server.

command prompt > putty.exe -t -ssh -l user -pw passwd -m C:\Users\irfan\Documents\run.txt host 

*Replace user, passwd and host with actuals.

Carate run.txt file in your documents directory and enter few commands in it.

In this case I have C:\Users\irfan\Documents\run.txt with date and  ls commands.

Putty command line options

Above command will open putty application, logged into host based on credentials to execute commands from run.txt file.
But it will not return anything back to command prompt.

So what should be I doing to return the output back to command prompt

command prompt > plink.exe -l user -pw passwd -m C:\Users\irfan\Documents\run.txt host 

*Replace user, passwd and host with actuals.

This command will return the output to your command prompt.

Plink command line options