Unit 4 Aneka in Cloud Computing
Unit 4 Aneka in Cloud Computing
Aneka includes an extensible set of APIs associated with programming models like
MapReduce.
These APIs support different cloud models like a private, public, hybrid Cloud.
o Multiple Structures:
o Aneka is a software platform for developing cloud computing applications.
o In Aneka, cloud applications are executed.
o Aneka is a pure PaaS solution for cloud computing.
o Aneka is a cloud middleware product.
o Manya can be deployed over a network of computers, a multicore server, a data
center, a virtual cloud infrastructure, or a combination thereof.
o Textile services
o Foundation Services
o Application Services
1. Textile Services:
Fabric Services defines the lowest level of the software stack that represents multiple
containers. They provide access to resource-provisioning subsystems and monitoring
features implemented in many.
2. Foundation Services:
Fabric Services are the core services of Manya Cloud and define the infrastructure
management features of the system. Foundation services are concerned with the
logical management of a distributed system built on top of the infrastructure and
provide ancillary services for delivering applications.
3. Application Services:
Application services manage the execution of applications and constitute a layer that
varies according to the specific programming model used to develop distributed
applications on top of Aneka.
And
A runtime engine and platform for managing the deployment and execution of
applications on a private or public cloud.
One of the notable features of Aneka Pass is to support the provision of private cloud
resources from desktop, cluster to a virtual data center using VMware, Citrix Zen
Server, and public cloud resources such as Windows Azure, Amazon EC2,
and GoGrid cloud service.
Architecture of Aneka
Aneka is a platform and framework for developing distributed applications on the
Cloud. It uses desktop PCs on-demand and CPU cycles in addition to a heterogeneous
network of servers or datacenters. Aneka provides a rich set of APIs for developers to
transparently exploit such resources and express the business logic of applications
using preferred programming abstractions.
System administrators can leverage a collection of tools to monitor and control the
deployed infrastructure. It can be a public cloud available to anyone via the Internet or
a private cloud formed by nodes with restricted access.
One of the key features of Aneka is its ability to provide a variety of ways to express
distributed applications by offering different programming models; Execution services
are mostly concerned with providing middleware with the implementation of these
models. Additional services such as persistence and security are inverse to the whole
stack of services hosted by the container.
At the application level, a set of different components and tools are provided to
Here are some key aspects of Aneka based on information available up to my last
update:
1. Overview:
2. Features:
3. Cloud Integration:
Cloud Agnostic: Aneka is designed to be cloud-agnostic, meaning it can work with
different cloud providers. It abstracts the underlying cloud infrastructure, allowing
applications to be deployed across various cloud environments.
Auto-Scaling: The framework may support auto-scaling features, allowing
applications to dynamically adjust the number of resources based on demand.
4. Programming Models:
Task Parallelism: Aneka is often used for applications that can be parallelized into
tasks, which can be distributed and executed across multiple nodes.
MapReduce: Some cloud application platforms, including Aneka, may support a
MapReduce programming model for processing large datasets in parallel.
5. Use Cases:
Scientific Computing: Aneka has been used in scientific computing scenarios where
parallel processing is required for simulations, data analysis, or other compute-
intensive tasks.
Enterprise Applications: It can be employed for scalable execution of enterprise
applications that can benefit from distributed computing.
Resource Monitoring: Aneka may include tools for monitoring resource usage,
allowing administrators to track the performance of distributed applications.
Task Scheduling: The framework may provide task scheduling mechanisms to
optimize the allocation of tasks to available resources.
Aneka itself does not have a specific concept of containers like Docker containers or
Kubernetes pods. Instead, Aneka is more focused on providing a middleware
platform for deploying and managing distributed applications on cloud
infrastructures. However, I can provide a general understanding of the anatomy of
containers in the context of cloud computing.
1. Container Image:
2. Container Runtime:
Docker Engine (or equivalent): The container runtime is responsible for running
and managing containers. Docker is a widely used container runtime, but there are
others like containerd or rkt.
3. Container Orchestration:
4. Container Registry:
Docker Hub, Google Container Registry, etc.: Container images are stored in
container registries. These registries provide versioning, distribution, and sharing of
container images.
6. Networking:
Container Network Interface (CNI): CNI plugins manage the network connections
between containers, allowing them to communicate with each other and external
services.
7. Storage:
Namespaces and Cgroups: Linux namespaces and control groups (cgroups) provide
process and resource isolation for containers.
Logging: Containers produce logs that need to be collected and analyzed for
troubleshooting and monitoring.
Monitoring: Tools like Prometheus or Grafana are commonly used for monitoring
containerized environments.
12. Scaling:
Keep in mind that the specifics can vary based on the containerization technology
(e.g., Docker, containerd) and the container orchestration system (e.g., Kubernetes,
Docker Swarm) being used. If there have been updates or changes to Aneka's
features or capabilities related to containers since my last update, I recommend
checking the official Aneka documentation or release notes for the most accurate
and current information.
Foundation Services
Application Services
Fabric Services
The Aneka container is represented by fabric services, the lowest level of the
software stack. They offer access to Aneka's resource provisioning subsystem and
the monitoring facilities. Fabric services are used in a heartbeat, monitoring, and
reporting services.
Foundation Services
Fabric services are the foundational services of the Aneka cloud, defining the
system's core infrastructure management capabilities. Foundation services are
responsible for the logical management of the distributed system constructed on top
of the infrastructure and providing support services for distributed application
execution. Foundation services are used in accounting, billing, and resource pricing.
Application Services
Application services are a layer that manages the execution of applications and
differentiates itself based on the programming model used to construct distributed
apps on top of Aneka. Application services are used in performance monitoring,
execution failure management, etc.
Infrastructure Organization:
The goal of this article is to help you understand what each of the services comprises. We’ll also
highlight each cloud's benefits, so you know which model best suits your company’s needs.
Public Cloud
This is the most popular cloud computing model. It refers to computing services where the third
party vendors make the resources available to everyone and all businesses through the internet.
These resources may be anything from virtual machines to storage capabilities, infrastructure,
and servers.
In a public cloud, multiple companies share single hardware that is owned and operated by the
vendor. The third-party provider is also responsible for availing the resources to the users
according to their needs. A few of the well-known public cloud service providers include Microsoft
Azure, Amazon Elastic Compute Cloud, Google AppEngine, Blue Cloud (IBM), and Sun Cloud.
Private Cloud
A private cloud is also known as a corporate or internal cloud. Unlike in a public cloud where the
services are readily available to anyone who wants to use them, a private cloud creates an
environment that is solely engineered for the end-user. That’s to say that the underlying IT
infrastructure is exclusively designed for a single customer, and it's isolated from other potential
users.
Private cloud computing services come in two flavors from a management point of view. If you
have the resources, you may choose to staff, manage, and maintain the underlying
infrastructure. However, if the IT department is understaffed or underskilled, there's an option to
have your private cloud managed by a third party.
A private cloud approach may be the solution for an IT team that wants to make the available
resources on-demand but is reluctant to move to the public cloud due to compliance regulations
and established policies. Businesses in the healthcare and banking industry, for instance,
combine private cloud deployment with firewalls and encryption protocols to enhance their data
security strategies.
Examples of private cloud in cloud computing include Ubuntu, Microsoft, HP Data Centers, and
Elastra-private cloud.
Hybrid Cloud
A hybrid cloud is a computing approach that mixes public and private cloud services with on-
premises infrastructure to create a single working environment. Such an IT environment also
requires orchestration software for effective communication between the services.
In a hybrid cloud model approach, the IT team deploys its workloads in a public or private cloud
and uses the orchestration tool to switch between the 2 work areas depending on cost and
computing needs.
Hybrid and multi-cloud environments should not be confused. The most significant difference
between these 2 is that a multi-cloud working area combines several public cloud services but
does not involve on-premises or private cloud services.
Cloud Programming