One of the significant advantages of cloud computing is its elasticity, which allows resources, services, and applications to automatically scale based on demand and quality of service requirements. Aneka, as a Platform-as-a-Service (PaaS) solution, offers multiple programming models for building distributed applications and provides seamless and dynamic resource provisioning capabilities.
The resource provisioning framework in Aneka enables applications managed by the Aneka container to be mapped dynamically to heterogeneous resources that can expand or shrink based on the application's needs. This elasticity is achieved through the services built into the Aneka fabric layer.
In a typical scenario involving private and public clouds (as depicted in Figure above), a medium or large enterprise combines privately owned resources with publicly rented resources to scale up the resource capacity dynamically. Private resources refer to computing and storage elements within the organization's premises that adhere to internal security and administrative policies. Aneka identifies two types of private resources: static and dynamic resources.
Public resources, located outside the enterprise's boundaries, are provisioned through service-level agreements with external providers. They can be categorized as on-demand or reserved resources. On-demand resources are dynamically provisioned by resource pools for a specific duration (e.g., an hour) without any long-term commitments, and payment is based on a pay-as-you-go model. Reserved resources, on the other hand, are provisioned in advance with a one-time fee and are suitable for long-term usage. Reserved resources are similar to static resources, and the resource provisioning service does not require automation for their management.
Once resources join the Aneka cloud, they are managed uniformly, regardless of whether they are statically configured or dynamically provisioned. Standard operations performed on statically configured nodes can be applied transparently to dynamic virtual instances. Operations specific to dynamic resources, such as joining and leaving the cloud, are handled as node connections and disconnections, abstracted by the Aneka container's indirection layer that hides the underlying hosting machine's specifics.
Comments