Mayfiles and Dinosaurs – Metamorphosis and Epigenetics in Devops

Well, I guess it had to come to this.  Rob Hirschfeld brought up the wonderfully preposterous notion of puppies growing up to be dinosaurs.  And as a good scientist, and a profound thinker in DevOps, Rob’s statement is based upon his direct observation.  He states that our most beloved pets can become tyrants (Tyrannosaurus Rex, aptly named) in our lives in operations.

Epigenetics

Epigenetics describes the fact that all of our genetic code is not expressed at the same time.  It shows that there are triggers in the environment that force aspects of our genetic code to be quiesced or expressed.  For some species, this leads to metamorphosis, for others, like recent humans in a very typical case: obesity.

Puppies become Dinosaurs? Metamorphosis happens, but it’s not in the DNA.

If you live next to an educational farm and school as I do, you see and hear about metamorphosis all the time. Caterpillars become butterflies, tadpoles become frogs.  We all learn about it, but the amazing thing is that there is NOTHING in the DNA that predisposes a caterpillar to become a butterly.  It happens, but why?  Context, environment.

Attention to Context and Your New Puppy!

When you setup your little puppy server, you enjoyed the actual massive burden on your attention that it took. And if you have a dog, you know that you have to let the puppy suffer a little bit so it learns how to cope with stress and take its place in the pack. You’re keeping in mind the context, which in this case is the development of that puppy into a dog.  You’re establishing yourself as leader of the pack by regulating the amount of attention you give it to create a desirable outcome – a faithful friend, your dog.

It’s the same with your new service.  Get it up and running, teach it to do its job, and very importantly, setup the conditions where it can do it’s job independently, but with transparency.  Setup monitoring in depth for the new system, so you (or your replacement) remains the leader of the pack.

There is nothing inherent in your dog that will determine if it will be a horrible attack dog unable to train, or a fun friend who cooperates with you and is companionable.  Pit Bull Terriers have a bad rap because of many bad trainers.  But what determines this is the context in which it is raised.

Mayflies are just as bad as Dinosaurs

Rob asks us to try to create Mayfiles in our operations. He’s encouraging us to create evanescent machines to support a swarm of service rendering nodes.  What he’s asking us to do, I suspect, is create nodes that are so short lived they barely require our attention.  And if he agrees, I disagree.

“Mayflies and Dinosaurs” are both radical failure modes of inappropriate attention.

I will paraphrase byronm on Rob’s blog comments by saying that the energy required to create mayfly servers actually removing more energy from the system that it produces.  It can take a TREMENDOUS amount of energy and time for “natural selection” to evolve a species.  And I agree with that. We’d be gathering data at too much of a cost. Inter-generational mutation is too high a cost with too many DOA VMs spun up. We have better tools.

Mayfiles are just the golden-image paradigm reborn, often.  A massive energy sink.

Making Metamorphosis Happen

If you already have a puppy that has metamorphosed into a T-Rex, there is a way to metamorphose it back into a companion. deep attention to detail and persistent monitoring.  Where the DNA of a caterpillar actually changes in its expression when in the chrysalis.

Your T-Rex server can be brought into a chrysalis of monitoring and metamorphose into the dog you hoped for.

That also sounds expensive, but this cost is either paid now, or up front when training a puppy.  But the benefit of a robust and well articulated monitoring system applies to ALL your dogs, and when applied appropriately to puppies, creates great dogs!  The genetic aspects unleashed that had surprised you before are no longer a problem, because the context and conditions that give rise to them are now well under your purview.

Managing with Epigenetics

In my next blog post, I’ll be talking about how smart use of the fundamental design principles of Crowbar2 help you manage the whole lifecycle of your workload nodes, and prevent BOTH the energy loss from depending upon inter-generational mutation AND the runaway power of the unobserved system.

Thanks for reading!  I look forward to your musings!

2 thoughts on “Mayfiles and Dinosaurs – Metamorphosis and Epigenetics in Devops

  1. I think you are reading something into this that I did not intend. The point of mayflies is to require automated configuration, not simply add churn for the sake of churn. The goal here is to have an application that always had a repeatable SYSTEM configuration process.

    The goal is durability – we create the requirement of durability by introducing some stress into the environment. In that sense, it is evolutionary (since weak processes should die quickly).

    Is there some concern here that I’m missing? A weekly server create/destroy is simply not that expensive especially given most applications have cyclical loads.

  2. Thanks very much for the reply, Rob.

    The concern that I’m highlighting is the “lives one day” idea that is implicit in “Mayfly” doesn’t contribute to durability, on its own. “Lives one day” is a radical extention of the notions we’re working with, and I’m pointing to the practices that are overlooked by relying on the “set it and forget it” mentality. I’m trying to highlight “proper attention,” i.e. monitoring, documentation, modeling, composability, etc. And it will soon evoke your insight into Simulated Annealing.

    While SYSTEMS need to be robust to handle node outages, and nodes should be able to wink out of existence and not threaten the system, the point I’m trying to sharpen here is that automated configuration within a node DOES prolong its life, DOES create more durable, robust, flexible and healthy system AND nodes, and can even radically transform it – metamorphosis. My next post is about how Attribute Injection AND Agent Awareness can be used together to morph nodes. Simulated Annealing is a big part of that.

    Simulated Annealing is about trust. And the right trust leads to exceptional durability.

    Thanks again!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s