मैं Ansible के लिए नया हूं, लेकिन मुझे प्लेबुक का एक सेट बनाए रखना है, जो किसी दिए गए वातावरण में सेटअप होने के लिए सेवाओं के अनुरूप है। उन्हें एक पोर्ट, सर्टिफिकेट आदि सौंपा जाना चाहिए। इसके परिणामस्वरूप कई फाइलों में अनिवार्य रूप से हमेशा समान नाम और उनके लिए असाइनमेंट की सूची होती है।
कई मामलों में मुझे लगता है कि मैं सेवा_नाम को चर के रूप में आसानी से पुन: उपयोग कर सकता हूं, लेकिन जब आईपी, पोर्ट या अन्य संख्यात्मक पहचानकर्ताओं को मैप कर रहा हूं, तो मुझे अभी तक यह पता लगाने का कोई तरीका नहीं मिला है कि उन्हें अलग-अलग संख्याओं के लिए एक तरह से प्रतिलिपि प्रस्तुत करने योग्य है, और अधिमानतः तरीका है नई सेवाओं को जोड़ने पर भी वही। मैंने सेवाओं को संग्रहीत करने और उनकी आईडी से मान उत्पन्न करने के लिए एक SQLite डेटाबेस का उपयोग करने पर विचार किया है, लेकिन मुझे अंदाजा नहीं है कि इसे कैसे एकीकृत किया जाए।
मैं मानता हूं कि बढ़ती पोर्ट संख्या को असाइन करना पूरी तरह से नया नहीं है; यह दिन-प्रतिदिन के आधार पर बहुत सारे sadadmins है इसलिए ऐसा करने का कोई तरीका होना चाहिए।
संपादित करें : हम सीधे group_vars/all.yml
इस तरह से पोर्ट नंबर आदि जोड़ते हैं :
ports:
service1:1024
service2:1025
service3:1026
इन्वेंट्री स्वचालित रूप से उत्पन्न होती है, क्योंकि हम अतिरिक्त जेल (बीएसडी) बनाते हैं और उन भूमिकाओं पर निर्भर करते हैं जिन्हें निष्पादित किया जाएगा।
group_vars
इन्वेंट्री फ़ाइलों में चर का उपयोग कर रहे हैं या जोड़ रहे हैं । यह भी स्पष्ट नहीं है कि आपकी सूची कैसे बनाई जा रही है।