Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren

of 45/45
Adm01: Tipps und Skripts aus dem Leben eines Connections Admins Christoph Stöttner, Fritz & Macziol GmbH Klaus Bild, Belsoft AG

Embed Size (px)

description

All you want to know about as an IBM Connections administrator. Her you got tipps and tricks from IBM Champion Christoph Stoettner and Klaus Bild.

Transcript of Icsug conf 14_tipps-und-skripts-fuer-ibm-connections-administratoren

  • 1. Adm01: Tipps undSkripts aus dem Lebeneines ConnectionsAdminsChristoph Stttner, Fritz & Macziol GmbHKlaus Bild, Belsoft AG

2. Klaus BildZrcher, Heimweh Bayer,Vater von 2 Shnen Consultant Fachgebiete IBM Connections &IBM Sametime Windows, Linux...Christoph StttnerBayer, liebt Wandern,Vater von 2 Tchtern Consultant Fachgebiete IBM Connections &IBM Domino Infrastrukturen Linux, Linux, Linux,Windows, System I, AIXber uns 3. Einleitung Installation und Konfiguration Autostart Performance Tuning derDataSources Einrichten der J2EE SicherheitsRollen Konfigurieren der JVM Log Dateien Setzen der JVM Heap Size Tglicher Betrieb Business as Usal Testen der External ID gegen LDAP Aktivieren und Deaktivieren vonBenutzern Synchronisation der externen Ids Arbeiten mit Policies Verschieben von Communities Reorganisieren der Datenbanken Backup der Datenbanken Restore der DatenbankenAgenda 4. ber diesen Vortrag IBM Connect 2014 - BP307 Practical Solutions for Connections Administrators - Tips and Scriptsfor Your Daily Businesshttp://www.slideshare.net/ChristophStoettner/ibm-connect-2014-bp307 5. Einleitung Administration/Konfiguration einer IBM Connections Umgebungpassiert 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 zuvermeiden 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 diesenFolien und in den angegebenen DownloadRepositories erfolgt auf eigene Gefahr undohne 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 undKonfiguration 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 Windowscd %WAS_HOME%/binwasservice.bat -add Dmgr -serverName dmgr -profilePath D:IBMWebSphereAppServerprofilesDmgr01 -encodeParams -restart true -startType automatic-stopArgs "-username wasadmin -password password"wasservice.bat -add Node -serverName nodeagent -profilePath D:IBMWebSphereAppServerprofilesAppSrv01 -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 PerformanceViewer 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 Sekundenum alle Parameter derDataSources 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 Applikationenneu! 18. J2EE Rollen fr spezielle Anwendungen Skripts fr initiale Rollenkonfiguration fr viele Umgebungen nichtgranular 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 aufDefault 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 derParameter 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 gesetztwerden 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 inLong 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 verschobenwerden (Sub-Community->Community / Community->Sub-Community) Kann ber wsadmin Befehl ausgefhrt werden, dazu muss man aberCommunity 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) sollteimmer dann durchgefhrt werden, wenn eine grosse Menge an Datenhinzugefgt wurde Runstat (Sammeln von Statistikdaten) sollte regelmssig durchgefhrtwerden, 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 zukonfigurieren 34. DB2 - Reorganisieren der Datenbanken Reorg sollte nur ausgefhrt werden, wenn alle Applikationen gestopptsind, 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 drfengestartet 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 geplantenTasks (Windows) Erstellen eines Cron Jobs (Linux) crontab -e 0 1 * * * cd /opt/install/Wizards/connections.sql;./reorg.sh -> Ausfhren des Skripts jeden Tag um 01:00 37. Backup der Datenbanken Anpassen der Datenbankkonfiguration db2 update database configuration for BLOGS usingAUTO_DEL_REC_OBJ ON num_db_backups 1 rec_his_retentn 0 logarchmeth1 disk:D:DB2LOGSAutomatischesLschen vonRecovery-ObjektenAnzahl derDatenbank-BackupsAufbewahrungs-zeitraumfrRecoveryprotokollPrimreProtokollarchivie-rungsmethode Skript configureArchiveLogs.sh/configureArchiveLogs.bat 38. Backup der Datenbanken Erstellen eines Offline Backup Nach dem ndern der DB Konfiguration muss zuerst ein OfflineBackup erstellt werden, ansonsten knnen Sie (oder Websphere) nichtauf die DBs zugreifen Skript backupDatabasesOffline.sh/backupDatabasesOffline.bat 39. Backup der Datenbanken Ab nun knnen Online Backup erstellt werden, sprich Backup whrenddes Betriebs -> geplanter Task, Cron Job Skript backupDatabasesOnline.sh/backupDatabasesOnline.bat 40. Restore der Datenbanken Lschen der Datenbank, welche wiederhergestellt werden soll (Bsp. BLOGS) DB2 drop database BLOGS Die Datenbank mit dem DB Wizard neu erstellen Restore der Daten mit dem Backup db2 restore database BLOGS from /opt/db2backup REPLACE EXISTING db2 restore database BLOGS LOGS from /opt/db2backup LOGTARGET /opt/db2logs db2 rollforward database BLOGS to end of logs overflow log path "(/opt/db2logs)" db2 rollforward database BLOGS complete overflow log path "(/opt/db2logs) Reorganisieren der Datenbank db2 [email protected] -vf reorg.sql 41. Ressourcen 42. Add On cnxmenu.py Menu fr alle vorhandenen Jython Skripts 43. Download aller gezeigter Skripts Alle gezeigten Skripts (und weitere) knnen unter folgendem Linkheruntergeladen werden (Nutzung auf eigene Gefahr und ohneGarantie): https://github.com/stoeps13/ibmcnxscripting Seit 21. November 2013 ist diese Sammlung auch ein OpenNTF Projekt Administration Scripts for WebSphere http://preview.tinyurl.com/otmq6mj 44. Wir sind froh um Hilfe Helfen Sie uns diese Skripts zu erweitern Diskutieren Sie mit uns neue Ideen Sie knnen uns auch gerne bei folgenden Punkten untersttzen: Erstellen der Dokumentation Testen von Skripts in ihrer Umgebung 45. Klaus Bild Skype: kbuilder Twitter: kbild Blog: http://kbild.ch http://about.me/kbild Christoph Stoettner Skype: christophstoettner Twitter: stoeps Blog: http://www.stoeps.de http://about.me/stoepsUnsere Kontaktdaten