Tematy przewodnika:
Diagnozowanie infrastruktury
Na tej stronie znajdziesz wskazówki dotyczące rozwiązywania problemów z infrastrukturą usługi agregacji i sprawdzania jej poprawności. Aby zidentyfikować i rozwiązać problemy, wykonaj podane czynności.
Rozwiązywanie problemów z Terraform
Terraform, platforma infrastruktury jako kodu (IaC) stworzona przez HashiCorp, jest głównym czynnikiem umożliwiającym wdrażanie usługi agregacji w wybranej chmurze publicznej. Jeśli nie masz zainstalowanego terraform, zapoznaj się z dokumentacją HashiCorp dotyczącą pobierania interfejsu wiersza poleceń na komputer.
Jeśli potrzebujesz innej wersji terraform, możesz też zainstalować tfenv.
Jeśli nie możesz rozwiązać problemu z usługą agregacji, poinformuj nas o tym, przesyłając problem na GitHubie lub przesyłając formularz pomocy technicznej.
Jeśli wolisz przełączyć terraform ręcznie:
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 w Google Cloud jest rozwijany wspólnie przez HashiCorp i Google. Jeśli masz więcej pytań lub potrzebujesz pomocy, skontaktuj się z zespołem pomocy Terraform lub odwiedź sekcję Google na portalu Hashicorp Discuss.
Amazon Web Services
Dokumentację dotyczącą debugowania znajdziesz na stronie AWS. Zachęcamy też do zapoznania się z sekcją poświęconą AWS na portalu HashiCorp Discuss.
Jeśli masz więcej pytań na temat Terraform, odwiedź portal społeczności HashiCorp. Wskazówki dotyczące rozwiązywania problemów z ogólnymi funkcjami Terraform znajdziesz w dokumentacji dotyczącej debugowania.
Podczas modyfikowania tych katalogów należy zachować szczególną ostrożność, ponieważ ich usunięcie spowoduje, że terraform przestanie rozpoznawać stan. Spróbuje ponownie udostępnić wszystkie zasoby i wyświetli błąd, jeśli masz zasób o dokładnie tej samej nazwie. Jeśli problem będzie się powtarzał, skontaktuj się z nami, korzystając z formularza pomocy technicznej.
Podczas modyfikowania tych katalogów należy zachować szczególną ostrożność, ponieważ ich usunięcie spowoduje, że terraform przestanie rozpoznawać stan. Spróbuje ponownie udostępnić wszystkie zasoby i wyświetli błąd, jeśli masz zasób o dokładnie tej samej nazwie. Jeśli problem będzie się powtarzał, skontaktuj się z nami za pomocą formularza pomocy technicznej
Sprawdzanie konfiguracji usługi Cloud
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ć, wiemy, że działa prawidłowo. Jeśli nie masz jeszcze skonfigurowanego interfejsu API, zalecamy użycie Postmana lub cURL
do skonfigurowania wywołań interfejsu API do usługi agregacji. Pamiętaj, że podczas zwykłych operacji agregacji tryby debugowania powinny być wyłączone (ustawione na wartość false).
Aby dodatkowo sprawdzić infrastrukturę usługi agregacji, oprócz podanych niżej czynności sprawdź wszystkie komponenty chmury, które są udostępniane w chmurze publicznej.
Kroki
Aby wygenerować przykładowe raporty debugowania i pliki wyjściowe domeny, wykonaj odpowiednie czynności w laboratorium kodu:
- Google Cloud: wykonaj czynności opisane w krokach 3.1.1–3.1.4 Codelab Google Cloud dotyczącego usługi agregacji.
- Amazon Web Services: wykonaj kroki od 4.1 do 4.4 w AWS Codelab usługi agregacji.
Wykonaj żądanie
createJob
z treścią podaną poniżej, zastępując wyróżnione pola 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 } }
Aby zobaczyć odpowiedź, uruchom żądanie
getJob
. Jeśli otrzymasz taką 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
,
zebraj więcej informacji, przechodząc do zasobu EC2 lub Compute Engine w wybranym przez siebie środowisku chmury publicznej. Sprawdź instancję usługi agregacji i logi, a następnie zapisz informacje widoczne w okresie od TEE container launcher initiating
do TEE container launcher exiting
. Prześlij je do naszego zespołu pomocy technicznej.
Google Cloud
- Otwórz Google Cloud: Compute Engine.
- Kliknij Instancje maszyn wirtualnych i wybierz instancję usługi agregacji.
- Kliknij Szczegóły > Logi > Rejestrowanie (lub wyszukaj Eksplorator logów).
Amazon Web Services
- Otwórz Amazon Web Services: EC2 Enclave.
- Kliknij Instancje EC2 i wybierz instancję usługi agregacji.
- Kliknij Działania > Monitorowanie i rozwiązywanie problemów > Pobierz dziennik systemowy.
Sprawdź, czy znajdziesz w publicznych wytycznych na GitHubie powiadomienia o błędach pasujące do Twojego problemu.
Uwaga: jeśli Twoja obecna wersja usługi agregacji została właśnie zaktualizowana, pełny proces obsługi może potrwać do kilku godzin, ponieważ obraz prawidłowej instancji musi zostać odzwierciedlony w ostatecznej instancji usługi obliczeniowej. Skontaktuj się z nami, jeśli nie jest to Twój przypadek.
Następne kroki
Jeśli nie widzisz rozwiązania problemu z usługą agregacji, poinformuj nas o tym, przesyłając problem na GitHubie lub wypełniając formularz pomocy technicznej.