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

Re: [HTCondor-users] Setting preemption based on submit boxes



I tried to put some pseudocode to see how can I fulfill this requirement. May be I can use the following condition for preemption requirement.Â

stringListMember(ifthenelse("(substr(toLower(GlobalJobId),0,5))", "subt1, subt2, subt3"), (CurrentWallTime > 2 * $(HOUR)), CurrentWallTime)

Getting the hostname of submit box from theÂGlobalJobId and extracting first 5 characters. If the 5 charactersÂare in submit boxes list which belongs to team MC then check whether job is running for more than 2 hours. If not then use the currentwalltime as it's. CurrentWallTime is used in job class AD.

CurrentWallTime = ifthenelse(JobStatus == 2,CurrentTime - EnteredCurrentStatus,0)Â

This logic is missing the submit box intelligence. If the job is submitted by team A or any other user/team: job which is not submitted from team MC boxes will be preempted but I want to preempt the jobs only when the the jobs are submitted from team MC boxes otherwise let the jobs running.

Thanks & Regards,
Vikrant Aggarwal


On Mon, May 27, 2019 at 3:44 PM Vikrant Aggarwal <ervikrant06@xxxxxxxxx> wrote:
Hello Condor Experts,Â

I have a bit complex requirement for the preemption scenario.Â

Scenario:

- One of our condor cluster is used by a single team MC but now we want to open this cluster for other teams. Each team has it's own dedicated submit boxes. Currently, we are using FLOCK_FROM (Specifying subnet range of team MC submit boxes) setting to not allow other teams to submit their jobs. We want to set the preemption on this pool to give more usage of this pool to MC. We will remove the FLOCK_FROM setting to allow the jobs to be submitted by all teams.Â

1) Let's say if team A has the job running on cluster, as soon as the job is submitted by team MC, it should preempt the team A job.Â
2) If team MC job is running for more than 2 hours and other team jobs are waiting then team MC job should get preempted.Â

I read about 4 reasons of preemption, it seems like that PREEMPT (owner machine policy) will be more appropriate to achieve the task.Â

Only job ad is showing the submit host name but I need IP address, is this a feasible solution or i am exploring the wrong way.Â

split(TARGET.Globaljobid["#"])Â


Thanks & Regards,
Vikrant Aggarwal