“Close your eyes, give me your hand, darling.
Do you feel my heart beating?
Do you understand?
Do you feel the same?
Am I only dreaming
Is this burning an eternal flame!”
(The Bangles, Eternal Flame)
The last day of the great gathering started. For some it was an early start, but they would rather die than miss that fantastic event.
The first talk “Continuous Database Integration with Flyway” by Sandra Parsick was canceled because Sandra was ill. So Peter Rossbach organized several lightning talks instead. Some of them were a good addition to the conference, for example the talk of Andreas Burbach about how to transform a big traditional business to use a modern flexible infrastructure. This should be done in small steps. He demonstrated it on an example he experienced with the introduction of flyway to such a company.
Quite interesting was the short talk “Hardening software development” by Thomas Weidinger, which drawed a lot attention to the audience. There were shown many examples of how easy an infrastructure code can be hacked or manipulated with malice and how developers can prevent that.
One talk was completely off topic, but a good distraction raising the mood. It was “How to grow chilli peppers”. Literally. It turned out that it is a big science about planting the seeds into a camomile tea and having a special recipe for the soil later on.
After a coffee break full of networking, the serious talks started. The first was “Deploying and Managing Productiongrade Kubernetes Clusters with Rancher” by Jan Bruder from Rancher. Rancher is the next abstraction and management level for Kubernetes managing virtual machines and containers. The open source software tries to improve the fact that running containers in production is still not easy because there are many different tools working together. They give a big promise to “build a complete container deployment within five minutes”. Rancher uses its own container orchestration framework called cattle. And you can start immediately by typing “docker run -d -p 8080:8080 rancher/server:stable” in your terminal. This will run a rancher server on your local system.
The next talk “Modern Monitoring for Dev and Ops” by Björn Rabenstein from SoundCloud was about modern monitoring principles. He showed the difference between blackbox- and whitebox monitoring. Blackbox monitoring is the traditional way to monitor a system. The monitoring system does not know which system it is supervising. It only checks the output of it. There is one big disadvantage of this purpose: for not yet occurred but imminent problems black-box monitoring is fairly useless. There are three reasons why black-box monitoring is not sufficient in other cases:
- your probe is not real user traffic but a probe ping
- long-tail latency matters
- you still need to investigate causes
Whitebox monitoring is the approach where the system knows that some special system like Prometheus is the monitoring tool and provides dedicated internal metrics for it. On the other hand the monitoring system knows the surveilled system and can adequately react to the alerts, e.g. automatically starting some life-sustaining actions. Björn has proposed the book “Site Reliability Engineering” by Chris Jones, Betsy Beyer et al. to expand the knowledge on this topic.
After that talk we had a fantastic lunch in the cantine of GDATA and it was time to draw the winners of the raffle which started the day before. You could win several versions of Raspberry PIs, ebooks and paperbacks for leaving your email address – and we won! Two paperbacks and an ebook went to Setlog colleagues: Andreas Engelbert, Daniel Grewing and me. Lucky Day!
In his talk “DOCKER@AWS: A Look at the Different Options to Run Docker in the Amazon Cloud”, Govinda Fichtner from PaesslerGroup presented the Amazon Web Services (AWS) and how they can be used easily to run a system. The Area which is provided by AWS is separated in different regions with different availability zones. All of them are scalable and all of them are connected to an elastic load balancer. You can place your VMsvand Containers inside these zones.
There special Docker CE exists. It’s a docker swarm integration with AWS backend. Additionally there is Docker EE – Docker CE with Unified Control Panel, RBAC, LDAP, Security Scanning, Docker Trusted Registry, Image Management, professional support and dashboard.
The talk “Integration Testing with TestContainers” was given by Kevin Wittek from Styracosoft, who was the guitarist of the band played at the party the night before. He is working for a subsidiary company of GDATA which is residing in the “ivory tower” of the old academy building. He presented us how to build integration tests with JUnit building up the testcontainer with test database and all the microservices and destroying them after the test. With that we have now “tests which interacts with external systems/dependencies”. To implement this, Kevin proposed the Libraries Spocker (Spock + Docker) and TestContainers which are using annotations to start docker from the IDE.
- knowledge about your services, work, targets
- experience: how the knowledge is connected
- creativity
The next talk “Cloud-native Microservices” Timo Derstappen from Giant Swarm started with an overview of microservice technology, which is needed to
- unblock your teams
- interac t faster and experiment more
- lead to resilient and scalable systems
- small and loosely coupled components and
- clear interfaces
- and fully automated pipelines
After creating the system you’ve got to standardize every step. This consists of automation, monitoring and logging, communication and debugging, because “people are much faster if there’s less surprise.” The speaker proposed the following tools for the tasks mentioned above:
- automation: Kubernetes,
- monitoring: Prometheus,
- logging: efk,
- communication: istio,
- debugging: jaeger
There were also some useful libraries like go-kit, microservice-kit and versionbundle proposed as well as some autonomy patterns which were already discussed in the Kubernetes pattern talk.
The last talk “Tear Down Silos! What Comes Next?” by Konstantin Diener from cosee was not that technical, but as interesting as the other talks nonetheless. It was about how to build cross functional teams and which roles they should contain. A perfect team should consist of backend, frontend, mobile, devops, agile coach, project manager, support, marketing and business analyst. All of them belong to the team (Squad) but they also belong to a skills team “Chapter” of guys sharing the same profession. It’s necessary that they build communities of practice having shared standards, common baseline and common knowledge. They have to build up communities like helping communities, best practice communities, knowledge stewarding communities and innovation communities. At the end of his talk Konstantin proclaimed: “Change is the new normal! Therefore don’t do any projects any more.” – meaning we should work on a product and its life cycle which is an infinite project. You can read details about his talk in the article “DevOps Stories” in the JAXenter magazine.
Eduard is a software developer in our “Globetrotter” team at Setlog. Globetrotter is working closely with our NYC team and is responsible for all of our American customers. Eduard is one of our most creative minds, always happy to indulge in new ideas and will give all of you an insight on what life at Setlog is actually like.