Seite wÀhlen

NETWAYS Blog

DEV-Trainings: Git und Jenkins

training_jenkinstraining_gitWir starten 2016 voll durch mit einem erweiterten Schulungsportfolio – neben Foreman und Ceph fokussieren wir uns im Development auf Git und Jenkins.
Die ersten Schulungen mit frisch erstellten Unterlagen fanden letzte Woche In-House bei einem unserer Kunden statt, sozusagen die „Feuertaufe“ fĂŒr die kommenden Schulungen.
git_introduction_basics_03_three_statesNach einer kurzen EinfĂŒhrung in die Geschichte von VCS und der Entstehungsgeschichte von Git haben wir anhand von praktischen Beispielen erste Schritte mit Git gemacht – wie initialisiere ich ein Repository, was bedeutet „modified“, „staged“, „committed“, was passiert bei „git add“ und „git commit“? Bevor wir uns in die Tiefe mit Remote Repositories gestĂŒrzt haben, kam auch noch das Arbeiten mit Branches und unterschiedlicher Commit-Historie und – natĂŒrlich absichtlich provozierten – Fehlern beim Merge und Rebase dran.
Um das Gelernte auch in der Praxis weiterhin verwenden zu können, wurde die Arbeit mit einem lokalen Git-Server und fetch, pull, push und Branches vertieft. Das ganze kombiniert mit den unterschiedlichen Workflows (Feature-Branch, Gitflow, Forking) und praktischen Beispielen und nachgehender Analyse.
Die BrĂŒcke zur Jenkins-Schulung haben wir mit einem Git-Hook geschlagen, der fĂŒr einen Git-Commit einen Jenkins-Job ansteuert.
jenkins_job_chuck_norrisNach der Installation des Jenkins-Installationspakets haben wir uns sogleich in die Konfiguration gestĂŒrzt – und natĂŒrlich in den ersten gemeinsamen Job. Ein Python-Script will gebaut werden, und spĂ€ter dann auch paketiert. In erster Linie haben wir uns Code Coverage und QualitĂ€t fĂŒr CI und Test-Frameworks angesehen. Mit verschiedenen Build-Schritten und der Hilfe des Trainers gings dann auch gleich weiter mit der Einbindung an einen Jenkins-Agenten, der dediziert die Jenkins-Jobs ausfĂŒhren sollte. Hierbei gibts einige Fallstricke zu beachten, gerade was SSH-Keys und shared Workspaces betrifft. Die Köpfe haben geraucht – aber spĂ€testens dann als der frisch installierte Git-Hook den Jenkins-Paket-Bau angestossen hat, gabs fĂŒr jeden das persönliche Erfolgserlebnis.
git_integrations_jenkins_git_hook
Neben den praktischen Beispielen haben wir uns auch Zeit genommen, gezielt Fragen zur eigenen Umgebung zu diskutieren, oder auch aus dem NĂ€hkĂ€stchen zu plaudern. Git und Jenkins ist Teil unserer tĂ€glichen Arbeit an Icinga & Co und da gibts schon ein bissl Best Practice zu erzĂ€hlen 😉
FĂŒr kurz entschlossene wissbegierige Anwender und jene die ihr Wissen auffrischen wollen – es gibt noch PlĂ€tze in unserer Git-Schulung am 28.6.2016 und Jenkins-Schulung am 30.8.2016 🙂
Und fĂŒr all jene, die das Git-Fachwissen schon in sich aufgesaugt haben – wir hosten auch die eigene GitLab CE Instanz in unserer Cloud. Lust auf mehr? Kommt einfach auf uns zu!
PS: Trainings machen mir Spass – darum werd ich auch den diesjĂ€hrigen Git-Workshop auf der OSMC halten 🙂
 

OSDC 2016 – 8th year of glory

Time flies – 8 years Open Source Datacenter Conference (OSDC) already and now the 3rd time in lovely Berlin.
Kicking off with Dawn Foster’s keynote on Open Source – A job and an adventure gave an interesting insight into Open Source careers and living the spirit. As we do at NETWAYS since 1995 inviting everyone onto our journey and happily organising conferences for talks, chats & some drinks together.
And remember …

"be nice" #opensource @geekygirldawn #osdc pic.twitter.com/M8Q5YD9kPv

— Michael Friedrich (@dnsmichi) April 27, 2016


Next up was Kris talking about Another 7 tools for your #devops stack which is always fun to watch. I couldn’t decide whether to join him or go for Mike Elsmore on NoSQL is a lie … though Daniela approached me and said „go for Mike, it is funny“. And so it was in combination with the interesting technical questions asked.

Pikachu 😀 #osdc #awesome @ukmadlz pic.twitter.com/hYU8nY01Li

— Michael Friedrich (@dnsmichi) April 27, 2016


Tough decisions already in the morning – we’re using CoreOS at NETWAYS too and so I could join Jonathan Bulle on rkt and Kubernetes: What’s new with Container Runtimes and Orchestration … or learning something new, moving away from Puppet and learn about Salt – A Scalable Systems Management Solution for Datacenters by Sebastian Meyer.
A pretty hard one also for the presenters as these talks ended right before lunch break – and as you might know already, food is always so delicious at OSDC.

@mjg59 your work featured at the rkt/kubernetes talk at #osdc pic.twitter.com/7NLEGcZvXf

— mika (@mikagrml) April 27, 2016


Finding a place to chill after lunch (oh, it was delicious) should it now be What’s wrong with my Puppet? by Felix Frank or would I go for learning about some monitoring tasks with Hello Redfish, Goodbye IPMI – The Future of System Management in the Data Center with Werner Fischer. I guess I’m more with Puppet these days, less monitoring admin – and the live demo stuff somehow failed but nice to see David Schmitt helping out.

#osdc trolling the demo gods, @felis_rex starts to live-code ruby in the shell pic.twitter.com/Jl4nkEXZjA

— David Schmitt (@dev_el_ops) April 27, 2016


Ever since Elastic announced their Beats toolstack I wanted to learn more about it. I was pretty sad that I couldn’t join Elasticon earlier this year. So I was eagerly waiting for Monica Sarbu telling me more about Unifying Log Management and Metrics Monitoring with the Elastic Beats.

.@elastic #filebeat successor of #logstash forwarder @monicasarbu #osdc /mif pic.twitter.com/uWozj9xx4b

— netways (@Netways) April 27, 2016


Having the Icinga stack in mind with open APIs and such, this shed interesting insights on how to further push integration with Elastic forward. Oh and I definitely need to learn Golang to hack my own beats based on the libbeat library.

I need to learn golang for @elastic #libbeat – sounds awesome thx @monicasarbu #monitoring #osdc pic.twitter.com/TJwi8yDlbr

— Michael Friedrich (@dnsmichi) April 27, 2016


Continuous Integration in Data Centers – Further 3 Years Later with Michael Prokop sounded interesting as well, especially when it comes to Jenkins and Docker integration. Luckily all talks are recorded and made available later in the conference archive so I decided to go for Elastic Beats this time.

Now @mikagrml w/ continuous delivery #osdc 🙂 /mif pic.twitter.com/zbssXyY6U5

— netways (@Netways) April 27, 2016


Martin SchĂŒtte gave interesting insights into Terraform: Config Management for Cloud Services. This tool fits into the devops stack HashiCorp has been building over the last years, including Vagrant, Atlas and Otto. MySQL clusters are overly complicated in my (developer) opinion so I didn’t go for MySQL-Server in Teamwork – Replication and Galera Cluster presented by Jörg BrĂŒhe. Again one for the archive watchers 🙂

Now Martin SchĂŒtte is talking about @hashicorp #Terraform here at #osdc /be pic.twitter.com/Dck11TsW9t

— netways (@Netways) April 27, 2016


ChatOps is becoming more important these days. I’ve already seen Martin’s great talk at Icinga Camp Berlin earlier this year – especially his live demo talking to the Icinga 2 API which makes me a proud developer. ChatOps – Collaborative Communication (or: You cannot not communicate) is definitely something everyone needs to consider and play around with. Especially when it is Open Source.

Keep calm and love APIs #osdc pic.twitter.com/8hhYifp8Mp

— Christoph Mitasch (@CMitasch) April 27, 2016


Heading over from Austria left behind my DNS related past though I’m trying to keep with it. Especially since Jan-Piet is talking about DNS for Developers aka „Everything is a freaky DNS problem“ 😉

.@jpmens with #dns for developers #osdc /mif pic.twitter.com/LsutpiWshu

— netways (@Netways) April 27, 2016

Evening event

Now that we’ve learnt and discussed so much on the first day we are ready for the evening event. This time it located at Umspannwerk Ost which looks nice indeed. Looking forward to delicious food again and later on, some G&T with the OSDC gang 🙂