Presentation on theme: "Refeng Wu CQ5 WCM System Administrator"— Presentation transcript:
1Refeng Wu CQ5 WCM System Administrator Repository Optimization and TAR PM index rebuild in clustered Weblogic serversRefeng WuCQ5 WCM System Administrator
2CQ5 - Repository Database -> Repository Huge size; maintenance issueKeeping the clean repository is one of the main task for CQ5 system administrationChallenges:Third party application serverWebsphere 7, JBoss 5.1, Oracle Weblogic , Tomcat 6Clustered environmentsLDAP integration
3Challenges Installation and configuration adjustments Performance TuningVery time-consuming Maintenance process - Repository is very bigSlave repository out-of-syn with Master repositoryServer maintenance / catastrophic failure, and could not be restarted smoothlyLDAP issue:Author instance cannot login, system frozenPublish instance directed to geometrixx login pageLog Errors: seldom with right solutionsauthor 8G, publish 6G
4Database MaintenanceMonitoring databases: Monitoring the state of the database ensures -- Availability of the Database; Better Performance.Backup and recovery: To prevent the potential loss of data, set up a backup and recovery plan -- scheduling regular backups; special backup after large data is imported/modified.Performance TuningReorganizing and generating database statistics: The DB optimizer requires statistical metadata info about tables & the best way to access data.Re-creating all indexes: to improve query performance when many existing indexes require reorganization.Managing database connections: define max connection pools for each of services to optimize the balance between resources and requests.Purging performance profiling data: to restore free disk space and speed up database utilities.Dropping temporary tables: drop all data from temporary tables/indexes that hold data due to failed job process.Old object versions: check for old object versions and delete from database tables to restore storage space, enhance performance, and speed up database utilities.
5Repository maintenance (Database + file system maintenance) Proactive solutionCheck up the log file dailyFinal solutionRepository/instance backup dailyDaily Maintenance for Performance ImprovementIndexing and OptimizationEnable hierarchy checkValidate change-set hierarchySetup LDAP logSchedule consistency checkTest clustered PROD repository in QARebuild IndexRunning Garbage Collection-Dorg.apache.jackrabbit.core.state.validatehierarchy=true
6Repository Optimization Tar Files: append-only file, disk usage increasescopies data being used from old tar files into new tar files;deletes the old tar files that contain only old or redundant dataNode parent-child inconsistencySearch index inconsistencyOptimization process:Merging index filesIndexSet: Merging index files for /app/CQ5/Author/crx-quickstart/repository/versionIndexSet: Merging index files for /app/CQ5/Author/crx-quickstart/repository/tarJournalIndexSet: Merging index files for /app/CQ5/Author/crx- quickstart/repository/workspaces/crx.defaultRename TarFile:Renaming /app/CQ5/Author/crx-quickstart/repository/version/optimize.tar to /app/CQ5/Author/crx-quickstart/repository/version/optimizeNow.tarOptimize TarFile:/app/CQ5/Author/crx-quickstart/repository/version/data_00331.tar id:331 length: append:Merging index files:Merging index files for /app/CQ5/Author/crx-quickstart/repository/version ……
7IndexingLucent Index: node content full-text search, resource-consuming, time-consuming/repository/repository/indexLucene Search Index for jcr:system (includes jcr:versionStorage)/repository/workspace/crx.default/indexLucene Search Index for crx.default workspaceTAR PM Index: node index/repository/workspace/crx.default/index*.tarTar PM Index for crx.default workspace /repository/version/index*.tarTar PM Index for version workspace/repository/tarJournal/index*.tarTar PM Index for the cluster journal for Journal PM in 5.4
8Consistency Check Consistency Check: repository.xml, workspace.xml Add parameters to all <SearchIndex...> elementsAdd parameters to all <PersistenceManager...> elementsNot solving all corrupted nodescouple nodes, or too many nodes to be fixedIndex RebuildRemoving index.tar files from three folders in repositoryDo it together with Consistency Check during repository startup8G takes less than 30 minutes.
9Rebuild Clustered PROD Repository Moving Clustered repository to in QA or Dev environmentModify context configure in each server / domainWeblogic server bootstrap.propertiesModify cluster configurechange slave cluster.property ip addressTest the whole process in QA or Dev with PROD RepositoryBe prepared for possible results: master fails, slave fails – copy from master, recovery from zip fileGet a solution for each resultMaintenance window and anticipated hours for useMoving PROD master/slave backup files to QA: restore the whole application rather than just repository.0.Indentify PROD master/slave servers, so that QA could start/stop in the same order;1.copy PROD master/slave backup files to QA;2.unzip file in QA master and slave respectively: jar -xvf3.change/copy deployment plan; modify weblogic server bootstrap.properties file for cluster environment. (actually no need to change, as both settings are same)4.Rename master clusered.txt ; change slave cluster.property ip address. slave 006q ; master 007q ; remove lock file5.restart master/slave servers in QA.
10LDAP setup Enable LDAP log info Author instance - ldap group filter: <logger><appender name="ldap" class="org.apache.log4j.FileAppender"> </logger>/crx-quickstart/server/etc/Ldap_login.configAuthor instance - ldap group filter:(&(objectclass=group)(cn=wcm*))Publish instance:remove group synchronization vs Close User Group*WARN * ItemSaveOperation: /home/groups/COM/ABB/PROD/CN=Adobe Pro Users,OU=Corporate,OU=Groups,DC=PROD,DC=ABB,DC =COM/rep:lastsynced: failed to restore transient state (ItemSaveOperation.java, line 897)