Tipps Und Skripts aus dem Leben eines Connections Admins

  • View
    1.396

  • Download
    0

Embed Size (px)

DESCRIPTION

Session ADM01 auf der bccon.de Konferenz

Text of Tipps Und Skripts aus dem Leben eines Connections Admins

  • 1.Adm01: Tipps und Skripts aus dem Leben eines Connections Admins Christoph Stttner, Fritz & Macziol GmbH Klaus Bild, Belsoft AG

2. Klaus Bild Zrcher, Heimweh Bayer, Vater von 2 Shnen Consultant Fachgebiete IBM Connections & IBM Sametime Windows, Linux... Christoph Stttner Bayer, liebt Wandern, Vater von 2 Tchtern Consultant Fachgebiete IBM Connections & IBM Domino Infrastrukturen Linux, Linux, Linux, Windows, System I, AIX ber uns 3. Einleitung Installation und Konfiguration Autostart Performance Tuning der DataSources Einrichten der J2EE Sicherheits Rollen Konfigurieren der JVM Log Dateien Setzen der JVM Heap Size Tglicher Betrieb Business as Usal Testen der External ID gegen LDAP Aktivieren und Deaktivieren von Benutzern Synchronisation der externen Ids Arbeiten mit Policies Verschieben von Communities Reorganisieren der Datenbanken Backup der Datenbanken Restore der Datenbanken Agenda 4. ber diesen Vortrag IBM Connect 2014 - BP307 Practical Solutions for Connections Administrators - Tips and Scripts for Your Daily Business http://www.slideshare.net/ChristophStoettner/ibm-connect-2014-bp307 5. Einleitung Administration/Konfiguration einer IBM Connections Umgebung passiert zum Hauptteil ber: Integrated Solution Console: Browserbasiert, Mausklick intensiv, trge, Zeitintensiv wsadmin: Verschiedene Befehlsstze fr WAS/Connections, komplexe Befehle, Eingabe Fehler anfllig -> Nutzung von Skripts um Zeit zu sparen und Fehler zu vermeiden 6. Warnung Mit Skripts Shell / BASH / ZSH / KSH / SH, Jython / JACL Powershell / Batch / VB, SQL Kann man... Viel Zeit sparen! Sehr viel in sehr kurzer Zeit ndern/zerstren! Darum sollten Sie: Vorsicht walten lassen, zweimal berlegen! Backups erstellen Ein Testsystem benutzen nderungen dokumentieren Die Benutzung aller Skripts auf diesen Folien und in den angegebenen Download Repositories erfolgt auf eigene Gefahr und ohne Garantie! 7. Jython Gut lesbarer Code Shell und Command Line Interpreter Kann direkt in Shell getestet werden Variablen: Typzuweisung unntig, Integer mit oder Range: Praktisch fr Schleifen, startet mit 0! Listen Dictionaries if elif else Achtung: Websphere 8 nutzt Python/Jython Version 2.1 (aktuell 3.3.5) 8. Installation und Konfiguration 9. Autostart IBM WebSphere Application Server Verschiedene Mglichkeiten gefunden und diskutiert Einfachster und stabilster Weg: Deployment Manager und Node Agents als Dienst Application Server ber Monitoring Policy Starten der Application Server ber Dienst, Batch oder Skript? Probleme mit Cluster Failover Abhngigkeiten Dienst mit wasservice.sh|bat registrieren Monitoring Policy auf "Stopped" fr Installation und Update! 10. WebSphere Dienst unter Linux 11. WebSphere Dienst unter Windows cd %WAS_HOME%/bin wasservice.bat -add Dmgr -serverName dmgr -profilePath D:IBMWebSphere AppServerprofilesDmgr01 -encodeParams -restart true -startType automatic -stopArgs "-username wasadmin -password password" wasservice.bat -add Node -serverName nodeagent -profilePath D:IBM WebSphereAppServerprofilesAppSrv01 -encodeParams -restart true - startType automatic -stopArgs "-username wasadmin -password password stopservers" 12. Monitoring Policy ISC: jeden Application Server ffnen (1 15x) Server Infrastructure Java and Process Management Monitoring Pol. "Node restart state" auf "Running" setzen wsadmin: cfgMonitoringPolicy.py 13. Autostart HTTP Server Windows Installer legt Dienst fr IHS und Admin Service an httpd.exe k install (-c admin.conf) n "IBM HTTP Admin" Linux / AIX: Symbolic Links ln s /opt/IBM/HTTPServer/bin/apachectl /etc/init.d/ ln s /opt/IBM/HTTPServer/bin/adminctl /etc/init.d/ Dienst hinzufgen chkconfig add apachectl chkconfig add adminctl 14. Performance Tuning der DataSources Performance Tuning IBM Connections Erhhen der Werte fr min- und maxConnections der DataSources Grundlage fr Werte: Performance Tuning Guide IBM Connections 4.0 Performance Tuning Guide Addendum for 4.5 Diese Einstellungen sollten regelmssig mit dem Tivoli Performance Viewer kontrolliert werden 15. Konfigurieren der DataSources 18 DataSources mssen gendert werden (ca. 100 Mausklicks) Wie wr es ein Skript zu nutzen: wsadmin.sh -lang jython -f cfgDataSource.py Dauert ca. 30 Sekunden um alle Parameter der DataSources anzupassen 16. Konfigurieren der DataSources 17. Einrichten der J2EE Sicherheits Rollen Initiales setzen der Rollen ber cfgJ2EERolesRestricted.py (kein Zugriff fr Anonymous) cfgJ2EERolesUnRestricted.py Zeitersparnis ca. 30 Minuten gegen ISC Es knnen Benutzer und Gruppen gesetzt werden Nach dem Speichern (AdminConfig.save()) starten alle Applikationen neu! 18. J2EE Rollen fr spezielle Anwendungen Skripts fr initiale Rollenkonfiguration fr viele Umgebungen nicht granular genug Deaktivierung und Aktivierung fr einzelne Benutzer und/oder Gruppen: Global Moderation cfgJ2EERoleGlobalModerator.py Metrics Reader cfgJ2EERoleMetricsReader.py Metrics Report Run cfgJ2EERoleMetricsReportRun.py Mailintegration (Socialmail) cfgJ2EERoleSocialMail.py Vorsicht: auch hier starten die genderten Applikationen neu! 19. J2EE Rollen Backup cfgJ2EERoleBackup bis Version 4.0 wurden oft bei Fixpackinstallationen die J2EE Rollen auf Default gesetzt Problem: geschlossene Umgebungen pltzlich public wurden die Einstellungen dokumentiert (wer hat welche Rolle)? Skript: Backup der J2EE Rollen aller Anwendungen (nicht nur Connections) Backup als Text-Dateien in einem anzugebenden Ordner 20. J2EE Rollen Restore cfgJ2EERoleRestore Backup kann auch wiederhergestellt werden Vorteile: alle Rollen gesetzt wie zum Zeitpunkt des Backups Dateien knnen editiert und angepasst werden (ersetzen eines Benutzers) Restore von Rollenbackups eines DEV oder QA Systems 21. Konfigurieren der JVM Logs - cfgLogFiles Default fr JVM Logs (SystemOut & SystemErr): Grsse: 1MB 5 historische Logs Zu klein fr Troubleshooting! Besser: 20 40 MB 5 10 Log Datei Rotation wsadmin.sh -lang jython -f cfgLogFiles.py 22. Setzen der JVM Heap Size cfgJVMHeap Performance Tuning Guide gibt Empfehlung fr JVM Max und Initial Heap Konfiguration fr Deployment Manager, Node Agents und Application Server Monitoring ber Verbose Garbage Collection initial Heap = max Heap (bis zu 10% Performance Gewinn) Performance Tuning Guide Addendum fr 4.5 empfiehlt das Gleichsetzen der Parameter wsadmin.sh -lang jython -f cfgJVMHeap.py Zeigt aktuelle Grsse der initial- und maximumHeapSize fr alle JVMs an Fragt nach Wert fr initialHeapSize und maximumHeapSize fr alle JVMs Return lsst den Wert unverndert 23. Konfigurieren der DataSources 24. Tglicher Betrieb Business as Usal 25. Scriptumgebung einrichten cnxMember* Skripts benutzen JDBC um Datenbanken auszulesen Einfacher Weg: %WAS_HOME%profilesDmgr01binsetupCmdLine.bat editieren JDBC Pfad (z.B. D:IBMSQLIBjava) an WAS_EXT_DIRS anhngen Besser: wsadmin.bat und setupCmdLine.bat kopieren und anpassen cnxMember* Skripts anpassen DB Benutzer Passwort Hostname und DB 26. Scriptumgebung einrichten (2) 27. Testen der External ID gegen LDAP Manchmal knnen sich einzelne Benutzer nicht anmelden oft nur einzelne Connections Apps betroffen UUID und GUID nicht mehr synchron Umbenennungen planen Skript, welches die LDAP GUID und Connections UUID berprft cnxMemberCheckExIDByEmail Skript liest die PROF_GUID der peopleDB 28. Aktivieren und Deaktivieren von Benutzern Nach Umbenennung und auch manchmal ohne Grund Benutzerinformation nicht synchron ber Applikationen Profiles kann geffnet werden, aber einzelne Anwendungen nicht Deaktivieren und Aktivieren ist oft die Lsung Manuell aufwndig, da UID und E-Mail nach Deaktivierung gesetzt werden mssen (wurden beim Deaktivieren gelscht) Skript cnxMemberDeactandActByEmail speichert E-Mail und UID JDBC notwendig 29. Arbeiten mit Policies Erstellen und anpassen von Policies ist meist sehr mhsam Library Grsse muss als Long definiert werden (z.B. 2 GB = 2147483648L) Ein Beispiel: FilesPolicyService.edit("2d93497d-065a-4022ae25-a4b52598d11a", "My Policy", 2147483648L) Um zu editieren muss die UUID der Policy herausgefunden werden, Grsse in Long berechnet und kopiert werden... wsadmin.sh -lang jython -f CnxFilesPolicies.py 30. Arbeiten mit Policies 31. Verschieben von Communities Seit der Connections Version 4.5 CR3 knnen Communities verschoben werden (Sub-Community->Community / Community->Sub-Community) Kann ber wsadmin Befehl ausgefhrt werden, dazu muss man aber Community IDs wissen Einfacher ber: wsadmin.sh lang jython f cnxCommunitiesReparenting.py 32. Verschieben von Communities 33. DB2 Datenbank Optimierung Performance Tuning Guide: Reorganisation (ndern der physischen Datenanordnung auf HDD) sollte immer dann durchgefhrt werden, wenn eine grosse Menge an Daten hinzugefgt wurde Runstat (Sammeln von Statistikdaten) sollte regelmssig durchgefhrt werden, damit DB Abfragen mglichst optimal ausgefhrt werden Reorganisation und Runstat knnen mit Skripts ausgefhrt werden, welche im connections.sql Verzeichnis gefunden werden Es gibt auch die Mglichkeit beides ber die Automatische Wartung zu konfigurieren 34. DB2 - Reorganisieren der Datenbanken Reorg sollte nur ausgefhrt werden, wenn alle Applikationen gestoppt sind, DBs werden Offline genommen -> whrend Wartungsfenstern Ausfhren von 10 Skripts durch unterschiedliche Aufrufe -> mhsam Einfacher ber Skript reorg.sh/reorg.bat 35. DB2 - Runstats Runstats sollte regelmssig ausgefhrt werden, Applikationen drfen gestartet sein, DBs werden nicht Offline genommen -> whrend Randzeiten Ausfhren von 10 Skripts durch unterschiedliche Aufrufe -> mhsam Einfacher ber Skript runstats.sh/runstats.bat 36. DB2 - Runstats Erstellen eines geplanten Tasks (Windows) Erstellen eines Cron Jobs (Linux) crontab -e 0 1 * * * cd /opt/install/Wizards/connections.sql;./reorg.sh -> A