किसी भी अन्य मशीन विशेषता की तरह, आपको बस मशीन क्लास में विज्ञापन करने की आवश्यकता है, और फिर अपनी नौकरियों की आवश्यकता है।
मशीन classad में यह विज्ञापन करने के लिए, आप या तो कुछ इस तरह जोड़कर हार्ड कोड यह प्रत्येक मशीन के कोंडोर कॉन्फ़िग फ़ाइल में कर सकते हैं:
has_numpy = True
STARTD_EXPRS = $(STARTD_EXPRS) HAS_NUMPY
... या बेहतर अभी तक, आप कोंडोर को बता सकते हैं गतिशील रूप से इसे एक स्क्रिप्ट के साथ रनटाइम पर खोजें और परिणाम को startd classad hook के माध्यम से विज्ञापन दें। ऐसा करने के लिए, तो तरह प्रत्येक मशीन पर एक सरल has_numpy
स्क्रिप्ट स्थापित:
#!/usr/bin/env python
try:
import numpy
except ImportError:
print "has_numpy = False"
else:
print "has_numpy = True"
... और फिर कोंडोर बता यह हर पाँच मिनट चलाने के लिए और startd classad में परिणाम छड़ी, के लिए निम्न जोड़कर मशीन के कोंडोर कॉन्फ़िग फ़ाइल:
HASNUMPY = /usr/libexec/condor/has_numpy
STARTD_CRON_JOBLIST = $(STARTD_CRON_JOBLIST) HASNUMPY
STARTD_CRON_HASNUMPY_EXECUTABLE = $(HASNUMPY)
STARTD_CRON_HASNUMPY_PERIOD = 300
... और फिर टा-डा (एक reconfig के बाद) अपने मशीनों गतिशील पता लगाने और रिपोर्ट numpy स्थापित किया है और अजगर स्क्रिप्ट के लिए उपलब्ध है या नहीं होगा।
तो फिर तुम सिर्फ अपने काम करने के लिए एक इसी आवश्यकता फ़ाइलों को सबमिट, इसलिए की तरह जोड़ने की जरूरत:
Requirements = (has_numpy == True)
... और अपने काम केवल मशीनों जहां numpy स्थापित किया गया है पर चलेंगे।
आपके उत्तर के लिए धन्यवाद। दुर्भाग्य से मेरा मामला अन्य बुद्धिमान साबित करता है। नौकरियां विभिन्न मशीनों को जमा की जाती हैं। कुछ सबमिशन के परिणामस्वरूप numpy के ImportError में परिणाम होता है। मैंने उन मशीनों की दोबारा जांच की और उन्हें इंस्टॉल पर कोई गड़बड़ नहीं थी। तो कंडोर एक मशीन को नौकरी जमा करने से रोकने के लिए प्रतीत नहीं होता है जो नौकरी की आवश्यकताओं को पूरा नहीं करता है - मेरे मामले में एक numpy स्थापना। हो सकता है कि यह हमारे कंडोर की स्थापना में मामला है, हालांकि। मैंने स्वयं सिस्टम स्थापित नहीं किया था और यह पहली बार है जब मैं कंडोर के साथ काम करता हूं। :-) – Aufwind
कंडक्टर डेवलपर्स से संपर्क करने का समय। या तो उनका मैनुअल सही नहीं है, या पाइथन का अलग जावा जैसा व्यवहार किया जाता है। –
मैनुअल से यह उद्धरण संदर्भ से बाहर है। कोंडोर रिमोट सिस्टम कॉल सुविधा केवल "मानक ब्रह्मांड" नौकरियों के लिए उपलब्ध है।यद्यपि वह ऐसा नहीं कहता है, ओपी को "वेनिला" ब्रह्मांड का उपयोग करना चाहिए क्योंकि मानक ब्रह्मांड उन बाधाओं को लागू करता है जो पाइथन जैसे दुभाषियों को इसके अंतर्गत चलने से रोकते हैं। – Pinko