Welcome to my professional page of learning experiences and sandbox projects.  Checkout CallFire if you have an interest in cloud telephony services and what it can do for you.

Current Technology Stack

Provision Bare Metal
* Cobbler

Linux Disro
* CentOS

Configuration Management and Orchestration
* Ansible

Monitor & Alerts
* Pingdom
* PagerDuty
* Zabbix
* Logstash

Platform Support
* Java
* Tomcat
* Python

What is DevOps

posted Apr 11, 2015, 4:43 PM by James Nguyễn   [ updated Apr 11, 2015, 6:08 PM ]

First and foremost, there is no hard rule on DevOps. There are and should not be any official positions for DevOps because it is difficult at best to quantify. This is my interpretation derived purely on experience. To give full disclosure, my background is in the following areas of specialization:

* Systems (since 1994)
  - Windows 3.1 up to Windows Server 2002
  - Solaris up till it was sold to Oracle
  - AIX
  - SCO
  - Novell
  - Linux (Slackware, Redhat/CentOS/Fedora, Mandrake, Gentoo, Debian/Ubuntu)
  - Mac only during my lost years ;)
* Infrastructure (since 1996)
  - Cisco
  - Bind
  - Sendmail
  - Central Syslog
  - Httpd
  - MySQL
  - IBM DB2
  - Oracle 9i
  - Redhat Jboss
  - IBM Websphere
  - IBM Portal Server
  - BEA WebLogic
  - Apache Tomcat
  - OpenLDAP
  - 389 Directory Server
  - IBM Directory Server
  - Sun One Directory Server
  - GlusterFS
  - DRBD
  - NFS
  - iSCSI
  - Netapps Filers
  - EMC Isilon
  - VMware
  - Xen
  - KVM
  - Virtualbox
* Developer (since 1996)
  - Pascal
  - MS Visual Basic with Win32 API DLL
  - C
  - Perl
  - C++
  - Java
  - PHP
  - Python
* QA (experience from early intern days at IBM)
  - Mercury Load Tester
* Software and Systems Architect (since 2004)
  - UML
  - Model driven architecture
  - Frameworks (MVC, IoC, Struts, Pico, Spring, J2EE, EJB, JAAS, Hibernate)
  - Created Java Design Decisions for global Nissan development projects
  - Reviewed code deliverables from vendors and internal teams for compliance with design decisions
  - Trained teams on software and systems industry best practices
* Design/UX (since 1996 always has been a side hobby with some HCI background in simplicity and logical navigation)
  - Illustrator
  - Photoshop
  - Dreamweaver
  - Flash
  - Gimp
  - 3D Studio
  - Premier

To me DevOps is a discipline of controlled A.D.D. What that means is you are well versed enough in various disciplines of the same industry or field. Yet, you can also focus particular experiences into your single task at hand. You would rate yourself near average or above average in these areas so that given a random task, you can work independent at solving solving the task at hand. You need very little hand holding because of the breadth of experience you can draw upon. You are completely open-minded to new technologies, yet also able to recognize when it's just a reinvention of the dated past technologies. 

At no point will you find a DevOps asking the following questions:
* Where are the logs for ...?
* How do I login into server ...?
* What is an application server?
* What is running on ...?
* How do I see what process is eating up memory?
* How do I use ...?
* Is this down or is it working?
* What is MVC?
* What are frameworks?
* How do I add a user onto so and so?

If you do, you've got a long ways to go before I'd call you a DevOps Engineer. I would also attribute passion and drive to being a great DevOps. The strive to constantly learn. You don't work to count the hours that past. Google the heck out of your curiosity until there's no more search results, before going to a person of experience and hitting them up for information. I would also grab and purchase all the timeless books that provide sound fundamentals. Without that due diligence, you will never remember what piece of advice or guidance someone has just bestowed upon you. You may take great notes at best, but the pain and struggle is how you get that piece of information ingrained deep in your head.

Service Oriented Architecture

posted Apr 11, 2015, 4:41 PM by James Nguyễn

Benefits of SOA in today's SaaS deployments:

* loosely coupled services
* compartmentalized roles
* easy to test
* easy to deploy
* higher uptime
* highly scalable
* functional focused teams
* naturally provides innate defensive programming (robust in nature)

Infrastructure Tool Chains

posted Feb 21, 2011, 11:10 AM by James Nguyễn   [ updated Feb 21, 2011, 11:14 AM ]

This is my current stack of tools use to create and manage our current infrastructure @CallFire.



Command and Control



posted Jan 22, 2011, 12:19 AM by James Nguyễn

So now I have the provisioning, configuration, and command management stack completed.  Next will be the management of appliances and resources in our private/public cloud infrastructure.  This will allow dynamic creation and tear down of resources on demand.  We then will have the ability to scale out during peak hours and shutdown during conservative hours saving our monthly bill.  If we design our solution to allow the use of public clouds (high latency) then it will further cut down the cost of purchasing and maintaining hardware, leaving us with fewer machines at the core of the business.

Cobbler + Puppet

posted May 18, 2010, 3:54 PM by James Nguyễn

So the integration of cobbler with puppet is now complete.  I must say cobbler makes for provisioning baremetals much easier and compliments puppet quite well.  So what's next after attacking the provisioning and configuration tiers?  Well, there's the command and control tier.  Keep in mind every tier can be managed in puppet, but I believe there should be specialized tiers to provide more convenient approaches to the special tasks at hand.

As such, I'll be working to get another project called Func integrated into the mix.  Then we can start to look into Spacewalk for system management and inventorying.

Added a provisioning pattern

posted Mar 14, 2010, 2:58 PM by James Nguyễn

I just added a note for highly scalable puppet provisioning piggy backing over git distributed repository model.  Git's built in workflow greatly benefits the puppet hub and spoke pattern, solving the missing piece to puppet's scaling issues with it's out of the box web brick.

mini blog

posted Nov 17, 2009, 10:37 AM by James Nguyễn

guess you can use sites to post mini blogs as well.  this looks to be a pretty useful service yet again that google provides.  you guys rock!

1-7 of 7