Hey Leif/list,
> I am e-mailing the list due to an issue (or PEBKAC) I am experiencing
> when running several instances of Trafficserver on one system, under
> custom directories.
>
> No PEBKAC, not even an ID-10T issue. I think we simply don't support
> what you are trying to do :-/. We used to have some environment
> variables dealing with this, but as far as I can tell, it's all
> eliminated with code like
Good news you DO support what I am trying to do, and this WAS a PEBKAC :).
I was setting the environment with my 'ts-defaults' script, but was not
exporting the values. After adding 'export VALUE=something' to the beginning of
each variable I override, everything magically worked as planned once I cleaned
up my mess of guesses to fix this.
Unresolved issues bother the hell out of me, so in case you guys are the same
way I wanted you to know that my logic was broken and not your code :).
For those interested, I was able to clean up my implementation once I got this
working a lot. I removed the modifications I made to bin/trafficserver ("added
if test -e <ts-defaults>; then . <ts-defaults>; fi" for my custom-path defaults
file) and merged the environment variable setting I did in 'ts-defaults' script
into a single init script. Now the modified variables are exported before
bin/trafficserver is ran, who will use those values to start the 3 daemons:
"#!/bin/bash
set -e
export TS_ROOT=/opt/instances/ts_uploadprx
export TC_NAME=traffic_cop
export TC_DAEMON=$TS_ROOT/bin/$TC_NAME
export TC_DAEMON_ARGS=""
export TM_NAME=traffic_manager
export TM_DAEMON=$TS_ROOT/bin/$TM_NAME
export TM_DAEMON_ARGS=""
export TS_NAME=traffic_server
export TS_DAEMON=$TS_ROOT/bin/$TS_NAME
export TS_DAEMON_ARGS=""
export TC_PIDFILE=$TS_ROOT/logs/cop.lock
export TM_PIDFILE=$TS_ROOT/logs/manager.lock
export TS_PIDFILE=$TS_ROOT/logs/server.lock
export PIDFILE_CHECK_RETRIES=30
export STDOUTLOG=$TS_ROOT/logs/$TS_NAME.stdout
export STDERRLOG=$TS_ROOT/logs/$TS_NAME.stderr
$TS_ROOT/bin/trafficserver $@"
Using this, trafficserver spawns entirely out of my special instance dir with
no other modifications! I am sorry to waste the lists time on this now
non-issue and am glad to see that this use case is in fact 100% supported by
trafficserver!
Thanks everyone, and have a nice Easter weekend! We look forward to
implementing ATS in the future.
Tim Vaillancourt
[email protected]
Electronic Arts - www.ea.com