Have you ever had problems working with a data intensive application?
If so, you’ll know that the difficulty comes from having to unavoidably deal with various failures. So what do you do? Many people have found success by designing software to never fail. But there are a few things you should know before you buy and implement a solution in order to ensure your software is actually resilient to failures of the hosting environment. This post will tell you what you need to know to make sure you select a much more viable strategy to make your applications reliable and will let you properly test applications both during development and after deployment. Within the DICE project, a Fault Injection Tool (FIT) has been developed to help achieve exactly that.
If you’re looking for a way to generate faults within Virtual Machines and at the Cloud Provider Level, the FIT is a great fit. This will allow cloud platform owners/Application VM owners a means to test the resiliency of a cloud installation and applications by using the FIT. The FIT allows:
- application designers to use testing to show where to “harden” their application before it reaches a commercial environment
- user/application owners to test and understand their application design/deployment in the event of a cloud failure or outage.
- mitigation of risk in advance of a cloud based deployment.
- developers and cloud operators to simplify testing within the DevOps paradigm for their customers.
In addition the design and development of the DICE FIT is modular in nature, which allows the replacement of any function that injects faults as well as the ability to extend the tool as required. Further, the FIT downloads, installs and configures only what is required at the time, meaning no unnecessary tools or dependences are installed.
Now that you understand the DICE approach (in the diagram above), you’re ready to develop using a quality driven DevOps approach to build and test your application to withstand failing parts of the infrastructure or misbehaving services.
Craig Sheridan, FLEXI