Liberating You From The Cloud
The Getting Started section provides some basic tutorials to help you on your way to learning Idem.
The Developer section provides developer resources, and overview of how to extend Idem, and links to information on how to understand the underlying POP architecture.
Learn Idem is written primarily by the Technical Marketing team for vRealize Automation , but we’d love for you to contribute! There’s an Edit on GitHub link on each page that will take you to the source code for that content - feel free to fork the repository and write your own - we look forward to your Pull Requests!
What does Idempotent mean?
The concept of Idempotent is simple! It just means that every time something is run, it always has the same end result regardless of the state of a system when the run starts!
At first glance this might seem useless, but think more deeply. Have you ever needed to make sure that something was set up in a consistent way? It can be very nice to be able to enforce that setup without worrying about breaking it. Or think about data pipelines, have you ever had input data that needed to be processed? Idempotent systems allow for data to be easily processed in a consistent way, over and over again!
What is Idem?
Using a cloud should not require you to write massive amounts of code
Idem reduces your cloud configuration to data – for you! Instead of Infrastructure as Code, Idem delivers Infrastructure as Data. The cloud becomes simplified, easier to maintain, easier to discover, and easier to use. Be liberated from writing and maintaining that mountain of code!
Idem is the culmination of a decade of research led by the VMware and the SaltStack teams. Idem seeks to solve a vast array of problems present in systems automation. Diving into the weeds of how Idem works opens up significant automation concepts and capabilities. But do not be intimidated! Everything has been designed to present everyone involved with simple, easy to use, and easy to understand concepts. The Idem team feels that the biggest challenge in software design is making software easy to use and learn. This goes for everyone involved, user and developer alike.
This documentation and these tutorials’ goals are to get you moving as fast as possible. In depth explanations are available, but please don’t get too bogged down with them on day 1, we want to get you solving problems, first, get your PhD. in Idem later!
The Big Idea
Idem presents an interface that allows you to work with a cloud - or any API driven system - as data. The maintenance of large scale cloud and api systems has mandated companies to maintain large automation codebases - Idem seeks to remove this overhead from people’s lives. The Idem model allows for a cloud to be scanned and all settings to be converted into raw data in a human readable way. Then it is easy to modify and enforce the state of your cloud using Idem.
Idem can scan your current cloud deployments and generate all of the data needed to enforce it. The ultimate introspection into your cloud is just seconds away! Better yet, the generated data is easier to read than code, and easy to modify! You can also regenerate it at any time. The source of truth for your cloud automation is your cloud.
Take the data in your cloud description and use idem to enforce it. Sending the cloud data back into Idem allows you to use Idem’s powerful idempotent, declarative, concurrent automation engine to create, manage, port, and automate your cloud at breakneck speeds!
Beyond the Cloud
With Idem, the term “Cloud” does not just mean cloud providers like AWS, Azure, and GCP, it means all things SaaS. Idem can describe and enforce sites like GitLab.com. Anything and everything that has an API is fair game for Idem.
This is Just the Beginning
Idem is an open source, Apache Licensed project from the minds of VMware ’s top engineers. The goals of Idem are significant. We are seeking to create a universal cloud automation engine that can be leveraged to drive new ways to automate far more than just cloud infrastructure. We have come together with next generation concepts to allow us to keep up with cloud and API changes faster than anything developed in the past.Get Started