Leer snel setup & beheer van omgevingen met Packer, Vagrant, Virtualbox & Docker

This is a past event

14 people went

Location image of event venue

Details

Leer slim beheer van PoC | Demo | Studie | ontwikkel| speel-omgevingen met Packer, Preseed, Vagrant, Virtualbox, Docker

Spreker: Maarten Smeets, Oracle ACE & Senior Development Consultant (AMIS)

Benodigd: enige ervaring met command line tools, Virtual Machines en Linux is gewenst; breng in elk geval je laptop mee voor het hands on deel van de sessie

Als ontwikkelaar heb je naast je reguliere werk regelmatig behoefte aan een omgeving voor bijvoorbeeld zelfstudie, uitproberen van nieuwe tools of het uitvoeren van een PoC. Soms is de omgeving alleen voor jezelf maar in andere gevallen wil je deze ook eenvoudig kunnen delen zoals bijvoorbeeld voor het geven van een training. Voor deze omgeving heb je veelal specifieke wensen. Je wilt flexibele zijn en snel up en running. De mogelijkheid hebben de omgeving opnieuw op te bouwen zonder al te veel moeite. Bij voorkeur wil je deze lokaal draaien op je laptop, maar dan wel op zo'n manier dat deze goed geïsoleerd is van al je andere tools en omgevingen. Nadat je ermee klaar bent wil je deze kunnen opruimen zonder blijvende vervuiling op je laptop. Details van de installatieprocedure ben je veelal niet in geïnteresseerd.

Om dit te realiseren heb je vaak te maken met een aantal uitdagingen zoals
- Netwerkconfiguratie.
Hoe kunnen een host en guest goed met elkaar communiceren? Hoe kunnen guests elkaar vinden? Hoe kunnen containers elkaar vinden? Hoe kunnen de guests bij het internet? Hoe maak ik mijn lokaal gehoste applicatie eenvoudig online beschikbaar?
- Snel nieuwe versies uitproberen.
Werkt mijn stack nog wel goed op deze specifieke Linux versie?
- Herstel
Hoe kan ik snel mijn omgeving herstellen, opnieuw opbouwen of terugbrengen naar een vorige toestand? Er wordt ingegaan op mogelijkheden van Virtualbox en Docker.
- GUI
Hoe kan ik GUI tools gebruiken vanuit Docker containers

Tijdens deze avond zal je ervaring opdoen met verschillende tools om omgevingen neer te kunnen zetten. Als voorbeeld zal er een Kafka / Spring Boot / Spring Tool Suite omgeving worden opgetogen, maar de methodiek is generiek en toepasbaar op andere frameworks en tools.
- Virtualbox wordt gebruikt om een gevirtualiseerde omgeving in te draaien. Er zal in worden gegaan op hoe Virtualbox networking in de praktijk werkt.
- Preseed wordt gebruikt voor het automatiseren van de OS installatie
- Packer wordt gebruikt om Preseed gebruik te automatiseren
- Vagrant wordt gebruikt om vervolgens de omgeving verder in te richten zoals het netwerk te configureren, gebruikers aan te maken en Docker te installeren
- Docker wordt vervolgens gebruikt om de puntjes op de i te zetten en bijvoorbeeld een Apache Kafka + Spring Boot + Java 8/9/10 omgeving te draaien of een Oracle Database + SOA Suite omgeving samen te stellen en te gebruiken. Er zal worden uitgelegd hoe je Docker containers kan laten communiceren en hoe je vanuit een Docker container ook GUI tools zoals Spring Tool Suite of JDeveloper kan draaien.

Naast de do-it-yourself oplossing zoals hierboven beschreven zijn er verschillende oplossingen voor ready-to-use omgevingen zoals AWS AMIs, Bitnami, images uit Docker registries. Ook deze zullen de revu passeren.

Na deze sessie heb je de bagage om met de genoemde tools zelf snel een potentieel complexe omgeving op te zetten, efficient te gebruiken en na gebruik weer netjes op te ruimen.