Diagnozowanie i sprawdzanie infrastruktury

Tematy przewodnika:

Diagnozowanie infrastruktury

Na tej stronie znajdziesz wskazówki dotyczące rozwiązywania problemów z infrastrukturą usługi Aggregation Service i jej weryfikowania. Wykonaj podane czynności, aby zidentyfikować i rozwiązać problemy.

Rozwiązywanie problemów z Terraform

Terraform, platforma infrastruktury jako kodu (IaC) stworzona przez HashiCorp, jest głównym narzędziem do wdrażania usługi agregacji w wybranej chmurze publicznej. Jeśli nie masz zainstalowanego narzędzia Terraform, zapoznaj się z dokumentacją HashiCorp, aby dowiedzieć się, jak uzyskać dostęp do interfejsu wiersza poleceń na komputerze.

Możesz też zainstalować tfenv, jeśli musisz przełączać się między wersjami Terraform.

Jeśli nie widzisz rozwiązania problemu z usługą agregacji, poinformuj nas o tym, zgłaszając problem na GitHubie lub przesyłając formularz pomocy technicznej.

Jeśli wolisz ręcznie przełączać 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

Jeśli błąd Terraform jest niejasny, możesz wyświetlić dane wyjściowe, włączając rejestrowanie Terraform na poziomie TRACE.

Google Cloud

Dostawca Terraform dla Google Cloud jest opracowywany wspólnie przez HashiCorp i Google. Jeśli masz więcej pytań lub potrzebujesz pomocy w rozwiązywaniu problemów, skontaktuj się z zespołem pomocy Cloud Terraform. Więcej informacji znajdziesz też w sekcji Google na portalu Hashicorp Discuss.

Amazon Web Services

Dokumentację dotyczącą debugowania znajdziesz w witrynie AWS. Zachęcamy też do zapoznania się z sekcją AWS na portalu HashiCorp Discuss.

Jeśli masz dodatkowe pytania dotyczące Terraform, odwiedź portal społeczności HashiCorp. Wskazówki dotyczące rozwiązywania problemów z ogólnymi ustawieniami Terraform znajdziesz w dokumentacji debugowania.

Podczas modyfikowania tych katalogów zachowaj szczególną ostrożność, ponieważ ich usunięcie spowoduje, że Terraform nie będzie już rozpoznawać stanu. Spróbuje ponownie udostępnić wszystkie zasoby i wyświetli błąd, jeśli masz zasób o dokładnie takiej samej nazwie. Jeśli problem będzie się powtarzał, skontaktuj się z nami, korzystając z formularza pomocy technicznej.

Podczas modyfikowania tych katalogów zachowaj szczególną ostrożność, ponieważ ich usunięcie spowoduje, że Terraform nie będzie już rozpoznawać stanu. Spróbuje ponownie udostępnić wszystkie zasoby i wyświetli błąd, jeśli masz zasób o dokładnie takiej samej nazwie. Jeśli problem nadal występuje, skontaktuj się z nami za pomocą formularza pomocy technicznej.

Weryfikowanie konfiguracji chmury

Sprawdź, czy infrastruktura usługi agregacji w wybranej chmurze publicznej została prawidłowo wdrożona. W tym celu użyjemy przykładowych raportów debugowania i uruchomimy zadanie w trybie debugowania. Jeśli usługa agregacji może odbierać żądania interfejsu API i na nie odpowiadać, oznacza to, że działa prawidłowo. Jeśli nie masz jeszcze skonfigurowanego narzędzia do wysyłania wywołań interfejsu API do usługi Aggregation Service, zalecamy skorzystanie z Postmana lub cURL. Pamiętaj, że tryby debugowania powinny być wyłączone (ustawione na wartość false) podczas normalnych operacji agregacji.

Oprócz wykonania poniższych czynności, aby dodatkowo zweryfikować infrastrukturę usługi agregacji, sprawdź wszystkie komponenty chmury, które są udostępniane w chmurze publicznej.

Kroki

  1. Aby wygenerować przykładowe raporty debugowania i pliki domen wyjściowych, wykonaj odpowiednie czynności z tych codelabów:

  2. Uruchom żądanie createJob z tą treścią, zastępując wyróżnione symbole zastępcze:

    {
      "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. Uruchom żądanie getJob, aby zobaczyć odpowiedź. Jeśli otrzymasz poniższą odpowiedź, oznacza to, że usługa do agregacji została wdrożona prawidłowo.

    {
        "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>
    }
    

Jeśli nie otrzymasz odpowiedzi z job_status: FINISHED, uzyskaj więcej informacji, przechodząc do zasobu Compute Engine lub EC2 wybranej chmury publicznej. Sprawdź instancję usługi Aggregation Service, a także dzienniki i zapisz informacje, które widzisz między TEE container launcher initiatingTEE container launcher exiting, aby przekazać je zespołowi pomocy technicznej.

Google Cloud

  1. Otwórz Google Cloud: Compute Engine.
  2. Kliknij Instancje maszyn wirtualnych i wybierz instancję usługi agregacji.
  3. Kliknij Szczegóły > Logi > Logowanie (lub wyszukaj Eksplorator logów).

Amazon Web Services

  1. Otwórz Amazon Web Services: EC2 Enclave.
  2. Kliknij Instancje EC2 i wybierz instancję usługi agregacji.
  3. Kliknij Czynności > Monitoruj i rozwiązuj problemy > Pobierz dziennik systemowy.

Sprawdź, czy nie ma błędów pasujących do powiadomień o błędach w naszych publicznych wskazówkach w GitHubie.

Uwaga: jeśli właśnie uaktualniono bieżącą wersję usługi agregacji, pełny proces udostępniania może potrwać kilka godzin, zanim prawidłowy obraz instancji zostanie odzwierciedlony w ostatecznej instancji usługi obliczeniowej. Jeśli tak nie jest, skontaktuj się z nami.

Następne kroki

Jeśli nie znajdziesz rozwiązania problemu z usługą agregacji, poinformuj nas o tym, zgłaszając problem w serwisie GitHub lub przesyłając formularz pomocy technicznej.