Linux Tag Puppet. Umgebungen, Daten & Code, Abhängigkeiten. Alexander Pacnik Karlsruhe,
|
|
- Innozenz Raske
- vor 6 Jahren
- Abrufe
Transkript
1 Linux Tag Puppet Umgebungen, Daten & Code, Abhängigkeiten Alexander Pacnik Karlsruhe,
2 Die Agenda... worum es in diesem Vortrag geht Umgebungen Trennung von Daten und Code Abhängigkeiten Modul Best Practices 2
3 Einleitung... worum es in diesem Vortrag geht Aufgabe Repositories und Module für heterogene Systemlandschaften verwalten Ziele Wartbarkeit erhöhen Transparenz schaffen Prozess erzwingen Weg Umgebungen, Modellierung von Daten und Abhängigkeiten 3
4 Einleitung... worum geht es bei der Konfigurationsverwaltung? Konfigurationsverwaltung So einfach und minimal wie möglich Daten und Code trennen Konfigurationen beim Anwenden testen Konfigurationsverwaltung erzwingen Alles unter Versionskontrolle stellen Konfiguration in ein VCS Daten in ein Repository (Paketmanager oder Artefakt Repository) Versionierung überwachen 4
5 Einleitung... worum geht es bei der Umgebungsverwaltung? Umgebungsverwaltung Redundanzen vermeiden Auseinanderlaufen verhindern Klärungen Paketabhängigkeiten in Puppet oder Paketmanagement Baremetal, Betriebsystem, Dienste, Applikationen 5
6 Reihenfolgen und Abhängigkeiten... Abhängigkeiten modellieren Umgebungen Trennung von Daten und Code Abhängigkeiten Modul Best Practices 6
7 Environments... die Verwaltung von Umgebungen mit Puppet Ziel Umgebungen abbilden (Test, Abnahme, Produktion) Nach Möglichkeit gleiche Codebasis Versionsstände abbilden (Feature, Release, Hotfix, Master) So wenig branchen wie möglich (Continous Integration) Workflow (Gleiche vs. getrennte Codebasis) 7
8 Environments... die Verwaltung von Umgebungen mit Puppet Erklärung Environment Environment Konfiguration (puppet.conf) manifest ($manifestdir/site.pp) modulepath ($confdir/modules) manifestdir ($confdir/manifests) templatedir ($vardir/templates) Zugriff in Modulen über $environment 8
9 Dynamic Environments... Weiterentwicklung mit temporären Umgebungen Konfiguration auf dem Master (puppet.conf) Möglichkeit einfach neuen Code zu testen [master] environment = production manifest = $confdir/environments/$environment/manifests/site.pp modulepath = $confdir/environments/$environment/modules [agent] environment = production 9
10 Dynamic Environments... Weiterentwicklung mit temporären Umgebungen Anwendung auf dem Node puppet agent --environment <name> puppet agent --environment <name> --noop 10
11 Dynamic Environments... Weiterentwicklung mit temporären Umgebungen Anwendung zentral über Puppet 11
12 Environments... die Verwaltung von Umgebungen mit Puppet Environments & VCS Best Practices Alles Versionieren Style und Syntax Check mit Puppet Lint (pre-commit) Monitoring für alles was im Puppet verwaltet wird 12
13 Reihenfolgen und Abhängigkeiten... Abhängigkeiten modellieren Umgebungen Trennung von Daten und Code Abhängigkeiten Modul Best Practices 13
14 Trennung von Daten und Code... die Möglichkeiten Trennung von Daten und Code Möglichkeiten 1. Top Scope Variable 2. Node Inheritance 3. Parametrisierte Klassen 4. Extlookup 5. Hiera 14
15 Trennung von Daten und Code... mittels Variablen Variable im Top Scope Variable werden im zentralen Manifest definiert und in den Modulen verwendet Variable im Top Scope Beispiel 15
16 Trennung von Daten und Code... mittels Variablen Variable im Top Scope Vor- und Nachteile Pro: Sehr einfach Pro: defacto Trennung von Code und Daten Con: immer noch im gleichen Repository Con: unklar wo die Variablen verwendet werden und welcher Werte gesetzt ist 16
17 Trennung von Daten und Code... mittels Node Inheritance Node Inheritance Variable werden in Nodes definiert und über Vererbung die Hierarchie abgebildet Node Inheritance Beispiel 17
18 Trennung von Daten und Code... mittels Node Inheritance Node Inheritance Vor- und Nachteile Pro: Sehr einfach Pro: defacto Trennung der Daten vom Code Con: immer noch im gleichen Repository Con: unklar wo die Variablen verwendet werden und welcher Werte gesetzt ist 18
19 Trennung von Daten und Code... mittels parametrisierte Klassen Parametrisierte Klassen Variable werden in Nodes definiert und über Vererbung die Hierarchie abgebildet Parametrisierte Klassen Beispiel 19
20 Trennung von Daten und Code... mittels parametrisierte Klassen Parametrisierte Klassen Vor- und Nachteile Pro: Daten nicht mehr im Modulcode und Defaultwerte möglich (Lesbarkeit) Pro: klar wo die Variablen verwendet werden Con: Daten und Logik in params.pp ausgelagert 20
21 Trennung von Daten und Code... mittels extlookup Extlookup Hierarchischer Lookup einer Variable im datadir basierend auf Fact und Key Extlookup Beispiel 21
22 Trennung von Daten und Code... mittels extlookup Extlookup Vor- und Nachteile Pro: dynamische und hierarchische Abbildung von Werten Con: schlechte Wartbarkeit (CSV) Con: liefert nur den ersten Wert, keine zusammengesetzten Werte 22
23 Trennung von Daten und Code... mittels Hiera Hiera Hierarchischer Lookup einer Variable im datadir ähnlich wie extlookup Hiera Konfiguration 23
24 Trennung von Daten und Code... mittels Hiera Hiera Beispiele hiera spezifischen Wert anhand des Schlüssels zurückliefern $local_var = hiera('my_name') hiera_array alle Strings als Array zurückliefern $local_array = hiera_array('my_array') hiera_hash alle Werte zu einem Hash zusammenfassen und zurückliefern $local_hash = hiera_hash('my_hash ) 24
25 Trennung von Daten und Code... mittels Hiera Hiera auf der Kommandozeile Die YAML Datenbank abfragen hiera <key> [Optionen] Wichtige Optionen --yaml <file> --array --hash 25
26 Trennung von Daten und Code... mittels Hiera Hiera und Node Definitions Liste von Klassen aus Hiera abfragen und anwenden 26
27 Trennung von Daten und Code... mittels Hiera Hiera Vor- und Nachteile Pro: dynamische und hierarchische Abbildung von Werten Pro: Default Werte möglich Pro: Trennung von Code und Daten Pro: zusammengesetzten Werte 27
28 Trennung von Daten und Code... mittels Hiera Hiera Best Practices Hiera nicht in Templates sondern nur im Manifest verwenden (Lesbarkeit) Hierarchien minimal halten (Einfachheit) Hiera Daten pro Umgebung trennen :datadir: '/etc/puppet/environments/%{environment}/hieradata' 28
29 Trennung von Daten und Code... die Zusammenfassung Empfehlung So nah wie möglich am Code (Lesbarkeit) Seit weit entfernt wie nötig (Abstrahierbarkeit) Im Zweifel Hiera Default-Werte verwenden 29
30 Reihenfolgen und Abhängigkeiten... Abhängigkeiten modellieren Umgebungen Trennung von Daten und Code Abhängigkeiten Modul Best Practices 30
31 Reihenfolgen und Abhängigkeiten... die Problemstellung Grund Reihenfolge im Manifest wird nicht beachtet (deklarativ) Abhängigkeiten zwischen Ressourcen müssen modelliert werden Problem Reihenfolgen oft doch relevant z.b. Dienst installieren, konfigurieren und starten 31
32 Reihenfolgen und Abhängigkeiten... die Möglichkeiten Reihenfolgen und Abhängigkeiten 1. Metaparameter 2. Chaining 3. Die require Funktion 4. Run Stages 32
33 Reihenfolgen und Abhängigkeiten... die Verwendung von Metaparametern Metaparameter Einsatzzweck: Abhängigkeiten zwischen Ressourcen Before (Ressource vor einer anderen anwenden) Require (Ressource nach einer anderen anwenden) Notify (Ressource vor einer anderen anwenden und Änderungen mitteilen) Subscribe (Ressource nach einer anderen anwenden und Änderungen mitteilen) 33
34 Reihenfolgen und Abhängigkeiten... die Verwendung von Metaparametern Metaparameter Beispiel 34
35 Reihenfolgen und Abhängigkeiten... die Verwendung von Metaparametern Metaparameter Vor- und Nachteile Pro: funktionieren mit jedem Ressourcen Typ Con: wird schnell unübersichtlich 35
36 Reihenfolgen und Abhängigkeiten... Chaining Chaining Einsatzzweck: Abhängigkeiten zwischen Ressourcen(-gruppen) -> (ordering arrow) Die Ressource links des Pfeils wird zuerst angewendet ~> (notification arrow) Die Ressource links des Pfeils wird zuerst angewendet und bei Änderungen wird die Rechte benachrichtigt Best Practice: Pfeile nur in eine Richtung (rechts) verwenden 36
37 Reihenfolgen und Abhängigkeiten... Chaining Chaining Anwendungsfälle Ressourcen Deklarationen Puppet Code Blöcke 37
38 Reihenfolgen und Abhängigkeiten... Chaining Chaining Anwendungsfälle Ressourcen Referenzen Referenz auf eine existierende Puppet Ressource (Typ und Titel) 38
39 Exkurs... Resource Collectors Resource Collectors Ressourcen gruppieren anhand bestimmter Attribute Syntax: < [Ausdruck] > Suchausdrücke mit!=, ==, and und or 39
40 Reihenfolgen und Abhängigkeiten... Chaining Chaining Anwendungsfälle Ressourcen Collectoren (auch virtuelle Ressourcen) 40
41 Reihenfolgen und Abhängigkeiten... Chaining Chaining Vor und Nachteile Pro: Funktioniert für Ressourcen und Gruppen von Ressourcen Pro: sehr flexibel vor allem im Zusammenspiel mit virtuellen Ressourcen Con: Gefahr von Dependency Cycles insbesondere mit virtuellen Ressourcen puppet agent --configprint graphdir 41
42 Reihenfolgen und Abhängigkeiten... die require Funktion Funktion require Einsatzzweck: Abhängigkeiten zwischen Klassen abbilden require (Klassen vor einer Ressource anwenden) Wird auch bei mehrfachen Aufrufen nur einmal ausgeführt im Gegensatz zu include Funktion require Beispiel 42
43 Reihenfolgen und Abhängigkeiten... run stages für Massenabhängigkeiten Run Stages Einsatzzweck: Gruppe von Klassen die vor oder nach allem anderen laufen soll Definition über einen Ressource Type, Verwendung durch Zuweisung eines Metaparameters in einer Klasse Run Stages Beispiel 43
44 Reihenfolgen und Abhängigkeiten... run stages für Massenabhängigkeiten Run Stages Vor- und Nachteile Pro: Massenabhängigkeiten abbildbar Con: funktioniert nicht mit include, subscribe oder notify Con: Klassen die andere Klassen deklarieren verhalten sich im run stage anders Empfehlung: einzig valider Fall sind Abhängigkeiten mit Paketrepositories 44
45 Reihenfolgen und Abhängigkeiten... die Zusammenfassung Zusammenfassung Abhängigkeiten innerhalb von Klassen mit Metaparametern und Chaining Abhängigkeiten zwischen Klassen mit der require Funktion Run Stages vermeiden So einfach wie möglich halten um Dependency Cycles zu vermeiden 45
46 Vielen Dank für Ihre Aufmerksamkeit Kontakt Alexander Pacnik Systems Engineering inovex GmbH Office Karlsruhe Zur Gießerei Karlsruhe +49 (0)
47 Anhang
48 Anhang... wo sie in Ruhe nachlesen können Quellen Puppet Style Guide Puppet Language Guide Puppet Referenzen Puppet Guides Puppet Blog Lizenz des Vortrags Creative Commons (by-nc-nd) 48
Puppet - Implementing Modules. Von der Planung bis zur Umsetzung. Alexander Pacnik Karlsruhe, 26.05.2014
Puppet - Implementing Modules Von der Planung bis zur Umsetzung Alexander Pacnik Karlsruhe, 26.05.2014 Einleitung... worum es in diesem Vortrag geht Typische Probleme Falsches Verständnis von Standard
MehrLinux Tag 2014 - Puppet. Designing Moduls and Repositories. Alexander Pacnik Karlsruhe, 08.05.2014
Linux Tag 2014 - Puppet Designing Moduls and Repositories Alexander Pacnik Karlsruhe, 08.05.2014 Einleitung... worum es in diesem Vortrag geht Der Schlüssel zum Erfolg ist die Kultur, nicht das Werkzeug
MehrServerprovisioning in einer dynamischen Infrastruktur Systemmanagement LinuxTag 2012
Serverprovisioning in einer dynamischen Infrastruktur Systemmanagement LinuxTag 2012 vorgestellt am 23.05.2012 Alexander Pacnik inovex GmbH Wir nutzen Technologien, um unsere Kunden glücklich zu machen.
MehrKONFIGURATIONSMANAGEMENT MIT PUPPET TIM SCHMELING. 4b:65:72:73:74:69:6e:2c:20:69:63:68:20:6c:69:65:62:65:20:64:69:63:68:21
KONFIGURATIONSMANAGEMENT MIT PUPPET TIM SCHMELING 4b:65:72:73:74:69:6e:2c:20:69:63:68:20:6c:69:65:62:65:20:64:69:63:68:21 WAS IST PUPPET? SW für Konfigurationsmanagement Geschrieben in Ruby Client-Server
MehrKeine Angst vor Puppet 4. Secure Linux Administration Conference 2015 Martin Alfke <ma@example42.com>
Keine Angst vor Puppet 4 Secure Linux Administration Conference 2015 Martin Alfke Martin Alfke PL Training Partner Module Contributor Freelancer / example42 Infrastructure Architect
MehrIT Engineering Continuous Delivery. Development Tool Chain Virtualisierung, Packer, Vagrant und Puppet. Alexander Pacnik Karlsruhe, 20.05.
IT Engineering Continuous Delivery Development Tool Chain Virtualisierung, Packer, Vagrant und Puppet Alexander Pacnik Karlsruhe, 20.05.2014 Einleitung... worum es in diesem Vortrag geht Ziele Continuous
MehrEntwicklungsumgebungen. Packer, Vagrant, Puppet. Alexander Pacnik Mannheim, 10.11.2014
Entwicklungsumgebungen Packer, Vagrant, Puppet Alexander Pacnik Mannheim, 10.11.2014 inovex... über inovex und den Referenten 2 Entwicklungsumgebungen... Übersicht Einführung Packer Konfiguration Packer
MehrDevOps in der Praxis. Alexander Pacnik 24.11.2015
DevOps in der Praxis Alexander Pacnik 24.11.2015 Einführung... DevOps Versuch einer Definition Alexander Pacnik IT Engineering & Operations Project Management inovex GmbH 2 Einführung... DevOps Versuch
MehrIML Deployment Axel Hahn 31.10.2013 zuletzt geändert: 04.04.2014
IML Deployment Axel Hahn 31.10.2013 zuletzt geändert: 04.04.2014 Agenda Einleitung, Ausgangslage Build- Prozess, Hooks Phasen + Workflow Handling der KonfiguraHonsdateien InstallaHon mit Puppet Ablage
MehrWine - Windows unter Linux
14. Februar 2009 Vortrag für den PC-Treff Böblingen Agenda 1 2 3 4 Vorteile Nachteile Problemsoftware Versionen von Wine Wine stellt die Windows API unter Linux zur Verfügung, damit können Windows Programme
MehrKonfigurationsmanagement mit Puppet
Konfigurationsmanagement mit Puppet Alexander Weidinger, BSc FH Sankt Pölten aw@sz9i.net 19E0381F pool.keyserver.eu A2CA 2B54 22AE B016 5033 053D F203 875E 19E0 381F Wozu Konfigurationsmanagement? Zeitersparnis,
MehrSystemmanagement mit Puppet und Foreman
Foreman CLT 2014 16. März 2014 Mattias Giese Solution Architect for Systemsmanagement and Monitoring giese@b1-systems.de - Linux/Open Source Consulting, Training, Support & Development Agenda Vorstellung
MehrTanuki Service Wrapper 101. JVM Verwaltung mit der Community Edition. Alexander Pacnik Karlsruhe, 05.04.2013
Tanuki Service Wrapper 101 JVM Verwaltung mit der Community Edition Alexander Pacnik Karlsruhe, 05.04.2013 Agenda... worum es in diesem Vortrag geht. Integration Konfiguration Betrieb Überwachung 2 Einleitung...
MehrZentrales Konfigurationsmanagement mit Puppet
Zentrales Konfigurationsmanagement mit Puppet SLAC 2011 Martin Alfke Einführung Wie managed man 600 Linux-Server mit 20 unterschiedlichen Applikationen? Einführung Wie
MehrJBoss AS 7. Installation, Konfiguration und Betrieb. Alexander Pacnik Karlsruhe, 13.12.2013
JBoss AS 7 Installation, Konfiguration und Betrieb Alexander Pacnik Karlsruhe, 13.12.2013 Jboss 7 AS... worum es in diesem Vortrag geht. Einführung Installation Konfiguration Management Deployment Betrieb
Mehrgit & git-flow Jens Sandmann 14.12.2013 Warpzone Münster e.v. Jens Sandmann (WZ) git & git-flow 14.12.2013 1 / 31
git & git-flow Jens Sandmann Warpzone Münster e.v. 14.12.2013 Jens Sandmann (WZ) git & git-flow 14.12.2013 1 / 31 Überblick 1 git Versionskontrolle Allgemein VCS mit git 2 git flow 3 git nutzen 4 Anhang
MehrEin ganz normaler Tag. Eclipse und Ich
Ein ganz normaler Tag Eclipse und Ich 2008 Bredex GmbH Version 2.3 Agenda Motivation 08:32 Uhr Los geht s 08:47 Uhr Einstieg in die tägliche Arbeit 08:48 Uhr Support 09:30 Uhr Standup Meeting 10:12 Uhr
MehrDatenhaltung für Android Model First. 30.03.2011 Christian Ingenhaag, Frederik Götz, Carl Steeg
Datenhaltung für Android Model First 30.03.2011 Christian Ingenhaag, Frederik Götz, Carl Steeg Agenda Datenhaltung in Android Motivation / Projektziele Projekt Umsetzung Stand der Entwicklung Fazit 2 Datenhaltung
MehrInfrastruktur entwickeln mit Chef
Infrastruktur entwickeln mit Chef Martin Eigenbrodt gearconf 2011 Wir lösen das persönlich! Dieser Vortrag Motivation Chef Real Life Wir lösen das persönlich! Motivation Softwareentwicklung Versionskontrollsystem
MehrPuppet Konfigurationsmanagement. Ulrich Habel <rhaen@pkgbox,de>
r e t r a St Puppet Konfigurationsmanagement Ulrich Habel Hallo! Ulrich Habel Open Source, Perl Evangelist @rabenfeder rhaen@pkgbox.de Schnellstart package {'memcached': ensure => present,
MehrTorsten Flatter inovex GmbH. "Git.NET" gibt's nicht?
Torsten Flatter inovex GmbH "Git.NET" gibt's nicht? Vorstellung Torsten Flatter inovex GmbH.NET / C# seit 2004 VSS, CVS, SVN, TFS, hq, git Enterprise-Umfeld Agenda Überblick Grundlagen Einsatzbereiche
Mehrpuppet, the foreman and everything Opensource Tools für das Datacenter Management Nils Domrose Köln, 24. Juni- 2014
puppet, the foreman and everything Opensource Tools für das Datacenter Management Nils Domrose Köln, 24. Juni- 2014 Aufgabenstellung im Datacenter Konsistente, nachvollziehbare Erstellung von physikalischen
MehrEnd-to-End Agility Sind Sie schon agil genug? Mag. Christoph Leithner c.leithner@celix.at
End-to-End Agility Sind Sie schon agil genug? Mag. Christoph Leithner c.leithner@celix.at www.celix.at September 2015 celix Solutions GmbH Spezialist für Team Collaboration und IT Prozess Management Agile
MehrPuppet-Workshop. Aller Anfang ist leicht
Puppet-Workshop Aller Anfang ist leicht Puppet gewinnt seit Jahren an Bedeutung und das nicht nur in großen IT-Umgebungen im Rechenzentrumsumfeld. Dieser Workshop erleichtert den Einstieg in ein zentrales
Mehrnews Puppentheater Server Management leicht gemacht... the smarter way of information
Puppentheater Server Management leicht gemacht... the smarter way of information Seite 2/7 Im Bereich von Systemen zum automatischen Setup und Betrieb von großen Serverlandschaften, fällt ein Tool besonders
MehrConfiguration Manager Hardware Inventory Erweiterungen. 22.05.2014 trueit TechEvent 2014 1
Configuration Manager Hardware Inventory Erweiterungen It s all about WMI 22.05.2014 trueit TechEvent 2014 1 Agenda Grundlagen Inventory Arten Welche Daten können inventarisiert werden Anpassungen an Default
MehrPNP4Nagios Workshop Daten verarbeiten Das Web Frontend check oracle health. PNP4Nagios Workshop. Jörg Linge
PNP4Nagios Workshop Jörg Linge 3. Netways Nagios Konferenz, 12.9.2008 in Nürnberg 1 PNP4Nagios Workshop Ablauf und Zeitplan VMware Image Anforderungen 2 Daten verarbeiten Die Kunst Daten zu sammeln WORKSHOP
MehrOpen Source Client Management
Open Source Client Management Agenda Vorstellung uib gmbh / opsi.org Was ist opsi Technik von opsi opsi-nagios-integration Neu in opsi 4.0.1 Roadmap Nutzer und Community Geschäftsmodell und Preise Vorstellung
MehrLinux Cafe 2013 11 11. Referent: Bernd Strößenreuther
Versionsverwaltung mit Git Linux Cafe 2013 11 11 Referent: Bernd Strößenreuther mailto:linux cafe@stroessenreuther.net Lizenz Sie dürfen dieses Dokument verwenden unter den Bedingungen der Creative Commons
MehrAgile Praktiken für das Service Transition Management. und wie IT Automation Ihre Service Transition Prozesse verändert - Change Management
Agile Praktiken für das Service Transition Management und wie IT Automation Ihre Service Transition Prozesse verändert - Change Management Agenda Warum Change Management? Wie wird Change Management umgesetzt?
MehrVerteilte Versionskontrolle mit GIT. 17.04.2012 - Dortmund Ansgar Brauner - GreenPocket GmbH - Köln
Verteilte Versionskontrolle mit GIT 17.04.2012 - Dortmund Ansgar Brauner - GreenPocket GmbH - Köln 1 über mich 32 Jahre alt Softwareentwickler bei der Firma GreenPocket in Köln Java EE Entwickler und Rails
MehrSharePoint Continuous Integration mit TFS Online & Azure VMs Torsten Mandelkow Christian Pappert Microsoft
SharePoint Continuous Integration mit TFS Online & Azure VMs Torsten Mandelkow Christian Pappert Microsoft Agenda SharePoint Continuous Integration mit TFS Online & Azure VMs Fehlende Hardware oder mangelnde
MehrRequirements Management mit RequisitePro. Rational in der IBM Software Group. Der Rational Unified Process als Basis für die Projektarbeit
IBM Software Group IBM Rational mit RequisitePro Hubert Biskup hubert.biskup@de.ibm.com Agenda Rational in der IBM Software Group Der Rational Unified Process als Basis für die Projektarbeit mit Rational
MehrRenée Bäcker. Perl $foo Magazin
Renée Bäcker Renée Bäcker Perl Renée Bäcker Perl $foo Magazin Renée Bäcker Perl $foo Magazin OTRS Renée Bäcker Perl $foo Magazin OTRS u.v.m Früher... Am Anfang steht der Kunde... dann kommt der Auftrag
MehrElasticsearch aus OPS-Sicht Teil1. Markus Rodi Karlsruhe, 22.05.2015
Elasticsearch aus OPS-Sicht Teil1 Markus Rodi Karlsruhe, 22.05.2015 Agenda 1.Elasticsearch 2.VM & Storage 3.System 4.Konfigurationsparameter 5.Snapshot/Restore 2 Elasticsearch Cluster Mehrere Nodes Default
MehrLinux System Management Spacewalk
Linux System Management Spacewalk Who? From? Jörg Steffens http://www.dass-it.de/ When? FrOSCon.de, 26.08.2012 Rev : 17236 ich Jörg Steffens Projekte seit 1995 Beschäftigung mit Linux seit 2000 Vollzeit
MehrO/R Mapper. O/R Mapper anhand von NHibernate & Entity Framework Thomas Mentzel März 2010
O/R Mapper O/R Mapper anhand von NHibernate & Entity Framework Thomas Mentzel März 2010 Agenda Object-relational impedance mismatch Mapping Session Abfragen No. 2 Object-relational impedance mismatch Object-relational
MehrSoftware Engineering II
Software Engineering II Wintersemester 12/13 Fachgebiet Software Engineering Installation der MWE Plugins Von der Juno Update Site installieren (falls noch nicht vorhanden): MWE SDK Xpand SDK 2 TFD Projekt
Mehr.NET. René Leupold. www.databinding.net connect@databinding.net. User Group Bern. Follow dnugbe on twitter http://www.dnug-bern.ch/rss.
.NET User Group Bern René Leupold www.databinding.net connect@databinding.net Follow dnugbe on twitter http://www.dnug-bern.ch/rss.aspx DNUG Bern Sponsoren Über René Leupold Siehe Xing ;-) Speaker VSone
MehrContinuous Database Integration mit Flyway
XP Days Germany 2015 Continuous Database Integration mit Flyway Sandra Parsick info@sandra-parsick.de @SandraParsick Zur meiner Person Freiberufliche Softwareentwickler und Consultant im Java- Umfeld Schwerpunkte:
MehrDas Interceptor Muster
Das Interceptor Muster Implementierung des Interceptor Musters basierend auf OSGi and Friends Benjamin Friedrich Hochschule für Technik und Wirtschaft des Saarlandes Praktische Informatik - Entwurfsmuster
MehrVerteiltes Monitoring. 23. Oktober 2014
Verteiltes Monitoring 23. Oktober 2014 Inhalt Szenarien Entscheidungskriterien Best practices Was wir nicht verfolgen 2 / 37 Szenarien Mehrere Rechenzentren weltweit Überwachung tausender Märkte Überwachung
MehrSession Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de
s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Das Interface Stateful und Stateless s Programmierung einer Stateful
MehrOpenStack bei der SAP SE
OpenStack bei der SAP SE Integration bestehender Dienste in OpenStack dank Workflow Engine und angepasstem Webinterface 23. Juni 2015 Christian Wolter Linux Consultant B1 Systems GmbH wolter@b1-systems.de
MehrSkalierbare Webanwendungen mit Python und Google App Engine
Skalierbare Webanwendungen mit Python und Google App Engine Oliver Albers 03. Juli 2008 1/32 Einführung Worum geht es? Pro und Contra Technik Genereller Aufbau Anwendungskonfiguration Verarbeitung von
MehrSolaris Cluster. Dipl. Inform. Torsten Kasch <tk@cebitec.uni Bielefeld.DE> 8. Januar 2008
Dipl. Inform. Torsten Kasch 8. Januar 2008 Agenda Übersicht Cluster Hardware Cluster Software Konzepte: Data Services, Resources, Quorum Solaris Cluster am CeBiTec: HA Datenbank
MehrSubversion. Einstieg in die. Versionskontrolle
Versionskontrolle mit Subversion Einstieg in die Versionskontrolle Dipl.Ing.(FH) K. H. Marbaise Agenda Wozu Versionskontrolle? Was leistet Versionskontrolle? Historie zu Subversion Projekt Handling Installation
MehrWir implementieren Lösungen. + DevOps-in-the-Box. Rainer Heinold VP Technology and Services
+ DevOps-in-the-Box Rainer Heinold VP Technology and Services Über ASERVO Software GmbH - Gegründet 2004 - Unabhängiger Anbieter von DevOps- und ALM-Lösungen - Schwerpunkt im deutschsprachigen Raume -
MehrSystem-Management-Trio. Zentrale Verwaltung mit facter, puppet und augeas
System-Management-Trio Zentrale Verwaltung mit facter, puppet und augeas Seite: 1 / 34 Über den Vortrag Aufbau / Ziele: Einführung / Überblick Begriffsklärung Aufbau / Arbeitsweise von Manifests Templates,
MehrAnpassung von WSS und MOSS Websites
Anpassung von WSS und MOSS Websites Fabian Moritz Senior Consultant, SharePoint MVP ITaCS GmbH Agenda Schwachstellen in WSS (Version 2) Warum Anpassung? Ebenen der Anpassung Integration von ASP.NET 2.0
MehrManagement von grossen IT Umgebungen mit Open Source Tools
Management von grossen IT Umgebungen mit Open Source Tools Marcel Härry Linux System Engineer 1 grosse IT Umgebungen? Large Scale Environments?! 2 Von... 3 Zu... 4 Alles ist gross
MehrComposer für Contao Entwickler
für Contao Entwickler Christian Schiffler Contao Konferenz 2014 16. Mai 2014 1 / 32 C-C-A Power - Xtra Wers n das? Christian Xtra Schiffler Seit 2004 selbständig Seit 2008 bei TYPOlight Contao Hauptentwickler
MehrWOZU VERSIONSKONTROLLE?
GIT AGENDA DES WORKSHOPS WOZU VERSIONSKONTROLLE? GIT GESCHICHTE GIT VERSTEHEN GIT INSTALLIEREN/KONFIGURIEREN BRANCHING/MERGING EXTERNE REPOSITORIES MIT GIT ARBEITEN VERBINDUNG ZUM EXTERNEN REPO AGENDA
MehrSoftware Engineering Klassendiagramme Einführung
Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt
MehrRelease Automation für Siebel
June 30 th 2015 Release Automation für Siebel Stefan Kures Agenda + Herausforderungen + Lösung mit Automic + Vorteile + Resultate 3 Property of Automic Software. All rights reserved Siebel als zentrale
MehrSpiel, Spaß und Spannung mit Git
Spiel, Spaß und Spannung mit Git 2-3 Std-Workshop Meine Person??? Spiel, Spaß und Spannung mit Git 2 Ziel Du kannst Git auf einem Windows- oder Linux- Rechner installieren und konfigurieren Du kennst die
MehrDynamische Websites mit XML und PHP4
Dynamische Websites mit XML und PHP4 Linuxtag 2002 07.06.2002, Karlsruhe Stephan Schmidt Inhalt der Session Über den Redner Strukturierung von Inhalten Transformation von XML Entwickeln einer XML-Struktur
MehrDer Weisheit letzter Schluss:
Der Weisheit letzter Schluss: Maven 2 in der Java Entwicklung Web Site: www.soebes.de Blog: blog.soebes.de Email: info@soebes.de Dipl.Ing.(FH) Karl Heinz Marbaise Agenda 1. Was ist Maven? 2. Features von
MehrSOA Governance Konzepte und Best Practices
SOA Governance Konzepte und Best Practices Gerd Schneider Senior Director SOA Marketing Software AG 2/27/2007 Agenda Überblick SOA Governance Warum SOA Governance? Kundenbeispiel SAS Airlines Technische
MehrPubMan Import - Benutzer Dokumentation
MaibornWolff et al GmbH Theresienhöhe 13 80339 München PubMan Import - Benutzer Dokumentation Version:1.0 Datum: 13.08.13 Status: Final Index 1 EINLEITUNG... 3 2 INSTALLATION... 4 3 KONFIGURATION... 5
MehrGit-Workflows im Alltag
Git-Workflows im Alltag Valentin Haenel Freelance Consultant and Software Developer http://haenel.co @esc 2015-03-21 @ CLT Version: v0.3.0 https://github.com/esc/clt-2015-git-workflows This work is licensed
MehrHallo Wels Hallo Welt. Programmieren als Verständigung. Chapter 1 Bin ich hier richtig? Chapter 2 Zwischen Hybris und Demut
Hallo Wels Hallo Welt Chapter 1 Bin ich hier richtig? Chapter 2 Zwischen Hybris und Demut Schwächen als Stärken Richtiges muss nicht schwierig sein Programmieren als Verständigung Chapter 3 Du bist wie
MehrDie Projek*ools. Files, Git, Tickets & Time
Die Projek*ools Files, Git, Tickets & Time Agenda Die Abgabe von Dokumenten: Files Das Pflegen von Software: Versionskontrolle mit Git Management von Anforderungen: Tickets Management von Zeit: Time Files
MehrPowershell DSC Oliver Ryf
1 Powershell DSC Oliver Ryf Partner: 2 Agenda Begrüssung Vorstellung Referent PowerShell Desired State Configuration F&A Weiterführende Kurse 3 Vorstellung Referent Seit 1991 IT-Trainer 1995 MCSE und MCT
MehrData Center Automation mit Puppet
Data Center Automation mit Puppet Thomas Eisenbarth makandra GmbH May 24, 2012 Agenda makandra Administration: Status quo Configuration Management (CM) mit Puppet Cloud-Computing & CM Demo 2 of 27 makandra
MehrAdvanced Software Engineering WS0910 Kapitel4. Dr. Dominik Haneberg
Advanced Software Engineering WS0910 Kapitel4 Dr. Dominik Haneberg ASPEKT-ORIENTIERTE ENTWICKLUNG 08.02.2010 Advanced Software Engineering 2 Einführung Aspektorientierte Programmierung (AOP) ist ein Programmierparadigma,
MehrBest Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009
Best Practices für flexible und wartbare Codegeneratoren mit openarchitectureware Karsten Thoms Software Architekt 20.04.2009 1 Agenda (1) Fornax-Plattform, Cartridges (2) Referenzimplementierung, Referenzmodell
MehrAndreas Blumenthal, Horst Keller ABAP - Fortgeschrittene Techniken und Tools
Andreas Blumenthal, Horst Keller ABAP - Fortgeschrittene Techniken und Tools Galileo Press Inhalt Vorwort 13 1 Fallen bei grundlegenden ABAP-Operationen vermeiden 17 1.1 Falle Nr. 1: Durchführung arithmetischer
MehrJulius Plenz. Valentin Haenel. Git. Verteilte Versionsverwaltung für Code Dokumente. 2. Auflage. Open Source Press
Valentin Haenel Julius Plenz Git Verteilte Versionsverwaltung für Code Dokumente 2. Auflage Open Source Press Inhaltsverzeichnis Vorwort 11 I Grundlagen 17 1 Einführung und erste Schritte 19 1.1 Grundbegriffe
MehrRedmine, das Projekt Management Werkzeug
Redmine, das Projekt Management Werkzeug Web Site: www.soebes.de Blog: blog.soebes.de Email: info@soebes.de Dipl.Ing.(FH) Karl Heinz Marbaise Agenda 1.Einführung 2.Installation 3.Übersicht 4.Features 5.Informationsquellen
MehrRAC auf Sun Cluster 3.0
RAC auf Sun Cluster 3.0 Schlüsselworte RAC, OPS, Sun Cluster, Performance, Availability Zusammenfassung Oracle hat mit dem Real Application Cluster (RAC) aus einer Hochverfügbarkeitslösung eine Höchstverfügbarkeitslösung
MehrJava für C++ Programmierer
Java für C++ Programmierer Alexander Bernauer bernauer@inf.ethz.ch Einführung in die Übungen zu Informatik II (D ITET) FS2010 ETH Zürich Ziel Allgemeiner Überblick Kennenlernen der Suchbegriffe Warum Java?
MehrDas neue Android Build System
Das neue Android Build System Besser Builden mit Gradle JUGS Event, 18. Juni 2015 Kaspar von Gunten, Ergon Informatik AG whois( kvg ) Software-Engineering seit 2002 Entwicklung in Java (Client/Server,
MehrEffizientes Änderungsmanagement in Outsourcing- Projekten
Effizientes Änderungsmanagement in Outsourcing- Projekten Dr. Henning Sternkicker Rational Software IBM Deutschland GmbH Sittarder Straße 31 52078 Aachen henning.sternkicker@de.ibm.com Abstract: Es werden
MehrSoftware Engineering II
Software Engineering II Codegenerierung für den SmartIO Editor mit der Modeling Workflow Engine Wintersemester 10/111 Fachgebiet Software Engineering Albert Zündorf / Wiederholung Bisher im Laufe des Semesters
Mehr1. Zusammenfassung der letzten Vorlesung
Websiteentwicklung auf Basis vontypo3 TypoScript Unterlagen zur Vorlesung WS 15/16-6- 1. Zusammenfassung der letzten Vorlesung 2. Marker befüllen 3. Bildbearbeitung mit TypoScript 1 Root Seite anlegen
MehrArchitekturüberblick Gradle
Architekturüberblick Gradle STEFAN ZÖRNER, EMBARC Stefan.Zoerner@ @StefanZoerner 0 Über diese Folien In unserem Architektur-Spicker #1 ( Der Architekturüberblick ) schlagen wir u.a. eine Struktur für Folienvorträge
MehrAusrollen von Multi-Tier-Applikationen mit Docker
Ausrollen von Multi-Tier-Applikationen mit Docker CommitterConf 2015, Essen 10. November 2015 Mattias Giese System Management & Monitoring Architect B1 Systems GmbH giese@b1-systems.de B1 Systems GmbH
MehrCheck_MK. 11. Juni 2013
Check_MK 11. Juni 2013 Unsere Vision IT-Monitoring muss werden: 1. einfach 2. performant 2 / 25 Was macht IT-Monitoring? IT-Monitoring: Aktives Überwachen von Zuständen Verarbeiten von Fehlermeldungen
MehrSatellite 6. Next Generation System Provisioning, Configuration and Patch Management
Peter Mumenthaler Head of System Engineering Senior Systems Architekt Andreas Zuber Senior System Engineer Philipp Gassman System Technician Satellite 6 Next Generation System Provisioning, Configuration
MehrAGILE APPLICATION LIFECYCLE MANAGEMENT IM ATLASSIAN ECOSYSTEM
AGILE APPLICATION LIFECYCLE MANAGEMENT IM ATLASSIAN ECOSYSTEM 09.07.2015 NATALIE WENZ JAN GERTGENS Vorstellung Natalie Wenz Studium Medieninformatik an der Hochschule Reutlingen mit Abschluss als Master
Mehr1. Zusammenfassung der letzten Vorlesung
Websiteentwicklung auf Basis vontypo3 TypoScript Unterlagen zur Vorlesung WS 14/15-6- 1. Zusammenfassung der letzten Vorlesung 2. Marker befüllen 3. Bildbearbeitung mit TypoScript 1 Template anlegen Template
MehrGrundlagen von Python
Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren
MehrÜber mich. Daniel Bälz. Softwareentwickler (inovex GmbH) github.com/dbaelz
Quo vadis Dart? Über mich Daniel Bälz Softwareentwickler (inovex GmbH) dbaelz.de plus.dbaelz.de github.com/dbaelz Agenda Was Wie Warum Wohin Was ist Dart? Übersicht Einsatzgebiet Client (Browser, CLI)
MehrPlug-In Development mit dem Oracle Enterprise Manager 12c
Plug-In Development mit dem Oracle Enterprise Manager 12c Schlüsselworte Oracle Enterprise Manager Plug-In Entwicklung Einleitung Gunther Pippèrr München Wie kann eine eigene Lösung für das Monitoring
MehrHERZLICH WILLKOMMEN. Oracle Enterprise Manager Grid Control- Hochverfügbarkeit für den OMS. Markus Flechtner DOAG-Regionaltreffen 3.
HERZLICH WILLKOMMEN Oracle Enterprise Manager Grid Control- Hochverfügbarkeit für den OMS Markus Flechtner DOAG-Regionaltreffen 3. Februar 2012 BASEL BERN LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG
MehrNagios im Novellumfeld
Nagios im Novellumfeld Herzlich Willkommen Christian Mies cmies@gne.de About me... Novell Zertifizierungen seit Netware 5 25 Jahre Novell Utils und Dokumente geschrieben Netzwerkconsultant seit 6 Jahren
Mehr22. Juni 2009 Angelo Gargiulo, Fabian Gander. NConf - Enterprise Nagios configurator
22. Juni 2009 Angelo Gargiulo, Fabian Gander NConf - Enterprise Nagios configurator Themen Einführung Die Nconf Applikation Live-Demo Roadmap Fragen & Antworten 2 Einführung Wer wir sind Fabian Gander
MehrDeploy von PHP-Applikationen
Deploy von PHP-Applikationen Jan Burkl System Engineer Zend Technologies Wer bin ich? Jan Burkl jan.burkl@zend.com PHP Entwickler seit 2001 Projektarbeit Bei Zend seit 2006 System Engineer Zend Certified
MehrDB2 SQL, der Systemkatalog & Aktive Datenbanken
DB2 SQL, der Systemkatalog & Aktive Datenbanken Lehr- und Forschungseinheit Datenbanken und Informationssysteme 1 Ziele Auf DB2 Datenbanken zugreifen DB2 Datenbanken benutzen Abfragen ausführen Den Systemkatalog
MehrEXT: kool_leute. Extension Key: kool_leute Copyright 2008-2009, Renzo Lauper, <renzo.lauper@kircheonline.ch>
EXT: kool_leute Extension Key: kool_leute Copyright 28-29, Renzo Lauper, This document is published under the Open Content License available from http://www.opencontent.org/opl.shtml
MehrTimeSafe Leistungserfassung
Keep your time safe. TimeSafe Leistungserfassung Adressimport 1/8 Inhaltsverzeichnis Inhaltsverzeichnis... 2 1 Allgemeines... 3 1.1 Adressen in der TimeSafe Leistungserfassung... 3 1.2 Organisationen und/oder
Mehr4 Vererbung, Polymorphie
4 Vererbung, Polymorphie Jörn Loviscach Versionsstand: 21. März 2014, 22:57 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work
MehrHardware Inventory Erweiterungen
JÜRG KOLLER PARTNER / CONSULTANT trueit GMBH Juerg.Koller@trueit.chTwitter: @juergkoller www.trueit.ch Hardware Inventory Erweiterungen Configuration Manager Community Event 2014 Agenda Grundlagen Welche
MehrASICMS. Das einfache php-framework. Anleitung und Referenz. ASICMS Das einfache php-framework by Andreas Kasper 25. August 2007.
ASICMS Das einfache php-framework Anleitung und Referenz Seite 1 Inhaltsverzeichnis Inhaltsverzeichnis... 1 Inhaltsverzeichnis... 2 Einführung... 3 Was ist ASICMS?... 3 Was ist ein Widget?... 3 Installation...
MehrLokaler KMS Server im Schulnetzwerk (Kurzanleitung)
Lokaler KMS Server im Schulnetzwerk (Kurzanleitung) Inhalt Installation KMS-Server... 1 Installation W2012-R2... 1 Installation des KMS-DIenstes... 2 Konfiguration der KMS-Clients:... 10 Option1: Verteilung
MehrPuppet. 07.03.2012 Univention - CeBIT. Thomas Gelf www.netways.de
Puppet 07.03.2012 Univention - CeBIT Thomas Gelf KURZVORSTELLUNG Kurzvorstellung Thomas Gelf! Seit 2010 bei der NETWAYS GmbH! Zuvor über 10 Jahre in! Web (Application) Development! Netzwerk (Banken- und
MehrHaving fun with GIT. Chris Wewerka. Software Development Specialist
Having fun with GIT Chris Wewerka Software Development Specialist chris@ twitter.com/longliveenduro plus.google.com/s/chris wewerka GIT Agenda Verteilte Versionskontrollen - Facts Git Crashkurs Git und
Mehr