
 
applications development, including software 
developer kit, message brokering system and 
browser support. For a developer, a Mjolnirr 
application is represented as a collection of 
independent components communicating by 
message passing. This approach allows to develop 
flexible and scalable cloud applications. 
Mjolnirr also provides integration with the 
UNICORE grid environment (Streit, 2009) through 
the DiVTB (Radchenko and Hudyakova, 2013) 
platform. The DiVTB (Distributed Virtual Test Bed) 
platform provides a task-oriented approach for 
solving specific classes of problems in computer-
aided engineering through resources supplied by 
grid computing environments. Thus, Mjolnirr can be 
used both to provide infrastructure for scientific 
projects with the grid systems and in a business 
infrastructure. 
During our research, we should: 
1.  analyse technologies of private cloud platforms 
development; 
2.  develop Mjolnirr platform architecture; 
3.  implement Mjolnirr platform; 
4.  evaluate the performance and scalability of the 
Mjolnirr platform. 
3 ANALYSIS OF EXISTING 
SOLUTIONS 
An investigation shows that C-level executives and 
IT managers in enterprise companies have concerns 
with integration of cloud computing in their data 
processing (Avanade.com, 2014). One of the most 
serious concerns is the possibility of data breaches. 
A cloud provider can give access to the company’s 
private data (accidentally or intentionally) or may 
bring harm to the data owner.  
It is possible to use the encryption of data stored 
in the cloud, but this is effective only when cloud is 
used only for storage. If the data is processed in the 
cloud, it become available decrypted in the memory 
of the host, where the processing occurs. In addition 
to this drawback, the owner of the data does not 
control the location of his virtual machine, so it can 
be moved to the physical computer with the virtual 
machine that contains malware. It means that they 
will have the same IP address. It may cause the 
block of the virtual machine or forfeiture of 
computer containing these virtual machines. 
Nowadays, there are two ways to ensure the data 
security in the cloud. The first way is called “trusted 
computing”. It ensures security of virtual machines 
in the cloud (Christodorescu et al., 2009). But user 
data cannot be completely safe. In IaaS clouds, the 
virtual machine can be moved to the other host, but 
the concept of trusted computing provides security 
only for virtual machines running on the same host. 
Otherwise, the concept of Trusted Cloud Computing 
Platform (Garfinkel et al., 2003) solves this problem 
by creating the safe environment for running virtual 
machines. But neither of these approaches solves the 
problem of VMs placement on the same host with a 
malicious VM. 
Another way to deal with the security issue is to 
deploy the cloud infrastructure on the private 
hardware. But buying and maintaining of the 
hardware is more expensive than rent of computing 
resources. 
The simplest way is to create a private cloud 
system, and there are several different platform 
(PaaS) solutions existing in this area. 
Yandex Cocaine and AppFog platforms provide 
the ability to create private PaaS solutions based on 
application containers (Api.yandex.com, 2014; 
AppFog, 2013). These platforms allow creation 
Heroku-like application hosting. They provide a 
number of built-in modules and a server 
infrastructure. Stackato (Activestate.com, 2014) 
shows all advantages of the already mentioned 
solutions and provide local application store. 
However, all of the above solutions consider custom 
applications as a monolith and ignore its internal 
structure, that’s why it is not possible to 
automatically and effectively balance the load on the 
individual subsystems applications. In addition to 
this drawback, none of these solutions considers 
end-user workstations as computing resources 
providers. 
We decided to create a Mjolnirr cloud platform, 
which solves these problems as follows: 
1.  Cost reduction will be provided by using popular 
open source libraries and programming 
languages, as well as the opportunity to work not 
only on the server platform, but also on the 
personal computers, using idling resources of the 
computer system. 
2.  Ease of application development will be 
provided by using popular programming 
languages, developer tools and SDK. 
3.  Integration of new resources ease will be 
provided by the application architecture 
modularity and custom components reusability.
 
 
 
 
CLOSER2014-4thInternationalConferenceonCloudComputingandServicesScience
446