[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[HTCondor-users] How to have execute machines belong to multiple pools in HTCondor 9.x?



Hi,
ÂI'm trying to replicate the behavior shown in this wiki:
https://htcondor-wiki.cs.wisc.edu/index.cgi/wiki?p=HowToHaveExecuteMachines
but I keep getting DENIED errors from SECMAN in the 2nd Collector, when the execute tries to report to it.

Any hint how to get that 1 startd report to 2 collectors?

Thank you

--------------------- "Super" master config ---------------------
# BEGIN ANSIBLE MANAGED BLOCK
# Add Sched to submit jobs
DAEMON_LIST=$(DAEMON_LIST) SCHEDD
# Enable users to submit jobs
ALLOW_WRITE = condor@$(TRUST_DOMAIN) *.test.dev $(CONDOR_HOST)
# END ANSIBLE MANAGED BLOCK
NETWORK_INTERFACE = 192.168.43.31
## SuperPool
# Insert NegotiatorMatchExprNegotiatorName="SuperPool" into matches
# that this negotiator makes. This is used by the startd to give
# the local negotiator priority over the super negotiator.
NegotiatorName = "SuperPool"
NEGOTIATOR_MATCH_EXPRS = NegotiatorName

# Configure authorization settings to permit startds in sub-pools to join
# the super-pool and to allow submission of jobs from all appropriate
# places.
ALLOW_READ = *.test.dev $(CONDOR_HOST) localhost
ALLOW_WRITE = *.test.dev $(CONDOR_HOST) localhost
UID_DOMAIN = test.dev
TRUST_DOMAIN = test.dev

--------------------- Master config ---------------------
# BEGIN ANSIBLE MANAGED BLOCK
# Add Sched to submit jobs
DAEMON_LIST=$(DAEMON_LIST) SCHEDD
# Enable users to submit jobs
ALLOW_WRITE = condor@$(TRUST_DOMAIN) $(CONDOR_HOST) *.test.dev localhost
ALLOW_READ = condor@$(TRUST_DOMAIN) $(CONDOR_HOST) *.test.dev localhost
# END ANSIBLE MANAGED BLOCK
NETWORK_INTERFACE = 192.168.43.32
UID_DOMAIN = test.dev
TRUST_DOMAIN = test.dev

--------------------- Start config ---------------------
NETWORK_INTERFACE = 192.168.43.33
UID_DOMAIN = test.dev
TRUST_DOMAIN = test.dev

# SuperPool
ALLOW_READ = *.test.dev
ALLOW_WRITE = *.test.dev

# Insert NegotiatorMatchExprNegotiatorName="<LocalPoolName>" into matches
# that this negotiator makes. This is used by the startd to give
# the local negotiator priority over the super negotiator.
NegotiatorName = "htmaster1"
NEGOTIATOR_MATCH_EXPRS = NegotiatorName

# For advertising to super-pool
SUPER_COLLECTOR=htmanager
LOCAL_COLLECTOR=$(CONDOR_HOST)

# the local negotiator should only ever report to the local collector
NEGOTIATOR.COLLECTOR_HOST=$(LOCAL_COLLECTOR)
# startds should report to both collectors
STARTD.COLLECTOR_HOST=$(LOCAL_COLLECTOR),$(SUPER_COLLECTOR)

# trust both negotiators
ALLOW_NEGOTIATOR=$(COLLECTOR_HOST)

# Ensure external users get big priority factor.
# If you don't have a uniform uid domain for all local users, then
# you will need to have some external process that updates priority
# factors using condor_userprio.
ACCOUNTANT_LOCAL_DOMAIN = $(UID_DOMAIN)

# Flocking to super-pool
FLOCK_TO=$(SUPER_COLLECTOR)

# Advertise in the machine ad the name of the negotiator that made the match
# for the job that is currently running. We need this in SUPER_START.
CurJobPool = "$$(NegotiatorMatchExprNegotiatorName)"
SUBMIT_EXPRS = $(SUBMIT_EXPRS) CurJobPool
STARTD_JOB_EXPRS = $(STARTD_JOB_EXPRS) CurJobPool

# We do not want the super-negotiator to preempt local-negotiator matches.
# Therefore, only match jobs if:
# Â Â Â1. the new match is from the local pool
# Â OR 2. the existing match is not from the local pool
SUPER_START = NegotiatorMatchExprNegotiatorName =?= $(NegotiatorName) || \
       MY.CurJobPool =!= $(NegotiatorName)

START = ($(START)) && ($(SUPER_START))

--
Ms. Eng. Edier Zapata
Ingeniero de Soporte en Infraestructura
Centro de InnovaciÃn Educativa Regional (Cier-Sur)
DirecciÃn de Nuevas TecnologÃas y EducaciÃn Virtual (DINTEV)
Universidad del Valle