บน Amazon Elastic Container Service (Amazon ECS)
Amazon Elastic Container Service (Amazon ECS) คือ Amazon Web Service ที่คุณใช้งานเพื่อเรียกใช้แอปพลิเคชัน Docker บนคลัสเตอร์ที่ปรับขนาดได้ ในบทแนะนำสอนการใช้งานนี้ คุณจะได้เรียนรู้วิธีการเรียกใช้แอปพลิเคชันตัวอย่างแบบเปิดใช้งาน Docker บนคลัสเตอร์ Amazon ECS เบื้องหลังโหลดบาลานเซอร์ ทดสอบแอปพลิเคชัน และลบทรัพยากรเพื่อหลีกเลี่ยงค่าใช้จ่าย
ทุกสิ่งที่ทำในบทแนะนำสอนการใช้งานนี้สามารถใช้กับ Free Tier ได้
จัดการทรัพยากร AWS ของคุณ
ลงชื่อเข้าใช้คอนโซลตัวช่วยเริ่มต้น Amazon ECS จะช่วยนำคุณไปในการสร้างคลัสเตอร์และเปิดใช้งานเว็บแอปพลิเคชันตัวอย่าง ในขั้นตอนนี้ คุณจะต้องเข้าสู่คอนโซล Amazon ECS และเปิดใช้ตัวช่วย
ข. ด้วย Amazon ECS คุณมีตัวเลือกที่จะใช้ Amazon Elastic Container Registry (Amazon ECR) เพื่อสร้างคลังเก็บข้อมูลอิมเมจและนำอิมเมจเข้าไปเก็บไว้เป็นส่วนหนึ่งของตัวช่วยเริ่มต้น (ดูภาพหน้าจอด้านขวา) คุณสมบัตินี้มีให้บริการเฉพาะในเขตที่คัดสรรแล้วเท่านั้น
- หากคุณไม่มีตัวเลือก Amazon ECR ให้ข้ามไปยังขั้นตอนที่ 2
- หากคุณมีตัวเลือก Amazon ECR ให้นำเครื่องหมายออกจากช่องที่อยู่ถัดจาก Deploy a sample application onto an Amazon ECS Cluster (ปรับใช้แอปพลิเคชันตัวอย่างลงในคลัสเตอร์ Amazon ECS) และเลือก Continue (ดำเนินการต่อ)
คำจำกัดความของงานเปรียบเหมือนแบบแผนสำหรับแอปพลิเคชันของคุณ ในขั้นตอนนี้ คุณจะต้องกำหนดคำจำกัดความของงานเพื่อให้ Amazon ECS รู้ว่าอิมเมจ Docker ใดที่จะใช้สำหรับคอนเทนเนอร์ จำนวนของคอนเทนเนอร์ที่จะใช้กับงานนี้มีเท่าใด และการจัดสรรทรัพยากรสำหรับแต่ละคอนเทนเนอร์
คำจำกัดความของงานมาพร้อมกับค่าการกำหนดค่าเริ่มต้น
- ตรวจสอบค่าเริ่มต้นและเลือก Next Step (ขั้นตอนถัดไป)
หากคุณต้องการดัดแปลงการกำหนดค่าหรือเรียนรู้เพิ่มเติม ดูที่ พารามิเตอร์คำจำกัดความของงาน
ในตอนนี้เมื่อคุณสร้างคำจำกัดความของงานแล้ว คุณจะต้องกำหนดค่า Amazon ECS service บริการที่เปิดใช้งานและรักษาสำเนาของคำจำกัดความของงานในคลัสเตอร์ของคุณ ตัวอย่างเช่น ด้วยการใช้งานแอปพลิเคชันเป็นบริการ Amazon ECS จะกู้คืนงานที่หยุดไปโดยอัตโนมัติและรักษาจำนวนของสำเนาที่คุณกำหนดไว้
ก. ตัวเลือกการกำหนดค่าบริการ:
- ชื่อของบริการ:sample-webapp เริ่มต้นคือแอปพลิเคชัน "Hello World" ที่มีพื้นฐานบนเว็บซึ่งจัดเตรีัยมโดย AWS โดยถูกกำหนดให้ทำงานอย่างไม่มีจำกัด ดังนั้นด้วยการใช้งานเป็นบริการ แอปพลิเคชันจะรีสตาร์ทหากงานไม่อยู่ในสภาพที่ดีหรือหยุดทำงานอย่างไม่คาดคิด
- จำนวนงานที่ต้องการ: เพื่อให้อยู่ภายใน AWS free tier ปล่อยค่าเริ่มต้นไว้ที่ 1 ซึ่งจะเป็นการสร้าง 1 สำเนาจากงานของคุณ
ข. Elastic load balancing: คุณมีตัวเลือกที่จะใช้งานโหลดบาลานเซอร์กับบริการของคุณ Amazon ECS สามารถสร้างโหลดบาลานเซอร์ Elastic Load Balancing (ELB) เพื่อกระจายการใช้งานในอินสแตนซ์คอนเทนเนอร์ที่งานของคุณจะเปิดใช้งาน
- ชื่อคอนเทนเนอร์: พอร์ตโฮสต์: เลือก Simple-app:80
- ค่าเริ่มต้นสำหรับ โปรโตคอลกระบวนการรองรับ ELB, พอร์ตกระบวนการรองรับ ELB และการตรวจสอบสภาพ ELB ถูกตั้งไว้สำหรับแอปพลิเคชันตัวอย่าง สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดค่า Load Balancing Service Load Balancing
ค. ก่อนที่คุณจะติดตั้งโหลดบาลานเซอร์เข้ากับ Amazon ECS service คุณจะต้องสร้างบทบาท Identity and Access Management (IAM) สำหรับบริการที่จะใช้งาน ซึ่งจะช่วยให้ Amazon ECS สามารถเรียก Amazon EC2 และ Elastic Load Balancing API เพื่อลงทะเบียนและถอนการลงทะเบียนอินสแตนซ์ด้วยโหลดบาลานเซอร์ของคุณ
- หากคุณไม่มีบทบาท IAM บริการอยู่ก่อนหน้า Amazon ECS จะสร้างขึ้นมาหนึ่งรายการชื่อว่า ecsServiceRole
- หากคุณมีบทบาท Amazon ECS service อยู่แล้ว ให้เลือกจากเมนูดรอปดาวน์
งาน Amazon ECS ของคุณใช้งานคลัสเตอร์ ซึ่งเป็นชุดของอินสแตนซ์คอนเทนเนอร์ที่ใช้งานเอเจนต์คอนเทนเนอร์ Amazon ECS ในขั้นตอนนี้ คุณจะต้องกำหนดค่าคลัสเตอร์ ตรวจสอบการตั้งค่าความปลอดภัย และตั้งบทบาท IAM
ก. ดำเนินการตามการตั้งค่าการกำหนดค่าด้านล่าง:
- ชื่อคลัสเตอร์: ให้ป้อน sample-cluster
- ประเภท EC2 instance: ประเภทอินสแตนซ์ t2.micro เริ่มต้นจะให้คุณยังอยู่ในแบบ free tier ประเภทอินสแตนซ์ที่มีทรัพยากร CPU และหน่วยความจำมากกว่าสามารถจัดการกับงานได้มากกว่า สำหรับข้อมูลเพิ่มเติมเกี่ยวกับอินสแตนซ์ที่แตกต่างกัน ดูที่ ประเภท Amazon EC2 Instance
- จำนวนของอินสแตนซ์: ปล่อยเป็นค่าเริ่มต้นที่ 1 เพื่อเปิดใช้ Amazon EC2 instance หนึ่งตัวให้เปิดใช้กับคลัสเตอร์ของคุณสำหรับงานที่วางไว้ ยิ่งมีอินสแตนซ์ในคลัสเตอร์มากขึ้น ยิ่งสามารถจัดการกับงานได้มากขึ้น
- คู่คีย์: คู่คีย์นั้นจำเป็นต่อการ SSH ในอินสแตนซ์ของคุณในภายหลัง คุณสามารถดำเนินการต่อได้โดยเลือก ไม่มี - ไม่สามารถ SSH ได้ เลือกคู่คีย์เดิมที่มีอยู่หรือโดยการสร้างขึ้นมาหนึ่งรายการในคอนโซล Amazon EC2
ในขั้นตอนก่อนหน้านี้ คุณได้กำหนดค่าคำจำกัดความงานของคุณ (ซึ่งเป็นเหมือนแบบแผนของแอปพลิเคชัน) Amazon ECS service (ซึ่งเปิดใช้งานและรักษาสำเนาของคำจำกัดความงานของคุณ) และคลัสเตอร์ของคุณ (ซึ่งเป็นชุดของอินสแตนซ์คอนเทนเนอร์ที่ใช้งานเอเจนต์คอนเทนเนอร์) ในขั้นตอนนี้ คุณจะต้องตรวจสอบ เปิดใช้งาน และดูทรัพยากรที่คุณสร้างขึ้น
ในขั้นตอนนี้ คุณจะต้องยืนยันว่าแอปพลิเคชันตัวอย่างนั้นพร้อมและทำงานโดยเปิดเบราว์เซอร์ของคุณไปที่ชื่อ DNS ของโหลดบาลานเซอร์
ในบทแนะนำสอนการใช้งานนี้ คุณได้เปิดใช้งานทรัพยากรสามรายการได้แก่ คลัสเตอร์ Amazon ECS, Amazon EC2 instance และโหลดบาลานเซอร์ ในขั้นตอนนี้ คุณจะต้องล้างข้อมูลทรัพยากรทั้งหมดเพื่อหลีกเลี่ยงค่าใช้จ่ายที่ไม่ต้องการ
ง. ลบ Amazon EC2 instance ที่ถูกเปิดใช้งานด้วยคลัสเตอร์ของคุณ:
- เข้าสู่คอนโซล Amazon EC2
- ในแผงทางด้านซ้าย ให้เลือกอินสแตนซ์
- ทำเครื่องหมายในกล่องทำเครื่องหมายที่อยู่ถัดจากอินสแตนซ์ชื่อว่า ECS Instance - EC2ContainerService-default
- เลือก การดำเนินการ > สถานะของอินสแตนซ์ > ยกเลิกการใช้งาน
ขอแสดงความยินดี! คุณได้เรียนรู้วิธีกำหนดค่า ปรับใช้ และลบแอปพลิเคชันแบบเปิดใช้งาน Docker ของคุณกับ Amazon Elastic Container Service (Amazon ECS) Amazon ECS เป็นบริการจัดการคอนเทนเนอร์ประสิทธิภาพสูงที่ปรับขนาดได้ในระดับสูงซึ่งสนับสนุนคอนเทนเนอร์ Docker และช่วยให้คุณสามารถเรียกใช้แอปพลิเคชันในคลัสเตอร์ที่มีการจัดการของ Amazon EC2 instance
ตอนนี้คุณได้เรียนรู้วิธีการปรับใช้แอปพลิเคชันแบบเปิดใช้งาน Docker กับ Amazon ECS คุณสามารถดำเนินการต่อไปยังบทแนะนำสอนการใช้งานถัดไปซึ่งคุณจะได้เรียนรู้วิธีสร้าง Docker Registry เพื่อจัดเก็บอิมเมจคอนเทนเนอร์ของคุณ คุณจะต้องสร้างอิมเมจ Docker นำเข้าสู่คลัง และใช้เพื่อปรับใช้แอปพลิเคชันบน Amazon ECS