• No results found

Cloud Computing Platform Deployment using Ope...

N/A
N/A
Protected

Academic year: 2020

Share "Cloud Computing Platform Deployment using Ope..."

Copied!
7
0
0

Loading.... (view fulltext now)

Full text

(1)

Cloud Computing Platform Deployment using

Openstack within a Stand-alone Environment

Liangbin Zhang

1

, Yuanming Wang

2

, Ran Jin

3

, Shaozhong Zhang

4

, Kun Gao

5

1,2,3,4

School of Electronics and Computer Science, Zhejiang Wanli University, Ningbo, China.

5

Intelligent Electronic Institute, Zhejiang Business Technology Institute, Ningbo, China.

ABSTRACT

Cloud computing gradually becomes mature which is a current research hotspot in the past ten years. Openstack exceeded the market as a scalable, performant and highly adaptive open source architecture for both public and private cloud solutions like Amazon EC2. In this paper, we describe Openstack architecture and deploy Openstack experimental platform using automated scripting tools named Devstack within a single computer. One Devstack controller and compute node are created, configured and installed with our deployment strategy and automated scripts as detailed as possible. Most of the instance life cycle can be implemented and shown in our experimental framework, which can not only be greatly contributed to further research of Openstack components functionalities and interaction but also can improve deployment ability of Openstack in the production environment throughout an experimental test-bed.

Keywords: Cloud computing infrastructures, Openstack, Devstack, Virtualized Laboratories.

I. INTRODUCTION

Cloud computing has become an increasingly active topic. The cloud computing paradigm promises to deliver hardware to the end user at a low cost with an easy to use interface via the internet, which offers a variety of different service models in which in the resources can be deployed [1].

(1) Infrastructure as a Service(Iaas)—This service model allows the resources to be deployed directly as fundamental computing resources including processing, storage and network resources. Using this hardware the end user can run arbitrary software including operating systems and applications. The end user does not manage the underlying fixed infrastructure used to provide the cloud services but instead can control how the resources are deployed. Typical example is Amazon AWS or Rackspace.

(2)Platform as a Services(Paas) —This service model allows custom applications to be deployed into the cloud without the need for the end user to manage the hardware. Typical example is Microsoft’s Azure or Goolge App Engine.

(3)Software as a Service(Saas)—This service model allows the end user to use software provided by the same provider as the hardware via a thin client interfaces such as web browsers. Typical example is GoogleDocs or MicrosoftOfficeOnline.

Iaas provides infrastructure as an on-demand service. There is increasing use of Iaas, in which virtual servers, virtual storage, and other such virtual environments are provided, as exemplified by Amazon Web Services (AWS). This situation has given rise to an open source software (OSS) community whose objectives are reduced cost and open development in the construction of Iaas platforms.

(2)

Hands-on experiments for new learners are essential to the research of Openstack, which are carried out in single computer laboratory. However, it is quite difficult for new learner to construct a cloud computing experimental platform based on Openstack, which would spend enough time dealing with a large number of tedious technology problems in the process of platform construction. To resolve the problems in the platform construction labs and meet new study requirements, it is proposed with a framework for construct a cloud computing experimental platform using Openstack within a standy-alone environment in this paper. The rest of the paper is organized as follows: the architecture of openstack is described in Section II; building Openstack cloud computing experimental platform is further elaborated in Section III; Section IV presents an implementation instance; some conclusions and future work are finally drawn in Section V.

II. THEARCHITECTUREOFOPENSTACK

Openstack is an open source and fully distributed system. Openstack provides an Infrastructure as a Service (Iaas) and constitutes of resources such as compute, storage and network resources. Openstack is a manager of multiple hypervisors such as KVM, Xen, Hyper-V and ESXI, and it is a collection of tools for managing and orchestrating cloud resources [4]. Openstack keeps its services as decoupled as possible, which is designed to provide massive scalability. Openstack version 14th was released in October 2016 under code name ―Newton‖ [5].

Fig.1 Openstack conceptual architecture

Fig.1 shows the Openstack conceptual architecture with all native software components, developed by companies and individual supporters, depicting how they interact with each other [6]. We describe those components dividing them into two groups of essential or optional services. Services can be installed in accordance with requirements, which mean that we can install all or only a few. The essential services for a basic cloud architecture implementation are elaborated as follows:

Nova: It is the core service of the Openstack architecture, which manages the life cycle of VM (Virtual Machine). It provides virtual servers upon demand interacting with the hypervisors such as KVM, Xen, VMware or Hyper-V. It’s an array of software that provides services for cloud resource management through its APIs, capable of orchestrating running instances, networks and access control.

(3)

Glance: It provides services for discovering, registering and retrieving virtual images through an API that allows querying of VM image metadata, catalog and manage large libraries of server images.

Cinder: It provides persistent block storage services or volumes services for tenant virtual machine. Every volume provided with Cinder in the VM seems to be a virtual data hard disk. By working with Swift, Cinder can use it to back up the VMs volumes.

Keystone: The Openstack identity is a single point of integration for Openstack policy, catalog, authentication and authority control, applying them to users and services interactions.

Horizon: It provides a modular web application as a user interface for cloud infrastructure management by interacting with all other services public APIs.

In addition, Swift and Ceilometer are the optional Services of Openstack stated as follows:

Swift: It is known as Openstack Object Storage and Swift is a highly available, distributed object/blob store. VM can store object data using restful API. It can be used by Cinder component to back up VMs volumes. Meanwhile, Glance can also store virtual images in Swift.

Ceilometer: It provides a configurable collection of metering data in terms of CPU and network costs available from all other services in the platform, delivering a unique point of contact for billing systems.

Moreover, all the modules of Openstack are developed by Python. Compared with other programming languages such as Java and C#, Python has a higher parallel processing capabilities and a lower rate of system resources occupation [7].

III. OURFRAMEWORKOFOPENSTACKPLATFORMDEPLOYMENTWITHINASTAND-ALONE

ENVIRONMENT

Obviously as a new Openstack learner, requirement of Openstack cloud platform deployment in personal computer is very necessary even urgent. There are a variety of ways to install Openstack cloud platform such as manual command line, automated scripts, third party graphical and so on [8-10]. Devstack is one of automated scripting tools, which is the most widely used in deployment of Openstack[11]. We provide a practicable framework of Devstack experimental platform deployment in a single computer that you can see and touch on screen.

Services and configuration of the Devstack Controller and Compute node Normally, physical hardware configuration of individual machine is limited. In our framework, minimum configuration of the single physical machine is needed including dual core (e.g., I5-3230 Intel CPU,2.6Ghz main frequency), 12G RAM and 100G hard disk. In order to make the simple topology and complete function, we use two virtual machines with software of the VMware workstation in a single computer as Devstack controller and compute node each.Fig.2 shows Openstack services and configurations of the CPU, RAM, Storage and NIC of the Devstack-controller and Devstack-compute node in our framework.

(4)

Our experimental network topology of Openstack cloud computing platform Logically, Openstack cloud platform operation contains four kinds of network flows at least [12]. Management network is used to internal message queue communication in each node and enabled to access to database services. API network is used to provide user API services throughout each component and administrators can alo use API network to manage each node with SSH. VM network is also called tenant network, which is included local, flat, vlan, vxlan and gre multi network typesconfiguration and management by Neutron. External network is used to access the external network for instances, which may be enterprise intranets or Internet.

In our experimental framework, two VMs in the single computer acts as Devstack-controller and compute node have three network adapters (eth0,eth1,eth2) and two network adapters(eth0,eth1) respectively. Firstly, eth0 network adapter is used for merge management network and API network and enabled to install Ubuntu Operation System on-line, which is setup by adapter NAT network type with the default IP address of 192.168.80.0/24 in the VMware workstation of the single computer. Secondly, eth1 network adapter is used to commute with VM each, which is setup by adapter Host-only network type with the default IP address of 192.168.10.0/24 in the VMware workstation of the single computer. Finally, eth2 network adapter is used to access the external network for instances.

Fig.3 shows our experimental network topology of Openstack cloud computing platform. It is important to note that Devstack controller node is integrated with controller, network and compute multi-function services logically. Here, we choose the most widely used VLAN network types as VM network. As can be known from Fig.3, VM1 and VM2 are assigned to VLAN 100 while VM3 is assigned to VLAN101, so VM1 can communicate with VM2 but cannot communicate with VM3 in the layer-2 network mode.

Fig.3 Our framework of Openstack network topology

Main experimental deployment procedure Preparation experimental environment of Devstack cloud platform is statedas follows:

(5)

compute IP address is 192.168.80.200) and Ubuntu-16.04.1-server-amd64.ISO is installed on-line. In order to speed up the installation package download, Ubuntu apt sources are reset from abroad to domestic such as aliyun mirror. Moreover, we allow root user to access Ubuntu operating system with SSH logging.

Step2: Among controller and compute node, Eth0, Eth1 and Eth2 network adapters are created for management & API network, VM network and external network respectively. Actually, Eth0 network adapter is also used to install Ubuntu and deploy Devstack.

Step3: Devstack controller and compute node are installed and deployed respectively

(1) Python package is installed throughout the command ―apt install python-pip‖and Newton as the latest Openstack version is downloaded throughout the command ―git clone https://git.openstack.org/openstack -dev/Devstack -b stable /newton‖

(2) User ―stack‖ as the Devstack exclusive user is created throughout the command ―Devstack /tools / create-stack-user.sh‖.Then the pip domestic sources such as douban mirrors are reset for both users of root and stack to accelerate downloading. We move Devstack’s working directory with root identity throughout the command ―mv Devstack /opt/stack‖ , set permissions for stack user in the working directory throughout the command ―chown–R stack: stack /opt/stack/Devstack‖ and switch to the stack user as the current Ubuntu user.

(3) ―local.conf‖ as the configuration file in the directory ―/opt/stack/Devstack‖ is created and executed in controller and compute node each. In order to speed up the installation speed, the configuration file is selected the domestic trystack mirrors.Fig.4 shows the general contents of controller and compute node configuration files.

Fig.4 Devstack configuration files of controller and compute node

(4) Finally, deployment is starting throughout the command ―./stack.sh‖ in controller and compute node respectively. It takes a long time for whole installation process throughout connecting to Internet and every running process have a detailly real-time output results on screen.Fig.5 and Fig.6 show successful deployment outputs of controller and compute node.

controllerlocal.conf MULTI_HOST=true HOST_IP=192.168.80.100 LOGFILE=/opt/stack/logs/stack.sh.log ADMIN_PASSWORD=admin MYSQL_PASSWORD=secret RABBIT_PASSWORD=secret SERVICE_PASSWORD=secret SERVICE_TOKEN=abcdefghijklmnopqrstuvwxyz disable_service n-net enable_service q-svc,q-agt,q-dhcp,q-l3,q-meta,neutron,q-lbaas,q-fwaas Q_AGENT=linuxbridge ENABLE_TENANT_VLANS=True TENANT_VLAN_RANGE=3001:4000 PHYSICAL_NETWORK=default LOG_COLOR=True LOGDIR=$DEST/logs SCREEN_LOGDIR=$LOGDIR/screen # use TryStackgit mirror

GIT_BASE=http://git.trystack.cn NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git SPICE_REPO=http://git.trystack.cn/git/spice/spice-html5.git computelocal.conf MULTI_HOST=true HOST_IP=192.168.80.200 ADMIN_PASSWORD=admin MYSQL_PASSWORD=secret RABBIT_PASSWORD=secret SERVICE_PASSWORD=secret SERVICE_TOKEN=abcdefghijklmnopqrstuvwxyz SERVICE_HOST=192.168.80.100 MYSQL_HOST=$SERVICE_HOST RABBIT_HOST=$SERVICE_HOST GLANCE_HOSTPORT=$SERVICE_HOST:9292 Q_HOST=$SERVICE_HOST KEYSTONE_AUTH_HOST=$SERVICE_HOST KEYSTONE_SERVICE_HOST=$SERVICE_HOST ENABLED_SERVICES=n-cpu,q-agt,neutron Q_AGENT=linuxbridge ENABLE_TENANT_VLANS=True NOVA_VNC_ENABLED=True NOVNCPROXY_URL="http://$SERVICE_HOST:6080 /vnc_auto.html" VNCSERVER_LISTEN=$HOST_IP VNCSERVER_PROXYCLIENT_ADDRESS=$VNCSE RVER_LISTEN

(6)

Fig. 5 deployment output of controller node Fig. 6 deployment output of compute node

IV. TESTANDVERIFICATIONOFOURDEVSTACKCLOUDCOMPUTINGPLATFORM

Here, the third VM (Win7 Operating System, 2G RAM, 6Ghard disk and 1 NIC) as a platform user is created by the software VMware workstation in current physical computer. Network adapter type is setup NAT mode (e.g., IP address is 192.168.80.201) and it can use web browser access to dashboard of the Devstack controller node throughout URL address of http://192.168.80.100. A test Instance (cloud host) is created as follows:

(1)Firstly, cirros-0.3.3-x86_64-disk.image is the minimum linux test mirror (about 9M), which can be downloaded from website (http://download.cirros-cloud.net). Then it can be uploaded from user computer to controller node throughout management dashboard of Openstack.

(2)Next, a local-network is created, subnets address is setup with 172.10.10.0/24, gateway IP address is setup with 172.10.10.1 and default DHCP server’s IP address is 172.10.10.2.

(3)Finally, a new instance is created by choosing cirros image, local-network and m1.tiny shown in Fig.7. Openstack user can directly login to the instance through the command line console and the instance can communicate with DHCP Server shown in Fig.8.

In our experimental cloud platform, most of the instance life cycle can be implemented and shown including launch, shut off, start, soft/hard reboot, suspend/resume, even resize and migrate under the different operating scenarios, which may deepen understanding of Openstack’s components interaction.

Fig.7 creating instance of Openstack platform Fig.8 command operating of instance console

CONCLUSIONSANDFUTUREWORK

(7)

using automated scripting tools named Devstack. Experiment shows that our framework is effective and feasible. It is based on one controller and compute node, which can provide a real debugging research cloud platform of personal learning as long as the personal PC hardware requirements especially large RAM are fully ensured.

In order to better simulate the production environment, the next work is to deploy Openstack cloud platform using third party tools such as Fuel, deploy dual redundancy of controller node and install network node in each compute node for relieving export flow of control node.

ACKNOWLEDGMENTS

This work was partly supported by the Natural Science Foundation of Zhejiang (LY16G020012 and LY16F020012), Major Research Projects of Humanities and Social Sciences in Colleges and Universities of Zhejiang (2014GH015).

REFERENCES

[1]. G Garrison, S Kim, RL Wakefield,―Success factors for deploying cloud computing‖,Communications of the ACM, vol.55,2012,pp.62-68.

[2]. F. callegati, W. Cerroni, C. Contoli, et al,‖ performance of network virtualization in cloud computing infrastructures: the Openstack Case‖, IEEE 3rd International Conference on Cloud Network, 2014, pp.132-137.

[3]. G. Robles, J.M. Gonzalez and C. Cervigon. ―Estimating development effort in free/open source software projects by mining software repositories: a case study of Openstack‖, Proceedings of the 11th IMSR, India, 2014,pp. 222-231.

[4]. ShalmaliSuhas, Sahasrabudhe, shilpa S. Sonawani. ―Comparing Openstack and VMware‖, International Conference an Advances in Electronics, computers and Communications (ICAECC), 2014,pp. 128-131.

[5]. Openstack home page, available: http://www.openstack.org/

[6]. T. Rosado and J. Bernardino, ―An overview of Openstack architecture‖, Proceeding of the 18th IDEAS, Portugal, 2014, pp.366-368.

[7]. Cen shao, Bo liang, Feng Wang, et al. ―Openstack platform and its application in big data processing‖, 8th International Conference on Intelligent Network and Intelligent Systems,2015,pp.98-101.

[8]. JunWang,‖ Implementation of cloudy platform of enterprise private cloud based on Openstack‖,Dalian University of Technology Master Degree Paper, China, 2015.

[9]. Xiaoning Li, leiLi, Lianwen Jin, et al,‖ Constructing a Private Cloud Computing Platform based on Openstack‖, telecommunications science, vol.27,2012,pp.1-8.

[10]. Youli Zhou, ―Openstack platform based on single node and single network card‖, computer knowledge and technology, vol.13, 2016, pp.60-62.

[11]. Devstack home page,available: http://docs.openstack.org/developer/Devstack/

Figure

Fig. 5 deployment output of controller node   Fig. 6 deployment output of compute node

References

Related documents

As we get ready to be part of the Appeal, this year the Archdiocese encourages us to reflect on words “Come, follow me… and bring hope to the world.” I encourage us all to

VMware NSX Data Center is a complete Layer 2–7 network virtualization and security platform that enables the virtual cloud network, a software-defined approach to networking

Among village clusters initiated by dengue cases detected in the school-based cohort, nearly all of the DENV viruses sequenced from both humans and mosquitoes within a cluster

Base: 230 IT executives in North America and Europe Source: A commissioned study conducted by Forrester Consulting on behalf of TeamQuest, March 2011. The proportion of

It is from this stand point that the most enthusiastic prospects have no reservations in arguing that the Internet fulfills the necessary conditions to meet the basic requirements

In cases where no recommendation is made, choose the media setting closest to the KODAK Wide-Format Inkjet Media you are using.. For example, if you are printing on KODAK

The questions and answers in this presentation are paraphrased opinions of the panelists and should not be considered final acquisition decisions regarding a future potential

Node v 1 is now in awaking state and detects o as it moves from F 1 to F 2. A monitor in a face indicating next probable target’s direction partition of a sensor network. When a