storage management in private cloud
TRANSCRIPT
-
8/11/2019 Storage Management in Private Cloud
1/63
An Implementation of Storage Management inPrivate Cloud
PROJECT REPORT
Submitted in partial ful f i llment for the award of the degree of
MS
I n
Software Engineering
By
MKS SRI HARISH 10mse0116
VENGAT SUDHEENDRA 10mse0337
Under the Guidance of
PROF M LAWANYA SHRI
VITU N I V E R S I T Y
(Estd. u/s 3 of UGC Act 1956)
School of Information Technology & Engineering [SITE]
SOFTWARE ENGINEERING DIVISION
NOV 2013
-
8/11/2019 Storage Management in Private Cloud
2/63
DECLARATION BY THE CANDIDATE
We hereby declare that the project report entitled An Implementation of
Storage Management in Private Cloud submitted by us to Vellore
Institute of Technology, Vellore in partial fulfillment of the requirement for
the award of the degree of M.S.(Software Engineering) is a record of
bonafide project work carried out by us under the guidance of Prof. M
LAWANYA SHRI. We further declare that the work reported in this
project has not been submitted and will not be submitted, either in part or in
full, for the award of any other degree or diploma in this institute or any
other institute or university.
Place: VelloreDate:
Signature of the Candidates
M.K.S.SRIHARISH, 10mse0116
VENGAT SUDHEENDRA, 10mse0337
-
8/11/2019 Storage Management in Private Cloud
3/63
VITU N I V E R S I T Y
(Estd. u/s 3 of UGC Act 1956)
School of Information Technology & Engineering [SITE]
SOFTWARE ENGINEERING DIVISION
CERTIFICATE
This is to certify that the project report entitled An Implementation of
Storage Management in Private Cloud submitted by MKS SRI
HARISH (10mse0116) and VENGAT SUDHEENDRA (10mse0337) toVellore Institute of Technology, Vellore in partial fulfillment of the
requirement for the award of the degree of M.S.(Software Engineering)is
a record of bonafide work carried out by him/her under my guidance. The
project fulfills the requirements as per the regulations of this Institute and in
my opinion meets the necessary standards for submission. The contents of
this report have not been submitted and will not be submitted either in part
or in full, for the award of any other degree or diploma in this institute or
any other institute or university.
Prof. M LAWANYA SHRI
GUIDE
ASST.PROF, SITE
Internal Examiner (s) External Examiner (s)
-
8/11/2019 Storage Management in Private Cloud
4/63
CERTIFICATE BY THE EXTERNAL GUIDE
This is to certify that the project report entitled Implementation of
storage management using private cloud submitted by MKS Sriharish(10mse0116) and Vengat Sudheendra(10mse0337) to VelloreInstitute of Technology University, Vellore in partial fulfillment ofthe requirement for the award of the degree MS in SoftwareEngineering is a record of bonafide work carried out by him/her undermy guidance. The project fulfills the requirements as per theregulations of this Institute and in my opinion meets the necessarystandards for submission. The contents of this report have not been
submitted and will not be submitted either in part or in full, for theaward of any other degree or diploma in this institute or any otherinstitute or university.
EXTERNAL SUPERVISOR
-
8/11/2019 Storage Management in Private Cloud
5/63
ACKNOWLEDGEMENT
We would like to thank the chancellor of Vellore Institute of Technology
University, Dr. G. Viswanathan,for giving us the opportunity to pursue M.S Software
Engineering.
We would like to thank the Director of School of Information Technology and
Engineering Dr. R.Saravanan.
We would also like to thank our Program Manager of M.S Software Engineering,
Prof Jayaram Reddyfor giving us adequate guidance to carry out our project.
We would also like to thank our year coordinator of M.S Software Engineering,
Prof Manikandanfor giving us adequate support and guidance to carry out our project.
We would like to extend our sincere thanks to Prof. M Lawanya Shri our
internal guide for her timely help and support and for guiding us to complete the project
successfully.
Place : Vellore
Date :M.K.S. SRIHARISH
VENGAT SUDHEENDRA
-
8/11/2019 Storage Management in Private Cloud
6/63
Table of Contents
Chapter No Title Page No
ABSTRACT i
LIST OF TABLES iii
LIST OF FIGURES Iv
LIST OF SYMBOLS v
1. INTRODUCTION 1
1.1 OVERVIEW 1
1.2 PURPOSE 2
1.3 SCOPE 2
1.4 OBJECTIVE 2
2. PROBLEM ANALYSIS 3
2.1 ABSTRACT 3
2.2 DEFINITION OF CONCEPTS 42.3 LITERATURE REVIEW 8
3 DESIGN AND ARCHITECTURE 14
3.1 EUCALYPTUS ARCHITECTURE 14
3.2 CLASS DIAGRAM 16
3.3 USE CASE DIAGRAM 17
3.4 ACTIVITY DIAGRAM 18
3.5 SEQUENCE DIAGRAM 19
3.6 EXPERIMENT SET UP 20
4 IMPLEMENTATION 30
4.1 METHODOLOGY USED 30
4.2 IMPLEMENTATION OF THE SYSTEM 314.3 TESTING 41
5 CONCLUSION AND FUTURE WORK 50
5.1 CONCLUSION 50
5.2 FUTURE WORK 51
6 REFERENCES 52
-
8/11/2019 Storage Management in Private Cloud
7/63
i
Abstract
Private cloudis the phrase used to describe a cloud computing
platform that is implemented within the corporate firewall, under thecontrol of the IT department. Organizations in every industry, regardlessof size or geography are embracing cloud computing as a way to reducethe complexity and costs associated with traditional IT approaches. Thereality is driven by three related shifts. Customer, employee and partnerexpectations are changing as self- service consumption of technologyand services becomes the norm. The economics of computing arechanging as organizations access world-class computing power, nowavailable anytime, anywhere. Faster delivery of higher-value productsand services is now mandatory to address formidable competition and
escalating customer and shareholder expectations. Storage managementis a general storage industry phrase that is used to describe the tools,
processes, and policies used to manage storage networks and storageservices such as virtualization, replication, mirroring, security,compression, traffic analysis and other services. The phrase storagemanagement also encompasses numerous storage technologies including
process automation, real-time infrastructure products and storageprovisioning. Private cloud also called internal cloud is cloudinfrastructure operated solely for a single organization, whether managed
internally or by a third-party and hosted internally or externally. Aprivate cloud is designed to offer the same features and benefits of publiccloud systems, but removes a number of objections to the cloudcomputing model including control over enterprise and customer data,worries about security, and issues connected to regulatory compliance.Some of the advantages of cloud storage are: a cloud storage serviceautomatically transfers files into the cloud; access to unlimited cloudstorage services; ability to synchronize files across different computers;very easy to share files with others. The proposed model is to build a
private cloud in our infrastructure using eucalyptus software platformand provide database (include - storage) as a service to the user. Cloudcomputing is the use of a networked resources that are on demand whichcan be either Server, application, storage, services through a pool ofshared devices that are interconnected to a remote device that offers it.Private cloud is a solution that has been recently developed for theaccess of shared resources solely for a single entity or organizationwhere the sharing is managed either internally or externally through athird party client. Private cloud has had its inception to incorporate the
aspects of enhanced security features to a private organizations data andservices. The foundation for cloud is the systematic virtualization of
-
8/11/2019 Storage Management in Private Cloud
8/63
ii
resources that further proceeded towards the out of box thinking of aprivate cloud where each and every organizations resources arevirtualized and shared. The reason for preference of private cloud is thegreater control of the entire stack of resources available. The issue of
storage management in private cloud arises when there is an extensivedemand for resources. In this project, we have implemented an effectivestorage management mechanism for uploading and sharing of files on astorage cloud. This is done by removing the need to transfer files
between users (when files are shared) and to simply grant them privilegeto access those files by using database entries. This not only helps tomanage memory but also to increase security in the cloud server.
-
8/11/2019 Storage Management in Private Cloud
9/63
iii
LIST OF TABLES
S.NO Table Name Page No
1 Table 2.1 Front End Requirements 6
2 Table 2.2 Node Requirements 7
3 Table 2.3 Literature Review 8
4 4.3.1 UTC 1 - Test whether the website can be accessedwithin the cluster.
41
5 4.3.2 UTC 2Test whether the user is able to register. 42
6 4.3.3 UTC 3Test whether the user is able to upload files. 43
7 4.3.4 UTC 4Test whether another user is able to accessuploaded files.
44
8 4.3.5 UTC 5Test whether the user is able to download files. 46
9 4.3.6 UTC 6Test whether the user is able to share theupload files.
47
10 4.3.7 UTC 7Test whether the user is able to delete theuploaded file(s).
49
-
8/11/2019 Storage Management in Private Cloud
10/63
iv
LIST OF FIGURES
S.NO Figure Name Page No
1 Fig 3.1 Eucalyptus Architecture 14
2 Fig 3.2 Project System Architecture 14
3 Fig 3.3 Class Diagram 16
4 Fig 3.4 Use Case Diagram 17
5 Fig 3.5 Activity Diagram 18
6 Fig 3.6 Sequence Diagram 19
7 Fig 3.7 Install Screen 20
8 Fig 3.8 Install Screen 2 21
9 Fig 3.9 Install Screen 3 21
10 Fig 3.10 UEC store 24
11 Fig 3.11 UEC Images 25
12 Fig 4.1 Waterfall model 30
13 Fig 4.2 Home Page 31
14 Fig 4.3 Sign up Page 32
15 Fig 4.4 Log in Page 33
16 Fig 4.5 Upload Page 34
17 Fig 4.6 File Successfully Uploaded 35
18 Fig 4.7 Confirm Replace Page 35
19 Fig 4.9 File Index 36
20 Fig 4.10 File Access 37
21 Fig 4.11 File Download 38
22 Fig 4.12 File Share 39
23 Fig 4.13 Shared File 39
24 Fig 4.14 Confirm Deletion 40
25 Fig 4.15 File Deleted 40
26 Fig 4.16 File Uploaded 44
27 Fig 4.17 File Index view 45
28 Fig 4.18 File Share Test 48
29 Fig 4.19 File Share Test 48
-
8/11/2019 Storage Management in Private Cloud
11/63
v
LIST OF ACRONYMS
Node Controller (NC)- Eucalyptus component that runs on nodes which host the virtualmachines that comprise the cloud. This service is provided by the Ubuntu package eucalyptus-nc.
S3- Simple Storage Service. Amazon's pay-by-the-gigabyte persistent storage solution for EC2.
Storage Controller (SC)- Eucalyptus component that manages dynamic block storage services(EBS). Each 'cluster' in a Eucalyptus installation can have its own Storage Controller. This
component is provided by the eucalyptus-scpackage.
UEC- Ubuntu Enterprise Cloud. Ubuntu's cloud computing solution, based on Eucalyptus.
VM- Virtual Machine.
VT- Virtualization Technology. An optional feature of some modern CPUs, allowing for
accelerated virtual machine hosting.
Walrus- Eucalyptus component that implements the Amazon S3 API, used for storing VMimages and user storage using S3 bucket put/get abstractions.
-
8/11/2019 Storage Management in Private Cloud
12/63
1
Chapter 1
INTRODUCTION
1.1 Overview
Cloud computingis an expression used to describe a variety of computing concepts
that involve a large number of computers connected through a real-time
communication network such as the Internet In science, cloud computing is a
synonym for distributed computing over a network, and means the ability to run a
program or application on many connected computers at the same time. The phrase
also more commonly refers to network-based services, which appear to be provided
by real server hardware, and are in fact served up by virtual hardware, simulated by
software running on one or more real machines. Such virtual servers do not
physically exist and can therefore be moved around and scaled up (or down) on thefly without affecting the end user - arguably, rather like a cloud.
The popularity of the term can be attributed to its use in marketing to sell hosted
services in the sense of application service provisioning that run client server
software on a remote location.
Cloud computing is a kind of grid computing, it has evolved by addressing
the QoS (quality of service) and reliability problems. Cloud computing provides thetools and technologies to build data/compute intensive parallel applications with
much more affordable prices compared to traditional parallel computing techniques.
Private cloud is cloud infrastructure operated solely for a single organization,
whether managed internally or by a third-party and hosted internally or
externally. Undertaking a private cloud project requires a significant level and degree
of engagement to virtualize the business environment, and requires the organization
to re-evaluate decisions about existing resources. When done right, it can improve
business, but every step in the project raises security issues that must be addressed to
prevent serious vulnerabilities. They have attracted criticism because users "still haveto buy, build, and manage them" and thus do not benefit from less hands-on
management, essentially "the economic model that makes cloud computing such an
intriguing concept".
-
8/11/2019 Storage Management in Private Cloud
13/63
2
1.2 Purpose
The purpose of this project is to implement the storage management mechanism in avirtual environment in a way to enhance the abilities and capabilities of the cloudsystem. The ultimate purpose is to depict the endurance power of the cloud storage
system.
1.3 Scope
The scope of this process is not just limited to cloud storage system but also itsworking in different environments where it has been deployed. The cloud storagemechanism along with its shadow the virtual environment is combined in a
privately created cloud wherein the interaction are not just limited within the cloudnetwork but also to all the networks interconnected through its IP address.
1.4 Objective
Implement a private cloud and its deployment.
Implement a virtual environment and its interconnections
Implement a workable storage mechanism in the virtual environment
Ensure maintainability of the implemented storage mechanism
-
8/11/2019 Storage Management in Private Cloud
14/63
3
CHAPTER 2
PROBLEM ANALYSIS
2.1 Problem Overview
Organizations in every industry, regardless of size or geography are embracing cloudcomputing as a way to reduce the complexity and costs associated with traditional ITapproaches. The reality is driven by three related shifts. Customer, employee and
partner expectations are changing as self- service consumption of technology andservices becomes the norm. The economics of computing are changing asorganizations access world-class computing power, now available anytime,anywhere. Faster delivery of higher-value products and services is now mandatory toaddress formidable competition and escalating customer and shareholder
expectations.
Storage managementis a general storage industry phrase that is used to describe thetools, processes, and policies used to manage storage networks and storage servicessuch as virtualization, replication, mirroring, security, compression, traffic analysisand other services. The phrase storage management also encompasses numerousstorage technologies including process automation, real-time infrastructure productsand storage provisioning.
Private cloud also called internal cloud is cloud infrastructure operated solely for asingle organization, whether managed internally or by a third-party and hostedinternally or externally. A private cloud is designed to offer the same features and
benefits of public cloud systems, but removes a number of objections to the cloudcomputing model including control over enterprise and customer data, worries aboutsecurity, and issues connected to regulatory compliance.
Some of the advantages of cloud storage are: a cloud storage service automaticallytransfers files into the cloud; access to unlimited cloud storage services; ability tosynchronize files across different computers; very easy to share files with others.
The proposed model is to build a private cloud in our infrastructure using eucalyptus
software platform and provide database (include - storage) as a service to the userusing UEC.
-
8/11/2019 Storage Management in Private Cloud
15/63
4
2.2 Definition of Concepts
Storage as Service
Virtualization
Eucalyptus software
UEC
2.2.1 Storage as Service
Storage as a service is an architecture model in which a provider provides digitalstorage on their own infrastructure. Storage as a service can be implemented as a
business model in which a large service provider rents space in their storage
infrastructure on a subscription basis. The economy of scale in the service provider's
infrastructure theoretically allows them to provide storage much more cost
effectively than most individuals or corporations can provide their own storage,
when total cost is considered is considered. Storage as a Service is often used to
solve offsite backup challenges.
2.2.2 Virtualization
Storage virtualization is part of the software-defined storage layer that must offerimprovements in performance and space efficiency without requiring the purchase ofadditional storage hardware.It must enable rapid provisioning so that high-performance, space-efficient storagecan be spun up as fast as a VM can be spun up today. It must offer a VM-centricstorage management model that is intuitive for virtual administrators who are takingon more of the storage management tasks in virtual environments. And it mustintegrate with the hypervisor platform to leverage familiar, native workflows.Storage virtualization is a combination of capabilities that provide an abstractionlayer for physical storage resources to be addressed, managed and optimized in a
virtualization deployment.Storage virtualization technology provides a fundamentally better way to managestorage resources for virtual infrastructure, giving the ability to:
Significantly improve storage resource utilization and flexibility Simplify OS patching and driver requirements, regardless of storage topology Increase application uptime and simplify day-to-day operations Leverage and complement existing storage infrastructure
2.2.3 Eucalyptus
Eucalyptus is free and open-source computer software for building Amazon WebService (AWS)-compatible private and hybrid cloud computing environmentsmarketed by the company Eucalyptus Systems. Eucalyptus enables pooling compute,
-
8/11/2019 Storage Management in Private Cloud
16/63
5
storage, and network resources that can be dynamically scaled up or down asapplication workloads change.Eucalyptus has six components:
The Cloud Controller (CLC)is aJavaprogram that offers EC2-compatible
interfaces, as well as a web interface to the outside world. In addition to handlingincoming requests, the CLC acts as the administrative interface for cloud
management and performs high-level resource scheduling and system
accounting. The CLC accepts user API requests from command-line interfaces
like euca2ools or GUI-based tools like the Eucalyptus User Console and
manages the underlying compute, storage, and network resources. Only one CLC
can exist per cloud and it handles authentication, accounting, reporting, and
quote management.
Walrus, also written in Java, is the Eucalyptus equivalent to AWS Simple
Storage Service (S3). Walrus offers persistent storage to all of the virtualmachines in the Eucalyptus cloud and can be used as a simple HTTP
put/getstorage as a service solution. There are no data type restrictions for
Walrus, and it can contain images (i.e., the building blocks used to launch virtual
machines), volume snapshots (i.e., point-in-time copies), and application data.
Only one Walrus can exist per cloud.
The Cluster Controller (CC)is written in C and acts as the front end for a cluster
within a Eucalyptus cloud and communicates with the Storage Controller and
Node Controller. It manages instance (i.e., virtual machines) execution and
Service Level Agreements (SLAs) per cluster.
The Storage Controller (SC) is written in Java and is the Eucalyptus equivalent
to AWS EBS. It communicates with the Cluster Controller and Node Controller
and manages Eucalyptus block volumes and snapshots to the instances within its
specific cluster. If an instance requires writing persistent data to memory outside
of the cluster, it would need to write to Walrus, which is available to any instance
in any cluster.
The VMware Brokeris an optional component that provides an AWS-compatible
interface forVMware environments and physically runs on the Cluster
Controller. The VMware Broker overlays existing ESX/ESXi hosts andtransforms Eucalyptus Machine Images (EMIs) to VMware virtual disks. The
VMware Broker mediates interactions between the Cluster Controller and
VMware and can connect directly to either ESX/ESXi hosts or to vCenter Server.
TheNode Controller (NC)
2.2.4 UEC
Prerequisites
To deploy a minimal cloud infrastructure, youll need at
least twodedicated systems: A front end.
http://en.wikipedia.org/wiki/Java_(programming_language)http://en.wikipedia.org/wiki/Storage_as_a_servicehttp://en.wikipedia.org/wiki/VMwarehttp://en.wikipedia.org/wiki/VMwarehttp://en.wikipedia.org/wiki/Storage_as_a_servicehttp://en.wikipedia.org/wiki/Java_(programming_language) -
8/11/2019 Storage Management in Private Cloud
17/63
6
One or more node(s).
The following are recommendations, rather than fixed requirements.However, our experience in developing this documentation indicated the
following suggestions.Front End Requir ements
Use the following table for a system that will run one or more of: Cloud Controller (CLC)
Cluster Controller (CC)
Walrus (the S3-like storage service)
Storage Controller (SC)
Eucalyptus- Elastic Utility Computing Architecture for Linking Your Programs ToUseful Systems. An open source project originally from the University of Californiaat Santa Barbara, now supported by Eucalyptus Systems, a Canonical Partner.
Front-end - Physical machine hosting one (or more) of the high level Eucalyptus
components (cloud, walrus, storage controller, cluster controller).
Node - A node is a physical machine that's capable of running virtual machines,running a node controller. Within Ubuntu, this generally means that the CPU hasVT extensions, and can run the KVM hypervisor.
Table 2.1 Front End Requirements
-
8/11/2019 Storage Management in Private Cloud
18/63
7
Node Requirements:
Table 2.2 Node Requirements
-
8/11/2019 Storage Management in Private Cloud
19/63
8
2.3 Literature Review:
Storage
Management in
Virtualized
Cloud Environment
Sankaran Sivathanu, Ling Liu, MeiYiduo, and Xing Pu
In order to enable & support cloud-based applications in a cost-effective
manner and to lower the barrier to entryfor such applications, a somewhat recent
business model that has emerged is thatof a service provider hosting third-partyapplications in a shared data centre.A key technology that enables suchcost-efficient resource sharing in suchdata centers is virtualization; by
providing isolation and separateprotection domains for multiple thirdparty applications, virtual machines
enable server consolidation, andconsequently significant savings in thecost of managing such data centres.A detailed experimental analysis of theI/O performance observed in avirtualized environmentthrough a series of systematicexperiments on the Xen VMM platformshow that the storage I/O performanceobserved by an application inside a VMdepends on various aspects such aswhich disk partition the virtual machineuses, the CPU utilization of other VMson that system, the nature of I/O
performed by other VMs on the hostedsystem and the block size used for
performing disk I/OAs the disk seek distance is vastlyreduced when the virtual disk size issmall, the throughput achieved by a4GB virtual disk is significantly better
than that of a 40GB disk for the exactlysame workload. When disproportionateamount of disk space, with respect todata footprint of the workload, isallocated for a user, some file systemallocation policies or applicationdecisions might lead to data beingspread across a larger footprint on disk.Cloud service providers can improvetheir storage efficiency by practicingthin provisioning of their storage
resources. Customers of cloud storagecan purchase storage based on their
-
8/11/2019 Storage Management in Private Cloud
20/63
9
expected workload footprint rather thanjust the price. This is important because,customers may tend to purchase moredisk space than what they need,especially when the price differential is
not significant. It is beneficial to placesequentially accessed virtual disk in theouter zone of the disk to achieve better
performance (Eg. VMs that host movies,large OS distributions, etc.,). When acloud service provider needs to placemultiple virtual disks in a single
physical storage, those virtual diskswhoseMost of the infrastructure cloud systemsemploy Dynamic Frequency Scaling
technique to conserve power. Therefore,strategies for co-locating workloads can
be critical for achieving maximumperformance and at the same timeconserving power. Cloud service
providers should avoid co-locating VMswith two sequential I/O workloads on asingle physical machine, even wheneach of them goes to separate physicaldisks.Virtualization overhead is more felt insequential workloads accessed throughsmaller block sizes than randomworkloads. The cloud customers canestimate the expected performance
based on the characteristics of theworkload they deploy. Cloud service
providers can practice static partitioningof memory across multiple VMs hostedin a single physical machine, wheneverstrict performance isolation is important
across different customers.
Secure Data storage
and Retr ieval in the
Cloud
Vaibhav Khadilkar, Anuj Gupta,Murat Kantarcioglu, Latifur Khan,
Bhavani Thuraisingham
A new web-based system is created(Hive Access System) that minimizesstorage costs and provides sufficientlevel of security in cloud.
The Hadoop Distributed File System iscombined with Hive to provide acommon storage area for participatingorganizations.
The System has a mechanism to load
-
8/11/2019 Storage Management in Private Cloud
21/63
10
and query shared data securely that isstored in HDFS using Hive.
It also has an additional layer of securityabove HDFS and Hive using a XACML
policy-based mechanism.
The system provides a secure loginfeature to users based on a salted hashtechnique. When a user logs into oursystem, based on the group that the user
belongs to he/she is provided withdifferent options.
The system also allows new users toregister but only a designated special
user admin can assign these users tothe appropriate groups.
The System is provided with some basicquery rewriting rules that abstract usersfrom the query language of Hive(HiveQL). This allows them to enterregular SQL queries in the webapplication which are translated intoHiveQL using the basic rewriting rules.
This system is different from AWS inthe sense that our cloud infrastructure iscompletely private versus AWSsinfrastructure that is in the publicdomain.This distinguishing factor makes ourinfrastructure trusted over the AWS
infrastructure where data must be storedin an encrypted format since AWS is inthe public domain. In the future we plan
to extend our work to include both,public and private clouds.
-
8/11/2019 Storage Management in Private Cloud
22/63
11
Evolution of Cloud
Storage as Cloud
Computing
Infrastructure
Service
R. Arokia Paul Rajan, S.Shanmugapriyaa
Private and Public clouds serve as thebackbone for a variety of different cloudcomputing service models.
Currently the industry has been
successfully adopting three commontypes of cloud computing servicemodels.
Infrastructure as a Service (IaaS), is aservice model around servers (compute
power), storage capacity, and networkbandwidth. Examples include AmazonEC2 and S3, Rackspace, AT&T, andVerizon.
Platform-as-a-Service (PaaS) providesan externally managed platform for
building and deploying applications andservices. This model typically providesdevelopment tools such as databases anddevelopment studios for working withthe supplied frameworks, as well as theinfrastructure to host the builtapplication. Examples includeForce.com, Microsoft Azure, andGoogle App Engine.
Software-as-a-Service (SaaS) is simplyhaving a software system running on acomputer that doesn't belong to thecustomer and isn't on the customers
premises. It is based on the concept ofrenting an application from a service
provider rather than buying, installingand running software yourself.
No need to invest any capital on storagedevices.
No need for technical expert to maintainthe storage, backup, replication andimportantly disaster management.
Allowing others to access your data willresult with collaborative working styleinstead of individual work.
A Cloud Storage ApplicationProgramming Interface (API) is amethod for access to and utilization of acloud storage system. The most
-
8/11/2019 Storage Management in Private Cloud
23/63
12
common of these kinds are REST(REpresentational State Transfer)although there are others, which are
based on SOAP (Simple Object AccessProtocol).
All these APIs are associated withestablishing requests for service via theInternet. REST is a concept widelyrecognized as an approach to "quality"scalable API design. One of the mostimportant features of REST is that it is a"stateless" architecture.
This means that everything needed tocomplete the request to the storage
cloud is contained in the request, so thata session between the requestor and thestorage cloud is not required.
A Secure Model for
Cloud Computing
Based Storage and
Retrieval
Yaga Reddemma, LingalaThirupathi, Sreekanth Gunti
The proposed business model separatesdata storage service from that ofencryption and decryption service. This
paper uses CRM concept to demonstratethe new mechanism proposed.
In the proposed system the party thatuses cloud storage services must encryptdata before sending it to cloud while theservice provider who is responsible forencryption/decryption must delete dataonce encryption/decryption process iscompleted.
This separation is required as the cloudserver administrators might have illegalaccess to data of the users. To prevent
this, the services such as storage andencryption/decryption are separated andmoved to different cloud servers.Generally users use cloud environmentfor specific purposes. For instancesSAPs ERP services, Salesforce.coms
CRM service and so on. The datagenerated by these operations is saved tocloud storage. However, this studyadvocates an additional cloud server thattakes care of encryption/decryption
activities which are independent ofstorage service.
-
8/11/2019 Storage Management in Private Cloud
24/63
13
First of all users credentials are
authenticated by CRM cloud service.Once authentication is done user canaccess CRM server through which he
performs data retrieval and data storageoperations. As per the users instructions
the CRM cloud service interacts withstorage cloud service and makes datausage request. Then the storage cloudservice sends encrypted data which isavailable in to encryption/decryptionservice and requests for decryption. Theencryption/decryption service takesencrypted data and simply decrypts itand sends the decrypted data to CRM
cloud service. SSL (Secure SocketsLayer) is used for encryption anddecryption purposes. The last step is thatthe CRM cloud service sends requesteddata to end user. Thus securecommunication is taking place across allcomponents as part of proposed dataretrieval mechanism.
After due authentication, the end userssends data storage request to CRMcloud service.In turn the CRM cloud service sendsunencrypted data toencryption/decryption cloud service.The encryption/decryption cloud serviceactually encrypts the given content andsends it to storage cloud service where itis stored. Then the storage cloud servicesends resultant message to CRM cloudservice, which is then displayed to the
user.
-
8/11/2019 Storage Management in Private Cloud
25/63
14
Chapter 3
DESIGN AND ARCHITECTURE
3.1 Eucalyptus Architecture
Fig 3.1 Eucalyptus Architecture
3.1.1 System Architecture:
Cluster
Data Store
Server
Node Controller
Node Controller
Private Cloud
Web Interface or EC2 API
Cloud Controller
Walrus Storage Controller
Regular Network
Fig 3.2 Project System Architecture
-
8/11/2019 Storage Management in Private Cloud
26/63
15
The Node Controller (NC) is part of the Node level of the cloudcomputing architecture. It is written in C and hosts the virtual machineinstances and manages the virtual network endpoints. The NC downloadsand caches images from Walrus as well as creates and caches instances.While there is no theoretical limit to the number of NCs per cluster,
performance limi ts do ex ist.
Cluster Controller (CC)
The Cluster Controller (CC) is written in C and acts as the front end for a clusterwithin a Eucalyptus cloud and communicates with the Storage Controller (SC) and
Node Controller (NC). The CC manages instance (i.e., virtual machines) executionand Service Level Agreements (SLAs) per cluster.
Storage Controller (SC)
The Storage Controller (SC) is written in Java and is the Eucalyptus equivalent toAWS Elastic Block Store (EBS). The SC communicates with the Cluster Controller(CC) and Node Controller (NC) within the distributed cloud architecture andmanages Eucalyptus block volumes and snapshots to the instances within its specificcluster. If an instance requires writing persistent data to memory outside of thecluster, it would need to write to Walrus, which is available to any instance in anycluster. The SC interfaces with storage systems, including local, NFS, iSCSI, andSAN.
VMware Broker (Optional)
The VMware Broker is an optional component that provides an AWS-compatibleinterface for VMware environments and physically runs on the Cluster Controller(CC) within the distributed cloud computing architecture. The VMware Brokeroverlays existing ESX/ESXi hosts and transforms Eucalyptus Machine Images(EMIs) to VMware virtual disks. The VMware Broker mediates interactions
between the CC and VMware and can connect directly to either ESX/ESXi hosts orto vCenter Server.
-
8/11/2019 Storage Management in Private Cloud
27/63
16
3.2 Class Diagram:
#Verify User()
#Process Command()
+ID : string
+User Name : string
#Password : string
Controller
-Send Requests to Server()
Node
-Store Files()
-Retrieve Files()
#Delete Files()
Server
+Log-in()
#Store Files()
#Share Files()
#Download Files()
#Delete Files()
+ID : string
#Password : string
#File ID : string
User
#Files
Data Store
1
1 0..*
1
1..*
0..*
-Manage Cloud Server()
-Manage Users()
-Manage Nodes()
-Manage Data Store()
Cloud Administrator
1..*
1
1
1..*
+Maintain Nodes()
-Node List : string
Cluster
+Maintain Clusters()
-Cluster List : string
Cloud
-Data Store Information
Storage
+Manage Storage()
Walrus
1*
1
*
1
*
1
*
1
*
Fig 3.3 Class Diagram
-
8/11/2019 Storage Management in Private Cloud
28/63
17
3.3 Use Case Diagram :
User
Server
Storage
Administrator
Store Files
Share Files
*
* *
*
uses
*
*
*
*
Manage Users
*
*
*
*
Store/Retrieve Data
**
Manage Storage
1
* *
*
*
1Intelligent Storage
Read Share
uses
Read-Write Share
uses
Sign up
** *
*
Login*
* *
*
Fig 3.4 Use Case Diagram
-
8/11/2019 Storage Management in Private Cloud
29/63
18
3.4 Activity Diagram:
Data StoreServerUser
Share FileCheck Share Type
Display Result
Grant Read AccessGrant Write Access
Read
Read-Write
Forward Result
Grant Read Access
Fig 3.5 Activity DiagramSharing a File
-
8/11/2019 Storage Management in Private Cloud
30/63
19
3.5 Sequence Diagram:
User ServerData Store
Send Data to be stored
[Success] Send Notification
Display Result
Forward Data
Set Permissions
Intelligent Storage
Fig 3.6 Sequence DiagramFile Upload
-
8/11/2019 Storage Management in Private Cloud
31/63
20
3.6 Experiment Setup:
The Private Cloud is implemented in a virtual environment using VMware.
The Cloud used here is Ubuntu Enterprise Cloud.
The Server includescloud controller, cluster controller, storage controller,
Walrus Storage service.
The complete installation procedure is very detailed and thus only basic stepsare mentioned here.
Install and Configure the Node Controller(s)
Installing the Eucalyptus Node Service on a running Ubuntu system consistsof doing the following on one or more systems:
1.
Install Ubuntu 10.04 Server
Fig 3.7 Install Screen
-
8/11/2019 Storage Management in Private Cloud
32/63
-
8/11/2019 Storage Management in Private Cloud
33/63
22
2. Update to the most current state in the Ubuntu archive:
sudo apt-get update
sudo apt-get dist-upgrade
3.
Install the eucalyptus-nc package
sudo apt-get install eucalyptus-nc
4.
Install the Node controller on a different Virtual Machine.5. Repeat steps 2 and 3 for the node controller.6.
Finally, you need to install the Cloud Controller's eucalyptususer's public sshkey into the Node Controller's eucalyptus user's authorized_keys file. Theeasiest way to do this:
1. On the Node Controller, temporarily set a password forthe eucalyptususer:
o sudo password eucalyptus
2. Then, on the Cloud Controller:
o sudo -u eucalyptus ssh-copy-id -i ~eucalyptus/.ssh/id_rsa.pub
eucalyptus@
3. You can now remove the password of the eucalyptusaccount on theNode:
o sudo password -d eucalyptus
3.6.1 Obtain Credentials
After installing and booting the Cloud Controller, users of the cloud will need toretrieve their credentials. This can be done either through a web browser, or at the
command line.
From a Web Browser1.
From your web browser (either remotely or on your Ubuntu server) access thefollowing URL:
https://:8443/Important!You must use a secure connection, so make sure you use "https"not "http" in your URL. You will get a security certificate warning. You willhave to add an exception to view the page. If you do not accept it you will not
be able to view the Eucalyptus configuration page.
2.
Use username 'admin' and password 'admin' for the first time login (you will beprompted to change your password).
-
8/11/2019 Storage Management in Private Cloud
34/63
23
3. Then follow the on-screen instructions to update the admin password and emailaddress.
4. Once the first time configuration process is completed, click the 'credentials'tab located in the top-left portion of the screen.
5. Click the 'Download Credentials' button to get your certificates
6. Save them to ~/.euca
7. Unzip the downloaded zipfile into a safe location (~/.euca)
unzip -d ~/.euca mycreds.zip
From a Command Line
1.
Alternatively, if you are on the command line of the Cloud Controller, you canrun:
2.
mkdir -p ~/.euca3. chmod 700 ~/.euca4.
cd ~/.euca5. sudo euca_conf --get-credentials mycreds.zip6. unzip mycreds.zip7. ln -s ~/.euca/eucarc ~/.eucarc
3.6.2 Extracting and Using Your Credentials
Now you will need to setup EC2 API and AMI tools on your server using X.509certificates.
1.
Install the required cloud user tools:
sudo apt-get install euca2ools2. To validate that everything is working correctly, get the local cluster
availability details:
3. . ~/.euca/eucarc4. euca-describe-availability-zones verbose5.
AVAILABILITYZONE myowncloud 192.168.1.16. AVAILABILITYZONE |- vm types free / max cpu ram disk7.
AVAILABILITYZONE |- m1.small 0004 / 0004 1 192 28. AVAILABILITYZONE |- c1.medium 0004 / 0004 1 256 5
9.
AVAILABILITYZONE |- m1.large 0002 / 0002 2 512 1010.AVAILABILITYZONE |- m1.xlarge 0002 / 0002 2 1024 20
https://help.ubuntu.com/community/UEC/Credentials?action=AttachFile&do=upload_form&ticket=00527bc3d5.b9d1d30e7ea91d58b5da583d7ed7d389866fd690&target=UECcredentials-2.png -
8/11/2019 Storage Management in Private Cloud
35/63
24
AVAILABILITYZONE |- c1.xlarge 0001 / 0001 4 2048 20
3.6.3 Install an image from the store
The following is by far the simplest way to install an image. However, advanced
users may be interested in learning how to Bundle their own image.The simplest way to add an image to UEC is to install it from the Image Store on theUEC web interface.
1.
Access the web interface at the following URL (Make sure you specify https):
https://:8443/
2.
Enter your login and password (if requested, as you may still be logged in fromearlier)
3.
Click on the Store tab
Fig 3.10 UEC store4.
Browse available images
5.
Click on install for the image you want
Once the image has been downloaded and installed, you can click on "How to run?"that will be displayed below the image button to view the command to execute toinstantiate (start) this image. The image will also appear on the list given on theImage tab.
-
8/11/2019 Storage Management in Private Cloud
36/63
25
Fig 3.11 UEC Images
3.6.4 Run an Image
There are multiple ways to instantiate an image in UEC:1. Use the command line
2. Use one of the UEC compatible management tools such as Landscape
3.
Use theElasticFox extension to FirefoxHere we will describe the process from the command line:
1. Before running an instance of your image, you should first create a keypair(ssh key) that you can use to log into your instance as root, once it boots. Thekey is stored, so you will only have to do this once. Run the followingcommand:
2.
if [ ! -e ~/.euca/mykey.priv ]; then3. mkdir -p -m 700 ~/.euca4. touch ~/.euca/mykey.priv5. chmod 0600 ~/.euca/mykey.priv6. euca-add-keypair mykey > ~/.euca/mykey.priv7.
fi
Note:You can call your key whatever you like (in this example, the key iscalled 'mykey'), but remember what it is called. If you forget, you can alwaysrun euca-describe-keypairs to get a list of created keys stored in the system.
8. You must make sure to source ~/.euca/eucarc before you run any of theeucatools. It is probably best to add this to the bottom of your .bashrc script.
9. You must also allow access to port 22 in your instances:
euca-authorize default -P tcp -p 22 -s 0.0.0.0/0
10.Next, you can create instances of your registered image:
euca-run-instances $EMI -k mykey -t m1.small
https://help.ubuntu.com/community/UEC/ElasticFoxhttps://help.ubuntu.com/community/UEC/ElasticFox -
8/11/2019 Storage Management in Private Cloud
37/63
26
Note:If you receive an error regarding image_id, you may find it by viewingImages page or click "How to Run" on the Store page to see the samplecommand.
11.The first time you run an instance, the system will be setting up caches for the
image from which it will be created. This can often take some time the firsttime an instance is run given that VM images are usually quite large. Tomonitor the state of your instance, run:
watch -n5 euca-describe-instances
In the output, you should see information about the instance, including its state.While first-time caching is being performed, the instance's state will be'pending'.
12.
When the instance is fully started, the above state will become 'running'. Lookat the IP address assigned to your instance in the output, then connect to it:
13.IPADDR=$(euca-describe-instances | grep $EMI | grep running | tail -n1 | awk
'{print $4}')
ssh -i ~/.euca/mykey.priv ubuntu@$IPADDR
14.And when you are done with this instance, exit your SSH connection, thenterminate your instance:
15.
INSTANCEID=$(euca-describe-instances | grep $EMI | grep running | tail -n1 |awk '{print $2}')
euca-terminate-instances $INSTANCEID
The Node uses the node controller and the server uses the cloud controller,cluster controller and the storage controller.
After installing and configuring server and node check the servers IP addressusing :
o Ifconfig
Update the server and node using :
o
sudo apt-get updateo sudo apt-getu upgrade
-
8/11/2019 Storage Management in Private Cloud
38/63
27
Test the server-node connection using:
o ping
Install desktop on the node using:
sudo apt-get install ubuntu-desktop
On the nodes browser, connect to the server by giving the address
https://:8443/
Perform first time configuration.
On the server side run :
o
sudo vi /usr/lib/python2.6/dist-packages/imagestore/lib/fetch.py
Add the following lines after line 142 :
o
curl.setopt(pycurl.SSL_VERIFYPEER, 0)o curl.setopt(pycurl.SSL_VERIFYHOST, 0)
Save and close the file.
Get certificates for the server using:
o sudo wgetP /usr/local/share/ca-certificates/ --no-check-certificatehttps://certs.godaddy.com/repository/gd-class2-root.crthttps://certs.godaddy.com/repository/gd_intermediate.crt
https://certs.godaddy.com/repository/gd_cross_intermediate.crt
-
8/11/2019 Storage Management in Private Cloud
39/63
28
Update server certificates using:
o sudo update-ca-certificates
Get the server credentials using:
o mkdir -p ~/.eucao chmod 700 ~/.eucao
cd ~/.eucao sudo euca_conf --get-credentials mycreds.zipo unzip mycreds.zipo ln -s ~/.euca/eucarc ~/.eucarco cd
Install euca tools using:
o sudo apt-get install euca2ools
Get availability details using:
o . ~/.euca/eucarc
o
euca-describe-availability-zones verbose
On the node side, open the server login page; go to the store tab anddownload the image suitable for the cloud used.
Create a key-pair using:
-
8/11/2019 Storage Management in Private Cloud
40/63
29
o if [ ! -e ~/.euca/mykey.priv ];mkdir -p -m 700 ~/.eucao touch ~/.euca/mykey.privo chmod 0600 ~/.euca/mykey.privo euca-add-keypair mykey > ~/.euca/mykey.priv fi
Source the eucarc file using:o . ~/.euca/eucarc
Allow access to port 22 using:o euca-authorize default -P tcp -p 22 -s 0.0.0.0/0
Run the image using:
euca-run-instances -k mykey -t m1.small
-
8/11/2019 Storage Management in Private Cloud
41/63
30
Chapter 4
Implementation
4.1 Methodology Used:Waterfall Model is adopted as the design process for this project. The
Waterfall development Model is a sequential design processes, in which progress is
seen as flowing steadily downwards (like a waterfall) through the phases of
Requirements Specification, Design, Construction (Implementation or Coding),
Integration, Testing and Debugging (Validation), Installation, and Maintenance.
Fig4.1 Waterfall Model
The selection of waterfall model has the following reasons:
a) Requirements are clear and unambiguous.
b)
Project Reviews are conducted at the end of each phase of the
development.
c) The feedback from the reviews is followed up at the end of each phase
of the development.
Requirements
Design
Construction
Integration
Testing
-
8/11/2019 Storage Management in Private Cloud
42/63
31
4.2 Implementation of the System:The project should be developed as a File sharing website on a private cloud
environment. The website is run on the cloud server and thus can be easily accessed
by the nodes in the cluster. The uploaded files are store on the server and share by
using intelligent storage management. The website consists of the following modules
Sign-up module
Log-in module
File upload module
File index module
File access module
File download module
File share module
File delete module
This is the homepage for the project website. Users can sign-up, log-in, learn how to
use the system and contact the administrators using the various links provided at the
bottom of the website.
Fig 4.2 Home Page
-
8/11/2019 Storage Management in Private Cloud
43/63
32
4.2.1 Sign-up module:
In this module the user registers on the website by giving the appropriate information
such as: User name, Password, Email. When the user clicks the Register button the
server creates a folder for the user where the files uploaded by the user will be saved.
Fig 4.3 Sign up Page
-
8/11/2019 Storage Management in Private Cloud
44/63
33
4.2.2 Log-in module:
The user uses this screen to log-in to the website. If the user provides the correctcredentials, they are logged in to the system and their user name is stored in a sessionvariable. After the user has logged in the Sign up and Login links on the bottom
of the website are replaced by Access Files and Upload Files links which giveaccess to upload files and allow the user to access the uploaded files respectively.
Fig 4.5 Log-in page
-
8/11/2019 Storage Management in Private Cloud
45/63
34
4.2.3 File Upload module:
After the user has logged in to the system they can upload files to the cloud by usingthe upload module. In this module the user points to the path of the files and clicksupload. The server then checks if any file with the same name is already present. If
yes then it checks whether the user has read or read- write permission. If the user hasonly read permission then Access Denied message will be displayed. If the user
has read- write permission then an Are you sure? message will be displayed to getuser confirmation before uploading the file to the server. If the file doesnt exist inthe database then the file is simply uploaded. After uploading an entry for the file iscreated in the database with the readand writepermission set to the user or if filealready exists on the server the database entry is updated.
Fig 4.6 Upload Page
-
8/11/2019 Storage Management in Private Cloud
46/63
35
Fig 4.7 File successfully uploaded
Fig 4.8 Confirm Replace Page
-
8/11/2019 Storage Management in Private Cloud
47/63
36
4.2.4 File index module:
After the user has uploaded one or more files, they can access the uploaded files byusing the file index module. When the user clicks the Access files link the server
accesses the file table in the database and finds the files for which the user has read
or write permission and retrieves them. These files are displayed in a table formatwith three columns: File Name, Uploaded by and Last Updated. The File names
are displayed as a link and by clicking the links the user can access the respectivefiles.
Fig 4.9 File Index
-
8/11/2019 Storage Management in Private Cloud
48/63
37
4.2.5 File Access module:
The user accesses the individual files using the file access module. In this module thefile is retrieved from storage and displayed to the user. If the user has only read
permission then they can only view and download the file. If the user has read and
write permissions then the user can share, download and delete the uploaded file. Onthe left hand side of the webpage, information about the file is displayed. Thisincludes: File name, Uploaded by, File size and Last updated.
Fig 4.10 Access File
-
8/11/2019 Storage Management in Private Cloud
49/63
38
4.3.6 File Download module:
The user downloads the file using the download module. In this module the relevantfile is accessed in storage, its data is read and outputted to the user in the form of afile. The method of download varies based on browser and users softwares.
Fig 4.11 File Download
-
8/11/2019 Storage Management in Private Cloud
50/63
39
4.2.7 File Share Module:
The user shares the uploaded file using the file share module. In this module the userfirst gives the ID of the user to which file should be shared and then gives the type ofsharing to be done, whether it is a read share or a read-write share. When the user
clicks the share button the server checks the type of share that the user has chosenand updates the privileges accordingly. There is no real sharing of files done here(thought that can be easily added), but rather granting permission to access theuploaded files. The shared files are shown to the appropriate user when they try toaccess the uploaded files.
Fig 4.12 File Share
Fig 4.13 Shared File
-
8/11/2019 Storage Management in Private Cloud
51/63
40
4.2.8 File Delete module:
The user deletes the uploaded files using the delete module. When the user isviewing the uploaded file, if they click the Delete link then they are forwarded to
the delete module. First the website checks whether the user has read-write privilege
and if yes it then asks the user for confirmation before deleting the file. If the userconfirms deletion the file is deleted and the associated entry in the database table isremoved.
Fig 4.14 Confirm Deletion
Fig 4.15 File Deleted
-
8/11/2019 Storage Management in Private Cloud
52/63
41
4.3 Testing -Unit Test Case Specification
4.3.1 UTC 1 - Test whether the website can be accessed within the
cluster.
Test Case ID UTC 1
Test Case Description Test whether the output of the application deployed inUbuntu is displayed correctly.
Expected Output The output of the application should be displayed.
Test Setup The application starts running in the
Test Procedure
Step Input Expected Output
1. User types the address in thebrowser
The application displays the output inthe browser
-
8/11/2019 Storage Management in Private Cloud
53/63
42
4.3.2 UTC 2Test whether the user is able to register
Test Case ID UTC 2
Test Case Description Test whether the user is able to register to upload a file.
Expected Output The output of the application should display that the useris successfully registered to upload a file
Test Setup The application deployed takes the values given andvalidates the user as a new user.
Test Procedure
Step Input Expected Output
1. User types only the username/onlypassword or username & passwordonly and clicks enter.
The application asks for a passwordor email id .
2. User types the password andconfirm password differently
The applications displays the outputas passwords dont match
3. The passwords match and user nameand all are specified
The output is displayed assuccessfully registered.
-
8/11/2019 Storage Management in Private Cloud
54/63
43
4.3.3 UTC 3Test whether the user is able to upload files
Test Case ID UTC 3
Test Case Description Test whether the user is able to upload a file.
Expected Output The output of the application should display that the userhas successfully uploaded the file
Test Setup The application deployed validates the user and uploadsthe file as he wishes.
Test Procedure
Step Input Expected Output
1. User selects the file from the diskand clicks submit
The application accepts it and loadsthe file into the cloud.
2. User selects a very large file The applications displays that verylarge files cant be uploaded
3. The user selects an empty file The output is displayed as 0kb fileuploaded.
-
8/11/2019 Storage Management in Private Cloud
55/63
44
Fig 4.16 File Uploaded
4.3.4 UTC 4Test whether another user is able to access uploaded
files
Test Case ID UTC 4
Test Case Description Test whether another user is able to see the uploaded file.
Expected Output The output of the application should display that the useris able to see another
Test Setup The application deployed is able to display the uploadedfiles to the user once
-
8/11/2019 Storage Management in Private Cloud
56/63
45
Test Procedure
Step Input Expected Output
1. User types only the username/onlypassword and clicks enter.
The application asks for a password.
2. User types the password differently The applications displays the outputas wrng password
3. The user successfully logs in andclicks access files
The output is displayed with the filesthat have been uploaded by him andthose files which have been shared tohim.
Fig 4.17 File Index view
-
8/11/2019 Storage Management in Private Cloud
57/63
46
4.3.5 UTC 5Test whether the user is able to download files
Test Case ID UTC 5
Test Case Description Test whether the user is able to download an uploadedfile.
Expected Output The output of the application should display that the useris able to download and save it in a desired location
Test Setup The application deployed downloads the file uploaded
Test Procedure
Step Input Expected Output
1. User successfully logs in The application displays theusername and he can access orupload files.
2. User accesses the files stored in thecloud
The application displays the output asa table with the list of files that have
been uploaded
3. The user clicks on the file andselects download
A window pops up with a messageon where to store the file .
-
8/11/2019 Storage Management in Private Cloud
58/63
47
4.3.6 UTC 6Test whether the user is able to share the upload files
Test Case ID UTC 6
Test Case Description Test whether the user is able to share the uploaded file.
Expected Output The output of the application should display that theusers enabled in the share are able to access those files.
Test Setup The application deployed takes the username of those towhom the files are to be shared.
Test Procedure
Step Input Expected Output
1. User types a valid username andclicks share
The application asks for the mode ofsharing whether it is read or readwrite
2. User types The applications displays the output
as passwords dont match
3. The passwords match and user nameand all are specified
The output is displayed assuccessfully registered.
-
8/11/2019 Storage Management in Private Cloud
59/63
48
Fig 4.18 File Share Test
Fig 4.19 File Share Test 2
-
8/11/2019 Storage Management in Private Cloud
60/63
49
4.3.7 UTC 7Test whether the user is able to delete the uploaded
file(s)
Test Case ID UTC 7
Test Case Description Test whether the user is able to delete the uploaded file.
Expected Output The output of the application should display that a filehas been deleted from the storage cloud
Test Setup The application deployed selects the name of the file tobe removed and deletes it accordingly
Test Procedure
Step Input Expected Output
1. A user who has uploaded a fileclicks the access file option
The list of files uploaded aredisplayed in a table.
2. The user then clicks the file whichhe had uploaded
The output is a new window with 3options like download , share anddelete.
3. The user clicks the delete option The output is displayed as a pop upsaying that the user is about to deletethe file permanently.
1.
The user clicks on submit The file is deleted permanently from
the cloud.
-
8/11/2019 Storage Management in Private Cloud
61/63
50
Chapter 5
CONCLUSION AND FUTURE WORK
5.1 ConclusionThe website has been successfully developed and deployed in the private cloudenvironment. Thus the website provides file upload, file download and file sharingfeatures and uses intelligent storage management mechanisms to increase securityand the efficiency of memory management. This website can be easily deployed inany private cloud environment to promote file sharing.
-
8/11/2019 Storage Management in Private Cloud
62/63
51
5.2 Future Work:
This can be extended to a large software application which requires
secured file storage, secured file access and a secured file sharing,uploading facility in a cloud based environment. The application can alsoimprove the existing storage mechanism facility of any currentlydeployed cloud storage application. The application can also be usefulfor integrating other cloud storage facility so as to enhance security,transparency, simplicity for small as well as large files. The applicationcan be useful for simplifying the cloud storage mechanism by ensuringthat cloud storage need not require an expounding method to providesuch a facility.
-
8/11/2019 Storage Management in Private Cloud
63/63
References:
[1]. Sankaran Sivathanu, Ling Liu, Mei Yiduo and Xing Pu, StorageManagement in Virtualized Cloud Environment in IEEE 3rd InternationalConference on Cloud Computing (CLOUD), 2010, PP 204-211.
[2]. Vaibhav Khadilkar, Anuj Gupta, Murat Kantarcioglu, Latifur Khan,Bhavani Thuraisingham, Secure Data storage and Retrieval in the Cloud, in6th International Conference on Collaborative Computing: Networking,Applications and Worksharing (CollaborateCom), 2010, pp 1-8.
[3]. R. Arokia Paul Rajan, S. Shanmugapriyaa, Evolution of Cloud Storage asCloud Computing Infrastructure Service, in arXiv:1308.1303v1 [cs.DC].
[4]. Yaga Reddemma, Lingala Thirupathi , Sreekanth Gunti, A Secure Model
for Cloud Computing Based Storage and Retrieval, in IOSR Journal ofComputer Engineering (IOSRJCE) Volume 6, Issue 1 (Sep-Oct. 2012), pp 01-05 .
[5]. Cong Wang, Qian Wang, Kui Ren, Ning Cao and Wenjing Lou, TowardsSecure and Dependable Storage Services in Cloud Computing, in IEEETransactions on Services Computing, vol. 5, no. 2, pp. 220-232, Second 2012,doi:10.1109/TSC.2011.24 .
[6]. Cong Wang, Qian Wang, Kui Ren, Wenjing Lou Privacy-PreservingPublic Auditing for Data Storage Security in Cloud Computing, in 2010
Proceedings IEEE INFOCOM, pp 1 - 9.
[7]. James Broberg, Rajkumar Buyya, Zahir Tari, MetaCDN: HarnessingStorage Clouds for high performance content delivery, in Journal of
Network and Computer Applications, Volume 32, Issue 5, September 2009,Pages 10121022 .