260 likes | 668 Views
Change Management for the Blackboard System Administrator - Presenter: Volker Kleinschmidt Blackboard Client Support. Session Abstract. Change Management for the Blackboard System Administrator
E N D
Change Management for the Blackboard System Administrator-Presenter:Volker KleinschmidtBlackboard Client Support © Blackboard, Inc. All rights reserved.
Session Abstract • Change Management for the Blackboard System Administrator • Every Blackboard installation has some customizations or configurations that you need to preserve during updates or wish to apply quickly to a second server. Often it is important to know just where all those changes were made, when they were made, and what the changes were - be it for troubleshooting a problem or to ensure quick and problem-free upgrades. We will look at techniques for facilitating this process.
About Forward-Looking Statements • We may make statements regarding our product development and service offering initiatives, including the content of future product upgrades, updates or functionality in development. While such statements represent our current intentions, they may be modified, delayed or abandoned without prior notice and there is no assurance that such offering, upgrades, updates or functionality will become available unless and until they have been made generally available to our customers.
Why Change Management? • preserve settings through upgrades • avoid nasty surprises • copy customizations to other systems • allow for easy rollback • simplify troubleshooting • document changes for other staff • protect against catastrophic failures
A Snapshot Example • apps/snapshot/data/snapshot.properties • upgrades may add fields, e.g. new in 6.2:membership.exact.copy • defaults to ‘Y’ if missing from your custom snapshot.properties files • leads to enrollments AND associated private data (homepage, electric blackboard) being copied, despite membership.copy=‘N’
A Branding Example • login page customization • can’t download current custom login page • need to keep copy on PC for further edits • gateway page customization • 6.3 upgrade destroyed custom gateway.bb • custom buttons for course menu • institutional colors for top frame
An Authentication Example • after upgrade, system tasks don’t work • receive ClassNotFoundException at startup • custom jar not on classpath • edit system/build/bin/launch-tool.sh • turning off custom auth for upgrades has its pitfalls too (see KB 181-2554) • All AuthModules in authentication.properties get loaded and must be found in .jars on classpath
Types of Customizationsor: What sort of changes are we talking about? Configuration Branding Authentication Building Blocks Patches & Custom Code © Blackboard, Inc. All rights reserved.
Configuration • bb-config.properties, Windows registry • httpd.conf, ssl.conf, wrapper.conf • SSL key & cert, java keystore • content-exchange.pl, collabserverctl.sh, collab-server/http/tomcat/conf/server.xml • log rotation and bb-tasks.xml • maintenance & backup jobs • snapshot.properties, env.sh
GUI-Configuration • user privileges • course settings, default course menu • tools settings • institution roles • portal modules, tab layouts • content system settings
Branding • Institutional images • hot spots & hot links • color & icon settings • stylesheet changes? • gateway & login pages • additional brands? • multiple VIs?
Authentication • authentication.properties • custom auth modules (.jar) • tomcat .classpath files • possibly redirection of some links,such as “forgot password” • custom portal login-modules?
Building Blocks • which blocks installed? enabled? • code for homegrown blocks • original downloaded packages • exact version; vendor contact info • external configuration or database? • custom content types? • portal modules & visibility per role
Patches & Custom Code • custom patches obtained from Support • custom code from Global Services • snapshot controller • custom language pack • may become non-applicable when upgrading - check with Support/GS!
Location of Customizationsor: where might we have made those changes? GUI Database Filesystem © Blackboard, Inc. All rights reserved.
GUI-configurations • admin panel > anything • make special note of later changes, or places where regular changes are to be made, e.g. default course start/end date • keep custom login page and images handy • gateway page is customized on file system
Database • BBADMIN.BB_INSTANCE & BB_INSTANCE_HOST • BB_BB60.SYSTEM_REGISTRY • CMS.XY_STORAGE_LOCATIONS • CMS.XY_FILE_SYSTEMS • CMS.XY_SERVER_GROUP_PARAMETERS • dba_jobs, dba_tablespaces, dba_indexes, ... • entire DB configuration/setup info
File System • blackboard/config directory...and everything inside • apps/snapshot/... • content/vi/bb_bb60/branding/... • content/vi/bb_bb60/plugins/... • content/vi/bb_bb60/...images/... • content/locale/your_LP/
Managing customizationsor: how can we ensure smooth upgrades or migrations and minimize associated effort? Record-keeping & Documentation Backup and Version control © Blackboard, Inc. All rights reserved.
Sysadmin Operations Manual • Central document to record configuration • Great for co-workers new to Bb • Get it from Behind the Blackboard • Update regularly!!! • Not nearly enough, but an important start
More Documentation Tips • Keep a blog • Anytime you change something –anything-, write it down • Be specific: filename, line(s), change made • Comment your changes • Use a fixed symbol-sequence(e.g. I mark my comments ‘#;# volk:’)
Managing GUI customizations • Religiously document your settings • Take screenshots (or use Camtasia) • When documenting, note how these relate to your institutional policies (why were things set up that way) • Make internal website for your fellow staff containing all these documents
Managing DB customizations • Basically the only data that should be customized here are hostname changes • You need regular DB backups anyway • Backup before any upgrade! • Test with copy of production data! • But when making that copy, be aware of the need to change hostnames in DB!!!
Managing more DB customizations • structural DB customizations are different matter, e.g. custom LOB tablespaces, indexes, stats-gathering jobs, backup jobs • init parameters, TNS/listener config • get the DBA to document those changes both technically and in layman’s terms • your staff can leave anytime!!!
Managing Filesystem Customizations • keep .orig copy of each file (in same place) • keep copy of modified files in central place • when upgrading, run “diff” to find changes • re-apply customizations as needed • use backups directory to your advantage • bbcustomizer.pl script (VK) to facilitate this • consider using a versioning system:CVS, Subversion, VSS • Version control is a must for B2 developers
Comments from the audience • What are your best techniques? • Favorite tools? • What do you take home from this session? • Where does Blackboard need to improve? • Horror Stories? • Sucess Stories?