(file) Return to config.local.newstyle.template CVS log (file) (dir) Up to [Development] / JSOC

  1 arta  1.3 # NetDRMS local site configuration info.
  2           #
  3           # This file contains configurable parameters that allow NetDRMS-site administrators to customize their DRMS installation. By editing this file, you can specify which resources to use, such as the PostgreSQL database host, you can specify arguments to certain programs, like arguments that control how often SUMS purges expired Storage Units, and you can enable/disable certain features, like Remote SUMS. Each line that is not a comment contains two columns of information. The first column contains the name of a parameter and the second contains its value. To customize your installation, you would edit the value in the second column.
  4           #
  5           # Once you have edited this file, you must run the configure script, which parses this file to create macros and constants and such that are used by the various DRMS components. These data are stored in files which are then either compiled into binaries or loaded by scripts. The configure script accomplishes much of this work by calling localize.py. The resulting files are stored in the localization directory.
  6           
  7           __STYLE__
  8           new
  9           
 10           __DEFS__
 11           
 12           # the path to the Python 3 python executable.
 13           q:BIN_PY3                                      /usr/bin/python3
 14           
 15           # the name of the DRMS database: this parameter exists in case you want to select a different name, but we don't recommend changing it.
 16           q:DBNAME                                       netdrms
 17           
 18           # a 15-bit hexadecimal string that globally and uniquely identifies the NetDRMS. Each NetDRMS requires a unique code for each installation. Values greater than or equal to 0x4000 denote a development installation and need not be unique. If you plan on generating data that will be distributed outside of your site, please obtain a unique value from the JSOC.
 19           a:DRMS_LOCAL_SITE_CODE                         0x4000
 20           
 21           # the directory to which the DRMS library writes various lock files.
 22 arta  1.3 q:DRMS_LOCK_DIR                                /home/netdrms_production/lock
 23           
 24           # the directory to which the DRMS library writes various log files.
 25           q:DRMS_LOG_DIR                                /home/netdrms_production/log/DRMS
 26           
 27           # the port that the DRMS database cluster instance is listening on.
 28           q:DRMSPGPORT                                   5432
 29           
 30 arta  1.5 q:EXPORT_PRODUCTION_DB_USER                   netdrms_production
 31           
 32 arta  1.3 # the directory to which export programs save handles.
 33           q:EXPORT_HANDLE_DIR                           /home/netdrms_production/lock
 34           
 35           # the directory to which export programs write lock files.
 36           q:EXPORT_LOCK_DIR                             /home/netdrms_production/lock
 37           
 38           # the directory to which export programs write logs.
 39           q:EXPORT_LOG_DIR                              /home/netdrms_production/log/DRMS
 40           
 41           # if set to 1, then the Java Mirroring Daemon alternative to Remote SUMS is used: this should be 0.
 42           a:JMD_IS_INSTALLED                            0
 43           
 44           # the Linux user that owns the PostgreSQL installation and processes.
 45           q:POSTGRES_ADMIN                              postgres
 46           
 47           # the NetDRMS binary path that contains the external programs needed by the Remote SUMS (e.g., jsoc_fetch, vso_sum_alloc, vso_sum_put).
 48           q:RS_BINPATH                                  /opt/netdrms/bin/linux_avx
 49           
 50           # the name of the Remote SUMS database cluster host.
 51           q:RS_DBHOST                                   drms
 52           
 53 arta  1.3 # the Remote SUMS database.
 54           q:RS_DBNAME                                   netdrms_sums
 55           
 56           # the port that the Remote SUMS database cluster instance is listening on.
 57           a:RS_DBPORT                                   5432
 58           
 59           # the Linux user that runs Remote SUMS; this is also the database user who owns the Remote SUMS database objects.
 60           q:RS_DBUSER                                   netdrms_production
 61           
 62           # the timeout, in seconds, for an SU to download. If the download time exceeds this value, then all requests waiting for the SU to download will fail.
 63           a:RS_DLTIMEOUT                                300
 64           
 65           # the (advisory) lockfile used by Remote SUMS to prevent multiple instances from running.
 66           q:RS_LOCKFILE                                 /home/netdrms_production/lock/remotesums.lck
 67           
 68           # the directory in which remote-sums log files are written.
 69           q:RS_LOGDIR                                   /home/netdrms_production/log/rsums
 70           
 71           # the maximum number of SUs that Remote SUMS can process simultaneously.
 72           a:RS_MAXTHREADS                               32
 73           
 74 arta  1.3 # the number of scp worker threads - at most, this many scp processes will run simultaneously
 75           a:RS_N_WORKERS                                8
 76           
 77           # the timeout, in seconds, for a new SU request to be accepted for processing by the daemon. If the daemon encounters a request older than this value, it will reject the new request.
 78           a:RS_REQTIMEOUT                               7200
 79           
 80           # the Remote SUMS database relation that contains Remote SUMS requests; DRMS modules insert request rows in this table, and Remote SUMS locates the requests and manages rows in this table.
 81           q:RS_REQUEST_TABLE                            drms.rs_requests
 82           
 83           # the maximum total payload, in MB, per download. As soon as the combined payload of SUs ready for download exceeds this value, then the SUs are downloaded with a single scp process.
 84           a:RS_SCP_MAXPAYLOAD                           512
 85           
 86           # the maximum size of the SU download queue. As soon as this many SUs are ready for download, they are downloaded with a single scp process.
 87           a:RS_SCP_MAXSUS                               48
 88           
 89           # if there are SUs ready for download, and no scp has fired off within this many seconds, then the SUs that are ready to download are downloaded with a single scp process.
 90           a:RS_SCP_TIMEOUT                              2
 91           
 92           # the service at JSOC that is used by Remote SUMS to locate the NetDRMS site that owns SUMS storage units; this is Remote SUMS site URL.
 93           q:RS_SITE_INFO_URL                            http://jsoc.stanford.edu/cgi-bin/rssites.sh
 94           
 95 arta  1.3 # the default value of the archive flag for newly ingested SUs; if the SU being ingested is part of a data series, then Remote SUMS obtains the archive flag from the data series' definition instead; the truth value can be one of several character strings that implies TRUE or FALSE.
 96           q:RS_SU_ARCHIVE                              no
 97           
 98           # the default expiration date for all SUs ingested by Remote SUMS; if the SU being ingested is part of a data series, then Remote SUMS obtains the expiration for the SU from the data series' definition instead; as an alternative to RS_SU_EXPIRATION, RS_SU_LIFESPAN can be used to specify the expiration date of newly ingested SUs; RS_SU_EXPIRATION takes predent over RS_SU_LIFESPAN.
 99           # q:RS_SU_EXPIRATION                         2022-10-25
100           
101           # the default lifespan ("retention time"), in days, of a newly ingested SU; if the SU being ingested is part of a data series, then Remote SUMS obtains the lifespan for the SU from the data series' definition instead; as an alternative to RS_SU_LIFESPAN, RS_SU_EXPIRATION can be used to specify the lifespan of newly ingested SUs; RS_SU_EXPIRATION takes predent over RS_SU_LIFESPAN.
102           a:RS_SU_LIFESPAN                             60
103           
104           # the default value of the tapegroup for newly ingested SUs; if the SU being ingested is part of a data series, then Remote SUMS obtains the tapegroup from the data series' definition instead.
105           a:RS_SU_TAPEGROUP                            0
106           
107           # the temporary directory into which SUs are downloaded. This should be on the same file system on which the SUMS partitions reside.
108           q:RS_TMPDIR                                  /tmp
109           
110           # the path to the directory in the NetDRMS installation that contains the export scripts.
111           q:SCRIPTS_EXPORT                             /opt/netdrms/scripts
112           
113 arta  1.5 # The DRMS database table that contains the pending export requests. Unless you have a fully functional export system
114 arta  1.3 # (you don't), set this to the empty string
115           a:EXPORT_PENDING_REQUESTS_TABLE              ""
116           
117           # The number of minutes, after which a pending export request expires
118           a:EXPORT_PENDING_REQUESTS_TIME_OUT           60
119           
120 arta  1.4 a:EXPORT_PENDING_REQUESTS_MAX_TABLE     ""
121           a:EXPORT_ADDRESS_INFO_FN                ""
122           a:EXPORT_ADDRESS_INFO_INSERT_FN         ""
123           a:EXPORT_ADDRESS_INFO_UPDATE_FN         ""
124           a:EXPORT_ADDRESS_INFO_DELETE_FN         ""
125           a:EXPORT_USER_INFO_TABLE                ""
126           a:EXPORT_USER_INFO_FN                   ""
127           a:EXPORT_USER_INFO_INSERT_FN            ""
128           a:EXPORT_USER_INFO_UPDATE_FN            ""
129           a:EXPORT_USER_INFO_DELETE_FN            ""
130 arta  1.6 a:EXPORT_USER_UNREGISTER_FN             ""
131 arta  1.4 
132 arta  1.3 # the name of the DRMS database cluster host.
133           q:SERVER                                     drms
134           
135           # partition scrubbing is initiated only after partition percent usage rises above the high-water mark.
136           a:SS_HIGH_WATER                              95
137           
138           # the (advisory) lockfile used by the SU steward to prevent multiple instances of the steward from running.
139           q:SS_LOCKFILE                                /usr/share/drms/locks/sustewie.lck
140           
141           # each SUMS partition is scrubbed until its percent usage falls below the low-water mark.
142           a:SS_LOW_WATER                               90
143           
144           # the time interval, in seconds, between updates to the per-partition cache of expired SUs; this value applies to all partitions that are scrubbed; for each partition, a steward thread queries its cache to select the next SUs to delete (which are sorted by increasing expiration date).
145           a:SS_REHYDRATE_INTERVAL                      3600
146           
147           # the interval, in seconds, between flushing/caching expired SU lists (use a smaller number if the system experience a high rate of SU expiration).
148           a:SS_SLEEP_INTERVAL                          300
149           
150           # the number of SUs in a partition that are deleted at one time; SUs are deleted one chunk at a time until the partition usage falls below the low-water mark.
151           a:SS_SU_CHUNK                                4096
152           
153 arta  1.3 # the path to the directory that contains various SUMS log files.
154           q:SUMLOG_BASEDIR                             /home/netdrms_production/log/SUMS
155           
156           # the port that the SUMS database cluster host is listening on; same as DRMSPGPORT unless DRMS and SUMS reside in different clusters on the same host (something that is not recommended since a single PostgreSQL cluster requires a substantial amount of system resources).
157           q:SUMPGPORT                                  5432
158           
159           # the name of the SUMS database cluster host; NetDRMS allows for creating a second cluster for SUMS, but in general this will not be necessary unless extremely heavy usage requires separating the two clusters.
160           q:SUMS_DB_HOST                               drms
161           
162           # the name of the Linux group to which all SUMS Linux users belong.
163           q:SUMS_GROUP                                 sums_users
164           
165           # the SUMS database user who owns the SUMS database objects which are manipulated by Remote SUMS and SUMS itself; it should be the Linux user that runs SUMS and owns the SUMS storage directories
166           q:SUMS_MANAGER                               netdrms_production
167           
168           # the SUMS database user who has read-only access to the SUMS database objects; it is used by the Remote SUMS client (rsums-clientd.py) to check for the presence of SUs before requesting they be downloaded.
169           q:SUMS_READONLY_DB_USER                      readonlyuser
170           
171           # SUMS has a tape-archive system.
172           p:SUMS_TAPE_AVAILABLE                        0
173           
174 arta  1.3 # use the multi-threaded Python SUMS.
175           a:SUMS_USEMTSUMS                             1
176           
177           # use the multi-threaded Python SUMS for all SUMS API methods; SUMS_USEMTSUMS_ALLOC, SUMS_USEMTSUMS_CONNECTION, SUMS_USEMTSUMS_DELETESUS, SUMS_USEMTSUMS_GET, SUMS_USEMTSUMS_INFO, and SUMS_USEMTSUMS_PUT are ignored.
178           a:SUMS_USEMTSUMS_ALL                         1
179           
180           # use the MT SUMS daemon for the SUM_alloc() and SUM_alloc2() API function.
181           # a:SUMS_USEMTSUMS_ALLOC                       0
182           
183           # use the MT SUMS daemon for the SUM_open() and SUM_close() API functions.
184           # a:SUMS_USEMTSUMS_CONNECTION                  0
185           
186           # use the MT SUMS daemon for the SUM_delete_series() API function.
187           # a:SUMS_USEMTSUMS_DELETESUS                   0
188           
189           # use the MT SUMS daemon for the SUM_get() API function.
190           # a:SUMS_USEMTSUMS_GET                         0
191           
192           # use the MT SUMS daemon for the SUM_infoArray() API function.
193           # a:SUMS_USEMTSUMS_INFO                        0
194           
195 arta  1.3 # use the MT SUMS daemon for the SUM_put() API function.
196           # a:SUMS_USEMTSUMS_PUT                         0
197           
198           # the port that SUMS listens to for incoming requests.
199           a:SUMSD_LISTENPORT                           6002
200           
201           # the maximum number of SUs that SUMS can process simultaneously.
202           a:SUMSD_MAX_THREADS                          32
203           
204           # the SUMS host machine.
205           q:SUMSERVER                                  drms
206           
207           # the DRMS database user account that cgi programs access when they need to read from or write to database relations.
208           q:WEB_DBUSER                                 apache
209           
210           __MAKE__
211           # The parameters in this section are used to create make variables. For example, the line
212           # 'POSTGRES_LIB  pq' will cause a make variable named POSTGRES_LIB to be created and to
213           # be assigned the value 'pq'.
214           
215           # If the name in the left column contains a colon, then the name on the LHS is the parameter name. The RHS is
216 arta  1.3 # a description of which platforms or specific machines the parameter applies to. For example,
217           # the name POSTGRES_INCS:X86_64 implies that the value of the parameter named POSTGRES_INCS is /usr/include
218           # when make is run on a linux_x86_64 machine. The RHS string can contain either a platform identifier
219           # (X86_64, IA32, AVX, or IA64) or it can be a string that identifies a particular machine, like d02.
220           # If the string is not one of the defined platform identifiers, then it is considered a machine identifier.
221           # A machine identifier can specify more than one machine. The name POSTGRES_INCS:hmidb specifies
222           # all machines whose names contain the string 'hmidb'. So, for machines hmidb, hmidb2, and hmidb3, the
223           # value of the POSTGRES_INCS parameter is /usr/local/pgsql/include.
224           #
225           # If the RHS is a platform identifier, then make compares the value of $JSOC_MACHINE (which is in
226           # reality a misnomer, since it truly specifies the name of the machine platform, not the name
227           # of the machine) to the platform name specified by the RHS string. For example,
228           # if the RHS string is 'avx', then make compares $JSOC_MACHINE to
229           # 'linux_avx', and if there is a match, then the parameter's value specified in the second column is assigned
230           # to the make variable. If the RHS is a machine identifier, then make compares the value of $MACHTYPE
231           # (another misnormer, since it is the name of the machine, not the name of some type of machine ) to
232           # the machine names specified by the RHS. For example, if the RHS string is 'hmidb' then make
233           # compares $MACHTYPE to 'hmidb', and if 'hmidb' is a substring of $MACHTYPE, then the parameter's
234           # value specified in the second column is assigned to the make variable
235           # the path to the installed CFITSIO header files.
236           
237 arta  1.3 CFITSIO_INCS                                 /opt/cfitsio/include
238           
239           # the name of the CFITSIO library.
240           CFITSIO_LIB                                  cfitsio
241           
242           # the path to the installed CFITSIO library files.
243           CFITSIO_LIBS                                 /opt/cfitsio/lib
244           
245           # the path to the installed PostgreSQL header files.
246           POSTGRES_INCS                                /usr/pgsql-12/include
247           
248           # the name of the PostgreSQL C API library (AKA libpq): this is always pq.
249           POSTGRES_LIB                                 pq
250           
251           # the path to the installed PostgreSQL library files.
252           POSTGRES_LIBS                                /usr/pgsql-12/lib

Karen Tian
Powered by
ViewCVS 0.9.4