Amazon SageMaker ไฮเปอร์พอด สร้างขึ้นโดยมีจุดประสงค์เพื่อเร่งการฝึกอบรมโมเดลพื้นฐาน (FM) โดยขจัดการยกของหนักที่ไม่แตกต่างซึ่งเกี่ยวข้องกับการจัดการและเพิ่มประสิทธิภาพคลัสเตอร์การประมวลผลการฝึกอบรมขนาดใหญ่ ด้วย SageMaker HyperPod คุณสามารถฝึกอบรม FM เป็นเวลาหลายสัปดาห์และหลายเดือนโดยไม่มีการหยุดชะงัก
โดยทั่วไปแล้ว ผู้ใช้หลายคนจะใช้คลัสเตอร์ HyperPod ได้แก่ นักวิจัยด้านการเรียนรู้ของเครื่อง (ML) วิศวกรซอฟต์แวร์ นักวิทยาศาสตร์ข้อมูล และผู้ดูแลระบบคลัสเตอร์ พวกเขาแก้ไขไฟล์ของตนเอง ดำเนินงานของตนเอง และต้องการหลีกเลี่ยงไม่ให้กระทบต่องานของกันและกัน เพื่อให้บรรลุสภาพแวดล้อมที่มีผู้ใช้หลายคนนี้ คุณสามารถใช้ประโยชน์จากกลไกผู้ใช้และกลุ่มของ Linux และสร้างผู้ใช้หลายรายแบบคงที่ในแต่ละอินสแตนซ์ผ่านสคริปต์วงจรการใช้งาน อย่างไรก็ตาม ข้อเสียเปรียบของแนวทางนี้คือการตั้งค่าผู้ใช้และกลุ่มจะซ้ำกันในหลายอินสแตนซ์ในคลัสเตอร์ ทำให้ยากต่อการกำหนดค่าให้สม่ำเสมอในทุกอินสแตนซ์ เช่น เมื่อมีสมาชิกทีมใหม่เข้าร่วม
เพื่อแก้ปัญหาจุดปวดนี้เราสามารถใช้ โปรโตคอลการเข้าถึงไดเรกทอรีที่มีน้ำหนักเบา (LDAP) และ LDAP ผ่าน TLS/SSL (LDAPS) เพื่อรวมเข้ากับบริการไดเร็กทอรีเช่น บริการไดเรกทอรี AWS สำหรับ Microsoft Active Directory- ด้วยบริการไดเร็กทอรี คุณสามารถรักษาผู้ใช้และกลุ่มและการอนุญาตจากส่วนกลางได้
ในโพสต์นี้ เราขอแนะนำโซลูชันในการรวมคลัสเตอร์ HyperPod เข้ากับ AWS Managed Microsoft AD และอธิบายวิธีสร้างสภาพแวดล้อมการเข้าสู่ระบบแบบหลายผู้ใช้ที่ราบรื่นด้วยไดเร็กทอรีที่ได้รับการดูแลจากส่วนกลาง
ภาพรวมโซลูชัน
โซลูชันใช้บริการและทรัพยากรของ AWS ต่อไปนี้:
เรายังใช้ การก่อตัวของ AWS Cloud เพื่อปรับใช้สแต็กเพื่อสร้างข้อกำหนดเบื้องต้นสำหรับคลัสเตอร์ HyperPod: VPC, ซับเน็ต, กลุ่มความปลอดภัย และ Amazon FSx สำหรับความมันวาว ปริมาณ
ไดอะแกรมต่อไปนี้แสดงสถาปัตยกรรมโซลูชันระดับสูง
ในโซลูชันนี้ อินสแตนซ์คลัสเตอร์ HyperPod ใช้โปรโตคอล LDAPS เพื่อเชื่อมต่อกับ AWS Managed Microsoft AD ผ่านทาง NLB เราใช้ การยุติ TLS โดยการติดตั้งใบรับรองให้กับ NLB หากต้องการกำหนดค่า LDAPS ในอินสแตนซ์คลัสเตอร์ HyperPod สคริปต์วงจรการใช้งานจะติดตั้งและกำหนดค่า ภูตบริการรักษาความปลอดภัยระบบ (SSSD)—ซอฟต์แวร์ไคลเอนต์โอเพ่นซอร์สสำหรับ LDAP/LDAPS
เบื้องต้น
โพสต์นี้ถือว่าคุณรู้วิธีสร้างคลัสเตอร์ HyperPod พื้นฐานโดยไม่ต้องใช้ SSSD แล้ว สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับวิธีสร้างคลัสเตอร์ HyperPod โปรดดูที่ เริ่มต้นใช้งาน SageMaker HyperPod และ เวิร์กช็อปไฮเปอร์พอด.
นอกจากนี้ ในขั้นตอนการตั้งค่า คุณจะใช้เครื่อง Linux เพื่อสร้างใบรับรองที่ลงนามด้วยตนเอง และรับรหัสผ่านที่สับสนสำหรับผู้ใช้โปรแกรมอ่าน AD หากคุณไม่มีเครื่อง Linux คุณสามารถสร้างอินสแตนซ์ EC2 Linux หรือใช้งานได้ AWS CloudShell.
สร้าง VPC ซับเน็ต และกลุ่มความปลอดภัย
ทำตามคำแนะนำในไฟล์ บัญชีของตัวเอง ส่วนหนึ่งของเวิร์กช็อป HyperPod คุณจะปรับใช้สแต็ก CloudFormation และสร้างทรัพยากรที่จำเป็นเบื้องต้น เช่น VPC, ซับเน็ต, กลุ่มความปลอดภัย และ FSx สำหรับไดรฟ์ข้อมูล Luster คุณต้องสร้างทั้งซับเน็ตหลักและซับเน็ตสำรองเมื่อปรับใช้สแต็ก CloudFormation เนื่องจาก AWS Managed Microsoft AD ต้องการเครือข่ายย่อยอย่างน้อยสองเครือข่าย ด้วย Availability Zone ที่แตกต่างกัน
ในโพสต์นี้ เพื่อความเรียบง่าย เราใช้ VPC, ซับเน็ต และกลุ่มความปลอดภัยเดียวกันสำหรับทั้งคลัสเตอร์ HyperPod และบริการไดเรกทอรี หากคุณต้องการใช้เครือข่ายที่แตกต่างกันระหว่างบริการคลัสเตอร์และบริการไดเรกทอรี ตรวจสอบให้แน่ใจว่ากลุ่มความปลอดภัยและตารางเส้นทางได้รับการกำหนดค่าเพื่อให้สามารถสื่อสารระหว่างกันได้
สร้าง AWS Managed Microsoft AD บนบริการไดเรกทอรี
ทำตามขั้นตอนต่อไปนี้เพื่อตั้งค่าไดเร็กทอรีของคุณ:
- เกี่ยวกับ คอนโซลบริการไดเรกทอรีเลือก ไดเรกทอรี ในบานหน้าต่างนำทาง
- Choose ตั้งค่าไดเรกทอรี.
- สำหรับ ประเภทไดเร็กทอรีให้เลือก AWS จัดการ Microsoft AD.
- Choose ถัดไป.
- สำหรับ ฉบับที่ให้เลือก เป็น Standard Edition.
- สำหรับ ชื่อ DNS ของไดเรกทอรีป้อนชื่อ DNS ไดเรกทอรีที่คุณต้องการ (เช่น
hyperpod.abc123.com
). - สำหรับ รหัสผ่านผู้ดูแลระบบธตั้งรหัสผ่านและบันทึกไว้เพื่อใช้ในภายหลัง
- Choose ถัดไป.
- ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร ระบบเครือข่าย ให้ระบุ VPC และเครือข่ายย่อยส่วนตัวสองรายการที่คุณสร้างขึ้น
- Choose ถัดไป.
- ตรวจสอบการกำหนดค่าและราคา จากนั้นเลือก สร้างไดเรกทอรี.
การสร้างไดเร็กทอรีเริ่มต้นขึ้น รอจนกระทั่งสถานะเปลี่ยนจาก การสร้าง ไปยัง ใช้งานซึ่งอาจใช้เวลาประมาณ 20–30 นาที - เมื่อสถานะเปลี่ยนเป็น ใช้งานให้เปิดหน้ารายละเอียดของไดเร็กทอรีและจดที่อยู่ DNS ไว้ใช้ในภายหลัง
สร้าง NLB หน้า Directory Service
เมื่อต้องการสร้าง NLB ให้ทำตามขั้นตอนต่อไปนี้:
- เกี่ยวกับ คอนโซล Amazon EC2เลือก กลุ่มเป้าหมาย ในบานหน้าต่างนำทาง
- Choose สร้างกลุ่มเป้าหมาย.
- สร้างกลุ่มเป้าหมายด้วยพารามิเตอร์ต่อไปนี้:
- สำหรับ เลือกประเภทเป้าหมายให้เลือก ที่อยู่ IP.
- สำหรับ ชื่อกลุ่มเป้าหมายป้อน
LDAP
. - สำหรับ โปรโตคอล: พอร์ตเลือก TCP และป้อน
389
. - สำหรับ ประเภทที่อยู่ IPให้เลือก IPv4.
- สำหรับ วี.พี.ซีเลือก SageMaker ไฮเปอร์พอด VPC (ซึ่งคุณสร้างด้วยเทมเพลต CloudFormation)
- สำหรับ โปรโตคอลการตรวจสุขภาพเลือก TCP.
- Choose ถัดไป.
- ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร ลงทะเบียนเป้าหมาย ให้ลงทะเบียนที่อยู่ DNS ของบริการไดเรกทอรีเป็นเป้าหมาย
- สำหรับ พอร์ตเลือก รวมเป็นรอดำเนินการด้านล่าง.ที่อยู่จะถูกเพิ่มเข้าไปใน ทบทวนเป้าหมาย ส่วนกับ กำลังดำเนินการ สถานะ
- Choose สร้างกลุ่มเป้าหมาย.
- เกี่ยวกับ คอนโซลโหลดบาลานเซอร์เลือก สร้างตัวจัดสรรภาระงาน.
- ภายใต้ ตัวจัดสรรภาระงานเครือข่ายเลือก สร้างบัญชีตัวแทน.
- กำหนดค่า NLB ด้วยพารามิเตอร์ต่อไปนี้:
- สำหรับ ชื่อตัวจัดสรรภาระงานป้อนชื่อ (เช่น
nlb-ds
). - สำหรับ โครงการให้เลือก ภายใน.
- สำหรับ ประเภทที่อยู่ IPให้เลือก IPv4.
- สำหรับ วี.พี.ซีเลือก SageMaker ไฮเปอร์พอด VPC (ซึ่งคุณสร้างด้วยเทมเพลต CloudFormation)
- ภายใต้ แมปเลือกเครือข่ายย่อยส่วนตัว 2 รายการและช่วง CIDR (ซึ่งคุณสร้างด้วยเทมเพลต CloudFormation)
- สำหรับ กลุ่มความปลอดภัยเลือก
CfStackName-SecurityGroup-XYZXYZ
(ซึ่งคุณสร้างด้วยเทมเพลต CloudFormation)
- สำหรับ ชื่อตัวจัดสรรภาระงานป้อนชื่อ (เช่น
- ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร ผู้ฟังและการกำหนดเส้นทาง ส่วน ระบุพารามิเตอร์ต่อไปนี้:
- สำหรับ โปรโตคอลเลือก TCP.
- สำหรับ ท่าเรือป้อน
389
. - สำหรับ การกระทำเริ่มต้นให้เลือกกลุ่มเป้าหมายที่ชื่อ LDAP.
ที่นี่ เรากำลังเพิ่ม Listener สำหรับ LDAP เราจะเพิ่ม LDAPS ในภายหลัง
- Choose สร้างตัวจัดสรรภาระงาน.รอจนกระทั่งสถานะเปลี่ยนจาก การจัดเตรียม เป็น Active ซึ่งอาจใช้เวลา 3–5 นาที
- เมื่อสถานะเปลี่ยนเป็น ใช้งานเปิดหน้ารายละเอียดของ NLB ที่จัดเตรียมไว้ และจดชื่อ DNS (
xyzxyz.elb.region-name.amazonaws.com
) เพื่อใช้ในภายหลัง
สร้างใบรับรองที่ลงนามด้วยตนเองและนำเข้าไปยังตัวจัดการใบรับรอง
หากต้องการสร้างใบรับรองที่ลงนามด้วยตนเอง ให้ทำตามขั้นตอนต่อไปนี้:
- ในสภาพแวดล้อมที่ใช้ Linux (แล็ปท็อปในเครื่อง, อินสแตนซ์ EC2 Linux หรือ CloudShell) ให้ดำเนินการต่อไปนี้ OpenSSL คำสั่งเพื่อสร้างใบรับรองที่ลงนามด้วยตนเองและคีย์ส่วนตัว:
- เกี่ยวกับ คอนโซลตัวจัดการใบรับรองเลือก นำเข้า.
- ป้อนเนื้อหาใบรับรองและคีย์ส่วนตัวจากเนื้อหาของ
ldaps.crt
และldaps.key
ตามลำดับ - Choose ถัดไป.
- เพิ่มแท็กเสริม จากนั้นเลือก ถัดไป.
- ตรวจสอบการกำหนดค่าและเลือก นำเข้า.
เพิ่มผู้ฟัง LDAPS
เราได้เพิ่มผู้ฟังสำหรับ LDAP ไว้ใน NLB แล้ว ตอนนี้เราเพิ่ม Listener สำหรับ LDAPS ด้วยใบรับรองที่นำเข้า ทำตามขั้นตอนต่อไปนี้:
- เกี่ยวกับ คอนโซลโหลดบาลานเซอร์นำทางไปยังหน้ารายละเอียด NLB
- เกี่ยวกับ ฟัง เลือกแท็บ เพิ่มผู้ฟัง.
- กำหนดค่า Listener ด้วยพารามิเตอร์ต่อไปนี้:
- สำหรับ โปรโตคอลเลือก TLS.
- สำหรับ ท่าเรือป้อน
636
. - สำหรับ การกระทำเริ่มต้นเลือก LDAP.
- สำหรับ แหล่งที่มาของใบรับรองให้เลือก จาก พลอากาศเอก.
- สำหรับ ใบรับรองให้ป้อนสิ่งที่คุณนำเข้าใน ACM
- Choose เพิ่ม.ขณะนี้ NLB ฟังทั้ง LDAP และ LDAPS ขอแนะนำให้ลบ Listener LDAP เนื่องจากจะส่งข้อมูลโดยไม่มีการเข้ารหัส ซึ่งต่างจาก LDAPS
สร้างอินสแตนซ์ EC2 Windows เพื่อจัดการผู้ใช้และกลุ่มใน AD
หากต้องการสร้างและรักษาผู้ใช้และกลุ่มใน AD ให้ทำตามขั้นตอนต่อไปนี้:
- บนคอนโซล Amazon EC2 ให้เลือก อินสแตนซ์ ในบานหน้าต่างนำทาง
- Choose เรียกใช้อินสแตนซ์.
- สำหรับ Nameป้อนชื่อสำหรับอินสแตนซ์ของคุณ
- สำหรับ ภาพเครื่องอเมซอนเลือก ฐาน Microsoft Windows Server 2022.
- สำหรับ ประเภทอินสแตนซ์เลือก t2.micro.
- ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร ตั้งค่าเครือข่าย ส่วน ให้ระบุพารามิเตอร์ต่อไปนี้:
- สำหรับ วี.พี.ซีเลือก SageMaker ไฮเปอร์พอด VPC (ซึ่งคุณสร้างด้วยเทมเพลต CloudFormation)
- สำหรับ ซับเน็ตให้เลือกเครือข่ายย่อยใดเครือข่ายหนึ่งจากสองเครือข่ายที่คุณสร้างด้วยเทมเพลต CloudFormation
- สำหรับ กลุ่มความปลอดภัยทั่วไปเลือก
CfStackName-SecurityGroup-XYZXYZ
(ซึ่งคุณสร้างด้วยเทมเพลต CloudFormation)
- สำหรับ กำหนดค่าพื้นที่เก็บข้อมูลให้ตั้งค่าพื้นที่เก็บข้อมูลเป็น 30 GB gp2
- ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร รายละเอียดขั้นสูง ส่วนสำหรับ ไดเรกทอรีเข้าร่วมโดเมนธเลือกโฆษณาที่คุณสร้าง
- สำหรับ โปรไฟล์อินสแตนซ์ IAMเลือกไฟล์ AWS Identity และการจัดการการเข้าถึง (IAM) อย่างน้อยที่สุด
AmazonSSMManagedEC2InstanceDefaultPolicy
นโยบาย. - ตรวจสอบบทสรุปและเลือก เรียกใช้อินสแตนซ์.
สร้างผู้ใช้และกลุ่มใน AD โดยใช้อินสแตนซ์ EC2 Windows
กับ Remote Desktopให้เชื่อมต่อกับอินสแตนซ์ EC2 Windows ที่คุณสร้างในขั้นตอนก่อนหน้า แนะนำให้ใช้ไคลเอ็นต์ RDP แทนการใช้เดสก์ท็อประยะไกลบนเบราว์เซอร์ เพื่อให้คุณสามารถแลกเปลี่ยนเนื้อหาของคลิปบอร์ดกับเครื่องในพื้นที่ของคุณโดยใช้การคัดลอกและวาง สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการเชื่อมต่อกับอินสแตนซ์ EC2 Windows โปรดดูที่ เชื่อมต่อกับอินสแตนซ์ Windows ของคุณ.
หากคุณได้รับพร้อมท์ให้ใส่ข้อมูลรับรองการเข้าสู่ระบบ ให้ใช้ hyperpodAdmin
(ในกรณีที่ hyperpod
เป็นส่วนแรกของชื่อ DNS ไดเรกทอรีของคุณ) เป็นชื่อผู้ใช้ และใช้รหัสผ่านผู้ดูแลระบบที่คุณตั้งให้กับบริการไดเรกทอรี
- เมื่อหน้าจอเดสก์ท็อป Windows เปิดขึ้น ให้เลือก จัดการเซิร์ฟเวอร์ จาก เริ่มต้น เมนู
- Choose เซิร์ฟเวอร์ท้องถิ่น ในบานหน้าต่างนำทาง และยืนยันว่าโดเมนคือสิ่งที่คุณระบุไว้ในบริการไดเร็กทอรี
- เกี่ยวกับ จัดการ เมนูให้เลือก เพิ่มบทบาทและคุณสมบัติ.
- Choose ถัดไป จนกว่าคุณจะอยู่ที่ คุณสมบัติ หน้า.
- ขยายคุณสมบัติ เครื่องมือการดูแลระบบเซิร์ฟเวอร์ระยะไกลขยาย เครื่องมือการบริหารบทบาทและเลือก AD DS และ AD LDS Tools และ บริการการจัดการสิทธิ์ Active Directory.
- Choose ถัดไป และ การติดตั้ง.การติดตั้งคุณลักษณะเริ่มต้นขึ้น
- เมื่อติดตั้งเสร็จแล้ว ให้เลือก ปิดหน้านี้.
- จุดเปิด ผู้ใช้ Active Directory และคอมพิวเตอร์ จาก เริ่มต้น เมนู
- ภายใต้
hyperpod.abc123.com
ขยายhyperpod
. - เลือก (คลิกขวา)
hyperpod
เลือก ใหม่และเลือก หน่วยขององค์กร. - สร้างหน่วยองค์กรที่เรียกว่า
Groups
. - เลือก (คลิกขวา) กลุ่มเลือก ใหม่และเลือก บัญชีกลุ่ม.
- สร้างกลุ่มชื่อ
ClusterAdmin
. - สร้างกลุ่มที่สองชื่อ
ClusterDev
. - เลือก (คลิกขวา) ผู้ใช้เลือก ใหม่และเลือก ผู้ใช้งาน.
- สร้างผู้ใช้ใหม่
- เลือก (คลิกขวา) ผู้ใช้และเลือก เพิ่มเข้ากลุ่ม.
- เพิ่มผู้ใช้ของคุณในกลุ่ม
ClusterAdmin
orClusterDev
.ผู้ใช้ที่ถูกเพิ่มเข้าไปในClusterAdmin
กลุ่มจะมีsudo
สิทธิพิเศษบนคลัสเตอร์
สร้างผู้ใช้แบบอ่านอย่างเดียวใน AD
สร้างผู้ใช้ชื่อ ReadOnly
ภายใต้ Users
. ReadOnly
คลัสเตอร์ใช้ผู้ใช้เพื่อเข้าถึงผู้ใช้และกลุ่มใน AD โดยทางโปรแกรม
จดรหัสผ่านเพื่อใช้ในภายหลัง
(สำหรับการตรวจสอบสิทธิ์คีย์สาธารณะ SSH) เพิ่มคีย์สาธารณะ SSH ให้กับผู้ใช้
ด้วยการจัดเก็บคีย์สาธารณะ SSH ให้กับผู้ใช้ใน AD คุณสามารถเข้าสู่ระบบได้โดยไม่ต้องป้อนรหัสผ่าน คุณสามารถใช้คู่คีย์ที่มีอยู่ หรือคุณสามารถสร้างคู่คีย์ใหม่ด้วย OpenSSH ได้ ssh-keygen
สั่งการ. สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการสร้างคู่คีย์ โปรดดูที่ สร้างคู่คีย์สำหรับอินสแตนซ์ Amazon EC2 ของคุณ.
- In ผู้ใช้ Active Directory และคอมพิวเตอร์บน รายละเอียด เมนูเปิดใช้งาน คุณลักษณะขั้นสูง.
- เปิด อสังหาริมทรัพย์ โต้ตอบของผู้ใช้
- เกี่ยวกับ ตัวแก้ไขแอตทริบิวต์ เลือกแท็บ
altSecurityIdentities
เลือก Edit. - สำหรับ มูลค่าเพิ่มเลือก เพิ่ม.
- สำหรับ ความคุ้มค่าให้เพิ่มคีย์สาธารณะ SSH
- Choose OK.ยืนยันว่ารหัสสาธารณะ SSH ปรากฏเป็นแอตทริบิวต์
รับรหัสผ่านที่สับสนสำหรับผู้ใช้แบบอ่านอย่างเดียว
เพื่อหลีกเลี่ยงการรวมรหัสผ่านข้อความธรรมดาในไฟล์การกำหนดค่า SSSD คุณจะต้องสร้างรหัสผ่านให้สับสน สำหรับขั้นตอนนี้ คุณต้องมีสภาพแวดล้อม Linux (แล็ปท็อปในเครื่อง, อินสแตนซ์ EC2 Linux หรือ CloudShell)
ติดตั้ง sssd-tools
แพ็คเกจบนเครื่อง Linux เพื่อติดตั้งโมดูล Python pysss
เพื่อทำให้สับสน:
เรียกใช้สคริปต์ Python หนึ่งบรรทัดต่อไปนี้ ใส่รหัสผ่านของ ReadOnly
ผู้ใช้ คุณจะได้รับรหัสผ่านที่สับสน
สร้างคลัสเตอร์ HyperPod ด้วยสคริปต์วงจรการใช้งานที่เปิดใช้งาน SSSD
จากนั้น คุณสร้างคลัสเตอร์ HyperPod ที่มีการผสานรวม LDAPS/Active Directory
- ค้นหาไฟล์การกำหนดค่า
config.py
ในไดเร็กทอรีสคริปต์ lifecycle ของคุณ ให้เปิดด้วยโปรแกรมแก้ไขข้อความ และแก้ไขคุณสมบัติในConfig
ชั้นเรียนและSssdConfig
ระดับ:- ชุด
True
forenable_sssd
เพื่อเปิดใช้งานการตั้งค่า SSSD - พื้นที่
SssdConfig
คลาสมีพารามิเตอร์การกำหนดค่าสำหรับ SSSD - ตรวจสอบให้แน่ใจว่าคุณใช้รหัสผ่านที่สับสนสำหรับ
ldap_default_authtok
คุณสมบัติ ไม่ใช่รหัสผ่านข้อความธรรมดา
- ชุด
- คัดลอกไฟล์ใบรับรอง
ldaps.crt
ไปยังไดเร็กทอรีเดียวกัน (โดยที่config.py
มีอยู่) - อัปโหลดไฟล์สคริปต์วงจรการใช้งานที่แก้ไขแล้วไปยังของคุณ บริการจัดเก็บข้อมูลอย่างง่ายของ Amazon (Amazon S3) และสร้างคลัสเตอร์ HyperPod ด้วย
- รอจนกระทั่งสถานะเปลี่ยนเป็น อยู่ในการให้บริการ.
การตรวจสอบ
มาตรวจสอบวิธีแก้ปัญหาด้วยการล็อกอินเข้าสู่คลัสเตอร์ด้วย SSH เนื่องจากคลัสเตอร์ถูกสร้างขึ้นในซับเน็ตส่วนตัว คุณจึงไม่สามารถ SSH เข้าสู่คลัสเตอร์โดยตรงจากสภาพแวดล้อมในเครื่องของคุณได้ คุณสามารถเลือกจากสองตัวเลือกเพื่อเชื่อมต่อกับคลัสเตอร์
ตัวเลือกที่ 1: เข้าสู่ระบบ SSH ผ่าน AWS Systems Manager
คุณสามารถใช้ได้ ผู้จัดการระบบ AWS เป็นพร็อกซีสำหรับการเชื่อมต่อ SSH เพิ่มรายการโฮสต์ลงในไฟล์การกำหนดค่า SSH ~/.ssh/config
โดยใช้ตัวอย่างต่อไปนี้ สำหรับ HostName
ระบุชื่อเป้าหมาย Systems Manger ในรูปแบบ sagemaker-cluster:[cluster-id]_[instance-group-name]-[instance-id]
. สำหรับ IdentityFile
ระบุเส้นทางไฟล์ไปยังคีย์ส่วนตัว SSH ของผู้ใช้ ฟิลด์นี้ไม่จำเป็นหากคุณเลือกการตรวจสอบสิทธิ์ด้วยรหัสผ่าน
เรียกใช้ ssh
คำสั่งโดยใช้ชื่อโฮสต์ที่คุณระบุ ยืนยันว่าคุณสามารถเข้าสู่ระบบอินสแตนซ์กับผู้ใช้ที่ระบุได้
ณ จุดนี้ ผู้ใช้ยังคงสามารถใช้เซสชันเชลล์ดีฟอลต์ของ Systems Manager เพื่อล็อกอินเข้าสู่คลัสเตอร์ได้ ssm-user
ด้วยสิทธิพิเศษของผู้ดูแลระบบ หากต้องการบล็อกการเข้าถึงเชลล์ของ Systems Manager เริ่มต้นและบังคับใช้การเข้าถึง SSH คุณสามารถกำหนดค่านโยบาย IAM ของคุณโดยอ้างอิงจากตัวอย่างต่อไปนี้:
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับวิธีการบังคับใช้การเข้าถึง SSH โปรดดูที่ เริ่มต้นเซสชันด้วยเอกสารโดยระบุเอกสารเซสชันในนโยบาย IAM.
ตัวเลือกที่ 2: เข้าสู่ระบบ SSH ผ่านโฮสต์ป้อมปราการ
ตัวเลือกอื่นในการเข้าถึงคลัสเตอร์คือการใช้ โฮสต์ป้อมปราการ เป็นตัวแทน คุณสามารถใช้ตัวเลือกนี้เมื่อผู้ใช้ไม่มีสิทธิ์ในการใช้เซสชัน Systems Manager หรือเพื่อแก้ไขปัญหาเมื่อ Systems Manager ไม่ทำงาน
- สร้างกลุ่มรักษาความปลอดภัยป้อมปราการที่อนุญาตการเข้าถึง SSH ขาเข้า (พอร์ต TCP 22) จากสภาพแวดล้อมในพื้นที่ของคุณ
- อัปเดตกลุ่มความปลอดภัยสำหรับคลัสเตอร์เพื่ออนุญาตการเข้าถึง SSH ขาเข้าจากกลุ่มความปลอดภัยของป้อมปราการ
- สร้างอินสแตนซ์ EC2 Linux
- สำหรับ ภาพเครื่องอเมซอนเลือก เซิร์ฟเวอร์ Ubuntu 20.04 LTS.
- สำหรับ ประเภทอินสแตนซ์เลือก t3.เล็ก.
- ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร ตั้งค่าเครือข่าย ส่วน ให้ระบุพารามิเตอร์ต่อไปนี้:
- สำหรับ วี.พี.ซีเลือก SageMaker ไฮเปอร์พอด VPC (ซึ่งคุณสร้างด้วยเทมเพลต CloudFormation)
- สำหรับ ซับเน็ตให้เลือกเครือข่ายย่อยสาธารณะที่คุณสร้างด้วยเทมเพลต CloudFormation
- สำหรับ กลุ่มความปลอดภัยทั่วไปให้เลือกกลุ่มความปลอดภัยของป้อมปราการที่คุณสร้างขึ้น
- สำหรับ กำหนดค่าพื้นที่เก็บข้อมูลให้ตั้งค่าพื้นที่เก็บข้อมูลเป็น 8 GB
- ระบุที่อยู่ IP สาธารณะของโฮสต์ Bastion และที่อยู่ IP ส่วนตัวของอินสแตนซ์เป้าหมาย (เช่น โหนดเข้าสู่ระบบของคลัสเตอร์) และเพิ่มรายการโฮสต์สองรายการในการกำหนดค่า SSH โดยอ้างอิงจากตัวอย่างต่อไปนี้:
- เรียกใช้
ssh
คำสั่งโดยใช้ชื่อโฮสต์เป้าหมายที่คุณระบุไว้ก่อนหน้านี้ และยืนยันว่าคุณสามารถเข้าสู่ระบบอินสแตนซ์ด้วยผู้ใช้ที่ระบุ:
ทำความสะอาด
ทำความสะอาดทรัพยากรตามลำดับต่อไปนี้:
- ลบคลัสเตอร์ HyperPod
- ลบ Network Load Balancer
- ลบกลุ่มเป้าหมายที่ปรับสมดุลโหลด
- ลบใบรับรองที่นำเข้าไปยังตัวจัดการใบรับรอง
- ลบอินสแตนซ์ EC2 Windows
- ลบอินสแตนซ์ EC2 Linux สำหรับโฮสต์ป้อมปราการ
- ลบ AWS Managed Microsoft AD
- ลบสแต็ก CloudFormation สำหรับ VPC, ซับเน็ต, กลุ่มความปลอดภัย และ FSx สำหรับโวลุ่ม Luster
สรุป
โพสต์นี้ระบุขั้นตอนในการสร้างคลัสเตอร์ HyperPod ที่ผสานรวมกับ Active Directory โซลูชันนี้ขจัดความยุ่งยากในการบำรุงรักษาผู้ใช้บนคลัสเตอร์ขนาดใหญ่ และช่วยให้คุณสามารถจัดการผู้ใช้และกลุ่มจากส่วนกลางได้ในที่เดียว
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ HyperPod โปรดดูที่ เวิร์กช็อปไฮเปอร์พอด และ คู่มือนักพัฒนา SageMaker HyperPod- แสดงความคิดเห็นของคุณเกี่ยวกับโซลูชันนี้ในส่วนความเห็น
เกี่ยวกับผู้เขียน
โทโมโนริ ชิโมมูระ เป็นสถาปนิกโซลูชันอาวุโสในทีม Amazon SageMaker ซึ่งเขาให้คำปรึกษาทางเทคนิคเชิงลึกแก่ลูกค้า SageMaker และแนะนำการปรับปรุงผลิตภัณฑ์ให้กับทีมผลิตภัณฑ์ ก่อนที่จะมาร่วมงานกับ Amazon เขาเคยทำงานเกี่ยวกับการออกแบบและพัฒนาซอฟต์แวร์แบบฝังตัวสำหรับคอนโซลวิดีโอเกม และตอนนี้เขาใช้ทักษะเชิงลึกของเขาในเทคโนโลยีด้านคลาวด์ ในเวลาว่าง เขาสนุกกับการเล่นวิดีโอเกม อ่านหนังสือ และเขียนซอฟต์แวร์
จูเซปเป้ แองเจโล พอร์เชลลี เป็นสถาปนิกโซลูชันผู้เชี่ยวชาญด้านการเรียนรู้ของเครื่องหลักสำหรับ Amazon Web Services ด้วยเวลาหลายปีด้านวิศวกรรมซอฟต์แวร์และพื้นหลัง ML เขาทำงานร่วมกับลูกค้าทุกขนาดเพื่อทำความเข้าใจความต้องการทางธุรกิจและทางเทคนิคของพวกเขา และออกแบบโซลูชัน AI และ ML ที่ใช้ประโยชน์สูงสุดจาก AWS Cloud และ Amazon Machine Learning stack เขาทำงานในโครงการต่างๆ ในโดเมนต่างๆ รวมถึง MLOps, คอมพิวเตอร์วิทัศน์ และ NLP ที่เกี่ยวข้องกับชุดบริการต่างๆ ของ AWS ในเวลาว่าง Giuseppe ชอบเล่นฟุตบอล
มณฑิภา จักรบอร์ตี ปัจจุบันทำหน้าที่เป็นวิศวกรพัฒนาซอฟต์แวร์อาวุโสที่ Amazon Web Services (AWS) โดยเฉพาะภายในทีม SageMaker HyperPod เธอมุ่งมั่นที่จะช่วยเหลือลูกค้าด้วยการออกแบบและใช้งานระบบที่แข็งแกร่งและปรับขนาดได้ซึ่งแสดงให้เห็นถึงความเป็นเลิศในการปฏิบัติงาน ด้วยประสบการณ์การพัฒนาซอฟต์แวร์เกือบทศวรรษ Monidipa ได้มีส่วนร่วมในภาคส่วนต่างๆ ภายใน Amazon รวมถึงวิดีโอ การค้าปลีก Amazon Go และ AWS SageMaker
สาธิต ปสุมาธี เป็นนักพัฒนาซอฟต์แวร์ที่ Amazon Web Services ด้วยประสบการณ์ด้านวิศวกรรมซอฟต์แวร์และพื้นฐาน ML มาหลายปี เขาชอบที่จะเชื่อมช่องว่างระหว่าง ML และระบบ และมีความหลงใหลที่จะสร้างระบบที่ทำให้การฝึกอบรมโมเดลขนาดใหญ่เป็นไปได้ เขาเคยทำงานในโครงการต่างๆ ในหลากหลายโดเมน รวมถึงเฟรมเวิร์กการเรียนรู้ของเครื่อง การวัดประสิทธิภาพโมเดล การสร้างไฮเปอร์พอดเบต้าที่เกี่ยวข้องกับชุดบริการของ AWS ที่หลากหลาย ในเวลาว่าง สาธิตชอบเล่นแบดมินตัน
- เนื้อหาที่ขับเคลื่อนด้วย SEO และการเผยแพร่ประชาสัมพันธ์ รับการขยายวันนี้
- PlatoData.Network Vertical Generative Ai เพิ่มพลังให้กับตัวเอง เข้าถึงได้ที่นี่.
- เพลโตไอสตรีม. Web3 อัจฉริยะ ขยายความรู้ เข้าถึงได้ที่นี่.
- เพลโตESG. คาร์บอน, คลีนเทค, พลังงาน, สิ่งแวดล้อม แสงอาทิตย์, การจัดการของเสีย. เข้าถึงได้ที่นี่.
- เพลโตสุขภาพ เทคโนโลยีชีวภาพและข่าวกรองการทดลองทางคลินิก เข้าถึงได้ที่นี่.
- ที่มา: https://aws.amazon.com/blogs/machine-learning/integrate-hyperpod-clusters-with-active-directory-for-seamless-multi-user-login/