अपने इन्फ़्रास्ट्रक्चर का डाइग्नोस्टिक्स करना और उसकी पुष्टि करना

गाइड के विषय:

अपने इन्फ़्रास्ट्रक्चर की गड़बड़ी का पता लगाना

इस पेज पर, एग्रीगेशन सेवा के इन्फ़्रास्ट्रक्चर की समस्या हल करने और उसकी पुष्टि करने का तरीका बताया गया है. समस्याओं की पहचान करने और उन्हें हल करने के लिए, यह तरीका अपनाएं.

Terraform से जुड़ी समस्या हल करना

Terraform, HashiCorp का बनाया गया इंफ़्रास्ट्रक्चर के तौर पर कोड (IaC) प्लैटफ़ॉर्म है. यह आपके चुने गए पब्लिक क्लाउड पर एग्रीगेशन सेवा को डिप्लॉय करने के लिए मुख्य ड्राइवर है. अगर आपने terraform इंस्टॉल नहीं किया है, तो स्थानीय तौर पर cli को पाने का तरीका जानने के लिए, HashiCorp का दस्तावेज़ देखें.

अगर आपको terraform के वर्शन स्विच करने की ज़रूरत है, तो tfenv इंस्टॉल करें.

अगर आपको एग्रीगेशन सेवा से जुड़ी समस्या का समाधान नहीं दिखता है, तो GitHub पर समस्या की शिकायत दर्ज करके या तकनीकी सहायता फ़ॉर्म सबमिट करके हमें इसकी सूचना दें.

अगर आपको terraform को मैन्युअल तरीके से स्विच करना है, तो:

rm -rf $(which terraform)
wget https://releases.hashicorp.com/terraform/1.2.3/terraform_1.2.3_linux_amd64.zip 
unzip terraform_1.2.3_linux_amd64.zip
mv terraform /usr/local/bin/terraform
terraform --version

अगर Terraform की गड़बड़ी साफ़ तौर पर नहीं दिख रही है, तो TRACE लेवल पर Terraform लॉगिंग को चालू करके आउटपुट देखा जा सकता है.

Google Cloud

Google Cloud के लिए Terraform प्रोवाइडर को HashiCorp और Google ने मिलकर बनाया है. अगर आपको और सवाल पूछने हैं या समस्या हल करने के बारे में सलाह चाहिए, तो ज़्यादा जानकारी के लिए Cloud के Terraform सहायता टीम से संपर्क करें या Hashicorp Discuss पोर्टल के Google सेक्शन पर जाएं.

Amazon वेब सेवाएं

डीबग करने से जुड़ा दस्तावेज़, AWS की साइट पर उपलब्ध है. हमारी सलाह है कि आप HashiCorp Discuss पोर्टल के AWS सेक्शन को भी देखें.

Terraform के बारे में और सवालों के लिए, HashiCorp कम्यूनिटी पोर्टल पर जाएं. Terraform से जुड़ी सामान्य समस्याओं को हल करने के लिए, डीबग करने से जुड़ा दस्तावेज़ पढ़ें.

इन डायरेक्ट्री में बदलाव करते समय बहुत सावधानी बरतें, क्योंकि इन्हें हटाने पर terraform, स्टेटस को पहचान नहीं पाएगा. यह सभी संसाधनों को फिर से उपलब्ध कराने की कोशिश करेगा. अगर आपके पास एक ही नाम का कोई संसाधन है, तो गड़बड़ी का मैसेज दिखेगा. अगर समस्या बनी रहती है, तो तकनीकी सहायता फ़ॉर्म भरकर हमसे संपर्क करें.

इन डायरेक्ट्री में बदलाव करते समय बहुत सावधानी बरतें, क्योंकि इन्हें हटाने पर terraform, स्टेटस को पहचान नहीं पाएगा. यह सभी संसाधनों को फिर से उपलब्ध कराने की कोशिश करेगा. अगर आपके पास एक ही नाम का कोई संसाधन है, तो गड़बड़ी का मैसेज दिखेगा. अगर समस्या बनी रहती है, तो तकनीकी सहायता फ़ॉर्म भरकर हमसे संपर्क करें

अपने Cloud सेटअप की पुष्टि करना

पुष्टि करें कि आपने जिस सार्वजनिक क्लाउड को चुना है उसमें एग्रीगेशन सेवा का इन्फ़्रास्ट्रक्चर सही तरीके से डिप्लॉय किया गया है या नहीं. इसके लिए, हम सैंपल डीबग रिपोर्ट का इस्तेमाल करेंगे और डीबग मोड में एक जॉब चलाएंगे. अगर एग्रीगेशन सेवा, एपीआई अनुरोध को पाने और उसका जवाब देने में कामयाब होती है, तो इसका मतलब है कि वह चालू है. अगर आपने पहले से कोई एग्रीगेशन सेवा सेट अप नहीं की है, तो हमारा सुझाव है कि आप एग्रीगेशन सेवा के लिए एपीआई कॉल सेट अप करने के लिए, Postman या cURL का इस्तेमाल करें. ध्यान दें कि डेटा इकट्ठा करने के सामान्य ऑपरेशन के दौरान, डीबग मोड को बंद कर दिया जाना चाहिए.

यहां दिए गए चरणों के अलावा, एग्रीगेशन सेवा के इन्फ़्रास्ट्रक्चर की पुष्टि करने के लिए, अपने सार्वजनिक क्लाउड में मौजूद उन सभी क्लाउड कॉम्पोनेंट की जांच करें जिन्हें प्रोवाइड किया जाता है.

चरण

  1. डीबग रिपोर्ट के सैंपल और डोमेन की आउटपुट फ़ाइलें जनरेट करने के लिए, कोडलैब में दिए गए चरणों का पालन करें:

  2. हाइलाइट किए गए प्लेसहोल्डर की जगह वैल्यू डालकर, इस मुख्य हिस्से के साथ createJob अनुरोध चलाएं:

    {
      "job_request_id": "<job_request_id>",
      "input_data_blob_prefix": "<report_folder>/<report_name>.avro",
      "input_data_bucket_name": "<input_bucket_name>",
      "output_data_blob_prefix": "<output_folder>/<summary_report_prefix>",
      "output_data_bucket_name": "<output_bucket_name>",
      "job_parameters": {
        "output_domain_blob_prefix": "<output_domain_folder>/<output_domain>.avro",
        "output_domain_bucket_name": "<output_domain_bucket_name>",
        "attribution_report_to": "<reporting_origin_domain>",
        "report_error_threshold_percentage": "10", // example value
        "debug_run": "true" // optional, but should be false by default
      }
    }
    
  3. जवाब देखने के लिए, getJob अनुरोध करें. अगर आपको यह जवाब मिल रहा है, तो इसका मतलब है कि आपकी एग्रीगेशन सेवा सही तरीके से डिप्लॉय की गई है.

    {
        "job_status": "FINISHED",
        "request_received_at": <utc_timestamp>,
        "request_updated_at": <utc_timestamp>,
        "job_request_id": "<job_request_id>",
        "input_data_blob_prefix": "<report_folder>/<input_report_prefix>.avro",
        "input_data_bucket_name": "<input_bucket_name>",
        "output_data_blob_prefix": "<output_folder>/<summary_report_prefix>",
        "output_data_bucket_name": "<output_bucket_name>",
        "postback_url": "",
        "result_info": {
            "return_code": "<return_code_and_message>",
            "return_message": "Aggregation job successfully processed",
            "error_summary": {
                "error_counts": [],
                "error_messages": []
            },
            "finished_at": <utc_timestamp>
        },
        "job_parameters": {
            "debug_run": "true", // optional, but should be false by default
            "output_domain_bucket_name": "<output_domain_bucket_name>",
            "output_domain_blob_prefix": "<output_domain_folder>/<output_domain>.avro",
            "attribution_report_to": "<reporting_origin_domain>"
        },
        "request_processing_started_at": <utc_timestamp>
    }
    

अगर आपको job_status: FINISHED के साथ कोई जवाब नहीं मिलता है, तो चुने गए सार्वजनिक क्लाउड के Compute Engine या EC2 संसाधन पर जाकर ज़्यादा जानकारी इकट्ठा करें. अपनी एग्रीगेशन सेवा के इंस्टेंस की जांच करें और लॉग की जांच करें. साथ ही, TEE container launcher initiating और TEE container launcher exiting के बीच दिखने वाली जानकारी को रिकॉर्ड करें, ताकि हम इसे तकनीकी सहायता टीम को दे सकें.

Google Cloud

  1. Google Cloud: Compute Engine पर जाएं.
  2. VM इंस्टेंस पर क्लिक करें और एग्रीगेशन सेवा का इंस्टेंस चुनें.
  3. जानकारी > लॉग > लॉगिंग पर क्लिक करें या 'लॉग एक्सप्लोरर' खोजें.

Amazon Web Services

  1. Amazon Web Services: EC2 Enclave पर जाएं.
  2. EC2 इंस्टेंस पर क्लिक करें और एग्रीगेशन सेवा का इंस्टेंस चुनें.
  3. कार्रवाइयां > निगरानी करें और समस्या हल करें > सिस्टम लॉग पाएं पर क्लिक करें.

देखें कि क्या आपको गड़बड़ी की सूचनाएं, GitHub पर मौजूद हमारे सार्वजनिक दिशा-निर्देशों में दी गई सूचनाओं से मेल खाती हैं.

ध्यान दें: अगर आपने हाल ही में एग्रीगेशन सेवा के मौजूदा वर्शन को अपग्रेड किया है, तो पूरी प्रोवाइज़निंग प्रोसेस में कुछ घंटे लग सकते हैं. ऐसा इसलिए, ताकि आपके फ़ाइनल कंप्यूट सेवा इंस्टेंस में सही इंस्टेंस इमेज दिखे. अगर ऐसा नहीं है, तो हमसे संपर्क करें.

अगले चरण

अगर आपको एग्रीगेशन सेवा से जुड़ी समस्या का समाधान नहीं दिखता है, तो GitHub पर समस्या की शिकायत करें या तकनीकी सहायता फ़ॉर्म सबमिट करके हमें बताएं.