Preface
OneOps is complex yet easy to use PaaS Application Lifecycle Management software built by Walmart Labs, which is owned by Walmart. Walmart uses OneOps to manage its e-commerce infrastructure sites, such as walmart.com and Sam's Club. However, before switching to OneOps any updates to Walmart's infrastructure were huge tasks and required complex planning and execution. Updates were done every two months, required hundreds of manual steps and considerable resources, and left a lot of room for errors. This also made testing quite difficult. This is common scenario in a lot of organizations where legacy products can run and become bloated and monolithic to the point of being unmanageable. Organizations become complacent and are either afraid of or are resistant to change, opting instead to maintain the status quo, most of the time at a terrible cost to productivity. This all started to change with the advent of DevOps. While DevOps is about fostering a cooperative culture among teams, it begins by giving increased control to developers over their own applications. DevOps is also about enabling rapid changes across all environments at the speed of development. Walmart used OneOps to implement the DevOps paradigm, allowing them to move from their monolithic bi-monthly deployments to rapidly evolving 1000 deployments per day across their global e-commerce infrastructure. OneOps abstracts the underlying cloud infrastructure from the developers irrespective of the tools and technologies they use. OneOps also allows developers to define their application along with the infrastructure requirements in a easy to use generic GUI, which it then translates to whichever cloud the application gets deployed to. This avoids being locked in to a cloud vendor, allowing companies to benefit from having redundancies for their applications and to also benefit from competitive cloud vendor technologies and pricing. OneOps also provides services such as monitoring, auto-scaling, and auto-repair for deployed applications. And best of all, it's available for free under open source.
In this book, we will explore the practical aspects of OneOps from the point of view of a DevOps engineer. Irrespective of whether you have been asked to evaluate OneOps as a potential technology to implement as an abstraction on your cloud infrastructure or if you are doing a enterprise deployment of OneOps, you will find something useful in this book. We will start with the basics such as various ways of installing a test installation of OneOps. We will then look at the architecture of OneOps and the various components that comprise the backend. We will then see how to create and deploy and assembly. We will also look at a few practical deployment scenarios. By the end of the book you should not only understand how to install and configure OneOps, but also be comfortable with the architecture and various components of OneOps. You will also learn advanced tasks, such as how to add new components to OneOps, how to add unsupported and custom clouds, and how to interact with OneOps using the REST API.