What does DevOps or the Ops team do?

TLDR;

Automate all the things, and stop things going wrong.

Automation:

Create tools and services to automate all aspects of IT and Development infrastructure. Automate the builds of new servers, the monitoring (checking stuff does what it is supposed to do), and any useful tools in between.

Tools:

My team often write tools that allow the building of an entire environment (such as UAT) at the touch of a button. The idea is the developer wants to test some new function or bug fix without effecting the rest of the team. Easy (you might build it locally on your laptop with Vagrant or similar) unless you want to integrate the test with other company systems, such as a back end store which runs the reports, or billing programs for instance.
Fortunately with some other tools that all ready exist, such as AWS API and puppet, our team can create a configuration file (or two) and give you the option of creating your test environment and destroy it afterwards (the cloud flexibility that means you don't pay for what you don't use), at the touch of a button, on the screen.

Monitoring:

Graphs and statistics are important for any server environment to know when you are testing the limits of the capacity. You need to know stuff like disk space used, memory used, requests for data from your app, so you can quickly find where bottlenecks and performance limits may be found. And while these things are monitored for statistics, a couple of extra tools can provide automatic scaling (adding or removing servers from a cluster or load balance group), self healing (build a new server if a previous one dies or crashes) and alerting for when the tool to auto recover isn't written yet and you need an actual engineer to check it out.

If this sounds like something you would like to find more about, contact us here

 

(Read more...)

How to break into Devops

Cloud academy are offering a course for Free that might help.

Ask me how I moved into DevOps.

 

https://cloudacademy.com/cloud-computing/introduction-to-devops-course/

 

(Read more...)

Gotchas with Bash programming

Working with Linux servers and automating tasks requires the use of bash programming. This is quite an old language if you compare it to 'modern' languages such as ruby.

As such it has some very unfriendly ways. One of which bit me today.
One of the scripts purges old snapshot on AWS.

Bash tries to be helpful by file globbing and word splitting. This caused some undesired effects.

Fortunately, thanks to Greg's Wiki the fix is quite easy. use quotes.

snap_data=$(/home/ec2/bin/ec2-describe-snapshots $snapshot_id_evaluated --region $AWS_REGION)
snap_description=$(echo "$snap_data" | grep complete | awk '{print $9}')
snap_creation_date=$(echo "$snap_data" | grep complete | awk '{print $5}')
purge_after_fe=$(echo "$snap_data" | grep ^TAG.*PurgeAfterFE | cut -f 5)

Thanks

(Read more...)

Are lawyers deprecated?

We all know our identity is important. However sometimes, when your label (name) is the same or similar to someone else it can cause problems. I see and hear this problem daily as a project I recently worked on had three Neils in the team. Of course we have surnames too. That is the differentiating factor.
Imagine the shock to the world when lawyers get involved in protecting a name. All sorts of fun can ensue and my opinion is that unless it could easily be confused then there is no issue.
I refer to the NPM shock that devastated a number of websites and applications this week.

Read all about the JavaScript NPM module here. https://medium.com/@azerbike/i-ve-just-liberated-my-modules-9045c06be67c

 

(Read more...)

aws ec2 tools version

I've been coding a puppet module to install/update the aws EC2 tools on centos.

These are already installed on Amazon Linux servers, and as it happens, on the core AMI used by the business.

The trouble I had was determining the version of the tools that was installed if any. This led to some frustration as the newer features such as
ec2-copy-snapshot --encrypted

are not present in the previous versions of the tools.

well I was very pleased with myself when i found a command to run that told me the version.

ec2-cmd ShowVersion

Certainly not following the standard of --version or similar, but there is it.

The version (as of Feb 2016) is 1.7.5.1 and latest is available here.

EC2 Command Line Tools

(Read more...)