Algorithms and Techniques for Automated Deployment and Efficient Management of Large-Scale Distributed Data Analytics Services B

Total Page:16

File Type:pdf, Size:1020Kb

Algorithms and Techniques for Automated Deployment and Efficient Management of Large-Scale Distributed Data Analytics Services B ALGORITHMS AND TECHNIQUES FOR AUTOMATED DEPLOYMENT AND EFFICIENT MANAGEMENT OF LARGE-SCALE DISTRIBUTED DATA ANALYTICS SERVICES By Anirban Bhattacharjee Dissertation Submitted to the Faculty of the Graduate School of Vanderbilt University in partial fulfillment of the requirements for the degree of DOCTOR OF PHILOSOPHY in Computer Science February 29, 2020 Nashville, Tennessee Approved: Aniruddha S. Gokhale, Ph.D. Abhishek Dubey, Ph.D. Douglas C. Schmidt, Ph.D. Gabor Karsai, Ph.D. Hongyang Sun, Ph.D. DEDICATION To my late Grandmother, Bina Roy Chowdhury, infinitely inspirational and To my beloved wife, Malabika, unbelievably encouraging and To my parents, Ashok and Nilanjana Bhattacharjee, amazingly supportive ii ACKNOWLEDGMENTS I express my sincere gratitude to those who have contributed to this thesis and supported me during this fantastic journey. I am grateful to all of those with whom I have had the pleasure to work during these years. First and foremost, I would like to express my sincere thanks to my advisor Dr. Anirud- dha S. Gokhale, for providing me the opportunity to work in the Distributed Object Com- puting (DOC) group at the Vanderbilt Vanderbilt School of Engineering. His thoughtful advice, guidance, mentorship, and unwavering support over the years helped me at various stages of my research. I appreciate his valuable suggestions, comments, and leadership, which encouraged me to learn more every day and to become an independent researcher. His support has been the most worthy experience for me, and I owe him a big thanks once again for being a fantastic advisor and mentor. I want to thank Dr. Abhishek Dubey, Dr. Douglas C. Schmidt, Dr. Gabor Karsai, and Dr. Hongyang Sun, for serving on my dissertation committee. Each of my dissertation committee members has provided extensive professional guidance and taught me a great deal about scientific research. I want to acknowledge the collaboration from Dr. Hongyang Sun in my multiple research works. He helped me remarkably in formulating the research problems in various areas. Thank you, Dr. Hongyang Sun, for your valuable time, co- operation, and generosity, which set this dissertation work possible. I am grateful to Dr. Douglas Fisher for allowing me to join the Vanderbilt University and for mentoring me during the early stage of my Ph.D. program. I would especially like to thank Dr. Xenofon Koutsoukos for his mentorship, skeptical feedbacks, and deep insights at the DDDAS project meetings. I would also like to thank Dr. Zhifeng Yun for his mentorship and leadership during my internship days at ARM Ltd. This work would not have been possible without the financial support of various agen- cies, and I’m grateful for their generous support. This thesis was supported in part by iii NEC Corporation, Kanagawa, Japan, and NSF US Ignite CNS 1531079, AFOSR DDDAS FA9550-18-1-0126, and AFRL/Lockheed Martin’s StreamlinedML program. I appreciate the feedback and insights from our sponsors, Mr. Thomas Damiano of Lockheed Martin and Dr. Takayuki Kuroda of NEC Corporation. My sincere gratitude is reserved for my colleague, Ajay Dev Chhokra, for his collabo- ration and research contributions on multiple projects. His valuable insights and collabo- ration made the last chapter of the dissertation possible. His contribution towards the third chapter, Barista, is also distinguishable, where he helped me to devise the problem and algorithm. I would also like to thank the members of the DOC group, Shashank Shekhar, Yogesh Barve, Shweta Khare, Shunxing Bao, Subhav Pradhan, Prithviraj Patil, Zhuangwei Kang, and Robert Canady for their collaboration, feedback, and encouragement. I would especially like to thank Shashank Shekhar, Yogesh Barve, Shweta Khare, and Zhuangwei Kang for collaborating with me on multiple projects. I also thank Shreyas Ramakrishna for his deep insights and thoughtful ideas, which helped define the last chapter of this disser- tation. Nobody has been more valuable to me in the pursuit of this Ph.D. journey than my family members. I’m hugely thankful to my late grandmother, Bina Roy Chowdhury, with- out whose support the Ph.D. journey would have never begun. I want to acknowledge the patience, support, and encouragement of my parents, Ashok and Nilanjana Bhattacharjee. Most importantly, I would like to express my gratitude to my beloved wife, Malabika, for her continuous support during the ups and downs of my Ph.D. journey. iv TABLE OF CONTENTS Page DEDICATION . ii ACKNOWLEDGMENTS . iii LIST OF TABLES . xiii LIST OF FIGURES . xiv I Introduction . 1 I.1 Emerging Trends . 1 I.2 Key Research Challenges and Solution Needs . 5 I.2.1 Requirement 1: Automation of the ML Development Pipeline . 5 I.2.1.1 Challenge 1: Abstraction of ML Pipeline . 6 I.2.1.2 Challenge 2: Code-generation for ML Model Training and Evaluation . 6 I.2.1.3 Challenge 3: Support for ML Deployment . 7 I.2.2 Requirement 2: Automation of Infrastructure and Application Pro- visioning . 7 I.2.2.1 Challenge 4: Abstraction of Application and Infrastruc- ture details . 8 I.2.2.2 Challenge 5: Infrastructure Code-generation from Abstract Model . 8 I.2.2.3 Challenge 6: Verification of Abstract Deployment Model . 8 I.2.2.4 Challenge 7: Extensibility and Re-usability . 9 I.2.3 Requirement 3: Proactive Resource Management . 9 I.2.3.1 Challenge 8: Workload Variation . 9 I.2.3.2 Challenge 9: Optimal Resource Selection . 10 v I.2.3.3 Challenge 10: Proactive Resource Provisioning . 10 I.2.4 Requirement 4: Interference-aware Strategy for ML Model Update . 10 I.2.4.1 Challenge 11: Heterogeneity-aware Data Management . 10 I.2.4.2 Challenge 12: Resource Interference-awareness . 11 I.3 Organization of the Dissertation . 11 II Erudite: A Lifecycle Management Framework for Machine Learning based Pre- dictive Analytics Applications . 13 II.1 Introduction . 13 II.1.1 Emerging Trends . 13 II.1.2 Challenges and State-of-the-art Solutions . 13 II.1.3 Overview of Technical Contributions . 15 II.1.4 Organization of the Chapter . 17 II.2 Related Work . 17 II.3 Problem Formulation . 20 II.3.1 Motivating Case Study and Key Challenges . 21 II.3.1.1 Deployment Challenges . 22 II.3.1.2 Data Movement and Management Challenges . 22 II.3.1.3 Model Building and Dissemination Challenges . 23 II.3.1.4 Challenges in Determining the Right Hardware Needed . 24 II.3.1.5 Runtime Resource Monitoring Challenges . 24 II.3.2 Solution Requirements . 24 II.3.2.1 Requirement 1: Automated Deployment of Application components in Heterogeneous environment . 25 II.3.2.2 Requirement 2: Framework for Flexible ML Service De- velopment and Encapsulation . 25 II.3.2.3 Requirement 3: Performance Monitoring and Intelligent Resource Allocation . 26 vi II.4 Design and Implementation of Erudite . 26 II.4.1 Addressing Requirement 1: CloudCAMP - Automated Deployment of Application Components in Heterogeneous Resources . 27 II.4.1.1 Meta-model for Heterogeneous Resources . 28 II.4.1.2 Meta-model for Data Ingestion Frameworks . 29 II.4.1.3 Meta-model for Data Analytics Applications . 30 II.4.1.4 Meta-model for Data Storage Services . 30 II.4.2 Addressing Requirement 2: Erudite Development Kit for AI/ML Model Development . 30 II.4.2.1 Main Meta-model for Erudite Framework . 31 II.4.2.2 Meta-model for Machine Learning Algorithms . 32 II.4.2.3 Model Evaluation and Flexible ML Service Encapsulation 33 II.4.3 Addressing Requirement 3: Framework for Performance Monitor- ing and Intelligent Resource Management . 34 II.4.3.1 Performance Monitoring . 35 II.4.3.2 Resource Management . 35 II.4.4 Support for Collaboration and Versioning . 37 II.5 Evaluation . 38 II.5.1 Evaluating the Rapid Model Development Framework . 38 II.5.2 Evaluation of Rapid Application Prototyping Framework . 40 II.5.3 Performance Monitoring on Heterogeneous Hardware . 41 II.5.4 Resource Management . 43 II.6 Conclusion . 45 II.6.1 Summary . 45 vii III CloudCAMP: A Model-Driven Approach to Automate Cloud Services Deploy- ment and Management . 46 III.1 Introduction . 46 III.1.1 Motivation . 46 III.1.2 Requirements and State-of-the-art Solutions . 47 III.1.2.1 Requirement 1: Reduction in specification details needed for deployment . 47 III.1.2.2 Requirement 2: Auto-completion of Infrastructure Provi- sioning . 48 III.1.2.3 Requirement 3: Support for Continuous Integration, Mi- gration, and Delivery . 49 III.1.3 Overview of Technical Contributions . 51 III.1.4 Organization of the Chapter . 52 III.2 Related Work . 52 III.3 Design and Implementation of CloudCAMP . 55 III.3.1 System Architecture of CloudCAMP . 55 III.3.2 System Implementation of CloudCAMP . 57 III.3.3 CloudCAMP Domain-specific Modeling Language (DSML) . 58 III.3.3.1 Design Rationale for CloudCAMP Meta-models . 58 III.3.3.2 Meta-model for the Cloud Platforms . 59 III.3.3.3 Meta-model for Application Components . 61 III.3.3.4 Defining the Relationship among Components . 61 III.3.3.5 Extensibility of the Meta-model . 62 III.3.4 Design of CloudCAMP Knowledge Base . 63 III.3.4.1 Design of Knowledge Base Database . 63 III.3.4.2 Design of Knowledge Base Template . 64 III.3.4.3 Extensibility of the Knowledge Base . 64 viii III.3.5 Generative Capabilities of CloudCAMP DSML . 65 III.3.5.1 Knowledge Base for Generation of Infrastructure-as-code Solution for Deployment . 66 III.3.5.2 Determining the Order of Deployment and Execution . 66 III.3.5.3 Generation of Infrastructure-as-code for Migration . 68 III.3.5.4 Support for Continuous Delivery . 69 III.3.5.5 Constraints Checking for Correctness Business Models .
Recommended publications
  • Code Smell Prediction Employing Machine Learning Meets Emerging Java Language Constructs"
    Appendix to the paper "Code smell prediction employing machine learning meets emerging Java language constructs" Hanna Grodzicka, Michał Kawa, Zofia Łakomiak, Arkadiusz Ziobrowski, Lech Madeyski (B) The Appendix includes two tables containing the dataset used in the paper "Code smell prediction employing machine learning meets emerging Java lan- guage constructs". The first table contains information about 792 projects selected for R package reproducer [Madeyski and Kitchenham(2019)]. Projects were the base dataset for cre- ating the dataset used in the study (Table I). The second table contains information about 281 projects filtered by Java version from build tool Maven (Table II) which were directly used in the paper. TABLE I: Base projects used to create the new dataset # Orgasation Project name GitHub link Commit hash Build tool Java version 1 adobe aem-core-wcm- www.github.com/adobe/ 1d1f1d70844c9e07cd694f028e87f85d926aba94 other or lack of unknown components aem-core-wcm-components 2 adobe S3Mock www.github.com/adobe/ 5aa299c2b6d0f0fd00f8d03fda560502270afb82 MAVEN 8 S3Mock 3 alexa alexa-skills- www.github.com/alexa/ bf1e9ccc50d1f3f8408f887f70197ee288fd4bd9 MAVEN 8 kit-sdk-for- alexa-skills-kit-sdk- java for-java 4 alibaba ARouter www.github.com/alibaba/ 93b328569bbdbf75e4aa87f0ecf48c69600591b2 GRADLE unknown ARouter 5 alibaba atlas www.github.com/alibaba/ e8c7b3f1ff14b2a1df64321c6992b796cae7d732 GRADLE unknown atlas 6 alibaba canal www.github.com/alibaba/ 08167c95c767fd3c9879584c0230820a8476a7a7 MAVEN 7 canal 7 alibaba cobar www.github.com/alibaba/
    [Show full text]
  • Fault Tolerant, Self-Healing and Vendor Neutral Multi-Cloud Patterns and Framework Focused on Deployment and Management
    Fault Tolerant, Self-Healing and Vendor Neutral Multi-Cloud Patterns and Framework Focusing on Deployment and Management by Andrey Rybka Submitted in partial fulfillment of the requirements for the degree of Doctor of Professional Studies in Computing at School of Computer Science and Information Systems Pace University October 2017 Version 2.5 We hereby certify that this dissertation, submitted by Andrey Rybka, satisfies the dissertation requirements for the degree of Doctor of Professional Studies in Computing and has been approved. _____________________________________________-________________ Dr. Lixin Tao Date Chairperson of Dissertation Committee _____________________________________________-________________ Dr. Charles Tappert Date Dissertation Committee Member _____________________________________________-________________ Dr. Ronald Frank Date Dissertation Committee Member School of Computer Science and Information Systems Pace University 2017 Abstract Fault Tolerant, Self-Healing and Vendor Neutral Multi-Cloud Patterns and Framework Focused on Deployment and Management by Andrey Rybka Submitted in partial fulfillment of the requirements for the degree of Doctor of Professional Studies in Computing October 2017 Many organizations are looking to migrate to the cloud and looking for the best way to do it securely, reliably and without vendor lock in. Most organizations have to pick a cloud provider that uses proprietary APIs and Software. Most vendors currently do not implement any cloud API standards i.e. TOSCA or OASIS CAMP. Therefore,
    [Show full text]
  • Uforge Appcenter User Documentation Release 3.8
    UForge AppCenter User Documentation Release 3.8 FUJITSU Jun 10, 2019 Contents 1 Getting Started 3 1.1 Signing In to UForge Portal.......................................3 1.2 Keyboard Actions............................................5 1.3 Basic Concepts..............................................6 2 Managing Your Accounts 9 2.1 Modifying Your User Profile.......................................9 2.2 Viewing Your Statistics......................................... 10 2.3 Changing Your Password......................................... 11 3 Managing Your Credentials 13 3.1 Managing Cloud Accounts........................................ 13 3.2 Managing Your Artifact Accounts.................................... 15 3.3 Managing API Keys........................................... 16 3.4 Managing SSH Keys........................................... 17 4 Managing Appliance Templates 19 4.1 Supported Operating Systems...................................... 19 4.2 Creating an Appliance Template..................................... 20 4.3 Modifying an Appliance Template.................................... 24 4.4 Managing the OS Profile......................................... 25 4.5 Updating the Install Profile........................................ 26 4.6 Managing Configuration......................................... 33 4.7 Adding Custom Software Components................................. 35 4.8 Tracking OS Package Updates...................................... 42 4.9 Listing Appliance Templates....................................... 44 4.10 Cloning
    [Show full text]
  • Universidad Politécnica De Madrid a Proposal
    UNIVERSIDAD POLITÉCNICA DE MADRID ESCUELA TÉCNICA SUPERIOR DE INGENIEROS DE TELECOMUNICACIÓN A PROPOSAL FOR A MODEL-BASED APPROACH FOR ADAPTING SOFTWARE CONFIGURATION TO RUNTIME ENVIRONMENTS TESIS DOCTORAL ÁLVARO NAVAS BALTASAR Ingeniero de Telecomunicación 2015 DEPARTAMENTO DE INGENIERÍA DE SISTEMAS TELEMÁTICOS ESCUELA TÉCNICA SUPERIOR DE INGENIEROS DE TELECOMUNICACIÓN UNIVERSIDAD POLITÉCNICA DE MADRID A PROPOSAL FOR A MODEL-BASED APPROACH FOR ADAPTING SOFTWARE CONFIGURATION TO RUNTIME ENVIRONMENTS Autor: ÁLVARO NAVAS BALTASAR Ingeniero de Telecomunicación Director: JUAN CARLOS DUEÑAS LÓPEZ Doctor Ingeniero de Telecomunicación Codirector: FÉLIX CUADRADO LATASA Doctor Ingeniero de Telecomunicación 2015 Tribunal nombrado por el Magfco. Y Excmo. Sr. Rector de la Universidad Politécnica de Madrid, el día de de 2016. Presidente: Vocal: Vocal: Vocal: Secretario: Suplente: Suplente: Realizado el acto de defensa y lectura de la Tesis el día de de 2016 en la E.T.S.I.T. habiendo obtenido la calificación de EL PRESIDENTE LOS VOCALES EL SECRETARIO Abstract Agile development methodologies have risen in popularity within the industry in recent years due to the speed and reliability of the processes they propose. The DevOps philosophy and specifically the methodologies derived from it such as Continuous Delivery and Continuous Deployment push for a totally automated management of the application lifecycle, from the source code to the software running in production environment. Automation in this regard is used as a means to produce repeatable, reliable and fast processes. However, not all parts of the Continuous methodologies are completely automatized. In particular, management of runtime parameter configuration is a problem that has increased its impact in deployment process due to the scalability and elasticity provided by cloud technologies.
    [Show full text]
  • 1484244156 Atos
    Attachment A: NASPO ValuePoint Master Agreement Terms and Conditions 1. Master Agreement Order of Precedence a. Any Order placed under this Master Agreement shall consist of the following documents: (1) A Participating Entity’s Participating Addendum1 (“PA”); (2) NASPO ValuePoint Master Agreement Terms & Conditions, including the applicable Exhibits2 to the Master Agreement; and (3) A Service Level Agreement issued against the Participating Addendum. b. These documents shall be read to be consistent and complementary. Any conflict among these documents shall be resolved by giving priority to these documents in the order listed above. Contractor terms and conditions that apply to this Master Agreement are only those that are expressly accepted by the Lead State and must be in writing and attached to this Master Agreement as an Exhibit or Attachment. 2. Definitions - Unless otherwise provided in this Master Agreement, capitalized terms will have the meanings given to those terms in this Section. Confidential Information means any and all information of any form that is marked as confidential or would by its nature be deemed confidential obtained by Contractor or its employees or agents in the performance of this Master Agreement, including, but not necessarily limited to (1) any Purchasing Entity’s records, (2) personnel records, and (3) information concerning individuals, is confidential information of Purchasing Entity. Contractor means the person or entity providing solutions under the terms and conditions set forth in this Master Agreement.
    [Show full text]
  • Uforge Appcenter Admin Documentation Release 3.8
    UForge AppCenter Admin Documentation Release 3.8 FUJITSU Jun 10, 2019 Contents 1 Architecture Considerations 3 1.1 UForge Platform Overview.......................................3 1.2 Reliability................................................8 1.3 Security..................................................8 1.4 Storage Considerations..........................................8 1.5 Scalability through Partitioning..................................... 10 1.6 Image Generations............................................ 10 1.7 Estimating Scan Size........................................... 11 1.8 Deployment Examples.......................................... 11 1.9 Network Topology............................................ 12 1.10 Minimum Software Topology...................................... 13 1.11 Security Options............................................. 14 1.12 High Availability............................................. 14 2 Installing UForge 15 2.1 UForge Installation Overview...................................... 15 2.2 UForge Repository Setup........................................ 16 2.3 UForge Repository on Shared Storage.................................. 17 2.4 UForge Repository on Local Storage.................................. 17 2.5 Installing from an ISO.......................................... 18 2.6 Post-Installation Cleanup......................................... 19 2.7 Configuring UForge........................................... 19 2.8 Cloud Platform Default Ports...................................... 22 2.9 Testing
    [Show full text]
  • Cloudcamp: Automating Cloud Services Deployment & Management
    CloudCAMP: Automating Cloud Services Deployment & Management Anirban Bhattacharjee∗, Yogesh Barve∗, Aniruddha Gokhale∗ Takayuki Kuroday ∗Department of Electrical Engineering and Computer Science yNEC Corporation Vanderbilt University, Nashville, Tennessee, USA Kawasaki, Kanagawa, Japan Email: {anirban.bhattacharjee; yogesh.d.barve; a.gokhale}@vanderbilt.edu Email: [email protected] Abstract—Users of cloud platforms often must expend sig- A. Motivating the Problem nificant manual efforts in the deployment and orchestration Consider the case of a LAMP [Linux, Apache, MySQL, of their services on cloud platforms due primarily to hav- ing to deal with the high variabilities in the configuration and PHP] -based service deployment on a cloud platform. options for virtualized environment setup and meeting the Figure 1 shows the desired cloud application topology con- software dependencies for each service. Despite the emergence sisting of two connected software stacks, i.e., a PHP-based of many DevOps cloud automation and orchestration tools, web front-end and a MySQL database backend. The frontend users must still rely on specifying low-level scripting details WebApplication stack holds the business logic, and it will be for service deployment and management using Infrastructure- as-Code (IAC). Using these tools required domain expertise deployed on Ubuntu 16.04 server virtual machine (VM), which along with a steep learning curve. To address these challenges is managed using the OpenStack cloud platform. The backend in a tool-and-technology agnostic manner, which helps promote DBApplication stack holds the relational database, which is interoperability and portability of services hosted across cloud used to store and query the product data.
    [Show full text]
  • Curriculum Vitae
    Curriculum Vitae Table of Contents Personal Details . 1 Professional Experience. 2 Self Employed at Netdava . 2 Self Employed at Stan Ioan Eugen PFA . 4 Java Developer at 1and1 Internet România. 6 Java Developer at Apache James (Google Summer of Code) . 6 Java Developer at Joseki Bold . 7 Fire Fighter Officer at Inspectoratul pentru Situatii de Urgentă "Dealu Spirii" Bucuresti-Ilfov. 7 NetBeans Platform Translator at Joseki Bold . 7 Conferences & presentations . 7 Education . 8 Academic Background . 8 Language Skills . 8 Hobby and other. 8 Personal Details Eugen Stan I’m passionate about technology and the benefits it can bring. I believe technology should serve people and I do my best to achieve that goal. I like building systems and I find myself experimenting. Two personality traits that describe me are curiosity and tenacity. My first coding experience was in ~6th grade with a HC 85 PC running Basic. In high school we learned Turbo Pascal and I self-thought myself C and Linux. I used to sneak in the computer lab often. I convinced them to let me install Slackware. I read Let’s Build a Compiler and then I wrote an interpreter for a simple language, unimaginatively called Interpreter for Pseudo Code. I took a break from coding during most of my college years. When I started coding professionally I used mainly Java and JavaScript. Today my language of choice is Clojure and ClojureScript. It’s a fun language to use. I like libre/open source software and I was/am involved/support/promote Apache Software Foundation and Debian communities.
    [Show full text]
  • An Automation-Based Approach for Reproducible Evaluations of Distributed DBMS on Elastic Infrastructures
    Institut für Organisation und Management von Informationssystemen An Automation-based Approach for Reproducible Evaluations of Distributed DBMS on Elastic Infrastructures Dissertation zur Erlangung des Doktorgrades Dr. rer. nat. der Fakultät für Ingenieurwissenschaften, Informatik und Psychologie der Universität Ulm vorgelegt von Daniel Seybold aus Crailsheim 2020 This thesis has been written by Daniel Seybold in partial fulfilment of the requirements for a doctoral degree of the faculty of Engineering, Computer Science and Psychology at Ulm University. It has been submitted on June 30, 2020. Amtierender Dekan: Prof. Dr.-Ing. Maurits Ortmanns Erstgutachter: Prof. Dr.-Ing. Dr. h.c. Stefan Wesner Zweitgutachter: Prof. Dr.-Ing. Samuel Kounev Tag der Promotion: 08.03.2021 Contact Daniel Seybold mail: [email protected] www: https://www.uni-ulm.de/in/omi/institut/persons/daniel-seybold/ Institute of Information Resource Management Faculty of Engineering, Computer Sciences and Psychology University of Ulm Albert-Einstein-Allee 43 89081 Ulm, Germany Typesetting This document was set by the author using the X LAE TEX typsetting system, the Meta font family, and the Latin Modern font family. My sincere apologies to those people whose names are not typeset correctly due to limitations of the fonts. Layout Many thanks to Jörg Domaschka for sharing the template for this thesis. ©2020 Daniel Seybold Abstract Driven by the data-intensive applications of the Web, Big Data and Internet of Things, Database Management Systems (DBMSs) and their operation have significantly changed over the last decade. Besides relational DBMSs, manifold NoSQL and NewSQL DBMSs evolved, promising a set of non-functional features that are key requirements for each data-intensive application: high performance, horizontal scalability, elasticity and high-availability.
    [Show full text]
  • Using Docker
    U s i n g Docker DEVELOPING AND DEPLOYING SOFTWARE WITH CONTAINERS Adrian Mouat www.allitebooks.com www.allitebooks.com Using Docker Adrian Mouat Boston www.allitebooks.com Using Docker by Adrian Mouat Copyright © 2016 Adrian Mouat. All rights reserved. Printed in the United States of America. Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://safaribooksonline.com). For more information, contact our corporate/ institutional sales department: 800-998-9938 or [email protected]. Editor: Brian Anderson Indexer: WordCo Indexing Services Production Editor: Melanie Yarbrough Interior Designer: David Futato Copyeditor: Christina Edwards Cover Designer: Randy Comer Proofreader: Amanda Kersey Illustrator: Rebecca Demarest December 2015: First Edition Revision History for the First Edition 2015-12-07: First Release See http://oreilly.com/catalog/errata.csp?isbn=9781491915769 for release details. The O’Reilly logo is a registered trademark of O’Reilly Media, Inc. Using Docker, the cover image, and related trade dress are trademarks of O’Reilly Media, Inc. While the publisher and the author have used good faith efforts to ensure that the information and instructions contained in this work are accurate, the publisher and the author disclaim all responsibility for errors or omissions, including without limitation responsibility for damages resulting from the use of or reliance on this work. Use of the information and instructions contained in this work is at your own risk. If any code samples or other technology this work contains or describes is subject to open source licenses or the intellectual property rights of others, it is your responsibility to ensure that your use thereof complies with such licenses and/or rights.
    [Show full text]
  • Gitops Basiertes Continuous Delivery Für Serverless Anwendungen
    Institut für Architektur von Anwendungssystemen Universität Stuttgart Universitätsstraße 38 D–70569 Stuttgart Masterarbeit GitOps basiertes Continuous Delivery für Serverless Anwendungen Müslüm Sahin Studiengang: Softwaretechnik Prüfer/in: Prof. Dr. Dr. h. c. Frank Leymann Betreuer/in: Michael Wurster, M.Sc. Beginn am: 3. September 2018 Beendet am: 4. März 2019 Kurzfassung Das Ziel dieser Masterarbeit ist ein Konzept für eine anbieterunabhängige Continuous Delivery Lösung für Serverless Anwendungen zu entwickeln und prototypisch umzusetzten. Serverless bezeichnet ein Paradigma, bei dem die Infrastruktur komplett vom Entwickler verborgen bleibt und vom Cloud Anbieter verwaltet wird. Function-as-a-Service (FaaS) beschreibt ein Serverless Cloud-Service mit der kleine, kurzlebige und ereignisgesteuerte Funktionen bereitgestellt wer- den. Aufgrund der feinen Granularität von Business Services erhöht sich die Komplexität für Deployment und Management der Anwendung. Daher sind automatisierte DevOps Methoden durch Continuous Delivery und Infrastructure-as-Code (IaC) essentiell für eine zuverlässige, sichere und schnellere Softwareauslieferung. Dies wird bereits von einigen Cloud Providern mit eigenen Cloud-Services unterstützt, was jedoch zu einem Vendor Lock-in führt, da individuelle Imple- mentierungen und DevOps-Prozesse vom Anbieter abhängig sind. Daher untersucht diese Arbeit den Stand der Technik im Bereich Herausforderungen, Konzepte, Technologien im gemeinsamen Kontext von Serverless, Continuous Delivery und Multi-Cloud. Hierfür wird eine systematische Literaturrecherche (SLR) verwendet. Statistische Analysen der SLR und weitere Recherchen haben ergeben, dass die Einschränkungen von proprietären FaaS-Plattformen durch Abstraktionen und Multi-Cloud Tools ein alternatives Konzept ergeben, der Vendor Lock-in aber immer noch existiert. Ein Pseudo-Algorithmus wurde entwickelt, um das geeignete Infrastructure-as-Code (IaC) Modell für das Vendor Lock-in Problem zu finden, solange keine Standards für Serverless Anwendungen existieren.
    [Show full text]
  • Iot Projects in FLOSS Foundations Dashboard
    IoT Projects in FLOSS Foundations Dashboard https://iotfloss.bitergia.net/ A dashboard based on communities data v0.1 Alvaro del Castillo <[email protected]> Valerio Cosentino <[email protected]> https://thingso2.com https://bitergia.com Bring to you by ... Álvaro del Castillo Valerio Cosentino <[email protected]> <[email protected]> Open Source advocate and developer! GrimoireLab maintainer, CHAOSS contributor Working now in an IoT platform at ThingsO2 Working at Bitergia In love with reactive technologies and Interested in source code analysis, ETL functional programming processes and reverse engineering Impressed by the IoT grow and possibilities Newbie in the IoT ecosystem PLC4X committer Outline Overview IoT architectures Apache Software Foundation (AF) Eclipse Foundation (EF) Linux Foundation (LF) Project selection and classification Findings and Insights Conclusion Overview Why More visibility is needed of what’s happening on the FLOSS IoT landscape. This dashboard provides a place to better understand the IoT ecosystem. How The dashboard is made with GrimoireLab, an open source toolset for software development analytics. It’s part of CHAOSS, a project under the Linux Foundation: https://chaoss.github.io/grimoirelab/ Contribute Have a look at https://github.com/aylabs/iotfloss, and join us! Warnings Our initial focus was IIoT We use IoT for simplicity but both are converging Project selection and classification are debatable Both are the pillars of the dashboard Basic metrics in this version CHAOSS project could
    [Show full text]