ฉันใช้มาตรฐาน AWS EKS คลัสเตอร์ ใช้ระบบคลาวด์ทั้งหมด (K8S 1.21) ที่มีกลุ่มโหนดหลายกลุ่ม ซึ่งหนึ่งในนั้นใช้ Launch Template ที่กำหนด Elastic Inference Accelerator ที่แนบกับอินสแตนซ์ (eia2.medium) เพื่อให้บริการบางประเภท เทนเซอร์โฟลว์ แบบอย่าง.
ฉันต้องดิ้นรนอย่างมากในการทำให้โมเดลการเรียนรู้เชิงลึกของเราทำงานได้ทั้งหมดในขณะที่ปรับใช้ กล่าวคือ ฉันมีพ็อดในการปรับใช้ด้วยบัญชีบริการและแนบนโยบาย EKS IRSA ซึ่งยึดตาม AWS Deep Learning คอนเทนเนอร์ สำหรับโมเดลการอนุมานที่ให้บริการตาม Tensorflow 1.15.0
ภาพที่ใช้คือ 763104351884.dkr.ecr.eu-west-1.amazonaws.com/tensorflow-inference-eia:1.15.0-cpu
และเมื่อมีการปรับใช้โมเดลในคลัสเตอร์ โดยมีความสัมพันธ์ของโหนดกับโหนดที่เหมาะสม เปิดใช้งาน EIA node มันใช้งานไม่ได้เมื่อถูกเรียกโดยใช้ /คำวิงวอน
จุดสิ้นสุด:
การใช้ Amazon Elastic Inference Client Library เวอร์ชัน: 1.6.3
จำนวนตัวเร่งการอนุมานแบบยืดหยุ่นที่มี: 1
รหัสตัวเร่งการอนุมานแบบยืดหยุ่น: eia-<id>
ประเภทตัวเร่งการอนุมานแบบยืดหยุ่น: eia2.medium
ตัวเร่งการอนุมานแบบยืดหยุ่น ลำดับ: 0
2022-05-11 13:47:17.799145: F external/org_tensorflow/tensorflow/contrib/ei/session/eia_session.cc:1221] สถานะไม่ปกติ: SwapExStateWithEI(tmp_inputs, tmp_outputs, tmp_freeze) สถานะ: ภายใน: ล้มเหลว รับรายการที่อนุญาตโอเปอเรเตอร์เริ่มต้นจากเซิร์ฟเวอร์
คำเตือน: __main__: การออกให้บริการเทนเซอร์โฟลว์ที่ไม่คาดคิด (สถานะ: 134) รีสตาร์ท
เช่นเดียวกับการอ้างอิงเมื่อใช้ CPU เท่านั้น รูปได้ที่ 763104351884.dkr.ecr.eu-west-1.amazonaws.com/tensorflow-inference:1.15.0-cpu
โมเดลทำหน้าที่ได้อย่างสมบูรณ์แบบในทุกสภาพแวดล้อม (ในพื้นที่ด้วย)
แต่ละโหนด EKS และ Pod เอง (ผ่าน IRSA) มีนโยบายต่อไปนี้แนบมาด้วย:
{
"เวอร์ชัน": "2012-10-17",
"คำแถลง": [
{
"เอฟเฟกต์": "อนุญาต",
"หนังบู๊": [
"การอนุมานแบบยืดหยุ่น: เชื่อมต่อ",
"iam:รายการ*",
"เอี่ยม:รับ*",
"ec2:อธิบาย*",
"ec2:รับ*",
"ec2:ModifyInstanceAttribute"
]
"ทรัพยากร": "*"
}
]
}
ตามเอกสารประกอบจาก AWS เอง ฉันได้สร้าง VPC Endpoint สำหรับการอนุมานแบบยืดหยุ่นตามที่อธิบายโดย AWS และผูกเข้ากับซับเน็ตส่วนตัวที่ใช้โดยโหนด EKS พร้อมกับกลุ่มความปลอดภัยที่กำหนดค่าอย่างเหมาะสมซึ่งอนุญาต สสส, HTTPS และ 8500/8501 พอร์ต TCP จากโหนดของผู้ปฏิบัติงานใน VPC CIDR
โดยใช้ทั้ง AWS Reachability Analyzer และ โปรแกรมจำลองนโยบาย IAM ดูเหมือนไม่มีอะไรผิดปกติและระบบเครือข่ายและการอนุญาตก็ดูดี ในขณะเดียวกัน EISetupValidator.py
สคริปต์ที่จัดทำโดย AWS พูดเหมือนกัน
เบาะแสใด ๆ เกี่ยวกับสิ่งที่เกิดขึ้นจริงที่นี่? ฉันขาดการอนุญาตหรือการตั้งค่าเครือข่ายบางอย่างหรือไม่