Our work in the Service Prototyping Lab at Zurich University of Applied Sciences consists of applied research, prototype development and conveying knowledge to industry. In this context, we have worked hard over the previous two years to gather educational and hands-on material, including our own contributions, for increasingly valuable tutorials. From single lectures to half-day and eventually full-day tutorials, we aim at both technology enthusiasts and experienced engineers who are open for new ideas and sometimes surprising facts. In this reflective blog post, we report on this week’s experience of giving the full-day tutorial on microservice artefact observation and quality assessment.
From June 24 to 27, an academic double-conferences has been taking place in Prague: IC2E 2019, the venerable seventh IEEE International Conference on Cloud Engineering, and ICFC 2019, the recently spun off first IEEE International Conference on Fog Computing. The Service Prototyping Lab at Zurich University of Applied Sciences contributed a tutorial on Kubernetes application engineering on the first conference day. The important research-inspired message conveyed is that Kubernetes is a nice container management platform, but not a cloud platform per se, and characterised by a lack of tools to ensure simplicity and quality in applications, and still emerging understanding of how to design applications in a technically and economically optimal way. This blog post reports on some of the conference discussion topics as a service for those who could not attend..
Migrating an application from one cloud to another is a challenging activity and one must be mindful of both potential incompatibility and data loss when migrating. It is also, however, often necessary, so a proper way to automate the process and ensure a working deployment on the other end is certain to be a handy tool to an administrator. Since we have been working with multi and cross cloud environments and application portability (see paper and blog), we present a tool to automate this process for Openshift.
As far as use cases for migration go, the easiest example to visualize is moving an application from the development environment to production. Minishift, the single node local development version of Openshift is a great way to develop and test a new application, isolated from the risks and expenses of exposing it to the outside world. But at some point, this application will need to be recreated on a production Openshift instance and while doing this ‘traditionally’ is easy for small applications, it can become cumbersome for larger cases, especially if parts of it were configured using the graphical dashboard.
For almost five years, we have been researching cloud-native applications. As part of an industry-wide push to cloud-native computing, a lot of stacks and middleware components are proposed every day, but few tools and processes help improving the applications themselves especially in terms of quality attributes such as discoverability, elasticity and resilience. With Helm charts, there is already a higher-level approach to package cloud applications in Kubernetes environments. Our work on static analysis of Helm charts and quality assessment beyond is documented and ongoing. In this post, we take a first look at CNAB, or Cloud Native Application Bundle which is self-described as secure and cloud-agnostic way to deliver applications.
In recent months, we have extensively studied Helm charts, including setting up a continuous quality assessment, to find out more about this promising packaging format for Kubernetes applications. Apart from individual tweets and occasional talks, there was a lack of a coherent presentation of the ongoing work. Yet, due to the increasing installation base of Kubernetes stacks, the significance of this work appears to be on the rise. This blog post therefore tells what we achieved already and what we are still going to do in the next months.