Deploying a distributed application with OpenStack

Similar documents
Deploying a distributed application with OpenStack

Deploying a distributed application with OpenStack

Launching Xacta 360 Marketplace AMI Guide June 2017

App Orchestration 2.6

Admin Report Kit for Exchange Server

Getting Started with the SDAccel Environment on Nimbix Cloud

Dynamic Storage (ECS)

CMC Blade BIOS Profile Cloning

1 Getting and Extracting the Upgrader

Demand Forecasting. For. Microsoft Dynamics 365 for Operations. Technical Guide. Release 7.1. December 2017

Amazon Lab: Deploying applications on AWS

Course Overview Basic Linux commands like working with files and directories is desired.

HPE LoadRunner Best Practices Series. LoadRunner Upgrade Best Practices

1 Getting and Extracting the Upgrader

These tasks can now be performed by a special program called FTP clients.

CaseWare Working Papers. Data Store user guide

Tutorial on Eclipse Leshan Internet of Things (2IMN15) , Eindhoven University of Technology By Leila F. Rahman

Date: October User guide. Integration through ONVIF driver. Partner Self-test. Prepared By: Devices & Integrations Team, Milestone Systems

SUPPLIER CONNECTION SUPPLIER REFERENCE GUIDE FOR LEAR SUPPLIERS

AvePoint Discovery Tool 3.5. User Guide

IMC QoS Manager 7.3 (E0502) Copyright 2015, 2016 Hewlett Packard Enterprise Development LP

Click Studios. Passwordstate. RSA SecurID Configuration

Enterprise Installation

RTX includes new functionality, see the product Release Notes for a full list of new features.

CounterSnipe Software Installation Guide Software Version 10.x.x. Initial Set-up- Note: An internet connection is required for installation.

CLIC ADMIN USER S GUIDE

Bitnami LAMP for Huawei Enterprise Cloud

VMware AirWatch SDK Plugin for Apache Cordova Instructions Add AirWatch Functionality to Enterprise Applicataions with SDK Plugins

USO RESTRITO. SNMP Agent. Functional Description and Specifications Version: 1.1 March 20, 2015

Cisco Tetration Analytics, Release , Release Notes

Dell EqualLogic PS Series Arrays: Expanding Windows Basic Disk Partitions

Mission Antyodaya Android Mobile & Web Application. Frequently Asked Questions

TECHNICAL REQUIREMENTS

Packet Tracer - Configuring a Zone-Based Policy Firewall (ZPF)

LiveEngage and Microsoft Dynamics Integration Guide Document Version: 1.0 September 2017

Your New Service Request Process: Technical Support Reference Guide for Cisco Customer Journey Platform

How to set up Dell SonicWALL Aventail SRA Appliance with OPSWAT GEARS Client

Quick Installation Guide

1 Getting and Extracting the Upgrader

Practical Exercises in Computer Networks and Distributed Systems

CROWNPEAK DESKTOP CONNECTION (CDC) INSTALLATION GUIDE VERSION 2.0

Enterprise Chat and Developer s Guide to Web Service APIs for Chat, Release 11.6(1)

IT Essentials (ITE v6.0) Chapter 5 Exam Answers 100% 2016

Implementing Microsoft Azure Infrastructure Solutions Syllabus

Overview of Data Furnisher Batch Processing

Quick Guide on implementing SQL Manage for SAP Business One

Dolby Conference Phone Support Frequently Asked Questions

Advanced and Customized Net Conference Powered by Cisco WebEx Technology

DIVAR IP 3000 Field Installation Guide

Tips For Customising Configuration Wizards

Firmware Download Anybus X-gateway Modbus-TCP

KNX integration for Project Designer

Spectrum Enterprise SIP Trunking Service Zultys MX Phone System v9.0.4 IP PBX Configuration Guide

Upgrade Guide. Medtech Evolution Specialist. Version 1.11 Build (October 2018)

MyUni Adding Content. Date: 29 May 2014 TRIM Reference: D2013/ Version: 1

Planning, installing, and configuring IBM CMIS for Content Manager OnDemand

Internet Explorer Configuration Reference

User Guide. ACE Data Source. OnCommand Workflow Automation (WFA) Abstract PROFESSIONAL SERVICES

Troubleshooting Citrix- Published Resources Configuration in VMware Identity Manager

EView/400i Management Pack for Systems Center Operations Manager (SCOM)

Release Notes. Dell SonicWALL Security firmware is supported on the following appliances: Dell SonicWALL Security 200

WHITE PAPER January 2019 RASPBERRY PI 3B+ AND VMWARE PULSE 1.1. Version 0.1

Oracle Database 11g Replay: The In-built Recorder for Real Application Testing

GPA: Plugin for Prerequisite Checks With Solution Manager 7.1

Policy Management Cloud Disaster Recovery 12.23

DocAve 6 Deployment Manager

Creating Relativity Dynamic Objects

Interoperability between ProCurve WESM zl and HP ipaq Voice Messenger smartphone

CCNA 1 Chapter v5.1 Answers 100%

70-413: Designing and Implementing a Server Infrastructure Course 01 - Server Infrastructure - Upgrade and Migration

Dear Milestone Customer,

Element Creator for Enterprise Architect

Customer Information. Agilent 2100 Bioanalyzer System Startup Service G2949CA - Checklist

DocAve 6 Report Center

ThinManager Certification Test Lab 2

To start your custom application development, perform the steps below.

INTEGRATING OBSERVEIT WITH HP ARCSIGHT CEF

Creating Relativity Dynamic Objects

HPE AppPulse Mobile. Software Version: 2.1. IT Operations Management Integration Guide

Create your Applicant Area

Apache Solr for FSI SERVER. User Manual. Version 4.5

TPP: Date: October, 2012 Product: ShoreTel PathSolutions System version: ShoreTel 13.x

CommandCenter Secure Gateway Release Virtual CC

System Requirements for SurveyTracker Plus 6.0

istartsmart 3.5 Upgrade - Installation Instructions

HP MPS Service. HP MPS Printer Identification Stickers

Assignment #5: Rootkit. ECE 650 Fall 2018

MySabre API RELEASE NOTES MYSABRE API VERSION 2.0 (PART OF MYSABRE RELEASE 7.0) OCTOBER 28, 2006 PRODUCTION

Cisco EPN Manager Operations

Xilinx Answer Xilinx PCI Express DMA Drivers and Software Guide

Troubleshooting Citrix- Published Resources Configuration in VMware Identity Manager

The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL

Stoneware Inc. Citrix NFuse Configuration. Stoneware, Inc. Configuration Sheet Date: January 2005

Managing Your Access To The Open Banking Directory How To Guide

Student Quick Reference Guide

Max 8/16 and T1/E1 Gateway, Version FAQs

MySabre API RELEASE NOTES MYSABRE API VERSION 2.1 (PART OF MYSABRE RELEASE 7.1) DECEMBER 02, 2006 PRODUCTION

USER GUIDE. Thanks for purchasing the igate! You ll need to follow these five Configuration Steps to get your igate up and running:

Installation and Getting Started

The screenshots/advice are based on upgrading Controller 10.1 RTM to 10.1 IF6 on Win2003

Transcription:

Deplying a distributed applicatin with OpenStack Cntext and Prerequisites This labratry is t learn usage f OpenStack (OS) thrugh: 1. the hrizn graphical interface f OpenStack (Exercise 1), 2. the cmmand-line tl: OpenStack client, 3. the OpenStack SDK (Exercise 2) 4. the OpenStack bject strage service Swift (Exercise 3, Sessin 5: CC-STRG) The fllwing resurces and tls are required fr this labratry sessin: 1. An Ubuntu 14.04 machine, Mac OS r Windws machine (with putty) 2. An accunt n hepiaclud infrastructure Lab deliverables: Submit yur lab reprt t the Mdle space f the curse. Lab due date: See due date n the mdle web site 1

Intrductin This lab aims t deply a distributed applicatin n an OpenStack infrastructure (hepiaclud: lsds.hesge.ch/hepiaclud). The applicatin cllects and stre data frm several sensrs installed in a given building. Sensrs are used t measure temperature, humidity, brightness and physical presence. Figure 1 shws the lcatin f the sensrs in varius rms f hepia building. Figure 1: Lcatins f sensrs in 4 th and 5 th flrs f hepia building The system is cmpsed f fur layers (figure 2): 1. Sensr layer: it includes multi-functin sensrs that measure temperature, humidity, brightness and presence. Each sensr is cnnected (paired) t ne f the three Raspberries (pi1, pi2, pi3 in Figure 1): ne Raspberry Pi n the furth flr and tw Raspberries are n the fifth flr. 2. Raspberry Pi layer: Raspberries are used t cllect data received frm multiple sensrs. Each Raspberry Pi implements a REST server that stres the data received frm the sensrs cnnected t it. 3. Clud Layer: this layer is used t cllect data received frm the raspberries and stre them in a database. A REST Client is used t retrieve data frm the raspberries REST servers while a REST server is used t allw secured access t the data. 4. End user app. layer: This layer retrieves data frm the Clud layer (by means f the REST Server) and uses them fr the specific needs f end users applicatins. Figure 2: System architecture 2

We can als view the system as a set f instances. Each f them belngs t ne f the fur fllwing types f instances: Raspberry instances: They crrespnd t the raspberry layer. A raspberry instance is a REST server, which cllects data frm paired sensrs. This lab des nt deal with the raspberry instances. RESTClient instances: They are deplyed in the clud (clud layer), and are respnsible f: cllecting data frm Raspberry instances, string data n the MngDB instances. MngDB Server instances: They are deplyed in the clud (clud layer). These instances are used t manage a MngDB database. RESTServer instances: They are deplyed in the clud (clud layer). These instances retrieve data frm MngDB instances and prvide them t any end user applicatin The gal f this lab is t: deply n the hepiaclud infrastructure: ne MngDB Server instance, ne RESTServer instance and, ne RESTClient instance, visualise data stred in the MngDB database. The binaries f RESTServer and RESTClient instances are available n the mdle site f the curse. Exercise 1: Using hrizn t deply the system (manual deplyment) The gal f this exercise is t create the three instances MngDB instance, RESTServer instance and RESTClient instance by using the web interface prtal (hrizn) f hepiaclud. Hw t create instances? Read this URL t understand hw t create and cnnect t instances n hepiaclud: http://lsds.hesge.ch/hepiacludwebinterface/ Creatin f a MngDB instance Image: Ubuntu 14.04 Type: m1.small Access yur instance by ssh and install MngDB: sud apt-get install mngdb-server Cnfiguratin: Change the /etc/mngdb.cnf cnfiguratin file in rder t allw the database listen n the netwrk: change «bind_ip = 127.0.0.1» by «bind_ip = 0.0.0.0» rebt the machine: sud rebt T check whether the database listens n the netwrk: sud netstat --listen -a -p Create a snapsht f yur instance s as yu can use it later withut any reinstallatin and/r cnfiguratin. 3

Creatin f a RESTClient instance Create an m1.small instance using the image Ubuntu 14.04. This distributin includes pythn Versin 2.7.x. When the instance is created, access it by ssh and fllw these instructins: 1. sud apt-get install pythn-pip 2. sud pip install pymng 3. cpy the pythn REST client prgram: wget URL «lcatin f the restclient.py file» r use scp cmmand 4. Execute the prgram: pythn restclient.py IP MngDB instance & where IP MngDB instance is the address f the MngDB instance D nt frget that the MngDB database needs t be reached n these prts: 27017 and 28017 Create a snapsht f yur instance s as yu can use it later withut any reinstallatin and/r cnfiguratin. Creatin f a RESTServer instance Create an m1.small instance using the image Ubuntu 14.04. When the instance is created, access it by ssh and fllw these instructins: 1. Sud apt-get update 2. sud apt-get install pythn-pip 3. sud pip install pymng 4. sud pip install flask 5. cpy the pythn REST server prgram: wget «lcatin f the restserver.py file» r use scp cmmand 6. Execute the prgram: pythn restserver.py MngDB Instance IP & The REST server listens n prt 18000 Create a snapsht f yur instance s as yu can use it later withut any reinstallatin and/r cnfiguratin. Hw t check that the system is peratinal? T check that data are crrectly stred in the MngDB database, submit a http request t the REST server. Data cllected frm respberries are accessed using these three URLs: curl http://ip:18000/getlastsensrsvalues/pi1 curl http://ip:18000/getlastsensrsvalues/pi2 curl http://ip:18000/getlastsensrsvalues/pi3 where IP is the IP address f the RESTSever instance. The curl cmmand must be executed within hepiaclud. Deliverables (see due date n the mdle web site) In yur lab reprt: 4

1. In yur hepiaclud accunt, mve t Instances tab, create a screensht f the three instances yu have created, and insert it in yur dcument. 2. Add a screensht f the data retrieved frm ne f the three raspberries (Figure 3). Specify in yur dcument: a. The URL yu have used t cllect data b. the date and time (date, hur, minute) f the http request yu made t get this data. Figure 3: data retrieved frm MngDB At the end f the exercise, d nt frget de delete yur instances. Exercise 2: Using OpenStack SDK t deply the system (autmatic deplyment) The aim f this exercise is t develp a Pythn script which autmatically deplys the whle system (three instances). VMs must be created and mnitred by using OpenStack SDK: https://develper.penstack.rg/sdks/pythn/penstacksdk/ Hw t install OpenStack SDK? Type: pip install penstacksdk, n a fresh installed Ubuntu machine (yu can create a dedicated instance n hepiaclud): https://develper.penstack.rg/sdks/pythn/penstacksdk/users/index.html The Pythn script t develp is assumed t execute these peratins: 1. creates ne MngDB instance, 2. creates ne RESTClient instance and launch the prgram client.py, 3. creates ne RESTServer instance and launch the prgram server.py, 4. deletes the VMs when the user presses A (Abrd) Fr pints 1, 2 and 3, use snapshts already created in Exercise 1. Deliverable (see due date n the mdle web site): 1. Pythn script using OpenStack SDK. The cde must be dcumented Exercise 3: Using Swift (bject strage) t stre data The purpse f this exercise is t expand the REST Server prgram s that it can stre sensrs data in a swift bject strage. The versin f the REST Server used in exercises 1 and 2, supprts three rutes: 1. /getlastsensrvalue/<string:pi_id>/<int:sensr_id>. This rute retrieves all data cming frm sensr_id, cnnected t pi_id raspberry. 2. /getlastsensrsvalues/<string:pi_id>. This rute retrieves all data cllected by pi_id raspberry. 3. /getsensrvaluesinlasthurs/<string:pi_id>/<int:sensr_id>/<int:hurs>. This rute retrieves all data f sensr_id. This sensr is cnnected t pi_id raspberry. The gal f this exercises is t add a new rute: /getsensrvaluesbetweendates/<string:pi_id>/<int:sensr_id>/<string:date1>/<string:date2> This rute is assumed t create a swift cntainer and write in it a swift bject. The swift bject cntains data retrieved frm sensr_id, cnnected t pi_id, between date1 and date2. 5