साइटें
साइट एक Arkvory इंस्टॉलेशन है: मुख्य इंस्टॉलेशन, किसी दूसरी जगह का मिरर, या ऐसा इंस्टॉलेशन जो दूसरे से संस्करण इम्पोर्ट करता है। साइटें पर एक इंस्टॉलेशन, नियंत्रक, अपनी हर प्रबंधित साइट दिखाता है: वह उत्तर देती है या नहीं, उसका संस्करण, HA प्रतियाँ और रीड गेटवे, मिरर और वे कितने पीछे हैं, और डाउनलोड कतार। यह पेज केवल ग्लोबल व्यवस्थापक देखते हैं।
क्लस्टर की स्थिति
पेज क्लस्टर की स्थिति से शुरू होता है: साइटों पर किस चीज़ पर ध्यान देना है, और कौन-सी साइट किसे डेटा देती है। नियंत्रक इसे साइटों को पिछली बार पढ़ने से बनाता है, अधिकतम हर 5 सेकंड में एक बार, और ख़ुद को "यह साइट" के रूप में शामिल करता है।
अलर्ट
हर अलर्ट साइट और समस्या बताता है। सबसे गंभीर पहले आते हैं: गंभीर, फिर चेतावनी, फिर सूचना। जब किसी चीज़ पर ध्यान देने की ज़रूरत नहीं होती, सूची यही बताती है।
| अलर्ट | गंभीरता | कब | क्या करें |
|---|---|---|---|
| पहुँच से बाहर | गंभीर | 2 मिनट तक कोई उत्तर नहीं। एक बार पढ़ना विफल होना अलर्ट नहीं है | साइट और नेटवर्क जाँचें |
| प्रमाणपत्र, रद्द, अस्वीकृत, अमान्य | गंभीर | तुरंत, उसी नाम की स्थिति के साथ | फिर से युग्मित करें, या दोनों इंस्टॉलेशन अपडेट करें |
| पुराना | चेतावनी | साइट उत्तर देती थी, पर तीन पठन अवधियों (90 सेकंड) और पठन के एक पूरे दौर के समय से अधिक समय से पढ़ी नहीं गई: नियंत्रक का पृष्ठभूमि में पढ़ना अटका है | नियंत्रक की API प्रक्रिया जाँचें |
| लेखन संभव नहीं | गंभीर | लेखन प्रक्रिया लेखन अस्वीकार करती है, जबकि वह ड्रेन नहीं हो रही | उसका डेटाबेस और डिस्क जाँचें |
| प्रतियाँ | गंभीर | HA साइट के डेटा की प्रतियाँ कम हैं; उनके लौटने तक लेखन रुका रहता है | ग़ायब नोड वापस लाएँ, देखें उच्च उपलब्धता क्लस्टर |
| एकल कॉपी | चेतावनी | प्रतियाँ कम हैं, पर एक ऑपरेटर ने किसी समय तक एक कॉपी स्वीकार की है | उस समय से पहले ग़ायब नोड वापस लाएँ |
| मिरर विफल | चेतावनी | किसी मिरर का अंतिम सिंक्रनाइज़ेशन विफल हुआ। पुनर्स्थापित स्रोत को फिर से पढ़ना नहीं गिना जाता | मिरर का त्रुटि कोड पढ़ें |
| मिरर पीछे | चेतावनी | मिरर अपने स्रोत से ARKVORY_FLEET_LAG_ALERT बदलाव (डिफ़ॉल्ट 1000) या अधिक पीछे है | स्रोत, नेटवर्क और मिरर जाँचें |
| अपडेट विफल | चेतावनी | साइट का अपडेटर विफलता बताता है | साइट की सेटिंग में अपडेट खोलें |
| अलग संस्करण | सूचना | साइट नियंत्रक से अलग संस्करण चलाती है | साइटों को एक ही संस्करण पर अपडेट करें |
अलर्ट केवल ताज़ा पठन से बनते हैं: जो साइट उत्तर नहीं देती, वह अपना अलर्ट देती है, अपनी पिछली रिपोर्ट के बारे में अलर्ट नहीं। पठन का एक दौर हर आठ साइटों पर 15 सेकंड तक लेता है, क्योंकि नियंत्रक एक साथ अधिकतम आठ साइटें पढ़ता है और हर एक के लिए 15 सेकंड तक प्रतीक्षा करता है; पुराना अलर्ट यह समय जोड़ता है, ताकि बहुत-सी अप्राप्य साइटें स्वस्थ साइटों को अटका हुआ न दिखाएँ। Prometheus उसी ARKVORY_FLEET_LAG_ALERT पर अलर्ट देता है, देखें मॉनिटरिंग।
कड़ियाँ
संबंध दिखाता है कि कौन-सी साइट किसे डेटा देती है। हर मिरर और इम्पोर्ट स्रोत साइट से उस साइट तक एक तीर है जिस पर मिरर है।
- जिस स्रोत के पते पर कोई प्रबंधित साइट उत्तर नहीं देती, वह अपने पते से डैश वाली किनारी के साथ दिखाया जाता है। अगर वह स्रोत ख़ुद नियंत्रक है, तो
ARKVORY_SITE_URLसेट करें, देखें सेटिंग्स। - विफल कड़ी लाल डैश वाली रेखा है।
- कड़ी पर संख्या बताती है कि मिरर अपने स्रोत से कितने बदलाव पीछे है।
- जब तक कोई साइट उत्तर नहीं देती, उसकी कड़ियाँ और उनका पिछड़ापन वैसे ही रहते हैं जैसे उसने पिछली बार बताए थे, अंतिम ज्ञात के रूप में चिह्नित: मानचित्र पर डैश वाली रेखा से, और तालिका में संकेत अंतिम ज्ञात स्थिति: साइट जवाब नहीं दे रही के साथ।
मानचित्र के नीचे एक तालिका वही जानकारी दिखाती है: स्रोत, साइट, रिपॉजिटरी, स्रोत रिपॉजिटरी और पीछे।
नियंत्रक के ग्लोबल व्यवस्थापक वही अलर्ट और कड़ियाँ GET /api/v1/fleet/overview से, या SDK में client.fleet.overview() से पाते हैं। Prometheus के लिए नियंत्रक अपनी साइटों की स्थिति और अलर्ट की संख्या निर्यात करता है: देखें मॉनिटरिंग।
यह कैसे काम करता है
- नियंत्रक साइटों की सूची रखता है। वह हर साइट को हर 30 सेकंड HTTPS पर पढ़ता है और अंतिम उत्तर रखता है, इसलिए जो साइट उत्तर देना बंद कर दे, वह फिर भी अपनी अंतिम ज्ञात स्थिति दिखाती है।
- पेयर होने पर साइट नियंत्रक को अपनी एक कुंजी देती है, फ़्लीट कुंजी। यह केवल वहीं तक पहुँचती है जिसकी नियंत्रक को ज़रूरत है: साइट की स्थिति, उसके कैटलॉग के विवरण, और सूचीबद्ध बदलाव: डाउनलोड कतार, अपडेट अनुरोध, और साइट के एजेंट के लिए मिरर व HA बदलाव। यह फ़ाइल बाइट डाउनलोड नहीं कर सकती, रिपॉजिटरी में लिख नहीं सकती, और खाते व कुंजियाँ पढ़ या बदल नहीं सकती।
- नियंत्रक फ़्लीट कुंजियों को अपनी डेटा डायरेक्टरी की कुंजी (
fleet.key) से सील करके रखता है। केवल डेटाबेस और उसके बैकअप से वे पता नहीं चलतीं। पुनर्स्थापना के बाद साइटों को फिर से युग्मित करें। - हर साइट दिखाती है कि कौन-से नियंत्रक उसे प्रबंधित करते हैं, और उन्हें कभी भी रद्द कर सकती है।
साइट युग्मित करें
- साइट पर: साइटें खोलें और यह साइट में युग्मन कोड बनाएँ चुनें। साइट दस मिनट के लिए मान्य कोड दिखाती है और, अंतर्निहित HTTPS के साथ, अपने प्रमाणपत्र का फ़िंगरप्रिंट।
- नियंत्रक पर: साइटें खोलें, साइट युग्मित करें में साइट का पता डालें और जाँचें चुनें। नियंत्रक जुड़ता है और मिले प्रमाणपत्र का फ़िंगरप्रिंट दिखाता है।
- दोनों फ़िंगरप्रिंट मिलाएँ। वे एक जैसे होने चाहिए। अलग हों तो पता ग़लत है या दोनों इंस्टॉलेशन के बीच कुछ है: युग्मित न करें।
- कोड डालें और युग्मित करें चुनें। साइट अपनी स्थिति के साथ सूची में दिखती है।
कोड एक बार काम करता है। उपयोग किया हुआ या समाप्त कोड अस्वीकार होता है: नया बनाएँ।
पता साइट के API का HTTPS पता है, जैसे https://branch.example:8443। सादा HTTP केवल उसी कंप्यूटर पर (127.0.0.1) स्वीकार होता है। यदि TLS साइट के आगे किसी प्रॉक्सी पर समाप्त होता है, तो साइट प्रॉक्सी का प्रमाणपत्र नहीं दिखा सकती: ब्राउज़र द्वारा साइट के पते के लिए दिखाए SHA-256 फ़िंगरप्रिंट से मिलाएँ।
इसके बाद नियंत्रक ठीक उसी प्रमाणपत्र पर भरोसा करता है। साइट को नया प्रमाणपत्र मिलने पर वह प्रमाणपत्र बदला दिखाती है: साइट हटाएँ और फिर से युग्मित करें।
स्थितियाँ
| स्थिति | अर्थ | क्या करें |
|---|---|---|
| चल रही है | साइट ने पिछली बार पढ़ने पर उत्तर दिया | कुछ नहीं |
| अभी पढ़ी नहीं गई | साइट अभी पढ़ी नहीं गई | अगली बार पढ़ने की प्रतीक्षा करें या अभी पढ़ें चुनें |
| पहुँच से बाहर | कोई उत्तर नहीं: साइट रुकी है या नेटवर्क बंद है | साइट और नेटवर्क जाँचें। अंतिम ज्ञात स्थिति दिखती रहती है |
| प्रमाणपत्र बदला | साइट पुष्टि किए गए प्रमाणपत्र से अलग प्रमाणपत्र दिखाती है | प्रमाणपत्र नवीनीकृत हुआ हो तो साइट हटाकर फिर से युग्मित करें |
| पहुँच रद्द | साइट के व्यवस्थापक ने इस नियंत्रक को रद्द किया | नए कोड से फिर से युग्मित करें |
| अप्रत्याशित उत्तर | साइट ने ऐसा उत्तर दिया जिसे यह संस्करण नहीं समझता | दोनों इंस्टॉलेशन एक ही संस्करण पर अपडेट करें |
| अस्वीकृत | साइट ने अनुरोध अस्वीकार किया | नए कोड से फिर से युग्मित करें |
सूची क्या दिखाती है
- संस्करण: साइट का संस्करण और उसकी भूमिका, लेखन या रीड गेटवे।
- HA और गेटवे: HA क्लस्टर में पूर्ण प्रतियाँ और लेखन के लिए ज़रूरी प्रतियाँ; अपना स्लॉट रखने वाले रीड गेटवे।
- मिरर: साइट के मिरर और इम्पोर्ट; सबसे पीछे वाला अपने स्रोत से कितने बदलाव पीछे है, या कितने रुके हैं।
- डाउनलोड कतार: चल रहे डाउनलोड और कतार में प्रतीक्षारत डाउनलोड।
- अंतिम उत्तर: साइट ने अंतिम बार कब उत्तर दिया।
सभी अभी पढ़ें अगले दौर की प्रतीक्षा किए बिना सभी साइटें अभी पढ़ता है। हटाएँ यहाँ साइट को भूल जाता है; साइट पर भी नियंत्रक को रद्द करें, क्योंकि तब तक उसकी कुंजी वहाँ मान्य रहती है।
साइट की सामग्री
किसी साइट की पंक्ति में सामग्री सूची के नीचे उसके रिपॉजिटरी, आर्टिफ़ैक्ट और फ़ाइलें खोलता है। एक रिपॉजिटरी चुनें; खोजें नाम या लेबल से आर्टिफ़ैक्ट खोजता है और वे फ़ाइलें दिखाता है जिनका पथ आपके लिखे से शुरू होता है। और दिखाएँ अगला पेज पढ़ता है।
नियंत्रक इन्हें अपनी फ़्लीट कुंजी से साइट पर पढ़ता है और उत्तर वैसा ही दिखाता है जैसा साइट ने दिया। केवल विवरण आते हैं: नाम, आकार, लेबल, चरण, पथ और संशोधन। फ़ाइल डाउनलोड करने के लिए साइट का ही उपयोग करें।
साइट की सेटिंग
किसी साइट की पंक्ति में सेटिंग सूची के नीचे उसकी सेटिंग खोलता है; इस साइट की सेटिंग इस साइट के लिए वही कार्ड खोलता है। कार्ड के तीन भाग हैं:
- डाउनलोड कतार: एक साथ कितने डाउनलोड चलते हैं, लोगों के लिए आरक्षित जगहें, रणनीति, श्रेणियों के भार और ट्रैफ़िक नियंत्रण के अन्य कतार मान। खाली फ़ील्ड साइट के एनवायरनमेंट का मान रखता है, जो धूसर दिखता है। कतार सेटिंग सहेजें मान तुरंत, बिना रीस्टार्ट लागू करता है: नए निर्णय इनका पालन करते हैं, सक्रिय डाउनलोड अपनी जगह रखते हैं। डिफ़ॉल्ट पर लौटें एनवायरनमेंट पर लौटाता है।
- अपडेट: स्थापित और नवीनतम संस्करण, स्वचालित स्थापना और रखरखाव का घंटा, अभी जाँचें और अपडेट इंस्टॉल करें। साइट का अपडेटर एक मिनट के भीतर अनुरोध लेता है; तब तक कार्ड उसे स्वीकृत दिखाता है।
- मिरर और क्लस्टर: साइट के मिरर और इम्पोर्ट, कुंजी बदलें और अलग करें के साथ; स्रोत कुंजी के साथ मिरर या आयात जोड़ें; और HA क्लस्टर पर पूरी प्रति वाले नोड पर स्विच करें (नोड का नाम दो बार लिखा जाता है) तथा एक प्रति का निर्णय। साइट का एजेंट हर अनुरोध एक मिनट के भीतर
arkvory configureऔरcluster-*की जाँच और रोलबैक के साथ लागू करता है; एजेंट को अनुरोध दिखाता है कि हर अनुरोध कैसे समाप्त हुआ। स्रोत कुंजी एजेंट तक एक बार, अपनी अलग फ़ाइल में जाती है और फिर कभी नहीं दिखती। एजेंट साइट का अपडेटर है: इसेupdates-connectसे जोड़ें।
हर बदलाव उस संशोधन को साथ रखता है जिससे वह बना। अगर इस बीच किसी ने सेटिंग बदल दीं, तो साइट बदलाव अस्वीकार करती है और कार्ड मौजूदा मान दिखाता है: जाँचें और फिर से सहेजें। साइट दर्ज करती है कि उसकी कतार किसने बदली: नियंत्रक की कुंजी और उसके प्रशासक का नाम।
नियंत्रक से मिरर या इम्पोर्ट केवल नए रिपॉजिटरी के रूप में जोड़ा जाता है, और स्रोत के प्राधिकरण का प्रमाणपत्र साइट पर ही सेट होता है (arkvory configure --mirror-ca-file): साइट किस पर भरोसा करती है, यह कभी दूर से नहीं बदलता। अनुरोध सूची कोड के रूप में दिखाती है कि हर बदलाव कैसे समाप्त हुआ; एजेंट के अपने शब्द साइट पर उसके लॉग में रहते हैं। अगर कोई बदलाव बीच में रुक गया, तो एजेंट तब तक कोई दूसरा नहीं लेता जब तक साइट का प्रशासक उसकी जाँच करके वहाँ arkvory changes-reset --root <रूट> न चलाए।
इस साइट को कौन प्रबंधित करता है
यह साइट में हर साइट अपने नियंत्रकों की सूची देती है: नाम, किसने युग्मित किया, कब, और उनका अंतिम अनुरोध। रद्द करें नियंत्रक की कुंजी तुरंत अस्वीकार करता है।
सेटिंग्स
| वेरिएबल | डिफ़ॉल्ट | अर्थ |
|---|---|---|
ARKVORY_SITE_NAME | होस्ट का नाम | अन्य साइटों पर इस इंस्टॉलेशन का नाम |
ARKVORY_FLEET_KEY_FILE | डेटा डायरेक्टरी में fleet.key | प्रबंधित साइटों की कुंजियाँ सील करने वाली कुंजी; लेखन प्रक्रिया के पहले आरंभ पर बनती है |
ARKVORY_SITE_URL | सेट नहीं | https://host[:port] पता जिससे अन्य साइटें इस इंस्टॉलेशन तक पहुँचती हैं। इसके साथ, जिन मिररों का स्रोत यह इंस्टॉलेशन है, वे संबंध पर इससे जुड़ते हैं। अमान्य मान आरंभ रोक देता है |
ARKVORY_FLEET_LAG_ALERT | 1000 | किसी प्रबंधित साइट का मिरर अपने स्रोत से कितने बदलाव पीछे होने पर अलर्ट देता है; पूर्ण संख्या, 1 या अधिक |
सीमाएँ
- फ़ेंसिंग जाँच और क्लस्टर नोड जोड़ना या हटाना नोड्स पर स्थानीय कमांड ही रहते हैं। रीड गेटवे अपने एनवायरनमेंट की डाउनलोड कतार रखते हैं।
- एक नियंत्रक 256 साइटों तक प्रबंधित करता है और एक साथ अधिकतम आठ पढ़ता है।
- नियंत्रक के पास हर प्रबंधित साइट की कुंजी होती है: उसके ग्लोबल व्यवस्थापकों और डेटा डायरेक्टरी को साइटों जितनी ही सावधानी से सुरक्षित रखें।