I occasionally watch rally car racing, and if you haven’t seen it before its worth a watch. Guys drive small cars very fast down dirt roads, and while this is going on a passenger is reading driving notes to the driver.
I decided to install Ubuntu 12.04 in Virtual Box. Java doesn't seem to work out of the box, at least for applets. So I installed Oracle Java JRE for Linux.
Following is a list of commands I use for day to day system debugging. These are very generic commands, they do not assume any understanding of what the server is running.
JFrog provides a screencast on using Artifactory as YUM repository.
In this video, Amazon Web Services talks to David Rocamora, VP of Dev-Ops for Controlgroup, about DevOps, auditable infrastructure, and cloud computing.
The cowboy developer adds unplanned features, commits code past the code freeze and generally works outside the control structures that management has put in place to keep development manageable. However, one man’s emergency release is another man’s continuous delivery.
With so many tools, techniques, and industry trends crossing over into the mainstream, 2012 is shaping up to be one of the most interesting years in software development in a long while. The landscape is literally changing underneath us developers at the moment.
It occurs to me that in scalable systems engineering (the sort of thing I do for a living), you only tend to see Bi-fan networks and Bi-parallel ones.
This video explores DevOps best practices with cross-platform mobile apps.
My company is hiring, and I’ve been thinking a lot more about what types of question are appropriate for a phone interview, but still give enough detail to lead me to a conclusion as to whether I think the person on the other end is competent.
Sometimes while testing you may want to be able to simulate network latency, or packet loss, or low bandwidth. I have done this with Linux and tc/netem as well as with Shunra on Windows, but I had never done it on Mac OSX.
When you are running long term applications like web applications, it is good to know some statistics about them, like number of requests served, request durations, or the number active requests.
This post explores using the Munin ip_ plugin to monitor traffic to and from particular hosts using iptables.
A few weeks ago I was reading through the chef documentaion and I came across the page “Just Enough Ruby for Chef.” This inspired me to put together a quick article on how much Linux a developer needs to know.
Stopping or delaying the majority of trains (and thousands of people) for days isn't the best advertising for large releases.
DevOps stems from the idea that developers and operations should work more closely together – communicating, knowledge sharing, and collaborating to increase the quality of the systems that we build and operate.
Rsync has a simple protocol that replicates a directory (one or more) on a single server to other servers. This can be achieved in two different methods...
It’s in vogue right now to claim that there’s no such thing as a DevOps team or warn about certain kinds of teams that brand themselves DevOps but are not. Jez Humble’s doing it. Patrick Debois has made similar noises in the past.
In case you missed them last week, here's a roundup of noteworthy IT ops links, including Firefox's new approach to page load, 61 countries that can't be easily cut off from the web, and a hack that leverages Amazon's Silk browser for backdoor cloud computing.
While I’m collecting Devops Protocols which highlight healthy patterns in your organization, let’s take a quick look at the opposite: Devops anti-patterns. Would you be able to spot the warning signs when your team starts to slip in the wrong direction?
I’ve spent most of the last decade working on problems in build, deployment and release management. While automation has been a focus of mine, the hard part in these domains have always been around dependency management.
I get easily tired of doing the same thing over and over again, and will, wherever possible, script or automate it to make life easier for myself. This could be in the form of a lightweight webapp/REST api for stuff, or in this case, I used Jenkins.
Enter the real world: Your network is disconnected. DNS goes downs. Your HTTP hooks and downloads stall. Interprocess communication hangs. Here is an example how to create timeouts and notifications in a shell script.
An outstanding issue is how to get changed config data (JSON) to the nodes in a production stack that need it. Here's a brain-dump of the choices, without mentioning specific languages.
We figured that we could learn a thing or two about continuous delivery from Facebook, so we reached out to Chuck Rossi, Facebook’s first release engineer and the head of their release engineering team.