दस्तावेज़
TKLBAM S3 एक्सेस समस्या निवारण
आम तौर पर TKLBAM "just work" लेकिन कभी-कभी कुछ उपयोगकर्ताओं के पास अमेज़न S3 से कनेक्ट होने का मुद्दा होता है।
आम मुद्दे
आम कारण फायरवॉल अवरुद्ध यातायात या एक वेब प्रॉक्सी (कॉर्पोरेट नेटवर्क पर आम तौर पर) अवरुद्ध या यातायात को खतरे में डाल रहे हैं। परीक्षण के प्रयोजनों के लिए, कृपया सुनिश्चित करें कि आप इन (अधिमानतः) को अक्षम करें या कम से कम अपने TKL सर्वर के लिए अपवाद बनायें (इसलिए इंटरनेट तक पहुंच स्पष्ट हो सकती है)।
लॉग की जाँच
अगले कदम त्रुटि लॉग की जांच करना है। मैं सुझाव देता हूं कि आप इसे "error" शब्द के लिए खोजते हैं।
grep error /var/log/tklbam-backup
यदि आप कनेक्शन त्रुटियाँ रखते हैं तो यह इस तरह कुछ वापस कर देना चाहिए:
Upload 's3://s3-eu-west-1.amazonaws.com/tklbam-eu-west-1-c992423735f1f4ee9616/24fh4htqs3t3tfju/duplicity-full.20160825T115809Z.vol1.difftar.gpg' failed (attempt #1, reason: error: [Errno 104] Connection reset by peer) Upload 's3://s3-eu-west-1.amazonaws.com/tklbam-eu-west-1-c992423735f1f4ee9616/24fh4htqs3t3tfju/duplicity-full.20160825T115809Z.vol1.difftar.gpg' failed (attempt #2, reason: error: [Errno 104] Connection reset by peer) Upload 's3://s3-eu-west-1.amazonaws.com/tklbam-eu-west-1-c992423735f1f4ee9616/24fh4htqs3t3tfju/duplicity-full.20160825T115809Z.vol1.difftar.gpg' failed (attempt #3, reason: error: [Errno 32] Broken pipe) Upload 's3://s3-eu-west-1.amazonaws.com/tklbam-eu-west-1-c992423735f1f4ee9616/24fh4htqs3t3tfju/duplicity-full.20160825T115809Z.vol1.difftar.gpg' failed (attempt #4, reason: error: [Errno 104] Connection reset by peer) Upload 's3://s3-eu-west-1.amazonaws.com/tklbam-eu-west-1-c992423735f1f4ee9616/24fh4htqs3t3tfju/duplicity-full.20160825T115809Z.vol1.difftar.gpg' failed (attempt #5, reason: error: [Errno 32] Broken pipe) Backend error detail: Traceback (most recent call last):
इस उदाहरण में TurnKey सर्वर स्पष्ट रूप से पश्चिमी यूरोप में है और यह s3-eu-west-1.amazonaws.com से जुड़ने की कोशिश कर रहा है। "कनेक्शन रीसेट" और "ब्रोकन पाइप" के द्वारा त्रुटियाँ सामना की जा रही हैं। ये आमतौर पर नेटवर्क कनेक्टिविटी और/या प्राधिकरण के साथ एक मुद्दा होने पर सामना करने वाली त्रुटियां होती हैं।
नेटवर्क कनेक्टिविटी के लिए जाँच: पिंग
तो चलो चेक कनेक्टिविटी (S3 पते के लिए प्रतिस्थापन "s3-eu-west-1.amazonaws.com" कि आपका TKLBAM कनेक्ट करने की कोशिश कर रहा है) अपने TKL सर्वर से AWS S3:
ping -c 4 s3-eu-west-1.amazonaws.com
यदि यह सब कुछ ठीक है तो यह इस तरह कुछ वापस कर सकता है:
PING s3-eu-west-1.amazonaws.com (54.231.133.100) 56(84) bytes of data. 64 bytes from s3-eu-west-1.amazonaws.com (54.231.133.100): icmp_seq=1 ttl=48 time=66.8 ms 64 bytes from s3-eu-west-1.amazonaws.com (54.231.133.100): icmp_seq=2 ttl=48 time=104 ms 64 bytes from s3-eu-west-1.amazonaws.com (54.231.133.100): icmp_seq=3 ttl=48 time=136 ms 64 bytes from s3-eu-west-1.amazonaws.com (54.231.133.100): icmp_seq=4 ttl=48 time=122 ms
जाहिर है जिस समय और सर्वर से आप जुड़ रहे हैं, का आईपी अलग होगा, लेकिन यह दर्शाता है कि TKL सर्वर s3-eu-west-1.amazonaws.com से ठीक हो सकता है।
यदि आप कनेक्ट नहीं कर सकते हैं तो आपको नेटवर्क विन्यास (फ़ायरवॉल? इंटरनेट कनेक्शन) और/या DNS रिज़ॉल्यूशन के साथ एक मुद्दा होना चाहिए। आगे बढ़ने से पहले कृपया अपने नेटवर्क के भीतर उस मुद्दे को हल करने की कोशिश करें।
S3 नेटवर्क कनेक्टिविटी की जांच: वेब ब्राउज़र
इसके बाद, आइए http और https कनेक्शन का परीक्षण करते हैं। इन अगले परीक्षणों का मानना है कि आपके पास एक पीसी (एक वेब ब्राउज़र के साथ) है, जो उसी LAN पर आपके सर्वर के रूप में है और इसका उपयोग URL खोजने और प्रारंभिक परीक्षण करने के लिए किया जाता है। यदि आपके पास उसी LAN पर PC नहीं है, तो आपके सर्वर के रूप में (जैसे कहीं और कहीं और एक दूरस्थ सर्वर होस्ट किया गया है) तो आपको अगले चरण के लिए अभी भी एक उपयुक्त S3 URL खोजने की आवश्यकता होगी। एक बार जब हमारे पास एक S3 URL है जिसे हम काम करते हैं, तो हम TKL सर्वर से जांच कर सकते हैं। लेकिन इस परीक्षण के परिणाम TKLBAM के प्रयोजनों के लिए अप्रासंगिक होंगे। मैं पहले से ही परीक्षण करने के लिए एक URL है, लेकिन अगर आप नहीं करते हैं, तो सबसे अच्छा तरीका खोजने के लिए एक गूगल के माध्यम से है।
साइट:s3-eu-west-1.amazonaws.com
फिर एक ऐसी साइट चुनें जिसमें URL प्रासंगिक है। संलग्न स्क्रीनशॉट देखें (FWIW मैं सिर्फ अपने स्क्रीनशॉट में अप्रासंगिक जानकारी को कम करने के लिए "इंगोनिटो मोड" का उपयोग कर रहा हूं - ऐसा करने की कोई आवश्यकता नहीं है)।

अपने वेब ब्राउज़र में एक प्रासंगिक लिंक पर क्लिक करें। मैं अपने उदाहरण के लिए "हॉटस्पॉट शील्ड" का उपयोग कर रहा हूं। सुनिश्चित करें कि एड्रेस बार में URL अभी भी एक S3 है। कुछ साइटें किसी अन्य URL पर रीडायरेक्ट हो सकती हैं। यदि ऐसा होता है तो गूगल पर वापस जाएँ और एक अलग प्रयास करें। यहाँ यह कैसा दिखना चाहिए इसका एक उदाहरण है:

इसलिए मैंने HTTPS का उपयोग करके s3-eu-west-1.amazonaws.com तक पहुंच की पुष्टि की है। अंतिम जांच के लिए चलो सादे HTTP का परीक्षण भी करते हैं। एड्रेस बार में, 'https://...'' से 's' को हटा दें ताकि यह 'http://...'' हो। कुछ साइटें HTTPS पर वापस भेज सकती हैं। यदि ऐसा होता है तो यह अभी भी साबित होता है कि यह सादे HTTP के माध्यम से जुड़ सकता है (क्योंकि सर्वर आपको HTTPS पर वापस भेज रहा है)।
यदि आपके पास यहां त्रुटियाँ हैं, और डबल चेक किए गए हैं, तो कुछ अलग S3 URL (google के माध्यम से पाया गया) तब स्पष्ट रूप से कुछ गलत है। कृपया डबल चेक फायरवॉल और नेटवर्क कॉन्फ़िगरेशन को डबल करें अन्यथा, अब अपने TKL सर्वर के भीतर से चेक करें।
S3 नेटवर्क कनेक्टिविटी की जांच: कमांडलाइन (curl)
एक मान्य (और काम करने वाले) S3 URL के साथ सशस्त्र आप यह जाँच सकते हैं कि आपका सर्वर S3 से ठीक से जुड़ सकता है। ऐसा करने के लिए हम कर्ल का उपयोग करेंगे।
यहाँ मैं क्या सलाह देता हूं। यह पृष्ठ डाउनलोड करने के लिए कर्ल का उपयोग करता है लेकिन डाउनलोड किए गए HTML को अनदेखा करता है (हम केवल यह देखने की जरूरत है कि क्या कोई त्रुटि है या नहीं)। यह कमांड है (अभी आप पहले से ही ऊपर पाए गए काम URL का उपयोग करते हैं)।
curl http://s3-eu-west-1.amazonaws.com/tradwrds/index.html > /dev/nullयदि यह काम कर रहा है तो इसे इस तरह से कुछ आउटपुट प्रदान करना चाहिए:
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 12750 100 12750 0 0 13537 0 --:--:-- --:--:-- --:--:-- 13549
यह प्रदर्शित करने के लिए कि यह क्या है, यह क्या है, यह एक त्रुटि का सामना करता है, तो मैं URL (so मैं जानता हूँ कि यह काम नहीं करेगा); यह वही है जो ऐसा दिखता है:
curl http://s3-euz-west-1.amazonaws.com/tradwrds/index.html > /dev/null
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0curl: (6) Could not resolve host: s3-euz-west-1.amazonaws.com
"curl: (6) मेजबान को हल नहीं कर सका: s3-euz-west-1.amazonaws.com"।
फिर अगर आपके पास यहां सफलता नहीं है, तो आपके TurnKey सर्वर के नेटवर्क एक्सेस के साथ कुछ गलत है। यह मानते हुए कि वह काम करता है, आइए AWS एक्सेस की गहन जांच के लिए अधिक हैं।
S3 Access to the commandline: awscli
हम फिर से अपने TKL सर्वर पर काम कर रहे हैं। पहले awscli निर्भरता स्थापित करें:apt-get update && apt-get install python-pipएक बार जब वह पूरा हो गया (इससे यह सफलतापूर्वक पूरा हो गया) तब वह स्वयं ही awscli स्थापित कर देता है:
pip install awscli
W को एक उपयोगकर्ता बनाने की भी आवश्यकता होगी जो 'turnkeyhub' सुरक्षा प्रोफाइल (डबल चेक करने के लिए कि हम TKLBAM के रूप में बाल्टी तक पहुंच सकते हैं) का उपयोग कर सकते हैं।
AWS कंसोल IAMs उपयोगकर्ता प्रबंधन पृष्ठ को ब्राउज़ करें: https://console.aws.amazon.com/iam/home#users
एक नया उपयोगकर्ता बनाएं (मैंने मेरा 'tklbam-test' कहा था) और बनाने के लिए क्लिक करें। अगली स्क्रीन पर क्रेडेंशियल्स की जानकारी प्रदर्शित करने के लिए "शो यूजर सिक्योरिटी क्रेडेंशियल" लिंक पर क्लिक करें (एक ड्रॉप डाउन में)। इसे इस तरह कुछ देखना चाहिए:
tklbam-test
Access Key ID: AKIAJ3B6NSG22LO47BUA
Secret Access Key: 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
सुनिश्चित करें कि आप इस जानकारी को कहीं सुरक्षित (या csv फ़ाइल डाउनलोड) को कॉपी/पेस्ट करें क्योंकि आप इस स्क्रीन को छोड़ दें, आप इस जानकारी को फिर से एक्सेस नहीं कर सकते (आपकी चाबियाँ फिर से बनाने की आवश्यकता है) अन्यथा)। जाहिर है इस रहस्य को बनाए रखें और इसे कहीं भी सार्वजनिक नहीं प्रकाशित करें!
अब आईएएम उपयोगकर्ता स्क्रीन पर वापस लौटें, नए उपयोगकर्ता पर क्लिक करें। "Permissions" टैब का चयन करें और "Attach Policy" बटन पर क्लिक करें। आपको वहां सूचीबद्ध "turnkeyhub" देखना चाहिए। यदि नहीं, तो इसे फ़िल्टर बॉक्स में शीर्ष पर रखें। एक बार जब आप इसे पा चुके हैं, तो बॉक्स के अंदर उस के दाईं ओर क्लिक करें (बॉक्स में एक टिक डालता है) और "आत्मा पॉलिसी" पर क्लिक करें।
अब उन क्रेडेंशियलों का उपयोग करने का समय है जो हमने पहले सेव किया था और awscli को कॉन्फ़िगर किया है। विन्यास करने का सबसे आसान तरीका यह है कि बस इस तरह awscli लॉन्च करना है:
aws configureफिर प्रासंगिक जानकारी को कंसोल विंडो में कॉपी / पेस्ट करें। उदाहरण के लिए:
AWS Access Key ID [None]: AKIAJ3B6NSG22LO47BUA AWS Secret Access Key [None]: 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 Default region name [none]: eu-west-1 Default output format [none]:हमारे उद्देश्यों के लिए यह कोई फर्क नहीं पड़ता कि हम किस क्षेत्र को डिफ़ॉल्ट रूप में सेट करते हैं, हालांकि यह उस क्षेत्र का उपयोग करने के लिए समझ में आता है जहां TKLBAM आपके बैकअप (इस मामले में यू-वेस्ट-1) को बचाने की कोशिश कर रहा है। यदि आप वैध क्षेत्रों के लिए डबल चेक करना चाहते हैं, तो आप संभावित क्षेत्रों और उनके प्रासंगिक कोड पा सकते हैं यहाँ.
अब जांचें कि आप अपनी S3 बाल्टी को सूचीबद्ध कर सकते हैं और यह सब कुछ काम कर रहा है जैसा कि यह होना चाहिए।
aws s3 lsइस तरह कुछ वापस आना चाहिए:
2016-08-30 15:53:35 tklbam-eu-west-1-c992423735f1f4ee9616अब देखें कि क्या आप बाल्टी के अंदर देख सकते हैं:
aws s3 ls tklbam-eu-west-1-c992423735f1f4ee9616यदि यह सब कुछ ठीक है तो यह कुछ ऐसा ही है:
PRE 24fh4htqs3t3tfj/आइए फिर से ड्रिल करें ताकि यह देखने के लिए कि सबडायरेक्टरी में क्या है:
aws s3 ls tklbam-eu-west-1-c992423735f1f4ee9616/24fh4htqs3t3tfj/मेरा यह दिखता है:
2016-08-30 15:53:50 247045 duplicity-full-signatures.20160830T055346Z.sigtar.gpg 2016-08-30 15:53:51 218 duplicity-full.20160830T055346Z.manifest.gpg 2016-08-30 15:53:49 10168660 duplicity-full.20160830T055346Z.vol1.difftar.gpgयदि आप अपने सभी TKLBAM वॉल्यूम फ़ाइलों (जैसे कि मेरा डिस्प्ले) को देख सकते हैं तो सब ठीक है। यदि आप awscli का उपयोग करते समय कोई अनुमति समस्या हो तो यह सुझाव देता है कि AWS में निर्धारित अनुमतियों के साथ कुछ गलत है। सबसे अधिक संभावना यह "turnkeyhub" सुरक्षा प्रोफ़ाइल है भीतर IAM "Roles" क्षेत्र (AWS) कंसोल