{"id":8703,"date":"2015-07-28T17:42:39","date_gmt":"2015-07-28T15:42:39","guid":{"rendered":"http:\/\/blog.zhaw.ch\/icclab\/?p=8703"},"modified":"2019-08-05T14:35:42","modified_gmt":"2019-08-05T12:35:42","slug":"active-service-management","status":"publish","type":"post","link":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/","title":{"rendered":"Active Service Management"},"content":{"rendered":"\n<p>by <a href=\"https:\/\/blog.zhaw.ch\/icclab\/josef-spillner\/\">Josef Spillner<\/a><\/p>\n\n\n<h1 id=\"Overview\">Overview<\/h1>\n<p>Service hosting platforms such as IaaS and PaaS offer a lot of convenience for the service engineer. They take care of proper provisioning, scaling, healing and profiling. Yet, this platform support is limited when it comes to decisions which require insight into the application state and logic, especially considering applications or services ranging across multiple platforms with composition and orchestration.<\/p>\n<p>The Active Service Management research initiative of the Service Prototoyping Lab aims at improving the state of the art by letting applications signal their states, conditions and requirements, and by letting platforms understand these signals. Emerging from the work on <a href=\"http:\/\/blog.zhaw.ch\/icclab\/category\/research-approach\/themes\/cloud-native-applications\/\">Cloud Native Applications <\/a>(CNA), this initiative subsumes work on pro-active\/predictive auto-scaling with application metric such as numbers of users and self-* properties such as self-healing by replacing crashed or unresponsive application parts with new instances.<\/p>\n<h1 id=\"Objectives\">Objectives<\/h1>\n<ul>\n<li>Comparative evaluation of active service management techniques.<\/li>\n<li>Novel contributions to some of the techniques, in particular to scaling and resilience, but also service evolution.<\/li>\n<li>Turn research results into best practices to achieve an extended CNA design and appropriate hosting platforms.<\/li>\n<\/ul>\n<h1>Relevance to current and future markets<\/h1>\n<p>The commercial landscape of service hosting infrastructures generally assumes an issue-free operation without failures and demand spikes. Due to SLAs, this becomes costly when the assumptions do not hold anymore. With active service management contributions, many of the failures and spikes can be mitigated so that business continuity remains assured.<\/p>\n<h1 id=\"Relevant_Standards_.28and_standard_contributions.29\">Relevant Standards and Articles<\/h1>\n<p>While management of services is an established topic in industry, the specific issue of actively managing environment-aware services is a genuine research topic. We present a selection of useful reading.<\/p>\n<ul>\n<li>Scryer predictive auto-scaling by Netflix: <a href=\"http:\/\/techblog.netflix.com\/2013\/11\/scryer-netflixs-predictive-auto-scaling.html\">part 1<\/a>, <a href=\"http:\/\/techblog.netflix.com\/2013\/12\/scryer-netflixs-predictive-auto-scaling.html\">part 2<\/a><\/li>\n<li><a href=\"https:\/\/www.usenix.org\/system\/files\/conference\/nsdi15\/nsdi15-paper-lorch.pdf\">Tardigrade: Leveraging Lightweight Virtual Machines to Easily and Efficiently Construct Fault-Tolerant Services <\/a><\/li>\n<\/ul>\n<h1 id=\"Architecture\">Architecture<\/h1>\n<p>The following architecture figure describes Dynamite, a novel auto-scaling engine. This rule-based and re-usable engine has been designed in the context of CNA.<\/p>\n<p><a href=\"http:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-8706\" src=\"http:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling-166x300.png\" alt=\"scaling\" width=\"166\" height=\"300\" srcset=\"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling-166x300.png 166w, https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling.png 484w\" sizes=\"auto, (max-width: 166px) 100vw, 166px\" \/><\/a><\/p>\n<h1>Articles and Publications<\/h1>\n<p>&nbsp;<\/p>\n<ul>\n<li>Giovanni Toffetti Carughi, Sandro Brunner, Martin Blochinger, Florian Dudouet and Andrew Edmonds, \u201cAn architecture for self-managing microservices\u201d, <a href=\"http:\/\/aimc.io\/workshop-schedule\">International Workshop on Automated Incident Management in Cloud (AIMC\u201915<\/a>), Bordeaux, France, April 2015<\/li>\n<\/ul>\n<h1>Presentations<\/h1>\n<p><a href=\"http:\/\/blog.zhaw.ch\/icclab\/files\/2015\/04\/MITOSIS_pitch.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">MITOSIS_pitch.pdf<\/a><\/p>\n<h1>Open Source Software<\/h1>\n<ul>\n<li><a href=\"https:\/\/github.com\/icclab\/dynamite\">Dynamite<\/a> scaling engine for CNA using custom metrics for its decisions<\/li>\n<\/ul>\n<h1>Contact<\/h1>\n<p><a href=\"http:\/\/blog.zhaw.ch\/icclab\/giovanni-toffetti\/\">Giovanni Toffetti Carughi<\/a>: toff(at)zhaw.ch<\/p>\n<div id=\"dc_vk_code\"><\/div>","protected":false},"excerpt":{"rendered":"<p>Overview Service hosting platforms such as IaaS and PaaS offer a lot of convenience for the service engineer. They take care of proper provisioning, scaling, healing and profiling. Yet, this platform support is limited when it comes to decisions which require insight into the application state and logic, especially considering applications or services ranging across [&hellip;]<\/p>\n","protected":false},"author":486,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[643],"tags":[],"features":[],"class_list":["post-8703","post","type-post","status-publish","format-standard","hentry","category-active-service-management"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Active Service Management - Service Engineering (ICCLab &amp; SPLab)<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Active Service Management\" \/>\n<meta property=\"og:description\" content=\"Overview Service hosting platforms such as IaaS and PaaS offer a lot of convenience for the service engineer. They take care of proper provisioning, scaling, healing and profiling. Yet, this platform support is limited when it comes to decisions which require insight into the application state and logic, especially considering applications or services ranging across [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/\" \/>\n<meta property=\"og:site_name\" content=\"Service Engineering (ICCLab &amp; SPLab)\" \/>\n<meta property=\"article:published_time\" content=\"2015-07-28T15:42:39+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-08-05T12:35:42+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling-166x300.png\" \/>\n<meta name=\"author\" content=\"icclab\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"icclab\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/\"},\"author\":{\"name\":\"icclab\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/045c6bde7e681e689e4fc051d8932563\"},\"headline\":\"Active Service Management\",\"datePublished\":\"2015-07-28T15:42:39+00:00\",\"dateModified\":\"2019-08-05T12:35:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/\"},\"wordCount\":373,\"commentCount\":0,\"image\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling-166x300.png\",\"articleSection\":[\"Active Service Management\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/\",\"name\":\"Active Service Management - Service Engineering (ICCLab &amp; SPLab)\",\"isPartOf\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling-166x300.png\",\"datePublished\":\"2015-07-28T15:42:39+00:00\",\"dateModified\":\"2019-08-05T12:35:42+00:00\",\"author\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/045c6bde7e681e689e4fc051d8932563\"},\"breadcrumb\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#primaryimage\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling.png\",\"contentUrl\":\"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling.png\",\"width\":484,\"height\":873},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\/\/blog.zhaw.ch\/icclab\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Active Service Management\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#website\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/\",\"name\":\"Service Engineering (ICCLab &amp; SPLab)\",\"description\":\"A Blog of the ZHAW Zurich University of Applied Sciences\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.zhaw.ch\/icclab\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/045c6bde7e681e689e4fc051d8932563\",\"name\":\"icclab\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/7b13169e03783f50e96b96fa2ff222b9c530d13c3125f077c7c44f729b857a51?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/7b13169e03783f50e96b96fa2ff222b9c530d13c3125f077c7c44f729b857a51?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/7b13169e03783f50e96b96fa2ff222b9c530d13c3125f077c7c44f729b857a51?s=96&d=mm&r=g\",\"caption\":\"icclab\"},\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/author\/icclab\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Active Service Management - Service Engineering (ICCLab &amp; SPLab)","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/","og_locale":"en_US","og_type":"article","og_title":"Active Service Management","og_description":"Overview Service hosting platforms such as IaaS and PaaS offer a lot of convenience for the service engineer. They take care of proper provisioning, scaling, healing and profiling. Yet, this platform support is limited when it comes to decisions which require insight into the application state and logic, especially considering applications or services ranging across [&hellip;]","og_url":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/","og_site_name":"Service Engineering (ICCLab &amp; SPLab)","article_published_time":"2015-07-28T15:42:39+00:00","article_modified_time":"2019-08-05T12:35:42+00:00","og_image":[{"url":"http:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling-166x300.png","type":"","width":"","height":""}],"author":"icclab","twitter_card":"summary_large_image","twitter_misc":{"Written by":"icclab","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#article","isPartOf":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/"},"author":{"name":"icclab","@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/045c6bde7e681e689e4fc051d8932563"},"headline":"Active Service Management","datePublished":"2015-07-28T15:42:39+00:00","dateModified":"2019-08-05T12:35:42+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/"},"wordCount":373,"commentCount":0,"image":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#primaryimage"},"thumbnailUrl":"http:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling-166x300.png","articleSection":["Active Service Management"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/","url":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/","name":"Active Service Management - Service Engineering (ICCLab &amp; SPLab)","isPartOf":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#primaryimage"},"image":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#primaryimage"},"thumbnailUrl":"http:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling-166x300.png","datePublished":"2015-07-28T15:42:39+00:00","dateModified":"2019-08-05T12:35:42+00:00","author":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/045c6bde7e681e689e4fc051d8932563"},"breadcrumb":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#primaryimage","url":"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling.png","contentUrl":"https:\/\/blog.zhaw.ch\/icclab\/files\/2015\/07\/scaling.png","width":484,"height":873},{"@type":"BreadcrumbList","@id":"https:\/\/blog.zhaw.ch\/icclab\/active-service-management\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/blog.zhaw.ch\/icclab\/"},{"@type":"ListItem","position":2,"name":"Active Service Management"}]},{"@type":"WebSite","@id":"https:\/\/blog.zhaw.ch\/icclab\/#website","url":"https:\/\/blog.zhaw.ch\/icclab\/","name":"Service Engineering (ICCLab &amp; SPLab)","description":"A Blog of the ZHAW Zurich University of Applied Sciences","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.zhaw.ch\/icclab\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/045c6bde7e681e689e4fc051d8932563","name":"icclab","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/7b13169e03783f50e96b96fa2ff222b9c530d13c3125f077c7c44f729b857a51?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/7b13169e03783f50e96b96fa2ff222b9c530d13c3125f077c7c44f729b857a51?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7b13169e03783f50e96b96fa2ff222b9c530d13c3125f077c7c44f729b857a51?s=96&d=mm&r=g","caption":"icclab"},"url":"https:\/\/blog.zhaw.ch\/icclab\/author\/icclab\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/8703","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/users\/486"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/comments?post=8703"}],"version-history":[{"count":4,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/8703\/revisions"}],"predecessor-version":[{"id":12503,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/8703\/revisions\/12503"}],"wp:attachment":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/media?parent=8703"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/categories?post=8703"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/tags?post=8703"},{"taxonomy":"features","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/features?post=8703"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}