Allgemeines zu CFEngine (was tut es, was kann es, wie funktioniert es)
Allgemeiner Aufbau der Konfig und der Scriptsprache
Implementierung bei noris (Mandantenfähigkeit, Installation, Selbstheilung)
Das Zend Framework hat eine bewegte Geschichte hinter sich. Unter dem Mantel der Linux Foundation hat es nun eine neue Heimat gefunden und wird im Laminas Projekt weiter geführt. Laminas setzt die Arbeit fort und bündelt die eigenständigen Komponenten, das MVC Framework, Expressive und Apigility in einem neuen gemeinsamen Projekt. In diesem Vortrag erfahren Sie alles über den Wechsel von RogueWave Software zur Linux Foundation. Wir schauen, was sich ändern wird, was wegfällt und was neu sein wird. Und wir wagen auch einen Blick in die Zukunft des Frameworks.
Das Zend Framework hat eine bewegte Geschichte hinter sich. Unter dem Mantel der Linux Foundation hat es nun eine neue Heimat gefunden und wird im Laminas Projekt weiter geführt. Laminas setzt die Arbeit fort und bündelt die eigenständigen Komponenten, das MVC Framework, Expressive und Apigility in einem neuen gemeinsamen Projekt. In diesem Vortrag erfahren Sie alles über den Wechsel von RogueWave Software zur Linux Foundation. Wir schauen, was sich ändern wird, was wegfällt und was neu sein wird. Und wir wagen auch einen Blick in die Zukunft des Frameworks.
Vortragsreihe Dortmund: Unified Development EnvironmentsThorsten Kamann
Große Entwicklungsabteilungen stehen oft vor dem Problem einheitlicher Entwicklungsprozesse und Werkzeuge. Nach einiger Zeit hat jedes Projekt eigene Prozesse und Werkzeuge etabliert. Dies ist nicht im Sinne der Entwicklungsabteilung. Softwaresysteme müssen i. d. R. über Jahre hinweg gewartet und erweitert werden - oft von einem Team, das sich neu in die Anwendung einarbeiten muss.
Nicht selten stellt die Rekonstruktion der Entwicklungsumgebung einen erheblichen Aufwand dar.
Dieser Vortrag beschreibt - anhand eines Erfahrungsberichts - den Aufbau einer strukturierten Entwicklungsumgebung, die auch für grosse Entwicklungsabteilungen skaliert.
- Zentrale Projekt- und Codeverwaltung (ähnlich wie Sourceforge)
- Buildmanagement mit Maven
- Entwicklungswerkzeuge basierend auf Maven und Eclipse
- Installierbare Teamserver mit Virtualisierungstechnologie für Continuous Integration
Opensource Tools für das Data Center Managementinovex GmbH
Let's talk about Open Source Data Center Management with Foreman, Puppet & docker.io! We invite everyone who's interested to join us at our inovex Meetup in Cologne. This time we will cover the following topics: [01] An introduction to docker.io: Secure and portable containers made easy "Docker is an open-source engine that automates the deployment of any application as a lightweight, portable, self-sufficient container that will run virtually anywhere." Learn how docker.io can be a huge benefit for you by bringing operations and development closer together. [02] OSS Data Center Management with The Foreman & Puppet. Have you ever wondered why your IT department needs about 5-10 weeks to have a new project infrastructure up and running? We will discuss the reasons and show you how to fix the issue using our Open Source Data Center Management setup.
Wer sich mit XPages-Entwicklung beschäftigt, wird über Kurz oder Lang auch auf OpenNTF und die eXtension Library stoßen.
Was ist die eXtension Library und wie kann ich die Erweiterungen in meiner Entwicklungsumgebung nutzen?
Wie können mir die zahlreichen Custom Controls auf OpenNTF helfen, den Entwicklungsaufwand zu reduzieren?
Seit Juli 2011 gibt es die Möglichkeit, aus XPages heraus auf relationale Datenbanken zuzugreifen. Was wird dazu benötigt und wie sieht der Zugriff in der Praxis aus?
Zielgruppe: Teilnehmer mit Grundlagenkenntnissen in der XPages-Entwicklung
Kenntnisse: Grundlagenkenntnisse in der XPages-Entwicklung
Im heutigen IT-Alltag müssen neue Systeme innerhalb kürzester Zeit konfiguriert und verfügbar sein. Immer mehr Systeme werden von immer weniger Administratoren betreut. Werkzeuge zum Deployment und zum Konfigurationsmanagement bieten die nötige Automatisierung. Dieser Vortrag führt ein in das Systemmanagement mit Puppet und Foreman und zeigt beispielhaft, wie ein System frisch eingerichtet, konfiguriert und in eine Monitoringumgebung eingebunden wird.
cynapspro data endpoint protection 2010 - Installationsleitfadencynapspro GmbH
Installationsleitfaden der intuitiven und effizienten cynapspro Data Endpoint Protection 2010.
Weitere Informationen über die cynapspro Endpoint Data Protection 2010 finden Sie unter http://cynapspro.com/DE/
LinuxTag 2007 - Linux im Bundesministerium des Inneren bei der Fußball WM 2006Schlomo Schapiro
Das Bundesministerium des Inneren (BMI) war während der Fußballweltmeisterschaft 2006 Sitz des Nationalen Informations- und Kommunikationszentrums (NICC), in dem Sicherheitsverantwortliche rund um die WM2006 zusammenarbeiteten.
Das Informationssystem des NICC wurde auf vier Linuxservern betrieben, deren zuverlässiges Funktionieren für die Zeit der WM unbedingt erforderlich war.
Auf Grund der hohen Anforderungen an die Verfügbarkeit des Informationssystems wurde zur WM ein 24x7 Support organisiert. Mit diesem Projekt zeigte sich die Zuverlässigkeit hochverfügbarer Linuxlösungen. Das BMI konnte weitere Erfahrungen in diesem Bereich sammeln.
Der Vortrag beschreibt beschreibt die Technik hinter dem Informationssystem.
Vortragsreihe Dortmund: Unified Development EnvironmentsThorsten Kamann
Große Entwicklungsabteilungen stehen oft vor dem Problem einheitlicher Entwicklungsprozesse und Werkzeuge. Nach einiger Zeit hat jedes Projekt eigene Prozesse und Werkzeuge etabliert. Dies ist nicht im Sinne der Entwicklungsabteilung. Softwaresysteme müssen i. d. R. über Jahre hinweg gewartet und erweitert werden - oft von einem Team, das sich neu in die Anwendung einarbeiten muss.
Nicht selten stellt die Rekonstruktion der Entwicklungsumgebung einen erheblichen Aufwand dar.
Dieser Vortrag beschreibt - anhand eines Erfahrungsberichts - den Aufbau einer strukturierten Entwicklungsumgebung, die auch für grosse Entwicklungsabteilungen skaliert.
- Zentrale Projekt- und Codeverwaltung (ähnlich wie Sourceforge)
- Buildmanagement mit Maven
- Entwicklungswerkzeuge basierend auf Maven und Eclipse
- Installierbare Teamserver mit Virtualisierungstechnologie für Continuous Integration
Opensource Tools für das Data Center Managementinovex GmbH
Let's talk about Open Source Data Center Management with Foreman, Puppet & docker.io! We invite everyone who's interested to join us at our inovex Meetup in Cologne. This time we will cover the following topics: [01] An introduction to docker.io: Secure and portable containers made easy "Docker is an open-source engine that automates the deployment of any application as a lightweight, portable, self-sufficient container that will run virtually anywhere." Learn how docker.io can be a huge benefit for you by bringing operations and development closer together. [02] OSS Data Center Management with The Foreman & Puppet. Have you ever wondered why your IT department needs about 5-10 weeks to have a new project infrastructure up and running? We will discuss the reasons and show you how to fix the issue using our Open Source Data Center Management setup.
Wer sich mit XPages-Entwicklung beschäftigt, wird über Kurz oder Lang auch auf OpenNTF und die eXtension Library stoßen.
Was ist die eXtension Library und wie kann ich die Erweiterungen in meiner Entwicklungsumgebung nutzen?
Wie können mir die zahlreichen Custom Controls auf OpenNTF helfen, den Entwicklungsaufwand zu reduzieren?
Seit Juli 2011 gibt es die Möglichkeit, aus XPages heraus auf relationale Datenbanken zuzugreifen. Was wird dazu benötigt und wie sieht der Zugriff in der Praxis aus?
Zielgruppe: Teilnehmer mit Grundlagenkenntnissen in der XPages-Entwicklung
Kenntnisse: Grundlagenkenntnisse in der XPages-Entwicklung
Im heutigen IT-Alltag müssen neue Systeme innerhalb kürzester Zeit konfiguriert und verfügbar sein. Immer mehr Systeme werden von immer weniger Administratoren betreut. Werkzeuge zum Deployment und zum Konfigurationsmanagement bieten die nötige Automatisierung. Dieser Vortrag führt ein in das Systemmanagement mit Puppet und Foreman und zeigt beispielhaft, wie ein System frisch eingerichtet, konfiguriert und in eine Monitoringumgebung eingebunden wird.
cynapspro data endpoint protection 2010 - Installationsleitfadencynapspro GmbH
Installationsleitfaden der intuitiven und effizienten cynapspro Data Endpoint Protection 2010.
Weitere Informationen über die cynapspro Endpoint Data Protection 2010 finden Sie unter http://cynapspro.com/DE/
LinuxTag 2007 - Linux im Bundesministerium des Inneren bei der Fußball WM 2006Schlomo Schapiro
Das Bundesministerium des Inneren (BMI) war während der Fußballweltmeisterschaft 2006 Sitz des Nationalen Informations- und Kommunikationszentrums (NICC), in dem Sicherheitsverantwortliche rund um die WM2006 zusammenarbeiteten.
Das Informationssystem des NICC wurde auf vier Linuxservern betrieben, deren zuverlässiges Funktionieren für die Zeit der WM unbedingt erforderlich war.
Auf Grund der hohen Anforderungen an die Verfügbarkeit des Informationssystems wurde zur WM ein 24x7 Support organisiert. Mit diesem Projekt zeigte sich die Zuverlässigkeit hochverfügbarer Linuxlösungen. Das BMI konnte weitere Erfahrungen in diesem Bereich sammeln.
Der Vortrag beschreibt beschreibt die Technik hinter dem Informationssystem.
2. Unternehmensportrait - noris network
noris network übernimmt für Kunden
einzelne IT-Services (Outtasking)
oder den Betrieb der kompletten IT (Outsourcing).
Das Unternehmen positioniert sich bundesweit als
IT-Outsourcing- und Outtasking-Spezialist
mit langjähriger Erfahrung im Managed-Hosting- und
WAN-Umfeld
im Portfolio befinden sich ergänzend ISP-Services,
VoIP, VPN-, Housing- und Security-Produkte sowie
ein komplettes Full-Service-Management.
Dienstag, 5. April 2011
3. noris network wurde 1993 gegründet, ist eigenfinanziert, Inhabergeführt
und hat deutschlandweit mehrere redundant ausgelegte Standorte.
Technologische Basis ist eine
leistungsfähige IT-Infrastruktur
mit noris-network-eigenen
Hochleistungs- und Hoch-
sicherheits Rechenzentren.
Unternehmensportrait - noris network
Dienstag, 5. April 2011
4. noris network – MPLS-Backbone
Zwei Backbone-Ringe:
Nürnberg – München – Stuttgart –
Straßburg – FFM
Nürnberg – Leipzig – Magdeburg –
Berlin – Hamburg – Bremen –
Hannover – Düsseldorf – Köln
– FFM
Anschlüsse an die wichtigen
Internet-Austauschknoten in:
Frankfurt/Main (DE-CIX)
München (INXS) und
Nürnberg (N-IX)
Wien (VIX)
> mehrfache 10 Gbit/s Ethernet
Netzwerk
> N (RZ) – F (DE-CIX): bis zu 400 Gbit/s
Dienstag, 5. April 2011
5.
Z E R T I F I K A T
Die
DQS GmbH
Deutsche Gesellschaft zur Zertifizierung von Managementsystemen
bescheinigt hiermit, dass das Unternehmen
noris network AG
Deutschherrnstraße 15-19
90429 Nürnberg
Deutschland
für den Geltungsbereich
IT-Outsourcing, IT-Outtasking, Vertrieb, Konzeption,
Betrieb von Rechenzentren und Infrastrukturen
ein
Informationssicherheits-Managementsystem
eingeführt hat und anwendet.
Durch ein Audit, dokumentiert in einem Bericht, wurde der
Nachweis erbracht, dass dieses Managementsystem
die Forderungen der folgenden Norm erfüllt:
ISO / IEC 27001
Information technology – Security techniques
Information Security Management Systems
Requirements
Ausgabe Oktober 2005
Dieses Zertifikat ist gültig bis 2010-06-13
Zertifikat-Registrier-Nr. 358515 ISMS
Frankfurt am Main 2007-06-14
Ass. iur. M. Drechsel Dipl.-Ing. S. Heinloth
GESCHÄFTSFÜHRER
D-60433 Frankfurt am Main, August-Schanz-Straße 21
noris network ist der 70.
Zertifikatsinhaber in Deutschland, der
sämtliche Prüfungskriterien nach
ISO/IEC 27001 vollständig erfüllt.
Im Gegensatz zu vielen ISO-27001-
Zertifizierungen anderer Firmen umfasst
der Geltungsbereich bei noris network
das gesamte Unternehmen.
noris network – Sicherheit nach ISO 27001:
Dienstag, 5. April 2011
6. Warum Cfengine?
Zeitpunkt der Entscheidung für Cfengine: 2008
– Durchsetzen von Systemdefaults
– Wartung gleichartiger Systeme vereinfachen
– Versionsverwaltung
– Unterstützt alle Unix Varianten und Windows (mit cygwin)
– Ist bei den relevanten Linux-Distributionen dabei bzw. kann leicht nach
installiert werden (Debian, Ubuntu, SuSE, RedHat, ...)
– stabil mit langer Historie
– gut für große Installationen geeignet
6
Dienstag, 5. April 2011
7. about:Cfengine
Historie:
– Entwickelt 1993 von Mark Burges an der Uni Oslo
– Hauptgrund: schlechte Wartbarkeit und Skalierung von Shellskripten
– Ziele: deklarative Sprache, selbst-dokumentierend
– 2002: Cfengine 2: Erkennung von Anomalien, sichere Kommunikation
– 2003: Entwicklung Cfengine 3 startet. Entwicklung der „promise theory“
(http://research.iu.hio.no/promises.php)
– 2009: Erstes Release Cfengine 3
7
Dienstag, 5. April 2011
8. Versionen
Bei noris im Einsatz:
– 2008 stabile Version 2
– Version 3 erst in neueren Distributionen enthalten
– Cfengine 3 seit Anfang 2010 im Probebetrieb
– Migration der config files von v2 auf v3 zeitaufwändig
8
Version 2.x Version 3.x
Seit Debian 4.0 etch Seit Debian squeeze 6.0
Ubuntu 4.10 Warty Warthog Ubuntu 10.04 Lucid Lynx
Dienstag, 5. April 2011
9. default: pull
– cfexecd / cronjob
– Kommunikation nur nach extern
– Gut über verschiedene
Firewallzonen nutzbar
– Keine adhoc Änderungen
triggered:
– Kein echtes push
– Anfrage für einen Update Lauf
– geeignet um Änderungen an vielen
Systemen zeitnah umzusetzen
Betriebsmodi
9
Dienstag, 5. April 2011
10. Binaries
10
Version 2 Version 3
Worker zur Abarbeitung der
config files („inputs“)
cfagent cf-agent
Taskplaner und Wrapper für
cfagent
cfexecd cf-execd
Serverdaemon cfservd cf-serverd
Schlüsselgenerierung cfkey cf-key
Remoteaktivierung cfrun cf-runagent
Debugtool für Cfengine
Datenbanken
cfshow cf-report
Monitoring Tool cfenvd cf-monitord
Dienstag, 5. April 2011
11. config files
11
Version 2 Version 3
Netzwerkdaemon /var/cfengine/inputs/cfservd.conf „server“ bundle in
/var/cfengine/inputs/promises.cf
Update der Configfiles /var/cfengine/inputs/update.conf „agent“ bundle in
/var/cfengine/inputs/promises.cf
Configmanagement Jobs /var/cfengine/inputs/cfagent.conf „agent“ bundle(s) in
/var/cfengine/inputs/promises.cf
Dienstag, 5. April 2011
12. Cfengine Grunsätze
Grundsatz:
– lokal / unabhängig / sicher
– lokale Entscheidungsfreiheit
• Teil des Sicherheitsmodells
• „Cfengine will never support push communications“
12
Dienstag, 5. April 2011
13. Elemente v2
Abschnitte:
– vordefinierte Abschnitte
– definieren unterschiedliche
Operationen, z.B.:
• Dateien kopieren (copy)
• Prozesse starten (processes)
– Werden bis auf den control, import,
alerts und classes Abschnitt über
actionsequence aufgerufen
– actionsequence definiert
Reihenfolge der Ausführung
13
control:
actionsequence =
( Abschnitt1 Abschnitt2 Abschnitt3 )
...
Abschnitt1:
Klassen::
Anweisung1
Anweisung2
Abschnitt2:
...
Abschnitt3:
...
Dienstag, 5. April 2011
14. Elemente v2
Klassen:
– Logisches Element
– Können verknüpft werden
( . für UND, | für ODER, ! für NOT )
– Steuern ob Anweisungen
ausgeführt werden
– Softclasses werden im Abschnitt
classes: definiert
– Hardclasses sind vordefiniert, z.B.:
62_128_18 62_128_18_66 64_bit Day29 GMT_Hr13 Hr15
Hr15_Q4 March Min55_00 Min59 Q4 Tuesday Yr2011 any
cfengine_2 cfengine_2_2 cfengine_2_2_10
compiled_on_linux_gnu confman1_noris_net debian
ipv4_62 ipv4_62_128 ipv4_62_128_18 ipv4_62_128_18_66
linux linux_2_6_32_30_server linux_x86_64
lsb_compliant main net net_iface_eth0 net_iface_lo
noris_net syslog_low_normal ubuntu ubuntu_10
ubuntu_10_4 ubuntu_lucid x86_64
14
control:
actionsequence = ( editfiles )
...
classes:
file_foobar_exists =
( FileExists(/tmp/foobar) )
editfiles:
file_foobar_exists::
{ /tmp/foobar
AppendIfNoSuchLine "Hello World"
}
Dienstag, 5. April 2011
15. Elemente v2
15
control:
actionsequence = ( editfiles )
foobar = ( "/tmp/foobar" )
classes:
file_foobar_exists =
( FileExists($(foobar)) )
editfiles:
file_foobar_exists::
{ $(foobar)
AppendIfNoSuchLine "Hello World"
}
Variablen:
– Speichern Strings
– Aufruf via $(variable) bzw.
${variable}
– Werden im Abschnitt control:
definiert
Dienstag, 5. April 2011
16. Elemente v2
16
import:
# load definitions
cf.definitions
# start main process
cfagent.conf.run
Imports:
– Strukturierungsmittel
– Auslagern von Informationen in
einzelne Files
– Importierte Files werden
gemerged
– Achtung! Variablen und Klassen
stehen nur ab der jeweiligen
Hierarchieebene zur Verfügung
Dienstag, 5. April 2011
17. Elemente v3
Promises:
– Deklaration eines Zustandes den man erhalten möchte
– Strukturiert durch bundles und bodies
– promise bundle: Sammlung von promises
– promise body: Teil eines promise mit
Detailinformationen
– TYPE: Typ eines bundle/body
– promise type entspricht Abschnitt in v2
– class ist analog zu v2
– neu bei Variablen: Listen, Datentypen
17
bundle/body TYPE name
{
promise type:
classes::
"promiser" ->
{ "promisee1","promisee2", ... }
attribute_1 => value_1,
attribute_2 => value_2,
...
attribute_n => value_n;
}
Dienstag, 5. April 2011
18. Beispiel sshd_config
Ziele:
– Login mit Passwort nicht mehr möglich
– Nur noch mit Key Authentisierung
18
# Authentication:
PermitRootLogin without-password
# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
ChallengeResponseAuthentication no
# Change to no to disable tunnelled clear text passwords
PasswordAuthentication no
Dienstag, 5. April 2011
24. noris config - Selbstheilung
– Fehler in der Config kann dazu führen, dass cfagent nicht
mehr sauber durchläuft
– Manuelle Reparatur: Auf allen betroffenen Hosts default
config verteilen
– Lösung:
• Stündlicher cronjob
• bash Script
• führt cfagent aus und prüft exitcode
• Im Fehlerfall:
– Backup der Configurationsdateien
– Deploy default config per HTTP Download
– In Cfengine 3 bereits eingebaut (failsafe.cf)
24
Dienstag, 5. April 2011
25. Weitere Informationen
– Cfengine Website
http://www.cfengine.org
• Cfengine 3 Referenz
http://www.cfengine.org/manuals/cf3-reference.html
• Cfengine 2 Referenz
http://www.cfengine.org/manuals/cf2-Reference.html
– Promise Theory
http://research.iu.hio.no/promises.php
– Wikipedia
http://en.wikipedia.org/wiki/Cfengine
25
Dienstag, 5. April 2011
26. Noch Fragen?
Florian Freund
Teamleiter Managed Services
Email: florian.freund@noris.net
noris network AG
Thomas-Mann-Straße 16-20
90471 Nürnberg
www.noris.de
Freiraum schaffen für Innovation, Kreativität, Produktivität
Dienstag, 5. April 2011