Connections Install in 45 mins* As quick as “The Flash”© Sharon Bellamy – Cube Soft Consulting Ltd / Senior Engineer - Rock Team *Note the install may take a lot longer than 45 mins The Flash is © of DC Comics Who am I? Sharon Bellamy Mum, workaholic, Star Wars & Disney enthusiast – Mandalorian costumer, cosplayer, Sci-Fi fan & trustee for iCosplay anti-bullying campaign Administrator and Implementer Specializes in IBM Connections, WebSphere and other collaboration solutions Working with WAS based products since 2003 Lover of Linux Nathan James – Partner, Installer, system admin and makes a great cup of tea Agenda • • • • • • • • • Why? Plan, plan and plan some more Software Required Useful Tools Pre-Reqs Installation Configuration Troubleshooting Importing Data • POC > Live • Resources / Help Want to use the Domino/Notes Files and Profiles entitlements – Where do we start? Connections proof of concept – lets try before we buy – if we like it we’ll make this our live server!! We need a test / dev system, upgrade testing, UI development, integration test system I need to do some Connections development and need a dev system Our system was installed by a BP / IBM – now I need to look after it, where do I start? Need to upgrade to Connections 5 – test a fix pack, install a new component and I don’t want to break live I am THE IT guy – Never touched WebSphere – HELP !!! 4 What OS – Windows / Linux • For TEST or Dev systems try to keep same as LIVE or system developing for LDAP – plug into the *real* one where possible If you need a dev LDAP make sure the schema is the same as the live system Database – as the live / system developing for (i.e same DB type, same release) Note that if you are planning on populating the new system with existing data it must be same OS / versions for simplicity (its possible but a world of pain otherwise) • Size your system for current and expected growth – this will affect the topology required • • • • – Windows / Linux • How many VM / Machines required? • Small deployments of a few hundred users can happily sit on one reasonably sized machine • If medium deployment how many JVMS / WebSphere servers / Nodes? • Make decisions before you start • Straight forward to add additional nodes • Easier to add than take things away • It is much harder to change pieces of the environment once installation starts • Understand what you are trying to achieve before you install ANYTHING Topology Examples Small Topology Example Topology Examples Medium Topology Example Software Required WebSphere 8.5.5 + Fix pack 2 WebSphere 8.5.5, Supplemental software + Fix pack 3 Connections Install (for your OS) Connections Wizards (for your OS) TDI 7.1.1 + Fix pack 3 DB – for your OS – DB2 10.1 (FP4), Oracle 11.0.2g, MSSQL (win 2008/12) See resources for a list of part numbers Useful Tools: LDAP Browser, decent txt editor, Baretail (windows), Connections admin scripts (see scripting101.org) LDAP - PreReqs WebSphere / Connections / TDI requires read access to an LDAP Server LDAP can be: Active Directory, Domino, Novell eDirectory, Sun/Oracle & TDS WebSphere must be able to see the users you wish to add to / use Connections – this can be the root, a group, an OU or selected via an LDAP filter Things to Note: Novell eDirectory – the DB population wizard won’t run, edit TDI scripts and run manually Domino – If the root LDAP is used and you wish to add a second LDAP base entry, errors will occur. Use the work around on my blog. Ensure the LDAP is *right* before you start Before we begin • LDAP Bind Account • Ensure you have access to an account that can read the LDAP , also required base DN / org and what container the users live in Base DN DC=virtual,DC=home,DC=local Container OU=cubesoft,DC=virtual, DC=home,DC=local Test with an LDAP browser: i.e. Softerra LDAP Browser (WIN) Apache Directory Studio (Linux) Before we begin Firewall off / AV off Windows • UAC off Linux • • • • SE Linux off Ensure X11 forwarding is configured (test with xclock) Install any required libraries (esp 32 bit ones – see resources) Set security limits (or you will see too many files open issues) Grab a coffee (or beverage of your choice) lets start Prerequisites WebSphere: • Install and Patch WebSphere 8.5.5.3 • Install and Patch HTTP Server, Plugin & WCT 8.5.5.3 • Create WebSphere Cell (Deployment manager and Node) • Secure WAS against the LDAP server Database / TDI: • Install DB and patch to required level (DB2 10.1, Oracle 11.0.2g, MSSQL) • Install and Patch TDI to V7.1.1 fp3 • Use DBWizards / scripts to create DBs and set permissions* • Populate DB using TDI Population Wizard / Scripts – check the populate with the sql command: select * from empinst.employee; - to view the imports select count (*) from empinst.employee; - this shows number of records *you may need to create the DB accounts prior to running depending on set up Installing Pre-Reqs Many guides to assist in installing the pre-req software, zero – hero, IBM guides, documentation and many blogs. Important things to remember: Do not set WebSphere services to automatic – we can do this later if necessary Create / federate WAS nodes prior to Connections install – you can add extra nodes afterwards as long as you have a Cell with at least one node for install When TDI is installing make sure you do not start the config editor Once WAS is secured against the LDAP ensure you can see the users by checking in the Admin console / ISC – Users and Groups > Manage Users If using Domino as an LDAP source and you are using the *root*, be aware that if you wish to add a second LDAP for external users *root* overwrites everything – see the work around that will be on my blog. Once pre-reqs are installed – if you are using a VM, snap shot at this point allowing you to roll back if there are any installation problems. Install Connections • Fire up the installer • Accept the license • Select the install package - take out spaces and the evil that is the program files if on windows • Select all the Connections apps - except CCM – that’s a whole other ball game • Point to the WebSphere install - add FQDN of WAS host even if local • Select deployment size – Small for single JVM / WebSphere server, Medium if you want more than one JVM / WebSphere server • Add DB info and passwords • Select Cognos later • Shared / Local Content on local machine – shared can be on a network / san – must use UNC name not mapped drive letter, it can also be moved later • Notifications – fill in relevant info if yes, even if not required now you can leave it / set it to example.com to make it easier to reconfigure in the future INSTALL – it’s go grab a coffee again time 15 #engageug 17 Install Connections - continued • Connections is now installed • If you get any errors on install check the suggested log and correct the errors. • Restart the deployment manager server. • Start the nodeagent server and watch the log / wait for the applications to sync – this can take a while. • Start the node server(s) and wait until it is completely started and synchronised. ADMA7021I: Distribution of application oEmbed completed successfully. ADMA7021I: Distribution of application ConnectionsProxy completed successfully. ADMA7021I: Distribution of application Help completed successfully. ADMA7021I: Distribution of application Dogear completed successfully Yes it really is that easy Until something goes wrong – see troubleshooting .. We’ll get to that later .. Test initial install Start the Connections Server(s) Cmd line: cd E:\IBM\WebSphere\AppServer\profiles\AppSrv01\bin cd /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/bin startServer.bat/sh <name_server> NOTE: If you split the apps up into clusters, start the server with profiles on first. Then the infra apps (homepage, search,news etc). This makes for a cleaner more efficient start up. Test initial install Use the URL of the local Connections machine + the port number/homepage #engageug 22 Configuration File quota, Logs, Search Application Security Performance Tuning / Config changes 23 Connections Configuration • Configure WebServer – Plugin and deflate module & change Connections config file • Configure search, dictionaries, languages and file content searching • JVM tuning – by default the Connections servers are set at 2.5GB • Log sizes and amount – they are 1mb and you get one file by default • Tune data source connections – for live / poc >live environments • Set Application (J2EE) security roles – force users to log in to all apps • Configure file policies (file upload size) / user file limit – default 512mb • Configure community file policies – default 512mb • Configure Blog attachment sizes – by default attachment 1mb / blog 10mb • Configure Wiki attachment / policy sizes • Enable customization debug – if you are making UI changes Configure the WebServer HTTP Server config Configure HTTP server up to use SSL and test first before configuring for Connections. If you don’t have an existing SSL cert, create a self-signed one for testing. Use the WebSphere Customization Tool box to configure. It has a wizard to select HTTP Server type, the HTTP server config file, you can optionally set up the HTTP Admin server, give the definition a unique name, Point to the WebSphere Server install (remote even if local), the plugin will configure and generate a batch/sh script (in /IBM/WebSphere/Plugins/bin/). This covers the Configuring the IBM HTTP Server topic in the knowledge base. Copy the script to <WAS_Home>/bin then run it. The HTTP server will now be configured and added to the deployment manager. The applications are mapped & plugin generated. The WebServer is now available in the ICS / WebSphere console #engageug 25 Configure the WebServer Checkout the Connections config file and change the URL to that of your webserver (see knowledgebase for details on how to check the file out) <sloc:href> <sloc:hrefPathPrefix>/activities</sloc:hrefPathPrefix> <sloc:static href="http://demo2.cube-soft.co.uk" ssl_href="https://demo2.cube-soft.co.uk"/> <sloc:interService href="https://demo2.cube-soft.co.uk"/> </sloc:href> </sloc:serviceReference> Check the file back in – restart and you are all systems go – on the correct URL You can also add a URL re-write include to route HTTP traffic to the connections URL. Create arewrite.conf in IBM/HTTPServer/conf Add the following: #Rewrite RewriteEngine on RewriteRule ^/$ /homepage [L,R] #engageug 26 Search Configuration Copying search configuration tools to local nodes – listed as an optional task – BUT mandatory – full file and tag indexing doesn’t work correctly unless this step is completed http://www-01.ibm.com/support/knowledgecenter/SSYGQH_5.0.0/admin/install/t_setting_path-variables_Search.dita Copy <connections_data>/shared/search stellent – directory with the search conversion tools dictionary – dictionary tools to the <connections_data>/local/search Edit the WebSphere variable for the file content conversion and search dictionary directory – ensure you use the full path of the exporter (exporter.exe or exporter for linux/unix) FILE_CONTENT_CONVERSION C:\IBM\Connections\data\local\search\stellent\dcs\oi export\exporter.exe SEARCH_DICTIONARY_DIR C:\IBM\Connections\data\local\search\dictionary Save the changes and restart the connections servers to pick up the change. You may want to rebuild the search index to search inside files, wikis and blogs. #engageug 27 JVM Tuning JVM (Java Virtual Machine) heap sizes should be set according to your environment. By default the maximum JVM heap is set to 2506 MB for each Connections server. The JVM heap size can be changed in the ISC. Each server must be changed individually. Server Types > WebSphere Application Server > <server name> > Server Infrastructure > Java Process Management > Process Definition > Java Virtual Machine To use the script to set the JVM heap, use the cfgJVMHeap.py script. The script shows actual size of initialHeapSize and maximumHeapSize for all JVM. Prompts for initialHeapSize and maximumHeapSize for all JVM. “Return” leaves actual setting intact with no changes. Once complete, restart the Websphere servers and the new JVM settings will be used. #engageug 28 Changing the log sizes Default Setting for JVM Log Files (SystemOut.log & SystemErr.log): Size: 1 MB No historical Log Files Too small to troubleshoot errors Reconfigure: Size: 20 – 40 MB 5-10 historical Log Files Configure via the ISC (Wasadmin console) Many clicks, time consuming Especially for large environments Troubleshooting > Logs and trace > <server name> > JVM Logs Or use the community scripts: use a script to set the log size and history (cfgLogFiles.py). The script prompts for RolloverType – Size (to just set the size) or Both for size and history. Maximum log size in mb. Maximum number of backup files. #engageug 29 Datasource Tuning 15 + Data Sources to Change (at least 100 mouse clicks) Resources > JDBC >Data sources > <data source name> > Additional Features > ConnectionPools Change the maximum and minimum connections for each data source, save each of the changes, sync the nodes and restart the servers. Or use the script - cfgDataSource.py About 30 seconds to change all needed parameters of all Data Sources Set the data source properties in the ibmcnx.properties in the script directory – allowing edits and re-running of the script. #engageug 30 Configure Application Security By default many of the Connections apps are open to read access, to enable users to log in before accessing the User/Group security roles must be set. This can be changed in the ISC for each application Browse Applications > Application Types > WebSphere enterprise applications Click the Security role to user/group mapping – select the Group (or special subjects – All authenticated) Or use the community scripts – J2EERolesRestricted.py Reads the users and groups from the properties files. There are also scripts to back up and restore the roles and to set specific roles such as social mail, moderator, metrics etc. NOTE - Applications restart automatically, when you change J2EE roles. #engageug 31 Configure Application Security #engageug 33 Configure library sizes By default the max file upload size / library size is 512mb Use the wasadmin commands to change this: <WebSphere_Home>/profiles/Dmgr01/bin wsadmin.bat/sh -lang jython execfile("filesAdmin.py") FilesConfigService.checkOutConfig(“<checkout>", “<cell>") FilesConfigService.updateConfig("file.media.maximumSizeInKb", “1572864") This command updates the maximum size for each file to upload – in this example its 1.5GB FilesPolicyService.editPersonalDefault(2147483648L) This command updates the default library size for each user to 2GB FilesPolicyService.editCommunityDefault(2147483648L) This command updates the default library size for each community to 2GB FilesConfigService.checkInConfig(“<checkout>", “<cell>") Numbers 2GB or greater are long literals, and you must add an "L" to the end of the number, for example a policy of 2GB must be 2147483648L #engageug 34 Configure library sizes Also possible by using the community scripts Work with Files Policies (ibmcnx/cnx/FilesPolicies.py) Work with Libraries (ibmcnx/cnx/LibraryPolicies.py) Show Library Sizes (ibmcnx/cnx/LibrarySizes.py) The work with file policy script prompts to Add, Edit or Delete a policy – you may edit existing or Connections default policies or add your own. This allows you to add specific policies which you can then assign to certain users using the Library Policy script – for example: 5 3.0 GB dc63c31b-1a5a-4a05-a967-32b737c22eed SharonLarge The Library script prompts to work with Personal or Community policies – you may search using name or wildcard Please type the number of the library? 3 Policy will be assigned to: Nathan James Actual assigned policy is: !Default for Personal Files Which policy do you want to assign? 5 The policy with the id dc63c31b-1a5a-4a05-a967-32b737c22eed is now assigned to the library with the id 299e5d7e-2c69-4f67-b88ebdccc71d5b23 . #engageug 35 Other Customization Specify site wide settings for blogs in the Blogs admin UI By default the max upload size is 1mb and directory size is 4mb http://www-01.ibm.com/support/knowledgecenter/SSYGQH_5.0.0/admin/admin/t_admin_settings_UI.dita Setting wiki media, pages and attachment sizes Default sizes are: Media: 512 MB, Pages: 1 MB, Attachments: 75 MB execfile("wikisAdmin.py") WikisConfigService.checkOutConfig("<checkout dir>", "<cellname>") WikisConfigService.updateConfig("file.media.maximumSizeInKb", "<number_of_kilobytes>") WikisConfigService.updateConfig("file.page.maximumSizeInKb", "<number_of_kilobytes>") WikisConfigService.updateConfig("file.attachment.maximumSizeInKb", "<number_of_kilobytes>") WikisConfigService.checkInConfig("<checkout dir>", "<cellname>") http://www-01.ibm.com/support/knowledgecenter/SSYGQH_5.0.0/admin/admin/t_admin_wikis_setting_maxsize.dita #engageug 36 Other Customization Customizing the user interface: http://www-01.ibm.com/support/knowledgecenter/SSYGQH_5.0.0/admin/customize/t_admin_common_customize_main.dita Add the WebSphere variable CONNECTIONS_CUSTOMIZATION_DEBUG true Very well documented now. Covers most aspects of interface customization, from images, header, footer, login page, error page, getting started, strings and properties (for the connections wording), notifications …. The list goes on Other configuration changes: • Ajax proxy for RSS feeds etc. • Flag as inappropriate • Enable additional language support • Hide metrics links • Force Connections traffic to HTTPS • Wikis table of contents (enable macros) • And so much more ….. #engageug 37 Troubleshooting Troubleshooting – Where to start? Log files are your friend Set of logs per WebSphere server (JVM) Location: <WAS_HOME>/profiles/<profilename>/logs/<server name> SystemOut.log – holds almost everything you need to diagnose most issues. Generally any timeouts, LDAP issues, DB connection problems and other issues are all written to this log. WebServer Logs Access and error logs are the ones to check here. Location: <HTTP_HOME>/logs. If there are issues hitting the HTTP Server, check both of these logs. One thing to note is these don’t roll – so they get very large. Archive regularly to keep manageable. WebSphere Plugin Log Location: Websphere/Plugins/logs Any issues with the plugin, SSL certs problems between the webserver and WebSphere will be displayed in this log. Troubleshooting – Where to start? As well as checking the logs checking the applications, WebSphere server status and database connectivity is a great place to start. Check the WebSphere server status from the command line: <WAS_HOME>/profiles/<profileName>/bin/serverStatus.bat/sh –all i.e. [root@con2 bin]# ./serverStatus.sh -all ADMU0505I: Servers found in configuration: ADMU0506I: Server name: nodeagent ADMU0506I: Server name: server1 ADMU0506I: Server name: tc_server1 ADMU0508I: The Node Agent "nodeagent" is STARTED ADMU0509I: The Application Server "server1" cannot be reached. It appears to be stopped. ADMU0508I: The Application Server "tc_server1" is STARTED Use the scripts to check the appStatus or Database connectivity: Check if all Apps are running (ibmcnx/check/AppStatus.py) Check Database connections (ibmcnx/check/DataSource.py) Troubleshooting – Where to start? Possible issues: DB problems – Connections will start or be started, will complain of connectivity or data issues. Check the DB, datasource connections – Connections servers SystemOut.log is a good place to start. LDAP – can’t log in, or people currently logged in are fine but new connections are refused. Check LDAP connectivity. Use an LDAP browser to test. Connections servers SystemOut.log will have LDAP errors logged. JVM heap / memory errors – reported Connections servers SystemOut.log and System.Err log. Can be specific to a given JVM. System will appear to hang, then may recover. Tune and test. Importing Data Offline backup new environment DB and file system data (<connections_data>/shared) If you back up the *clean* new system it allows you to roll back to clean if there are any migration issues. Offline backup existing/live environment DB and file system data (<connections_data>/shared) Ensure the system is off. Migrating data with an online back up can cause issues and isn’t particularly straight forward. Copy DBs to migrate to new db machine Restore DBs (you may need to drop the new environments DBs to do this) In the case of DB2 – drop V5 DBs, restore V4 / 4.5 DBs and they will be updated to latest DB2 version on restore. Run the Connections update scripts / wizards This updates the migrated DBs to the new version Apply the DB updates for any CR you have applied to the new environment (i.e CR1) Sync Tdi to update any LDAP / Employee information Importing Data File System Data: Copy the following content to the following directories – If any of the new V5 shared directories do not exist create them Content Store Location shared_content_store/audit shared_content_store/activities/content shared_content_store/activities/statistics shared_content_store/blogs/upload shared_content_store/communities/statistics shared_content_store/customization shared_content_store/dogear/favorite shared_content_store/files/upload shared_content_store/forums/content shared_content_store/profiles/statistics shared_content_store/wikis/upload Data is now migrated – on to the post migration steps .. Post migration / update • Clear the scheduled tasks • http://www-01.ibm.com/support/knowledgecenter/SSYGQH_5.0.0/admin/admin/t_admin_common_clear_scheduler_after_ltpa_change.dita • wsadmin script • execfile("connectionsConfig.py") • Scheduler.listAllTasks() • Scheduler.clearAllTasks() • If there are issues use the clearScheduler.sql in the wizards\db directory • Rebuild the search index • • • • • • http://www-01.ibm.com/support/knowledgecenter/SSYGQH_5.0.0/admin/admin/t_admin_common_clear_scheduler_after_ltpa_change.dita • Delete the search index and rebuild Resync community files • FilesDataIntegrityService.syncAllCommunityShares() Re-apply any customisations and file quotas that may have been overwritten If moving from V4 add / change the filestore for Activities – see technote • https://www-304.ibm.com/support/docview.wss?uid=swg21676288 If the new system is live – Configure notifications (if required) Test The boss has decided … Proof of concept or test Is now *LIVE* What do you do? POC to LIVE Many customers take this path: Advantages – data is in the system when you roll out live. You have seen how the system performs with the POC group and can tune accordingly. Any changes can be made prior to the live roll out. Disadvantages – Any test data will need to be manually removed from the system by the users that have created it. #engageug 47 POC to LIVE • When rolling out a POC, assume that it may end up as your live system. • Ensure the users of the system are aware that this system may well become your live and to use it as such. • Careful planning means a few tweaks • Tune the JVMs, turn the customization debug off, tune data sources if required, add additional nodes, change webserver URL if necessary • Avoid changing LDAP source but if you do ensure that the mail or uid fields are the same between source and target and use the sync_hash field in the profiles_tdi.properties file (use uid or mail to hash against) • Where possible use the community scripts • Simple config with a few commands, no chance of typos or missing a step. 48 Resources and Help Resources and Help • Connections 5 Part Numbers: http://www-01.ibm.com/support/docview.wss?uid=swg24037654 • Note • If you are using windows 2012 you must use DB2 10.1 fp 4 or the installer will fail • If you are using windows 2012 you need to run the TDI installer in compatibility mode or it will fail when you run the installer – see technote: http://www01.ibm.com/support/docview.wss?uid=swg21634336 • If you are using FEB for forms and surveys, use 8.5.1 if you wish to use anything other than cn for the display name. There are known issues with 8.5.0.1. • Community Scripts: http://scripting101.org • Linux / AIX: • 32bit libs - https://www-304.ibm.com/support/docview.wss?uid=swg21459143 • Libs req: http://www-01.ibm.com/support/knowledgecenter/SSYGQH_5.0.0/admin/install/r_linux_libraries.dita • More info see: http://www-01.ibm.com/support/knowledgecenter/SSYGQH_5.0.0/admin/install/r_before_installing.dita • This session will be available via the web – http://cube-soft.co.uk/cnxsupport Skype Chats • There are a number of community skype chats If you wish to be added to any of these chats either ping myself or Christoph. Sharon – dilftechnical Christoph - christophstoettner #engageug 52 This presentation mentions the following Copyrights and Trademarks. •IBM® Notes® •IBM® Domino® •IBM® Connections •IBM® WebSphere® •IBM® DB2 •IBM® AIX® •Tivoli® •Linux® •Java® •Microsoft® Windows® •Red Hat® Linux® •Twitter® •Skype®
© Copyright 2024