หัวข้อคำแนะนำ:
วินิจฉัยโครงสร้างพื้นฐาน
หน้านี้จะให้คําแนะนําเกี่ยวกับวิธีแก้ปัญหาและตรวจสอบโครงสร้างพื้นฐานของบริการรวบรวมข้อมูล ทำตามขั้นตอนเพื่อระบุและแก้ไขปัญหา
การแก้ปัญหาเกี่ยวกับ Terraform
Terraform ซึ่งเป็นแพลตฟอร์ม Infrastructure as Code (IaC) ที่ HashiCorp สร้างขึ้น เป็นเครื่องมือหลักในการทำให้บริการรวบรวมข้อมูลใช้งานได้ในระบบคลาวด์สาธารณะที่คุณเลือก หากยังไม่ได้ติดตั้ง terraform โปรดดูเอกสารประกอบของ HashiCorp เกี่ยวกับวิธีรับ CLI ในเครื่อง
นอกจากนี้ คุณยังอาจพิจารณาติดตั้ง tfenv ด้วย หากจำเป็นต้องเปลี่ยนเวอร์ชัน terraform
หากไม่เห็นวิธีแก้ปัญหาเกี่ยวกับบริการรวบรวมข้อมูล โปรดแจ้งให้เราทราบโดยการแจ้งปัญหาใน 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 ไม่ชัดเจน คุณสามารถดูเอาต์พุตได้โดยเปิดใช้การบันทึก Terraform ที่ระดับ TRACE
Google Cloud
ผู้ให้บริการ Terraform สำหรับ Google Cloud พัฒนาขึ้นโดย HashiCorp และ Google ร่วมกัน หากมีคำถามเพิ่มเติมและต้องการคำแนะนำในการแก้ปัญหา โปรดติดต่อทีมสนับสนุน Terraform ของ Cloud เพื่อขอข้อมูลเพิ่มเติมหรือไปที่ส่วน Google ในพอร์ทัล Discuss ของ Hashicorp
Amazon Web Services
ดูเอกสารประกอบเกี่ยวกับการแก้ไขข้อบกพร่องได้ในเว็บไซต์ของ AWS นอกจากนี้ เราขอแนะนําให้คุณดูส่วน AWS ของพอร์ทัล HashiCorp Discuss ด้วย
หากมีคำถามเพิ่มเติมเกี่ยวกับ Terraform โปรดดูพอร์ทัลชุมชน HashiCorp คำแนะนำในการแก้ปัญหา Terraform ทั่วไป อ่านเอกสารประกอบเกี่ยวกับการแก้ไขข้อบกพร่อง
โปรดระมัดระวังอย่างยิ่งเมื่อแก้ไขไดเรกทอรีเหล่านี้เนื่องจากการนําออกจะทำให้ Terraform ไม่รู้จักสถานะอีกต่อไป ระบบจะพยายามจัดสรรทรัพยากรทั้งหมดอีกครั้งและแสดงข้อผิดพลาดเมื่อคุณมีทรัพยากรที่มีชื่อเหมือนกันทุกประการ หากยังพบปัญหานี้อยู่ โปรดติดต่อเราในแบบฟอร์มการสนับสนุนด้านเทคนิค
โปรดใช้ความระมัดระวังอย่างยิ่งเมื่อแก้ไขไดเรกทอรีเหล่านี้เนื่องจากการนําออกจะทำให้ Terraform ไม่รู้จักสถานะอีกต่อไป ระบบจะพยายามจัดสรรทรัพยากรทั้งหมดอีกครั้งและแสดงข้อผิดพลาดเมื่อคุณมีทรัพยากรที่มีชื่อเหมือนกันทุกประการ หากยังพบปัญหานี้อยู่ โปรดติดต่อเราในแบบฟอร์มการสนับสนุนด้านเทคนิค
ตรวจสอบการตั้งค่าระบบคลาวด์
ยืนยันว่าได้ติดตั้งใช้งานโครงสร้างพื้นฐานบริการรวบรวมข้อมูลในระบบคลาวด์สาธารณะที่เลือกอย่างถูกต้องแล้ว โดยเราจะใช้รายงานการแก้ไขข้อบกพร่องตัวอย่างและเรียกใช้งานในโหมดแก้ไขข้อบกพร่อง หากบริการรวบรวมข้อมูลสามารถรับคําขอ API และตอบกลับได้ แสดงว่าบริการทํางานอยู่ หากยังไม่ได้ตั้งค่า เราขอแนะนําให้ใช้ Postman หรือ cURL
เพื่อตั้งค่าการเรียก API ไปยังบริการรวบรวมข้อมูล โปรดทราบว่าคุณควรปิดโหมดแก้ไขข้อบกพร่องโดยตั้งค่าเป็นเท็จในระหว่างการรวมข้อมูลตามปกติ
นอกจากขั้นตอนต่อไปนี้แล้ว หากต้องการตรวจสอบโครงสร้างพื้นฐานของบริการรวบรวมข้อมูลเพิ่มเติม ให้ตรวจสอบคอมโพเนนต์ระบบคลาวด์ที่จัดสรรทั้งหมดในระบบคลาวด์สาธารณะ
ขั้นตอน
หากต้องการสร้างรายงานการแก้ไขข้อบกพร่องตัวอย่างและไฟล์โดเมนเอาต์พุต ให้ทําตามขั้นตอนที่เกี่ยวข้องของโค้ดแล็บ
- Google Cloud: ทำตามขั้นตอนที่ 3.1.1 ถึง 3.1.4 ของ Aggregation Service Google Cloud Codelab
- Amazon Web Services: ทำตามขั้นตอนที่ 4.1 ถึง 4.4 ของ Aggregation Service AWS Codelab
เรียกใช้คําขอ
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 } }
เรียกใช้คําขอ
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
- ไปที่ Google Cloud: Compute Engine
- คลิกอินสแตนซ์ VM แล้วเลือกอินสแตนซ์บริการรวบรวมข้อมูล
- คลิกรายละเอียด > บันทึก > การบันทึก (หรือค้นหา "เครื่องมือสำรวจบันทึก")
Amazon Web Services
- ไปที่ Amazon Web Services: EC2 Enclave
- คลิกอินสแตนซ์ EC2 แล้วเลือกอินสแตนซ์บริการรวบรวมข้อมูล
- คลิกการดําเนินการ > ตรวจสอบและแก้ปัญหา > ดูบันทึกของระบบ
ตรวจสอบและดูว่าคุณพบข้อผิดพลาดที่ตรงกับการแจ้งเตือนข้อผิดพลาดในคำแนะนำสาธารณะบน GitHub หรือไม่
หมายเหตุ: หากคุณเพิ่งอัปเกรดบริการรวบรวมข้อมูลเวอร์ชันปัจจุบัน กระบวนการจัดสรรแบบสมบูรณ์อาจใช้เวลาถึง 2-3 ชั่วโมงเพื่อให้รูปภาพอินสแตนซ์ที่ถูกต้องแสดงในอินสแตนซ์บริการประมวลผลขั้นสุดท้าย โปรดติดต่อเราหากไม่ใช่กรณีนี้
ขั้นตอนถัดไป
หากไม่เห็นวิธีแก้ปัญหาเกี่ยวกับบริการรวบรวมข้อมูล โปรดแจ้งให้เราทราบโดยยื่นปัญหาใน GitHub หรือส่งแบบฟอร์มการสนับสนุนด้านเทคนิค