In the last chapters, it was often mentioned that especially one thing is important: a simple UI and administration. Since this should be integrated in existing platforms, the platform should offer an API that allows handling these steps. API stands for “Application Programing Interface” and allows system integrators to access the platform via API Calls. The API should basically be independent from the implementing language (e.g. Java, PHP or .NET), what suggests the use of web standards such as ReST or SOAP (Gudgin, et al., 2007), (Fielding, 2000).
Each platform and level (such as SaaS, PaaS and IaaS) might need different API Calls. For Infrastructure as a Service self Service Platforms, the following possibilities should be included:
- Possibility to start/stop Applications. This is abstracted from starting instances as this rather deals with starting/stopping templates. Platforms usually allow to start/stop different instances. Most of the time, we want to start or stop a set of instances. When we focus back at the WordPress example listed above, we have to start a frontend Server, a Database Server and adjust a load balancer. The platform should support to launch templates instead of single instances.
- Possibility to control Applications. The Platform should support a way to control instances in their behavior. This basically means that triggers for elasticity can be set on different parameters such as average CPU Load. The platform may even decide on it’s own how it scales their applications. If this is the case, it is only necessary to set a minimum and maximum instance count.
- Get System Performance Data. Application Administrators usually want to know how their application performs. This Data should also be integrated in existing platforms or even e-mailed to the person that launched a specific application.
- Set Alerts. If the application performs bad, application owners should be informed about this. The platform should allow users to set the way they want to be informed (e.g. by e-mail or by short messages). This should reduce the time to react to an outage or bad performance of the platform.
A major challenge for self Service Platforms is to provide the possibility to ease the way on how applications are delivered to end-users. The IT department should work on providing templates that users can launch. Departments such as the marketing department should not work on launching instances with a specific application on it (such as WordPress or SharePoint) but they should rather launch the application itself without knowing what type of resources are used under the hood. Therefore, it is very important for the IT department to provide easy tools that integrate in existing platforms. If a simple API is provided the platform, this API can either be reused or extended by the IT department.
Header Image Copyright by: Alquiler de Coches