Refine
Document Type
- Bachelor Thesis (1)
- Master's Thesis (1)
- Researchpaper (1)
Language
- English (3) (remove)
Has Fulltext
- yes (3) (remove)
Is part of the Bibliography
- no (3)
Keywords
- Verteilte Systeme (2)
- Apache Mesos (1)
- Debugging (1)
- Distributed Systems (1)
- Docker (1)
- Hochverfügbarkeit (1)
- Informatik (1)
- JBoss (1)
- Java (1)
- Java EE (1)
Institute
When searching for bugs in Java enterprise applications, an essential part of the
eort consists in redeploying the source code and relaunching the server over and
over. In order to improve this situation, this thesis suggests the implementation
of a runtime debugging tool. The tool's purpose is to facilitate the enrichment of
operating application code with logging statements, which are inteded to generate
additional output concerning the webapp's current state. On behalf of this
so-called instrumentation, the actual process of debugging could be supported
and accelerated without having to interrupt the server's execution.
Due to the signicance of Java EE as well as Spring for today's enterprise development,
the implementation of a dedicated debugging tool for each platform
shall be covered. Both solutions pursue the same goal, but dier in the approach
and the programming paradigm forming their basis. This document introduces
their implementation details and evaluates them against a specication that de-
nes the general conditions and expectations in terms of the capabilities of a
satisfying result.
Talking about highly scalable and reliable sys-
tems, issues like logging and monitoring are often
disregarded. However, being able to manage to-
day’s software systems absolutely requires deep
knowledge about the current state of applications
as well as the underlying infrastructure. Extract-
ing and preparing debug information as well as
various metrics in a fast and clearly arranged
manner is an essential precondition in order to
handle this task.
Since we at Bertsch Innovation GmbH also
face increasing requirements concerning Media-
Cockpit as one of our core products, we decided
to establish a centralized logging infrastructure
in order to come up to the application’s evolution
towards a more and more distributed system.
In this paper, I want to describe the steps
that I have taken in order to setup a functioning
logging tool stack consisting of Elasticsearch,
Logstash and Kibana (usually abbreviated as ELK stack ). Besides outlining proper
setup and configuration, I will also discuss possi-
ble pitfalls as well as custom adjustments made
when ELK did not meet our demands.
Large-scale computing platforms, like the IBM System z mainframe, are often administrated in an out-of-band manner, with a large portion of the systems management software running on dedicated servers which cause extra hardware costs. Splitting up systems management applications into smaller services and spreading them over the platform itself likewise is an approach that potentially helps with increasing the utilization of platform-internal resources, while at the same time lowering the need for external server hardware, which would reduce the extra costs significantly. However, with regard to IBM System z, this raises the general question how a great number of critical services can be run and managed reliably on a heterogeneous computing landscape, as out-of-band servers and internal processor modules do not share the same processor architecture.
In this thesis, we introduce our prototypical design of a microservice infrastructure for multi-architecture environments, which we completely built upon preexisting open source projects and features they already bring along. We present how scheduling of services according to application-specific requirements and particularities can be achieved in a way that offers maximum transparency and comfort for platform operators and users.