ALEPH Structure and Configuration Files הדרכת אוניב. בן-גוריון, הטכניון, והאוניב. הפתוחה מרץ-אפריל 2003 Jeff Stavsky
ALEPH Structure & Configuration Overview components of the system (separate ppt) Users and groups on the Unix level Structure of ALEPH, Oracle & products Configuration files Oracle utilities and maintenance Tips What the lecture is all about ? Basic concepts - version structure, directories, where to put what, Activities - Daemon, Batch queue, Batch jobs, queues and processes Focus on server - All the configuration will be done on the server side. All these will be divided into : Node management - on the server, configure the station aleph_start, startup, directories, tables, Libraries management - directories, library tables ALEPH Structure & Configuration
ALEPH Structure & Configuration Users and Groups Group-name gid Aleph 201 Dba 101 user-name uid gid m505 200 201 aleph 200 201 oracle 101 101 What the lecture is all about ? Basic concepts - version structure, directories, where to put what, Activities - Daemon, Batch queue, Batch jobs, queues and processes Focus on server - All the configuration will be done on the server side. All these will be divided into : Node management - on the server, configure the station aleph_start, startup, directories, tables, Libraries management - directories, library tables ALEPH Structure & Configuration
ALEPH Structure & Configuration Users and Groups /etc/group //etc/passwd What the lecture is all about ? Basic concepts - version structure, directories, where to put what, Activities - Daemon, Batch queue, Batch jobs, queues and processes Focus on server - All the configuration will be done on the server side. All these will be divided into : Node management - on the server, configure the station aleph_start, startup, directories, tables, Libraries management - directories, library tables ALEPH Structure & Configuration
ALEPH Structure & Configuration ALEPH Directory Structure: ../a50_5 ../u50_5 (for site-specific libraries + alephe) What the lecture is all about ? Basic concepts - version structure, directories, where to put what, Activities - Daemon, Batch queue, Batch jobs, queues and processes Focus on server - All the configuration will be done on the server side. All these will be divided into : Node management - on the server, configure the station aleph_start, startup, directories, tables, Libraries management - directories, library tables ALEPH Structure & Configuration
ALEPH Structure & Configuration ALEPH Structure – a50_5 What the lecture is all about ? Basic concepts - version structure, directories, where to put what, Activities - Daemon, Batch queue, Batch jobs, queues and processes Focus on server - All the configuration will be done on the server side. All these will be divided into : Node management - on the server, configure the station aleph_start, startup, directories, tables, Libraries management - directories, library tables ALEPH Structure & Configuration
ALEPH Structure & Configuration ALEPH Structure – u50_5 What the lecture is all about ? Basic concepts - version structure, directories, where to put what, Activities - Daemon, Batch queue, Batch jobs, queues and processes Focus on server - All the configuration will be done on the server side. All these will be divided into : Node management - on the server, configure the station aleph_start, startup, directories, tables, Libraries management - directories, library tables ALEPH Structure & Configuration
ALEPH Structure & Configuration Oracle Structure Oracle directory structure ../app (oracle software) ../oradata (database files) What the lecture is all about ? Basic concepts - version structure, directories, where to put what, Activities - Daemon, Batch queue, Batch jobs, queues and processes Focus on server - All the configuration will be done on the server side. All these will be divided into : Node management - on the server, configure the station aleph_start, startup, directories, tables, Libraries management - directories, library tables ALEPH Structure & Configuration
ALEPH Structure & Configuration Product Structure Product structure ../product /cobol4.0 /apache_1.3.26 /gcc_3.0.4 What the lecture is all about ? Basic concepts - version structure, directories, where to put what, Activities - Daemon, Batch queue, Batch jobs, queues and processes Focus on server - All the configuration will be done on the server side. All these will be divided into : Node management - on the server, configure the station aleph_start, startup, directories, tables, Libraries management - directories, library tables ALEPH Structure & Configuration
ALEPH Structure & Configuration Product Structure What the lecture is all about ? Basic concepts - version structure, directories, where to put what, Activities - Daemon, Batch queue, Batch jobs, queues and processes Focus on server - All the configuration will be done on the server side. All these will be divided into : Node management - on the server, configure the station aleph_start, startup, directories, tables, Libraries management - directories, library tables On HP and Linux platforms, cobol is usually under /opt ALEPH Structure & Configuration
ALEPH Directory Structure & Aliases Aleph root aleph alephe alephm oracle tmp Software executables, scripts Node management - tables, parameters files Software - development & maintenance programs Oracle Installation files temporary directory Usually alephe should be located not under aleph root, so node configuration wont be override on the next version upgrade. ap, ae, $alephe_root am, apm, ac $TMPDIR ALEPH Structure & Configuration
ALEPH Directory Structure & Aliases (con’t.) Aleph root log usm01 uni01 … Logs of web server Demo library usm01 Demo library uni01 Usually alephe should be located not under aleph root, so node configuration wont be override on the next version upgrade. $$LOGDIR ALEPH Structure & Configuration
$DEMO_LIBS and $ALEPH_LIBS What the lecture is all about ? Basic concepts - version structure, directories, where to put what, Activities - Daemon, Batch queue, Batch jobs, queues and processes Focus on server - All the configuration will be done on the server side. All these will be divided into : Node management - on the server, configure the station aleph_start, startup, directories, tables, Libraries management - directories, library tables Site-specific libraries ALEPH Structure & Configuration
ALEPH Structure & Configuration a50.. Versus u50 /aleph a50_5 u50_5 With the above installation, a installation of a newer version (upgrade) has a consequence of replacing the a50_5 rot, whereas u50_5 root remains as is (unless data conversion or updates are required. aleph alephm … alephe (original) alephe (active) ndu01 …… ALEPH Structure & Configuration
ALEPH Structure & Configuration /alephe (original) /alephm … Scripts & executables Development environment Node tables With the above installation, a installation of a newer version (upgrade) has a consequence of replacing the a50_5 rot, whereas u50_5 root remains as is (unless data conversion or updates are required. ALEPH Structure & Configuration
ALEPH Structure & Configuration ALEPH Structure: /aleph/a50_5/aleph Directories Structure & aliases executables GUI version scripts ALEPH Structure & Configuration
ALEPH Structure & Configuration ALEPH Structure - /aleph/u50_5/alephe Directories Structure & aliases Apache configuration Backup package Node tables ALEPH Structure & Configuration
ALEPH Structure & Configuration Alephe During Upgrade Directories Structure & aliases Patch upgrade will normally use current alephe. Version upgrade will normally use new alephe (apply changes). Why old alephe on new patch/version may be problematic. ALEPH Structure & Configuration
ALEPH Structure & Configuration Library Structure Directories Structure & aliases Each library has a separate root directory. Contains information relevant to the configuration of each library defined in the system. Each library is implemented as its own ORACLE user. ALEPH Structure & Configuration
ALEPH Structure & Configuration Library Structure Directories Structure & aliases Library root files tab pc_tab print file_list prof_library Export file, dump files, batch queue, batch logs Library parameter and configuration tables. Clients parameter and configuration tables Print files dr df1 dt dp ALEPH Structure & Configuration
Library Structure Directories’ Structure & aliases Library root source scratch www_x_lng form_lng Source data for conversion Intermediate and log files HTML files, per language for WWW/ ALEPH server Forms patterns per language, created from ALEPH server ds ALEPH Structure & Configuration
Database Users – UTIL O/9/1 ALEPH Structure & Configuration
ALEPH Structure & Configuration Configuration Files aleph_start_505 aleph_start_505.private web related (+ apache configuration) aleph_startup_505 / aleph_shutdown_505 path_convert job daemon (UTIL E) ALEPH Structure & Configuration
Configuration Files - aleph_start_505 Located in the active alephe directory aleph_start_505 aleph_start_505.private symbolic link to aleph_start_505 /etc/aleph_start_505 - Invoked by every ALEPH process. Contains definitions and the logical assignments for all ALEPH libraries. Symbolic link - If alephe location will change then we need to change only the link, and not all the scripts. It is the only file in aleph which hold physical locations. ALEPH Structure & Configuration
aleph_start_505 - example (1) # ### Version and/or platform dependent setting ################################## # Hostnames setenv ORA_HOST aleph01 setenv IO_HOST aleph01 setenv Z39_HOST aleph01 # Directories: ALEPH_MOUNT - software + demo libraries # USER_MOUNT - user libraries setenv ALEPH_MOUNT /aleph1 setenv USER_MOUNT /aleph2 setenv ALEPH_VERSION 505 setenv PATCH_NUMBER 14 setenv SUB_PATCH_NUMBER 2 setenv VERSION_NUMBER 0 setenv LAST_PATCH_NUMBER 05 U Tree ALEPH Structure & Configuration
ALEPH Structure & Configuration aleph_start_505 # # EXU Training libraries. setenv exu01_dev ${USER_MOUNT}/u5${VERSION_NUMBER}_5 setenv exu10_dev ${USER_MOUNT}/u5${VERSION_NUMBER}_5 setenv exu11_dev ${USER_MOUNT}/u5${VERSION_NUMBER}_5 setenv exu12_dev ${USER_MOUNT}/u5${VERSION_NUMBER}_5 setenv exu20_dev ${USER_MOUNT}/u5${VERSION_NUMBER}_5 setenv exu30_dev ${USER_MOUNT}/u5${VERSION_NUMBER}_5 setenv exu50_dev ${USER_MOUNT}/u5${VERSION_NUMBER}_5 setenv exu60_dev ${USER_MOUNT}/u5${VERSION_NUMBER}_5 setenv usm01_dev ${ALEPH_MOUNT}/a5${VERSION_NUMBER}_5 setenv usm02_dev ${ALEPH_MOUNT}/a5${VERSION_NUMBER}_5 setenv usm10_dev ${ALEPH_MOUNT}/a5${VERSION_NUMBER}_5 setenv usm11_dev ${ALEPH_MOUNT}/a5${VERSION_NUMBER}_5 setenv usm12_dev ${ALEPH_MOUNT}/a5${VERSION_NUMBER}_5 setenv usm19_dev ${ALEPH_MOUNT}/a5${VERSION_NUMBER}_5 ALEPH Structure & Configuration
ALEPH Structure & Configuration aleph_start_505 # setenv DEMO_LIBS "usm01 usm02 usm20 usm30" setenv DEMO_LIBS "$DEMO_LIBS usm10 usm11 usm12 usm19" setenv DEMO_LIBS "$DEMO_LIBS usm50 usm60" setenv DEMO_LIBS "$DEMO_LIBS mab01 mab10 mab11 mab12" setenv ALEPH_LIBS "$DEMO_LIBS“ setenv ALEPH_LIBS "$ALEPH_LIBS ndu01 ndu60" setenv pw_library PWD50 ALEPH Structure & Configuration
ALEPH Structure & Configuration aleph_start_505 setenv v_library VIR01 setenv control_lng ENG setenv correct_852_subfields "hikm" # setenv QUE_STARTUP_LIBS "usm01 usm50" setenv WORD_STARTUP_LIBS "usm01 usm10 usm20 usm30 usm50" setenv REQUEST_STARTUP_LIBS "usm50" setenv ACC_AUT_STARTUP_LIBS "usm01" setenv MESSAGE_STARTUP_LIBS "usm01 usm10 usm50" setenv RLIN_STARTUP_LIBS "usm50" # If you want Aleph to connect to a remote Oracle DataBase # setenv BOTH 'aleph_db' and 'TWO_TASK' to the SAME service setenv ORACLE_SID aleph0 setenv ORACLE_OWNER oracle setenv ORACLE_VERSION 81 setenv ORACLE_CONF /aleph/ora_aleph setenv EPC_DISABLED TRUE setenv aleph_db ${ORA_HOST}.${ORACLE_SID} Indexing ILL Authority Control Union Catalog messaging RLIN Loader ALEPH Structure & Configuration
ALEPH Structure & Configuration aleph_start_505.private setenv hcl01_dev /aleph5/u5${VERSION_NUMBER}_5 setenv hcl02_dev /aleph5/u5${VERSION_NUMBER}_5 setenv hcl10_dev /aleph5/u5${VERSION_NUMBER}_5 setenv hcl50_dev /aleph5/u5${VERSION_NUMBER}_5 setenv hcl60_dev /aleph5/u5${VERSION_NUMBER}_5 # Add customer libraries to ALEPH_LIBS setenv ALEPH_LIBS "$ALEPH_LIBS hcl01 hcl10 hcl50 hcl60" # setenv QUE_STARTUP_LIBS "$QUE_STARTUP_LIBS hcl01 hcl50 " setenv WORD_STARTUP_LIBS "$WORD_STARTUP_LIBS exu01 ash01 hcl01" setenv RLIN_STARTUP_LIBS "$RLIN_STARTUP_LIBS hcl50" Configure carefully – Do not overload with processes. ALEPH Structure & Configuration
ALEPH Structure & Configuration Aliases and Variables def_local_env Located in $aleph_mount/aleph/proc/def_local_env Executed on every process and user login Works across all libraries alias pc_server 'csh -f $aleph_proc/pc_server’ alias www_server 'csh -f $aleph_proc/www_server' alias s+ 'sqlplus \!:1/`get_ora_passwd \!:1`' setenv aleph_sort "gsort -y -T $TMPDIR" !! gsort works much faster on Solaris and Aix platforms. ALEPH Structure & Configuration
ALEPH Structure & Configuration Aliases and Variables def_lib_env Located in /$aleph_mount/aleph/proc/def_lib_env Defines library environment Defined for each library alias dr 'cd $data_root/\!*’ alias ds 'cd $data_scratch’ alias dt 'cd $data_tab’ alias df1 'cd $data_files’ alias dp 'cd $data_print’ alias util 'csh -f $aleph_proc/util' ALEPH Structure & Configuration
ALEPH Structure & Configuration Aliases and Variables prof_master Located in /$aleph_mount/alephm/prof_master Defines profile for Unix user m505. alias xcob 'csh -f $alephm_proc/xcob’ alias iprou 'csh -f $alephm_proc/iprou’ alias netscape '/usr/local/netscape/netscape&’ alias am 'cd $alephm_root’ alias apm 'cd $alephm_proc' alias ae 'cd $aleph_exe' alias ap 'cd $aleph_proc' alias wa 'cd $alephe_root/www_a_eng’ set prompt = "M$ALEPH_VERSION>>" ALEPH Structure & Configuration
ALEPH Structure & Configuration Aliases and Variables prof_library Located in each of the library’s root directory. # define usm01 directories setenv data_root $usm01_dev/usm01 setenv data_tab $usm01_dev/usm01/tab setenv data_pc_tab $usm01_dev/usm01/pc_tab setenv data_scratch $usm01_dev/usm01/scratch setenv active_library USM01 source $aleph_proc/def_lib_env set_symbol CON_START ENG set_symbol ACTIVE_LIBRARY USM01 ALEPH Structure & Configuration
ALEPH Structure & Configuration Configuration Files aleph_startup_505 Located in $alephe_root directory. Used for starting the ALEPH servers and daemons Run at boot time and/or after backup aleph_shutdown_505 Backup, oracle operations and other system operations Works for ALL libraries ALEPH Structure & Configuration
ALEPH Structure & Configuration aleph_startup_505 - example (1) #!/bin/csh -f source /etc/aleph_start_505 source $aleph_proc/def_local_env rm -f $TMPDIR/*.[0-9][0-9][0-9][0-9].[0-9][0-9][0-9][0-9] #******************************************* # jobd echo -n "starting jobd " csh -f $aleph_proc/jobd >& /dev/null & echo "" # servers echo -n "starting pc_server " csh -f $aleph_proc/pc_server 65${VERSION_NUMBER}5 & if ($Z39_SERVER_STARTUP == "Y") then echo -n "starting z39_server " csh -f $aleph_proc/z39_server 99${VERSION_NUMBER}9 & endif ALEPH Structure & Configuration
ALEPH Structure & Configuration aleph_startup_505 - example (2) #******************************************* # lib_batch echo "starting library batch queues" echo "" if ($?QUE_STARTUP_LIBS) then set que_startup_libs = ($QUE_STARTUP_LIBS) else set que_startup_libs = "" endif foreach lib ($que_startup_libs) start_proc00 $lib echo -n "$lib " start_library_batch end # UE_01 echo "starting library update doc daemon" … Defined in aleph_start_505 or aleph_start_505.private ALEPH Structure & Configuration
ALEPH Structure & Configuration aleph_shutdown_505 - example #!/bin/csh -f source /etc/aleph_start_505 source $aleph_proc/def_local_env #******************************************* # jobd echo -n "shutdown of jobd" aleph_ps kill "$aleph_exe/jobd $ALEPH_VERSION" echo " " # servers echo -n "shutdown of servers" $aleph_exe/server_monitor -ks # stop all library processes for ALL ALEPH_LIBS if ($?ALEPH_LIBS) then set aleph_libs = ($ALEPH_LIBS) else set aleph_libs = "" endif # lib_batch echo "shutdown library batch queues" echo "" Shutdown lib_batch for ALL $ALEPH_LIBS ALEPH Structure & Configuration
ALEPH Structure & Configuration Configuration Files path_convert Located in the active alephe/tab/ directory ($alephe_tab) Redirection of files, tables and directories Uses aleph_start_505 logical assignments Continuous loops are not allowed ALEPH Structure & Configuration
ALEPH Structure & Configuration path_convert - example $usm01_dev/usm01/www_a_eng $alephe_root/www_a_eng $usm50_dev/usm50/www_a_eng $alephe_root/www_a_eng $usm50_dev/usm50/www_b_eng $usm01_dev/usm01/www_b_eng $usm50_dev/usm50/www_b_fre $usm01_dev/usm01/www_b_fre $usm50_dev/usm50/form_eng $usm01_dev/usm01/form_eng $usm50_dev/usm50/form_ger $usm01_dev/usm01/form_ger $usm50_dev/usm50/form_fre $usm01_dev/usm01/form_fre $usm50_dev/usm50/tab/rep_col $usm01_dev/usm01/tab/rep_col $usm50_dev/usm50/tab/pc_tab_col $usm01_dev/usm01/tab/pc_tab_col $ndu01_dev/ndu01/www_a_eng $alephe_root/www_a_eng $ndu01_dev/ndu01/www_b_eng $usm01_dev/usm01/www_b_eng $ndu01_dev/ndu01/www_c_eng $usm01_dev/usm01/www_c_eng $ndu01_dev/ndu01/form_eng $usm01_dev/usm01/form_eng $ndu01_dev/ndu01/head_foot $usm01_dev/usm01/head_foot $ndu01_dev/ndu01/tab/rep_col $usm01_dev/usm01/tab/rep_col $ndu01_dev/ndu01/tab/pc_tab_col $usm01_dev/usm01/tab/pc_tab_col ALEPH Structure & Configuration
ALEPH Structure & Configuration path_convert Segmentation fault may occur when giving incorrect values. ALEPH Structure & Configuration
ALEPH Structure & Configuration Web Related www_server_defaults Located in $alephe_root Contains definitions for the Web server Correct throughout Version 14 ALEPH Structure & Configuration
ALEPH Structure & Configuration Web Related www_server.conf Located in $alephe_root Contains definitions for the Web server from Version 15 ALEPH Structure & Configuration
ALEPH Structure & Configuration PC Related library.ini Located in ../alephcom/tab (on pc) Basic communication definitions ALEPH Structure & Configuration
ALEPH Structure & Configuration - FIN - ALEPH Structure & Configuration