I spend a lot of time helping startups and established companies automate and streamline their approach to managing virtual infrastructure. From this perspective, I’m seeing a growing gap between organizations that are mastering DevOps in the cloud, and those that are stuck in a legacy mindset and falling further and further behind in competitive efficiency.
In this recent post among others I’ve touched on how I see the continuum of DevOps mindsets between “legacy” and “cloud-aware.” Teams with a legacy mindset treat virtual servers like physical servers, while cloud-aware teams are leveraging containers/Docker and managing infrastructure like they manage code-maybe even deploying code and infrastructure together in the cloud.
What keeps many teams stuck in a low-level operations mode is often the challenge of building organizational knowledge and experience. I’ve seen many companies that have chosen Chef or Puppet or Ansible or Salt, etc. based on the recommendation/experience of one person. Others usually learn how to spin up virtual servers or perform other tasks based on automation the “experienced” person has created. This is the “cut-and-paste” stage of cloud migration and implementation. Management of virtual infrastructure is still largely manual, and a strong DevOps culture has yet to take hold.
And we see this all the time: when the “experienced person” leaves they take the core knowledge with them, leaving the team back where they started. A new “experienced person” comes on board, chooses a different tool-or maybe the same tool; it almost doesn’t matter-and restarts the cut-and-paste cycle…
For organizations that have this or similar challenges advancing toward cloud-awareness, it’s a huge win to successfully make the shift from a “legacy” or “cut-and-paste” mindset to what I see as the midpoint in the cloud implementation continuum: the ability to consistently configure and deploy virtual servers using automation. (We created Bitlancer Strings specifically to get organizations to this stage faster.)
Achieving this “configuration management orchestration” mode of operation requires much less of a mindset shift than a leap through the star gate straight to cloud-awareness. In another recent post I drew an analogy between legacy and cloud-aware treatment of servers to how we treat pets versus cattle. Servers at this level of cloud-awareness are like organic cattle. We don’t get too attached to them, but we treat them humanely. Virtual server and application deployment is largely automated, but human intervention is usually needed to heal or reset from server crashes, failures among application components and other problems.
Configuration management orchestration means your team can:
- Automatically launch and manage appropriately configured VMs
- Consistently configure infrastructure with your choice of tool (Puppet, Chef, etc.)
- Define the standards and processes for creating new configurations and modifying existing ones (which is a way to build organizational knowledge and competence)
- (Ideally) centrally manage authorization, authentication and key management
It’s a beautiful thing! Soon I’ll blog about “Puppet-as-a-Service” and how to keep configuration management orchestration simple.
UPDATE: Bitlancer Strings is now open source. For more information, visit Strings Documentation on Github.