Sounds like that would be a good ticket to create that affects 1.4.4 and
1.5.0 something we should try to fix for 1.4.5, 1.5.1 and 1.6.0.
Would be great to get a patch too!
On 11/13/13, 3:43 PM, Terry P. wrote:
Correction: just did an Accumulo cluster shutdown and the gc on the
secondary namenode did not shutdown along with the rest of the cluster.
No errors on the Master when stop-all.sh was called.
No time to research right now though, but wanted to let everyone know.
On Wed, Nov 13, 2013 at 4:29 PM, Terry P. <[email protected]
<mailto:[email protected]>> wrote:
I was able to get to the 1.5.0 source, and start-here.sh has the
same problem as described above for 1.4.2.
On Wed, Nov 13, 2013 at 4:12 PM, Terry P. <[email protected]
<mailto:[email protected]>> wrote:
Revisiting this, looks like I found even when I have my
secondary namenode hostname in the gc file on the master and
secondary namenode (my standby master), the gc process would not
start on any node but the master.
Looking at the config.sh script on lines 102-104:
if [ -f "$ACCUMULO_HOME/conf/gc" ]; then
GC=`grep -v '^#' "$ACCUMULO_HOME/conf/gc" | head -1`
fi
That only puts the first node found in the GC variable, similar
to what is done with MASTER.
Then in start-here.sh, whereas the masters file is checked to
see if the current host is in the masters file (starting at line
38):
for host in $HOSTS
do
*if grep -q "^${host}\$" $ACCUMULO_HOME/conf/masters*
then
${bin}/accumulo
org.apache.accumulo.server.master.state.SetGoalState NORMAL
${bin}/start-server.sh $host master
break
fi
done
*For GC, only the ${GC} variable is checked (starting on line
48), and start of the gc is only attempted on the one host in
the GC variable*:
for host in $HOSTS
do
*if [ ${host} = ${GC} ]*
then
${bin}/start-server.sh *$GC* gc "garbage collector"
break
fi
done
*I've modified my start-here.sh script's GC section to*:
for host in $HOSTS
do
*if grep -q "^${host}\$" $ACCUMULO_HOME/conf/gc*
then
${bin}/start-server.sh *${host}* gc "garbage collector"
break
fi
done
And that did the trick. I didn't see any changes needed in the
stop-here.sh script, as it already iterates over all possible
processes to stop them if they are found.
Can anyone think of anything I might have missed?
I searched for any JIRAs on this but did not find any.
I tried to download the 1.5.0 binaries, but download link
doesn't work for me (has happened before with my work's overly
restrictive internet gateway) -- but FYI I asked my brother to
download it, and the "mirrors" link under GENERIC BINARIES
didn't work for his as well.
If I can get my hands on the 1.5.0 binaries, I'll check to see
if this is already OBE in 1.5.0 today else it will have to wait
until tonight.
On Wed, Nov 6, 2013 at 12:12 PM, Terry P. <[email protected]
<mailto:[email protected]>> wrote:
Ahh thanks Billie, I'll stick with just one monitor then.
Thanks!
On Wed, Nov 6, 2013 at 10:32 AM, Billie Rinaldi
<[email protected] <mailto:[email protected]>>
wrote:
On Tue, Nov 5, 2013 at 12:51 PM, Josh Elser
<[email protected] <mailto:[email protected]>> wrote:
It looks like you can configure multiple hosts for
GC and they'll use ZooKeeper to perform failover
(like the master).
Tracers -- You can run multiple tracer processes.
You likely don't need 1:1 as you run tservers, but
you can run a few if you're concerned about it.
They're not required for Accumulo operation.
Same for the monitor. If you need to have multiple
running for failover purposes, it looks like you can
specify multiple and it will just launch a monitor
on each host you specified. There's no centralize
URL you can always hit here. You would have to check
each one to find one that was, unless you want to
run some sort of reverse-proxy in front of them all.
I think additional monitors won't work entirely as
expected. The log forwarding from the other processes
is set up when the processes are started, and the logs
are only sent to the first host in the monitor file.
_obligatory I just looked to source code to come to
this conclusion_
On 11/5/13, 3:13 PM, Terry P. wrote:
I put my secondary namenode in the masters file
for the first time with
this latest Accumulo 1.4.2 cluster deployment so
it would run as a
Standby Accumulo Master which I read about in
the User Guide. Recently
had the Master lose its Zookeeper lock (network
glitch, being
researched), and was glad to see the secondary
namenode Master process
took over as it should.
But if my Namenode / Accumulo Master server goes
down, I also lose the
gc, monitor, and tracer processes as well. *Can
I configure the
secondary namenode in gc, tracer, and monitor
files as well, or should
they run on only one host at a time*? In this
case, the GC also lost
its Zookeeper lock, which resulted in a cluster
with no GC running at
all until I caught it.
Thanks in advance.