Erlang 21 - 7. Definition of Manager Configuration Files

प्रबंधक कॉन्फ़िगरेशन फ़ाइलों की 7 परिभाषा




erlang

प्रबंधक कॉन्फ़िगरेशन फ़ाइलों की 7 परिभाषा

कॉन्फ़िगरेशन डेटा कॉन्फ़िगरेशन फ़ाइलों में शामिल हो सकता है जो कॉन्फ़िगरेशन निर्देशिका में स्थित है। इस निर्देशिका का नाम config_dir कॉन्फ़िगरेशन पैरामीटर में दिया गया है। ये फाइलें स्टार्ट-अप में पढ़ी जाती हैं।

वह निर्देशिका जहाँ कॉन्फ़िगरेशन फ़ाइल पाई जाती है, प्रबंधक को एक पैरामीटर के रूप में दी जाती है।

सभी फाइलों में प्रविष्टि प्रारूप एर्लांग शब्द है, जिसे 'से अलग किया जाता है 'और एक नई रूपरेखा । निम्नलिखित अनुभागों में, इन शर्तों के स्वरूपों का वर्णन किया गया है। टिप्पणियाँ आम एर्लांग टिप्पणियों के रूप में निर्दिष्ट की जा सकती हैं।

यदि इन फ़ाइलों में सिंटैक्स त्रुटियों की खोज की जाती है, तो उन्हें स्टार्ट-अप में error report module के फ़ंक्शन config_err/2 के साथ error report module किया जाता है।

7.1 प्रबंधक सूचना

प्रबंधक की जानकारी को manager.conf नामक फ़ाइल में संग्रहीत किया जाना चाहिए।

प्रत्येक प्रविष्टि दो आकार का एक टपल है:

{Variable, Value}.

  • Variable निम्नलिखित में से एक है:

    • transports - जो प्रबंधक के लिए परिवहन डोमेन और उनके पते को परिभाषित करता है। अनिवार्य

      Value {Domain, Addr} tuples या Domain परमाणुओं की एक सूची है।

      • Domain transportDomainUdpIpv4 या transportDomainUdpIpv6

      • IpAddr वर्तमान में समर्थित डोमेन के लिए या तो एक IpAddr या {IpAddr, IpPort} tuple है। IpAddr या तो एक नियमित Erlang / OTP ip_address() या एक पारंपरिक SNMP पूर्णांक सूची है और IpPort एक पूर्णांक है।

        जब Addr पोर्ट नंबर नहीं होता है, तो port का मान उपयोग किया जाता है।

        जब एक Addr निर्दिष्ट नहीं होता है अर्थात केवल एक Domain परमाणु का उपयोग करके, होस्ट का नाम IP पता खोजने के लिए हल किया जाता है, और port के मूल्य का उपयोग किया जाता है।

    • port - जो परिभाषित करता है कि कौन सा यूडीपी पोर्ट एजेंटों के साथ संचार करने के लिए प्रबंधक का उपयोग करता है। अनिवार्य यदि transports हर परिवहन के लिए एक पोर्ट नंबर को परिभाषित नहीं करता है।

    • engine_id - SNMP-FRAMEWORK-MIB में परिभाषित SnmpEngineID अनिवार्य

    • max_message_size - SNMP-FRAMEWORK-MIB में परिभाषित snmpEngineMaxMessageSize अनिवार्य

  • चर के लिए मान है।

विरासत और मध्यवर्ती चर address और domain अभी भी समर्थित हैं इसलिए पुराने कॉन्फ़िगरेशन काम करेंगे।

निम्न उदाहरण एक manager.conf फ़ाइल दिखाता है:

{transports,       [{transportDomainUdpIpv4, {{141,213,11,24}, 5000}},
                    {transportDomainUdpIpv6, {{0,0,0,0,0,0,0,1}, 5000}}]}.
{engine_id,        "mgrEngine"}.
{max_message_size, 484}.
    

engine_id का मान एक स्ट्रिंग है, जिसमें एक बहुत विशिष्ट संरचना होनी चाहिए। विवरण के लिए RFC 2271/2571 देखें।

7.2 उपयोगकर्ता

प्रत्येक प्रबंधक उपयोगकर्ता के लिए , प्रबंधक को कुछ जानकारी की आवश्यकता होती है। यह जानकारी या तो users.conf config फाइल में या रन-टाइम में register_user फ़ंक्शन को कॉल करके जोड़ी जाती है।

प्रत्येक पंक्ति प्रबंधक के प्रबंधक उपयोगकर्ता को परिभाषित करती है।

प्रत्येक प्रविष्टि आकार चार का एक हिस्सा है:

{UserId, UserMod, UserData, DefaultAgentConfig}.

  • UserId कोई भी शब्द है (उपयोगकर्ता की विशिष्ट पहचान के लिए प्रयुक्त)।

  • UserMod उपयोगकर्ता कॉलबैक मॉड्यूल (परमाणु) है।

  • UserMod कॉल करते समय UserMod कोई भी शब्द है (उपयोगकर्ता को दिया गया)।

  • DefaultAgentConfig डिफ़ॉल्ट एजेंट कॉन्फिग की एक सूची है। जब ये उपयोगकर्ता एजेंटों को पंजीकृत करता है, तो ये मान डिफ़ॉल्ट मान के रूप में उपयोग किए जाते हैं।

7.3 एजेंट

एजेंटों को संभालने के लिए आवश्यक जानकारी को agents.conf नामक फ़ाइल में संग्रहीत किया जाना चाहिए। Register_agent पर कॉल करके रन-टाइम में एजेंटों को जोड़ना भी संभव है।

प्रत्येक प्रविष्टि टपल है:

{UserId, TargetName, Comm, Domain, Addr, EngineID, Timeout, MaxMessageSize, Version, SecModel, SecName, SecLevel}.

  • UserId इस एजेंट (शब्द) के लिए जिम्मेदार प्रबंधक उपयोगकर्ता की पहचान है।

  • TargetName एक अद्वितीय गैर-रिक्त स्ट्रिंग है।

  • Comm समुदाय स्ट्रिंग (स्ट्रिंग) है।

  • Domain परिवहन डोमेन है, या तो transportDomainUdpIpv4 या transportDomainUdpIpv6

  • {IpAddr, IpPort} परिवहन डोमेन में एक पता है, या तो एक {IpAddr, IpPort} tuple या एक पारंपरिक SNMP पूर्णांक सूची जिसमें पोर्ट नंबर है। IpAddr या तो एक नियमित Erlang / OTP ip_address() या एक पारंपरिक SNMP पूर्णांक सूची जिसमें पोर्ट नंबर नहीं है, और IpPort एक पूर्णांक है।

  • EngineID एजेंट (स्ट्रिंग) का इंजन-आईडी है।

  • Timeout री-ट्रांसमिशन टाइमआउट ( infinity | पूर्णांक) है।

  • MaxMessageSize इस एजेंट (पूर्णांक) को जाने वाले संदेशों के लिए अधिकतम संदेश आकार है।

  • Version संस्करण है (v1 | v2 | v3)।

  • SecModel सुरक्षा मॉडल है (कोई भी। V1 | v2c | usm)।

  • SecName सुरक्षा नाम (स्ट्रिंग) है।

  • SecLevel सुरक्षा स्तर है (noAuthNoPriv | difNoPriv | schemPriv)।

Domain तत्व के बिना TDomain का उपयोग करके विरासत कॉन्फ़िगरेशन, साथ ही साथ सभी TDomain , Ip और Port तत्व अभी भी काम करते हैं।

7.4 यूएसएम के लिए सुरक्षा डेटा

यूएसएम के लिए सुरक्षा डेटा के बारे में जानकारी usm.conf नामक फ़ाइल में संग्रहीत की जानी चाहिए, जो कि तब होनी चाहिए जब प्रबंधक एजेंटों के साथ संवाद करते समय SNMPv3 का उपयोग करना चाहते हैं। Register_usm_user पर कॉल करके रन-टाइम में usm डेटा जोड़ना भी संभव है।

इसी तालिका SNMP-USER-BASED-SM-MIB में उपयोग करने योग्य है।

प्रत्येक प्रविष्टि एक शब्द है:

{EngineID, UserName, AuthP, AuthKey, PrivP, PrivKey}.
{EngineID, UserName, SecName, AuthP, AuthKey, PrivP, PrivKey}.

पहला मामला तब है जब हमारे पास पहचान-कार्य ( SecName = UserName ) है।

  • EngineID एक स्ट्रिंग है।

  • UserName एक स्ट्रिंग है।

  • SecName एक स्ट्रिंग है।

  • AuthP एक usmNoAuthProtocol , usmHMACMD5AuthProtocol या usmHMACSHAAuthProtocol

  • AuthKey एक सूची (पूर्णांक की) है। यह उपयोगकर्ता की गुप्त स्थानीयकृत प्रमाणीकरण कुंजी है। यह MIB में दिखाई नहीं देता है। इस कुंजी की लंबाई 16 होने की आवश्यकता है यदि usmHMACMD5AuthProtocol का उपयोग किया जाता है और 20 का अगर usmHMACSHAAuthProtocol का उपयोग किया जाता है।

  • PrivP एक usmNoPrivProtocol , usmDESPrivProtocol या usmAesCfb128Protocol

  • PrivKey एक सूची है (पूर्णांक की)। यह उपयोगकर्ता की गुप्त स्थानीयकृत एन्क्रिप्शन कुंजी है। यह MIB में दिखाई नहीं देता है। usmDESPrivProtocol या usmAesCfb128Protocol का उपयोग करने पर इस कुंजी की लंबाई 16 होनी चाहिए।