190 likes | 313 Views
Commonspot Installation at Cornell University Library. Paul Houle Library Systems. Thanks: James Reidy, Surinder Ghangas, Ken Friedman, Chris Manly, David DeMello and Oya Reiger. The Big Picture. Training. Strategy. Contributors. Developers. Designers. Commonspot. Oracle. Apache. CFMX.
E N D
Commonspot Installation at Cornell University Library Paul Houle Library Systems Thanks: James Reidy, Surinder Ghangas, Ken Friedman, Chris Manly, David DeMello and Oya Reiger
The Big Picture Training Strategy Contributors Developers Designers Commonspot Oracle Apache CFMX Solaris HW
Context • Support 21 unit libraries and many projects • Current web server, copia, has • > 40 virtual hosts • > 170 toplevel directories • 500,000+ hits/day • Availability, Maintainability • Separate production and test • Isolate essential from inessential • Tight control
Hardware Sun Fire V440 Solaris 9 fibre channel StorEdge 6130 Array
Software • Solaris 9 • Oracle 9.2.0.6 • Cold Fusion MX 6.1 Enterprise Edition (Jrun 4) • 2x license for 4 CPU machine • install service pack 1 • upgrade Oracle drivers from Macromedia • Apache 2.0.54 • mod_cuwebauth • mod_jrun20 • CommonSpot 4.5sp1 • CornellCustomAuthZ
Two Instances SPOT SPOTTEST http port X http port 80 /spot/ apache /spottest/ apache spot jrun spottest jrun SPOT oracle SPOTTEST oracle
CFMX Installation • Multiple instances of Coldfusion: • Used J2EE installation mode w/ Jrun 4 (/opt/coldfusion/jrun4) • Install CFMX twice (/opt/coldfusion2/jrun4) • mv /opt/coldfusion2/jrun4/servers/cfusion -> • /opt/coldfusion/jrun4/servers/spottest • JRUN Management console is nice, but.. • all servers must run as same UNIX user • no per-server jvm.config • /etc/init.d/{spot,spottest}-jrun • Use –config option to specify correct jvm.config
Namespace • Two to four letter code per site: • commonspot.library.cornell.edu -> cs • dlit.library.cornell.edu -> dl • insidecul.library.cornell.edu -> ins • Commonspot gets own root directory • can install other apps • good for migration: add redirects to new site • Avoids namespace collisions inside Cold Fusion • Short names can be used to compose Solaris usernames: • cs -> smb_cs
Apache Directory Layout /spot/ apache2/ bin/ conf/ httpd.conf vhosts.conf … commonspot/ commonspot-data/ sites/ commonspot.library.cornell.edu/ dlit.library.cornell.edu/
httpd.conf and vhost.conf httpd.conf: … Include conf/vhosts.conf vhosts.conf: … <VirtualHost commonspot.library.cornell.edu> Include/spot/sites/commonspot.library.cornell.edu/conf/host.conf </VirtualHost> …
Virtual host directory /spottest/sites/commonspot.library.cornell.edu/ conf/ host.conf designer/ … htdocs/ cs/ logs/ access_log error_log
host.conf ServerAdmin ph18@cornell.edu ServerName commonspot.library.cornell.edu DocumentRoot /spottest/sites/commonspot.library.cornell.edu/htdocs ErrorLog /spottest/sites/commonspot.library.cornell.edu/logs/error_log CustomLog /spottest/sites/commonspot.library.cornell.edu/logs/access_log combined RewriteEngine On RewriteRule ^/$ /cs/ [R] Alias /commonspot/ /spottest/commonspot/ Alias /CFIDE/ /opt/coldfusion/jrun4/servers/spottest/cfusion-ear/cfusion-war/CFIDE/
Remote Access • Designers and programmers use SAMBA to access selected files in test instance. • Files belong to smb_{site name} • Symbolic links provide controlled view: • \\spot.library.cornell.edu\{site_name} • /spottest/sites/commonspot.library.cornell.edu/designer/ • customcf -> ../htdocs/cs/customcf • renderhandlers -> ../htdocs/cs/renderhandlers • style -> ../htdocs/cs/style • templates -> ../htdocs/cs/templates
Backups • System Backup • Weekly backup with mksysdb – keep 3 weeks back • Filesystem backup • ASDM incremental backup nightly – keep 3 version • Oracle Backup • incremental backup – every 8 hours • flush redo logs to archive • backup archive with ASDM • full backup – weekly, 5 am Saturday • shutdown oracle, take snapshot, restart oracle • mount snapshot, backup with ASDM • -- Surinder Ghangas
CUWebAuth authentication • Developed by David Demello (ddd1@cornell.edu) • Installation on server: • Install CornellCustomAuthZ in Commonspot Directory • Edit config.xml • (optional) put hooks in commonspot/newsite • Installation per site: • Hook files: login.cfm, after—login.cfm, custom-authentication.cfm, force-login.cfm • Edit config.xml • Key icon is glitchy, go to login.cfm instead • - David DeMello
Creating a new site New Database, UNIX and SAMBA users Surinder Ghangas Create Directories and Virtual Host, configure CUWebAuth Paul Houle Create Site in Commonspot James Reidy
Copy Test to Production • User db must be synchronized • Export site db from Test Oracle • Create Production Site in Commonspot • Import site db into Production Oracle • Copy site directory • Check site ids in Application.cfm • Run migration tool
Gotchas • Oracle User Permissions (see sg14) • Be careful about installing at server root • WebDAV and ColdFusion don’t mix • Windows -> UNIX: Case sensitivity • Verity indexing of PDF files doesn’t work yet
Commonspot Software Configuration: James Reidy (jgr25@cornell.edu) Apache, Jrun, CFMX, SAMBA: Paul Houle (ph18@cornell.edu) Oracle, Backups, Unix admin: Surinder Ghangas (sg14@cornell.edu) Authentication: David DeMello (ddd1@cornell.edu) General Questions: Oya Rieger (oyr1@cornell.edu) http://commonspot.library.cornell.edu/