1 arta 1.11 __DEFS__
2
|
3 arta 1.43 # NetDRMS local site configuration info.
|
4 arta 1.44 #
5 # This file contains configurable parameters that allow NetDRMS sites 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 remoteSUMS. 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.
6 #
|
7 arta 1.66 # 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.
|
8 arta 1.2
|
9 arta 1.66 # The name of the NetDRMS database (e.g., sdac_drms, nso_drms); this is also the prefix of the SUMS database,
|
10 arta 1.43 # which is constructed by appending "_sums" to the prefix.
|
11 arta 1.2 DRMS_DATABASE mydb
|
12 arta 1.1
|
13 arta 1.44 # The database user account that cgi programs access when they need to read from or write to database relations.
|
14 arta 1.31 WEB_DBUSER apache
15
|
16 arta 1.43 # The host machine of the database server you will be accessing; if
17 # the DRMS server and client reside on different subnets, then the host
|
18 arta 1.66 # name should be a fully qualified domain name (FQDN).
|
19 arta 1.43 # A value of 'localhost' can be used, but it is only appropriate if you
20 # are running in a single-user environment, such as on a laptop. In
21 # this case, the client and the server are the same machine, so
22 # it is not necessary to specify a host name for the server.
|
23 arta 1.1 DBSERVER_HOST localhost
24
|
25 arta 1.43 # The port number for the DRMS database server - the default of 5432 is a
26 # good choice, unless it is already in use.
|
27 rick 1.13 DRMS_DBPORT 5432
28
|
29 arta 1.43 # A 15-bit numerical site identifier. Values < 16384 (0x4000) are for
30 # NetDRMS sites that create Storage Units for public export / distribution.
31 # They must be unique across all DRMS sites. Values >= 16384 are for private
32 # use and need not be unique across sites.
|
33 arta 1.1 DRMS_SITE_CODE 0x4000
34
|
35 arta 1.54 # The directory that contains log files for DRMS programs.
36 DRMS_LOG_DIR /usr/local/logs/drms
37
38 # The directory that contains file locks for DRMS programs.
39 DRMS_LOCK_DIR /usr/local/locks
40
|
41 arta 1.44 # The database user name of the postgres administrative account; this is normally "postgres"
42 # if you have followed the PostgreSQL installation suggestions.
|
43 arta 1.2 POSTGRES_ADMIN postgres
44
|
45 rick 1.10 # The following entries are specific to the SUMS configuration
|
46 rick 1.5
|
47 arta 1.54 # The linux user account used to run the SUMS server and sum_rm. It is also the default name of the DB user that
48 # these SUMS applications use when logging-in to the SUMS database.
|
49 rick 1.5 SUMS_MANAGER production
50
|
51 arta 1.54 # The DRMS database user account that has row-deletion permissions for ALL DRMS data-series DB record tables (the record
|
52 arta 1.66 # table for a data-series has the same name, albeit lower-case-folded, as the name of the data-series, i.e.,
|
53 arta 1.54 # the record table for the data-series hmi.M_45s is hmi.m_45s). sum_rm connects to the DRMS database as this user
54 # when it deletes DRMS records (for the archive == -1 feature).
55 DRMS_ADMIN_DB_USER sumsadmin
56
57 # The SUMS DB user who has read-only access to the SUMS database.
58 SUMS_READONLY_DB_USER readonlyuser
59
|
60 arta 1.44 # The linux group name for users permitted to add data to SUMS Storage Units; not
|
61 rick 1.6 # currently used in code, but should match the group ownership of
62 # the SUMS root directories /SUM*
63 SUMS_GROUP drms
64
|
65 arta 1.44 # The host of the default SUMS server you will be using; this is the
|
66 rick 1.5 # the machine that the SUMS storage units are mounted on, not necessarily
|
67 arta 1.44 # the machine serving the PostgreSQL SUMS database.
|
68 rick 1.5 SUMS_SERVER_HOST localhost
69
|
70 arta 1.44 # The machine hosting the SUMS database.
|
71 arta 1.21 SUMS_DB_HOST localhost
72
|
73 arta 1.44 # The port number for the DRMS database server - the default of 5434 should be okay
74 # unless it is in use already.
|
75 rick 1.13 SUMS_DBPORT 5434
76
|
77 arta 1.66 # The number of sum_svc processes, per sum service (e.g., SUM_get, SUM_alloc) to start,
|
78 arta 1.15 # by default, when multi-SUMS starts up.
|
79 arta 1.42 SUM_NUMSUM 1
|
80 arta 1.15
|
81 arta 1.44 # The maximum number of sum_svc processes, per sums service.
|
82 arta 1.15 SUM_MAXNUMSUM 8
83
|
84 arta 1.44 # The base directory for SUMS logs and configuration files; used by
85 # sum_svc and sum_rm.
|
86 rick 1.5 SUMS_LOG_BASEDIR /usr/local/logs/SUM
87
|
88 arta 1.44 # The directory in which sum_chmown, a root setuid program,
|
89 rick 1.6 # is installed; must be mounted locally on the machine on which the
90 # SUMS partition are mounted; used by base/sums/apps/sum_svc_proc.c
|
91 rick 1.7 SUMS_BIN_BASEDIR /usr/local/bin
|
92 rick 1.6
|
93 arta 1.44 # If set to 1, then SUMS includes a tape-archive system.
|
94 rick 1.5 SUMS_TAPE_AVAILABLE 0
|
95 rick 1.8
|
96 arta 1.44 # If set to 1, then SUMS has more than one partition set.
|
97 arta 1.15 SUMS_MULTIPLE_PARTNSETS 0
98
|
99 arta 1.14 # If AUTOSELCOMP is 1, then the configure script will automatically select
100 # the 'best' compiler for use with the make system (choosing icc over gcc).
101 # Set this to 0 to permit manual selection via the JSOC_COMPILER and JSOC_FCOMPILER
102 # environment variables, or via editing of make_basic.mk
103 AUTOSELCOMP (1)
104
|
105 arta 1.18 ###############################
|
106 arta 1.17 # TABLE OF PRODUCTION USERS
107 # These parameters are used by lib DRMS to identify a database table (not a data series)
108 # that lists the database users that are 'production users'. These users have privileges
109 # that ordinary users do not. For example, production users can reduce the retention of
110 # data series that the production user does not own.
|
111 arta 1.18
112 # The host:port of the machine serving as the db server that contains the production-user table.
|
113 arta 1.19 #PRODUSER_DBHOST hmidb:5432
|
114 arta 1.18
115 # The name of database on the database host that contains the production-user table.
|
116 arta 1.19 #PRODUSER_DBNAME jsoc
|
117 arta 1.18
118 # The name of the production-user table
|
119 arta 1.19 #PRODUSER_PRODTAB su_production.produsers
|
120 arta 1.18
121 # The name of the column that contains the list of production users in the production-user table.
|
122 arta 1.19 #PRODUSER_COLUSER username
|
123 arta 1.18 #
124 # END TABLE OF PRODUCTION USERS
125 ###############################
|
126 arta 1.17
|
127 arta 1.22 ###############################
128 # Parameters for sum_rm
129
130 # This is the percentage at which all disk partitions are to be kept free.
131 # If not specified, this defaults to 3. For example, setting PART_PERCENT_FREE = 5 will allow all partitions to
132 # fill to 95% full. Dividing the number of unused blocks by the total number of blocks, and rounding up,
133 # will result in the number specified by PART_PERCENT_FREE.
134 SUMRM_PART_PERCENT_FREE 3
135
136 # The value is the number of seconds to sleep between iterations of the main loop in sum_rm.
137 SUMRM_SLEEP 300
138
139 # The value is the log file (opened only at sum_rm startup; the sum_rm pid is appended to this file name).
140 SUMRM_LOG /tmp/sum_rm.log
141
142 # The value is the email address of the recipient to be notified in case of a problem.
143 # SUMRM_MAIL president@whitehouse.gov
144
145 # If the value is set to anything other than 0, then sum_rm is rendered inactive. Otherwise, sum_rm is active.
146 SUMRM_NOOP 0
147
148 arta 1.22 # The value designates the linux user who is allowed to run sum_rm.
149 SUMRM_USER production
150
|
151 arta 1.23 # This pair of parameters defines a window of time, during which sum_rm will become torpid - in this
|
152 arta 1.22 # window, sum_rm will not scan for SUs to delete, not will it delete any SUs. Each value is an integer, 0-23, that
153 # represents an hour of the day. For example, if NORUN_START=8 and NORUN_STOP=10, then between 8am and 10am
154 # local time, sum_rm will be dormant. To disable this behavior, set both parameters to the same value.
155 SUMRM_NORUN_START 0
156 SUMRM_NORUN_STOP 0
157
|
158 arta 1.23 JMD_IS_INSTALLED 0
159
160 # If the JMD is installed, then this parameter is the root URL to the JMD cgi interface.
161 JMD_URL http://localhost:8080/JMD/JMD
|
162 arta 1.22 ###############################
163
|
164 arta 1.26 ###############################
165 # Parameters for remote sums - these parameters allow configuration of the remote-sums components
166
|
167 arta 1.55 # The CGI of the site that maps requested SUs to sites that provide those SUs. The CGI
168 # maps the SU site code to a NetDRMS site's SU-path CGI (the cgi that provides
169 # paths for SUNUMs).
170 RS_SITE_INFO_URL http://jsoc.stanford.edu/cgi-bin/rssites.sh
171
|
172 arta 1.26 # The database table that lists the remote sites, their site codes, and their base urls that provide access to the rs.py CGI.
173 # Each site that provides SUs to other sites must have a rs.py CGI that provides the scp path to the site requesting the SUs.
174 RS_SITE_TABLE drms.rs_sites
175
176 # The database table used by rsumsd.py daemon running at the receiving site to track remote-site SU requests.
177 RS_REQUEST_TABLE drms.rs_requests
178
179 # The database table used by rsumsd.py daemon running at the receiving site to track SU downloads.
180 RS_SU_TABLE drms.rs_sus
181
182 # The name of the database that contains the three previous tables.
183 RS_DBNAME mydb
184
185 # The database host that contains the database identified by RS_DBNAME.
|
186 arta 1.27 RS_DBHOST localhost
|
187 arta 1.26
|
188 arta 1.30 # The database user that manages remote sums programs.
189 RS_DBUSER user
190
|
191 arta 1.26 # The port on the database host used by rsumsd.py to access the database identified by RS_DBNAME.
|
192 arta 1.27 RS_DBPORT 5432
|
193 arta 1.26
194 # The (advisory) lockfile used by rsumsd.py to prevent multiple instances of rsumsd.py from running.
195 RS_LOCKFILE /usr/share/drms/locks/remotesums.lck
196
|
197 arta 1.33 # The directory in which remote-sums log files are written.
198 RS_LOGDIR /usr/share/drms/logs/rsums
199
|
200 arta 1.49 # The number of seconds after which a storage-unit scp download will time-out.
201 RS_DLTIMEOUT 120
|
202 arta 1.28
|
203 arta 1.49 # The number of seconds after which a new remote-sums fetch will time-out if the daemon has not started a download within this interval.
204 RS_REQTIMEOUT 300
|
205 arta 1.32
|
206 arta 1.28 # The maximum number of simultaneously storage unit downloads to process at once.
|
207 arta 1.50 RS_MAXTHREADS 216
|
208 arta 1.29
209 # The path to executables run by the remote-sums system.
|
210 arta 1.41 RS_BINPATH /opt/drms/bin/linux_x86_64
|
211 arta 1.29
|
212 arta 1.46 # The number of SCP worker threads.
213 RS_N_WORKERS 4
214
|
215 arta 1.47 # The temporary directory into which Storage Units are downloaded. This should be on the same file system
216 # in which the SUMS directories are located.
217 RS_TMPDIR /tmp
218
|
219 arta 1.48 # If more than this number of SUs are awaiting download, then an ScpWorker will initiate a download.
220 RS_SCP_MAXSUS 48
221
222 # If the cumulative payload exceeds this many MB, then an ScpWorker will initiate a download.
223 RS_SCP_MAXPAYLOAD 512
224
|
225 arta 1.66 # If an ScpWorker is idle for at least this many seconds, and there are SUs pending a download,
|
226 arta 1.48 # then an ScpWorker will initiate a download.
|
227 arta 1.50 RS_SCP_TIMEOUT 2
|
228 arta 1.48
|
229 arta 1.58 # 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.
230 RS_SU_EXPIRATION 2018-10-15
231
232 # 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.
233 RS_SU_LIFESPAN 28
234
235 # 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.
236 RS_SU_ARCHIVE no
237
|
238 arta 1.66 # 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.
|
239 arta 1.58 RS_SU_TAPEGROUP 0
240
|
241 arta 1.56 ##### Storage Unit Steward #####
242 # The (advisory) lockfile used by the SU steward to prevent multiple instances of the steward from running.
243 SS_LOCKFILE /usr/share/drms/locks/sustewie.lck
244
245 # Each partition is scrubbed until its percent usage falls below the low-water mark.
246 SS_LOW_WATER 90
247
248 # Partition scrubbing is initiated only after partition percent usage rises above the high-water mark.
249 SS_HIGH_WATER 95
250
251 # 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.
252 SS_SU_CHUNK 4096
253
254 # The interval, in seconds, between flushing/caching expired SU lists (use a smaller number if the system experience a high rate of SU expiration)
255 SS_SLEEP_INTERVAL 300
256
|
257 arta 1.57 # The time interval, in seconds, between updates to the per-partition cache of expired
258 # SUs. This value applies to all partitions that are scrubbed. For each partition, a
259 # steward thread queries its cache to select the next SUs to delete (which are sorted by
260 # increasing expiration date).
|
261 arta 1.56 SS_REHYDRATE_INTERVAL 3600
262 ##### Storage Unit Steward #####
263
|
264 arta 1.44 # If set to 1, then this DRMS allows access by the public to series defined in the internal database (SERVER).
|
265 arta 1.35 WL_HASWL 0
266
|
267 arta 1.34 # The file that contains a list of internal series that are accessible to external users.
|
268 arta 1.35 WL_FILE /usr/share/drms/whitelist.txt
|
269 arta 1.34
|
270 arta 1.37 # The paths to various binaries.
|
271 arta 1.41 BIN_EXPORT /opt/drms/bin
272 SCRIPTS_EXPORT /opt/drms/scripts
|
273 arta 1.60
|
274 arta 1.66 EXPORT_PRODUCTION_DB_USER netdrms_production
|
275 arta 1.60 EXPORT_LOG_DIR /opt/exports/logs
276 EXPORT_LOCK_DIR /opt/exports/tmp
277 EXPORT_HANDLE_DIR /opt/exports
278
|
279 arta 1.66 # The DRMS database table that contains the pending export requests. Unless you have a fully functional export system
|
280 arta 1.62 # (you don't), set this to the empty string
|
281 arta 1.63 EXPORT_PENDING_REQUESTS_TABLE ""
|
282 arta 1.61
|
283 arta 1.62 # The number of minutes, after which a pending export request expires
|
284 arta 1.63 EXPORT_PENDING_REQUESTS_TIME_OUT 60
|
285 arta 1.64 EXPORT_PENDING_REQUESTS_MAX_TABLE ""
286 EXPORT_ADDRESS_INFO_FN ""
287 EXPORT_ADDRESS_INFO_INSERT_FN ""
|
288 arta 1.65 EXPORT_ADDRESS_INFO_UPDATE_FN ""
289 EXPORT_ADDRESS_INFO_DELETE_FN ""
|
290 arta 1.64 EXPORT_USER_INFO_TABLE ""
|
291 arta 1.65 EXPORT_USER_INFO_FN ""
292 EXPORT_USER_INFO_INSERT_FN ""
293 EXPORT_USER_INFO_UPDATE_FN ""
294 EXPORT_USER_INFO_DELETE_FN ""
|
295 arta 1.67 EXPORT_USER_UNREGISTER_FN ""
|
296 arta 1.64
|
297 arta 1.42 # The Python binary must be at least version 2.7. 3.x binaries will work.
|
298 arta 1.37 BIN_PY /usr/bin/python
|
299 arta 1.40
|
300 arta 1.51 BIN_PY3 /usr/bin/python3
301
|
302 arta 1.40 # The number of minutes after which a new email registration attempt will time-out if the registering user does
303 # not respond to the verification email sent to them.
304 REGEMAIL_TIMEOUT 5
|
305 arta 1.41
|
306 arta 1.42 ############## MT SUMS ##############
|
307 arta 1.41 # These are parameters needed when using the multi-threaded SUMS daemon.
|
308 arta 1.42 # Use the MT SUMS daemon (which serves SUM_infoArray() requests).
|
309 arta 1.41 SUMS_USEMTSUMS 0
|
310 arta 1.52
311 # Use the MT SUMS daemon for the SUM_open() and SUM_close() API function.
312 SUMS_USEMTSUMS_CONNECTION 0
313
314 # Use the MT SUMS daemon for the SUM_infoArray() API function.
315 SUMS_USEMTSUMS_INFO 0
316
317 # Use the MT SUMS daemon for the SUM_get() API function.
318 SUMS_USEMTSUMS_GET 0
319
320 # Use the MT SUMS daemon for the SUM_alloc() and SUM_alloc2() API function.
321 SUMS_USEMTSUMS_ALLOC 0
322
323 # Use the MT SUMS daemon for the SUM_put() API function.
324 SUMS_USEMTSUMS_PUT 0
325
326 # Use the MT SUMS daemon for the SUM_delete_series() API function.
327 SUMS_USEMTSUMS_DELETESUS 0
328
329 # Use the MT SUMS daemon for the SUM_open() and SUM_close() API function.
330 SUMS_USEMTSUMS_ALL 0
331 arta 1.52
|
332 arta 1.42 # The maximum number of SUs to process in parallel.
333 SUMSD_MAX_THREADS 32
334 # The port to be used by the MT SUMS daemon for incoming requests.
335 SUMSD_LISTENPORT 6002
|
336 arta 1.59
337 # The amount of time, in minutes, sumsd.py will wait for a client response; after this interval elapses without a client resopnse sumsd.py will destroy the client connection
338 SUMS_MT_CLIENT_RESP_TIMEOUT 1440
|
339 arta 1.42 ############ END MT SUMS ############
340
|
341 arta 1.43 # The Slony server configure file. This is used only if you are generating Slony logs to distribute DRMS series data
342 # to subscribing mirror sites.
|
343 arta 1.68 SLONY_CONFIG /opt/netdrms/proj/replication/etc/repserver.cfg
|
344 arta 1.43
|
345 arta 1.68 # Ephemeris tables for rings project
346 JPL_EPHEM_TABLEDIR /opt/netdrms/tables
347 SOHO_EPHEM_TABLE /opt/netdrms/tables
|
348 arta 1.41
|
349 arta 1.26 ###############################
350
|
351 arta 1.11 __MAKE__
352
353 # Third-party libraries required in order to make NetDRMS binaries. Specify
354 # a default and also machine-specific locations (if desired). The default will
355 # be used if no machine-specific entry exists.
356
357 # *** PostgreSQL ***
358
359 # defaults
360 # PostgreSQL API headers (must contain libpq-fe.h)
361 POSTGRES_INCS:X86_64 /usr/include
|
362 arta 1.20 POSTGRES_INCS:AVX /usr/include
363
|
364 arta 1.11 # the location of the PostgreSQL libs; likely to be either
365 # /usr/lib or /usr/lib64 or /usr/local/pgsql/lib
366 POSTGRES_LIBS:X86_64 /usr/lib64
|
367 arta 1.20 POSTGRES_LIBS:AVX /usr/lib64
|
368 arta 1.11
369 # actual library names
370 POSTGRES_LIB pq
371
372 # machine-specific
373 # The following is an example:
374 # POSTGRES_LIBS:N02 /usr/lib64
375
376 # *** end PostgreSQL ***
377
378 # *** CFITSIO ***
379
380 # defaults
381 # CFITSIO API headers (must contain fitsio.h)
|
382 arta 1.42 CFITSIO_INCS:X86_64 /usr/local/include
383 CFITSIO_INCS:AVX /usr/local/include
|
384 arta 1.11
385 # the location of the cfitsio libraries
|
386 arta 1.42 CFITSIO_LIBS:X86_64 /usr/local/lib64
387 CFITSIO_LIBS:AVX /usr/local/lib64
|
388 arta 1.11
389 # actual library names
390 CFITSIO_LIB cfitsio
391
392 # machine-specific
393 # The following is an example:
394 # CFITSIO_LIBS:N02 /usr/lib64
395
396 # *** end CFITSIO ***
|
397 arta 1.12
|
398 arta 1.42
399 #################### TAR ####################
400 # Tar library needed by JMD.
401 TAR_INCS:X86_64 /usr/include
402 TAR_INCS:AVX /usr/include
403 TAR_LIBS:X86_64 /usr/lib64
404 TAR_LIBS:AVX /usr/lib64
405 ################## END TAR ##################
|