คำถามที่พบบ่อยเกี่ยวกับ AWS Elastic Beanstalk

ข้อมูลทั่วไป

AWS Elastic Beanstalk ช่วยให้ Developer ปรับใช้และจัดการแอปพลิเคชันใน AWS Cloud ได้ง่ายขึ้น Developer เพียงอัปโหลดแอปพลิเคชันของตน แล้ว Elastic Beanstalk จะจัดการการปรับใช้รายละเอียดของการจัดเตรียมขีดความสามารถ การโหลดบาลานซ์ การปรับขยายอัตโนมัติ ไปจนถึงการเฝ้าติดตามสถานภาพของแอปพลิเคชันโดยอัตโนมัติ

ผู้ที่ต้องการปรับใช้และจัดการแอปพลิเคชันของตนใน AWS Cloud ภายในไม่กี่นาที คุณไม่จำเป็นต้องมีประสบการณ์การใช้การประมวลผลบนคลาวด์เพื่อเริ่มใช้งาน AWS Elastic Beanstalk รองรับเว็บแอปพลิเคชัน Java, .NET, PHP, Node.js, Python, Ruby, Go และ Docker

AWS Elastic Beanstalk รองรับภาษาและสแตกการพัฒนาต่อไปนี้:

Apache Tomcat สำหรับแอปพลิเคชัน Java

Apache HTTP Server สำหรับแอปพลิเคชัน PHP

Apache HTTP Server สำหรับแอปพลิเคชัน Python

Nginx หรือ Apache HTTP Server สำหรับแอปพลิเคชัน Node.js

Passenger หรือ Puma สำหรับแอปพลิเคชัน Ruby

Microsoft IIS 7.5, 8.0, และ 8.5 สำหรับแอปพลิเคชัน .NET

Java SE

Docker

Go

ดูภาษาและสแตกการพัฒนาที่รองรับทั้งหมดได้ใน "แพลตฟอร์มที่รองรับ"

ใช่ มีการออกแบบ AWS Elastic Beanstalk เพื่อให้สามารถขยายการรองรับภาษาและสแตกการพัฒนาที่มากมายในอนาคต AWS กำลังทำงานร่วมกับผู้ให้บริการโซลูชันเพื่อพัฒนา API และความสามารถที่จำเป็นเพื่อให้ Elastic Beanstalk มอบการทำงานอื่นๆ เพิ่มเติมได้

AWS Elastic Beanstalk ทำให้รายละเอียดของการจัดเตรียมขีดความสามารถ การบาลานซ์โหลด การปรับขนาดอัตโนมัติ และการปรับใช้แอปพลิเคชันทำงานโดยอัตโนมัติ ซึ่งก่อเป็นสภาพแวดล้อมที่รันเวอร์ชันของแอปพลิเคชัน คุณเพียงอัปโหลดโค้ดที่ปรับใช้ได้ (เช่น ไฟล์ WAR) แล้ว AWS Elastic Beanstalk จะจัดการที่เหลือให้เอง AWS Toolkit for Visual Studio และ AWS Toolkit for Eclipse ช่วยให้คุณสามารถปรับใช้แอปพลิเคชันไปยัง AWS Elastic Beanstalk และจัดการโดยไม่ต้องออกจาก IDE ของคุณ เมื่อแอปพลิเคชันของคุณทำงานแล้ว Elastic Beanstalk จะทำให้งานด้านการจัดการเป็นไปโดยอัตโนมัติ เช่น การเฝ้าติดตาม การปรับใช้เวอร์ชันของแอปพลิเคชัน การตรวจสอบสถานภาพพื้นฐาน และการอำนวยความสะดวกการเข้าถึงไฟล์บันทึก เมื่อใช้ Elastic Beanstalk Developer จะสามารถมุ่งเน้นการพัฒนาแอปพลิเคชันของตนและเป็นอิสระจากงานด้านการปรับใช้ เช่น การจัดเตรียมเซิร์ฟเวอร์ การตั้งค่าการบาลานซ์โหลด หรือการจัดการการปรับขยาย

แม้คอนเทนเนอร์แอปพลิเคชันหรือโซลูชันแพลตฟอร์มในฐานะบริการส่วนใหญ่จะลดปริมาณการเขียนโปรแกรมที่จำเป็นลงได้ แต่ก็ลดความยืดหยุ่นและการควบคุมของ Developer ลงมากเช่นกัน Developer ถูกบังคับให้ต้องทำงานกับสิ่งที่ผู้จำหน่ายได้ตัดสินใจไว้แล้ว โดยแทบไม่มีโอกาสที่จะควบคุมส่วนต่างๆ ของโครงสร้างพื้นฐานแอปพลิเคชันของตน แต่เมื่อใช้ AWS Elastic Beanstalk ทาง Developer จะยังคงสามารถควบคุมแหล่งทรัพยากร AWS ที่ขับเคลื่อนแอปพลิเคชันของตนได้โดยสมบูรณ์ หาก Developer ตัดสินใจว่าต้องการจัดการกับองค์ประกอบโครงสร้างพื้นฐานบางส่วน (หรือทั้งหมด) ทาง Developer ก็สามารถดำเนินการได้อย่างลื่นไหลโดยใช้ความสามารถในการจัดการของ Elastic Beanstalk ได้

ด้วย AWS Elastic Beanstalk คุณสามารถ:

เลือกระบบปฏิบัติการที่ตรงกับความต้องการของแอปพลิเคชัน (เช่น Amazon Linux หรือ Windows Server 2016)

เลือกจากอินสแตนซ์ Amazon EC2 ประกอบไปด้วยอินสแตนซ์ตามความต้องการ อินสแตนซ์แบบเหมาจ่าย และอินสแตนซ์ Spot 

เลือกฐานข้อมูลและพื้นที่จัดเก็บจากหลากหลายตัวเลือกที่มี

เปิดใช้งานการเข้าถึงการเข้าสู่ระบบไปยัง Amazon EC2 Instance เพื่อแก้ไขปัญหาโดยตรงในทันที

ปรับปรุงความเชื่อถือได้ของแอปพลิเคชันอย่างรวดเร็วด้วยการเรียกใช้ใน Availability Zone หนึ่งแห่งขึ้นไป

เพิ่มความปลอดภัยของแอปพลิเคชันโดยการเปิดใช้งานโปรโตคอล HTTPS บนโหลดบาลานเซอร์

เข้าถึงการเฝ้าติดตาม Amazon CloudWatch ในตัวและการรับการแจ้งเตือนเรื่องสถานภาพของแอปพลิเคชัน รวมถึงเหตุการณ์สำคัญอื่นๆ

ปรับเปลี่ยนการตั้งค่าเซิร์ฟเวอร์ของแอปพลิเคชัน (เช่น การตั้งค่า JVM) และส่งต่อตัวแปรทางสภาพแวดล้อม

เรียกใช้ส่วนประกอบของแอปพลิเคชัน เช่น บริการแคชหน่วยความจำร่วมกันใน Amazon EC2

เข้าถึงไฟล์บันทึกโดยไม่ต้องเข้าสู่ระบบเซิร์ฟเวอร์ของแอปพลิเคชัน

AWS Elastic Beanstalk ใช้คุณสมบัติและบริการของ AWS ที่ผ่านการพิสูจน์แล้ว เช่น Amazon EC2, Amazon RDS, Elastic Load Balancing, Auto Scaling, Amazon S3 และ Amazon SNS เพื่อสร้างสภาพแวดล้อมที่เรียกใช้แอปพลิเคชันของคุณได้ AWS Elastic Beanstalk เวอร์ชันปัจจุบันใช้ Amazon Linux AMI หรือ Windows Server 2019

AWS Elastic Beanstalk รองรับ Java, .NET, PHP, Node.js, Python, Ruby, Go และ Docker และเหมาะสำหรับเว็บแอปพลิเคชัน นอกจากนี้ ด้วยสถาปัตยกรรมแบบเปิดของ Elastic Beanstalk ทำให้แอปพลิเคชันที่ไม่ได้อยู่บนเว็บก็สามารถปรับใช้ด้วย Elastic Beanstalk ได้ด้วย เราคาดว่าจะรองรับประเภทแอปพลิเคชันและภาษาในการเขียนโปรแกรมได้เพิ่มอีกในอนาคต โปรดดูแพลตฟอร์มที่รองรับเพื่อเรียนรู้เพิ่มเติม

AWS Elastic Beanstalk เรียกใช้บน Amazon Linux AMI และ Windows Server AMI Amazon Web Services ให้การรองรับและรักษา AMI ทั้งคู่ซึ่งออกแบบมาให้มอบสภาพแวดล้อมการดำเนินการที่เสถียร ปลอดภัย และมีประสิทธิภาพสูงแก่การประมวลผลระบบคลาวด์ของ Amazon EC2

เริ่มต้นใช้งาน

เลือกปุ่มลงชื่อสมัครใช้งานวันนี้ในหน้ารายละเอียดของ Elastic Beanstalk เพื่อลงชื่อสมัครใช้งาน AWS Elastic Beanstalk คุณต้องมีบัญชี Amazon Web Services เพื่อเข้าถึงบริการนี้ หากคุณไม่มีบัญชี คุณจะได้รับแจ้งให้สร้างบัญชีเมื่อเริ่มลงทะเบียน Elastic Beanstalk เมื่อลงชื่อสมัครใช้งานแล้ว โปรดดูคู่มือเริ่มต้นใช้งาน AWS Elastic Beanstalk

การลงทะเบียน AWS Elastic Beanstalk กำหนดให้คุณต้องมีหมายเลขโทรศัพท์และอีเมลที่ถูกต้องบันทึกไว้กับ AWS ในกรณีที่เราต้องติดต่อคุณ การยืนยันหมายเลขโทรศัพท์ของคุณใช้เวลาเพียงไม่กี่นาที และคุณจะได้รับสายที่โทรอัตโนมัติระหว่างขั้นตอนการลงทะเบียน คุณต้องใส่รหัส PIN โดยใช้แป้นพิมพ์บนโทรศัพท์ด้วย

วิธีที่ดีที่สุดในการเริ่มต้นใช้งาน AWS Elastic Beanstalk คือการใช้ตามคู่มือเริ่มต้นการใช้งาน AWS Elastic Beanstalk ซึ่งเป็นหนึ่งในเอกสารประกอบทางเทคนิคของเรา คุณจะสามารถติดตั้งใช้จริงและใช้แอปพลิเคชันตัวอย่างหรืออัปโหลดแอปพลิเคชันของคุณได้ภายในไม่กี่นาที

ใช่ AWS Elastic Beanstalk ประกอบด้วยแอปพลิเคชันตัวอย่างที่คุณสามารถใช้เพื่อทดลองใช้ข้อเสนอดังกล่าวและสำรวจฟังก์ชัน

ฐานข้อมูลและพื้นที่จัดเก็บ

ใช่ AWS Elastic Beanstalk จัดเก็บไฟล์แอปพลิเคชันและเลือกที่จะเก็บไฟล์บันทึกเซิร์ฟเวอร์ไว้ใน Amazon S3 ได้ หากคุณกำลังใช้ AWS Management Console, AWS Toolkit for Visual Studio หรือ AWS Toolkit for Eclipse จะมีการสร้างบัคเก็ต Amazon S3 ในบัญชีของคุณเพื่อคัดลอกไฟล์ที่คุณอัปโหลดในไคลเอนต์ในเครื่องไปยัง Amazon S3 โดยอัตโนมัติ อีกทั้งเลือกได้ว่าอาจกำหนดค่า Elastic Beanstalk ให้คัดลอกไฟล์บันทึกเซิร์ฟเวอร์ของคุณไปยัง Amazon S3 ทุกชั่วโมง คุณดำเนินการนี้ได้โดยการแก้ไขการตั้งค่าการกำหนดค่าสภาพแวดล้อม

ใช่ คุณสามารถใช้ Amazon S3 เป็นพื้นที่จัดเก็บของแอปพลิเคชันได้ วิธีที่ง่ายที่สุดในการดำเนินการนี้คือการรวม AWS SDK เป็นส่วนหนึ่งของไฟล์ที่ปรับใช้ได้ของแอปพลิเคชัน ตัวอย่างเช่น คุณสามารถรวม AWS SDK for Java เป็นส่วนหนึ่งของไฟล์ WAR ของแอปพลิเคชันได้

AWS Elastic Beanstalk ไม่ได้จำกัดเทคโนโลยีการเก็บรักษาข้อมูลที่เฉพาะเจาะจง คุณสามารถเลือก Amazon Relational Database Service (Amazon RDS) หรือ Amazon DynamoDB หรือใช้ Microsoft SQL Server, Oracle หรือฐานข้อมูลเชิงสัมพันธ์อื่นๆ ที่เรียกใช้บน Amazon EC2

Elastic Beanstalk สามารถจัดเตรียมอินสแตนซ์ DB ของ Amazon RDS ได้โดยอัตโนมัติ ข้อมูลเกี่ยวกับการเชื่อมต่อไปยังอินสแตนซ์ DB จะแสดงไปยังแอปพลิเคชันของคุณตามตัวแปรสภาพแวดล้อม ในการเรียนรู้เพิ่มเติมเกี่ยวกับวิธีการกำหนดค่าอินสแตนซ์ DB ของ RDS สำหรับสภาพแวดล้อมของคุณ โปรดดูคู่มือเกี่ยวกับ Elastic Beanstalk สำหรับ Developer

ไม่ใช่กับ AWS Elastic Beanstalk ด้วย Elastic Beanstalk คุณสามารถระบุข้อมูลการเชื่อมต่อในการกำหนดค่าสภาพแวดล้อมได้ คุณสามารถกำหนดค่าสภาพแวดล้อมต่างๆ ของ Elastic Beanstalk เพื่อใช้ฐานข้อมูลต่างๆ โดยการแยกสตริงการเชื่อมต่อดังกล่าวจากรหัสแอปพลิเคชัน

การรักษาความปลอดภัย

แอปพลิเคชันของคุณสามารถเข้าถึงได้แบบสาธารณะทาง myapp.elasticbeanstalk.com ตามค่าเริ่มต้น คุณสามารถใช้ Amazon VPC เพื่อจัดเตรียมส่วนแยกที่เป็นส่วนตัวของแอปพลิเคชันในเครือข่ายเสมือนที่คุณระบุ เครือข่ายเสมือนนี้สามารถทำให้เป็นแบบส่วนตัวผ่านกฎกลุ่มความปลอดภัยที่เฉพาะเจาะจง เครือข่าย ACL และตารางเส้นทางที่กำหนดเอง นอกจากนี้ คุณยังสามารถควบคุมได้อย่างง่ายดายว่าข้อมูลขาเข้าอื่นๆ เช่น SSH จะถูกส่งไปยังเซิร์ฟเวอร์แอปพลิเคชันของคุณหรือไม่ โดยการเปลี่ยนการตั้งค่ากลุ่มความปลอดภัย EC2

ได้ คุณสามารถเรียกใช้แอปพลิเคชันใน VPC ได้ สำหรับรายละเอียดเพิ่มเติม โปรดดูคู่มือเกี่ยวกับ AWS Elastic Beanstalk สำหรับ Developer

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับความปลอดภัยของ AWS โปรดดู Amazon Web Services: เอกสารภาพรวมของกระบวนการความปลอดภัย และไปที่ศูนย์ความปลอดภัยของเรา

ใช่ ในตอนนี้ผู้ใช้ IAM ที่มีสิทธิ์อันเหมาะสมสามารถโต้ตอบกับ AWS Elastic Beanstalk ได้

อนุญาตให้คุณจัดการผู้ใช้และกลุ่มแบบรวมศูนย์ได้ คุณสามารถควบคุมว่าผู้ใช้ IAM ใดจะมีสิทธิ์เข้าถึง AWS Elastic Beanstalk และจำกัดสิทธิ์ให้เป็นการเข้าถึง Elastic Beanstalk เพื่ออ่านอย่างเดียวให้แก่ผู้ปฏิบัติงานที่ไม่สามารถดำเนินการกับทรัพยากรของ Elastic Beanstalk ได้ กิจกรรมของผู้ใช้ทั้งหมดภายในบัญชีของคุณจะรวมอยู่ภายใต้การเรียกเก็บเงิน AWS ครั้งเดียว

คุณสามารถใช้ Console ของ IAM, IAM Command Line Interface (CLI) หรือ API ของ IAM ในการจัดเตรียมผู้ใช้ IAM ได้ ผู้ใช้ IAM จะไม่มีสิทธิ์เข้าถึงบริการของ AWS ตามค่าเริ่มต้นจนกว่าจะมีการอนุญาต

คุณสามารถให้สิทธิ์การเข้าถึงบริการต่างๆ แก่ผู้ใช้ IAM โดยใช้นโยบาย คุณสามารถใช้เทมเพลตนโยบายใน Console ของ IAM เพื่อช่วยคุณเริ่มระบุกระบวนการการมอบการเข้าถึง AWS Elastic Beanstalk AWS Elastic Beanstalk นำเสนอสองเทมเพลต: เทมเพลตการเข้าถึงเพื่ออ่านเท่านั้นและเทมเพลตการเข้าถึงแบบสมบูรณ์ เทมเพลตการเข้าถึงเพื่ออ่านเท่านั้นให้สิทธิ์การอ่านทรัพยากร Elastic Beanstalk เทมเพลตการเข้าถึงแบบสมบูรณ์ให้สิทธิ์อย่างเต็มที่เพื่อดำเนินการกับ Elastic Beanstalk รวมถึงสิทธิ์ในการจัดการทรัพยากรที่ขึ้นต่อกัน เช่น Elastic Load Balancing, Auto Scaling และ Amazon S3 คุณยังสามารถใช้ AWS Policy Generator เพื่อสร้างนโยบายแบบกำหนดเองได้อีกด้วย สำหรับรายละเอียดเพิ่มเติม โปรดดูคู่มือเกี่ยวกับ AWS Elastic Beanstalk สำหรับ Developer

ใช่ คุณสามารถอนุญาตหรือปฏิเสธสิทธิ์สำหรับทรัพยากร AWS Elastic Beanstalk ที่เฉพาะเจาะจงได้ เช่น แอปพลิเคชัน เวอร์ชันของแอปพลิเคชัน และสภาพแวดล้อม

ทรัพยากรทั้งหมดที่ผู้ใช้ IAM สร้างขึ้นภายใต้บัญชีรากจะเป็นของบัญชีรากดังกล่าวและเรียกเก็บเงินจากบัญชีรากนั้น

บัญชีรากมีสิทธิ์เข้าถึงสภาพแวดล้อม AWS Elastic Beanstalk ทั้งหมดที่เปิดใช้งานโดยผู้ใช้ IAM ภายใต้บัญชีรากดังกล่าวโดยสมบูรณ์ หากคุณใช้เทมเพลต Elastic Beanstalk เพื่อให้การเข้าถึงแบบอ่านเท่านั้นแก่ผู้ใช้ IAM ผู้ใช้รายนั้นจะสามารถดูแอปพลิเคชัน เวอร์ชันแอปพลิเคชัน สภาพแวดล้อม และทรัพยากรที่เกี่ยวข้องทั้งหมดในบัญชีนั้นได้ หากคุณใช้เทมเพลต Elastic Beanstalk เพื่อให้การเข้าถึงแบบเต็มที่แก่ผู้ใช้ IAM ผู้ใช้รายนั้นจะสามารถสร้าง แก้ไข และยกเลิกทรัพยากร Elastic Beanstalk ใดๆ ภายใต้บัญชีดังกล่าวได้

ใช่ ผู้ใช้ IAM สามารถเข้าถึง Console ของ AWS Elastic Beanstalk ได้โดยใช้ชื่อผู้ใช้และรหัสผ่าน

ใช่ ผู้ใช้ IAM สามารถใช้คีย์การเข้าถึงและคีย์ลับเพื่อดำเนินการโดยใช้ API ของ AWS Elastic Beanstalk ได้

ใช่ ผู้ใช้ IAM สามารถใช้คีย์การเข้าถึงและคีย์ลับเพื่อดำเนินการโดยใช้ Command Line Interface (CLI) ของ AWS Elastic Beanstalk ได้

การอัปเดตแพลตฟอร์มที่มีการจัดการ

คุณสามารถเลือกให้สภาพแวดล้อม AWS Elastic Beanstalk อัปเดตแพลตฟอร์มพื้นฐานที่เรียกใช้แอปพลิเคชันของคุณเป็นเวอร์ชันล่าสุดโดยอัตโนมัติในช่วงเวลาบำรุงรักษาที่ระบุ Elastic Beanstalk เผยแพร่แพลตฟอร์มที่รองรับเวอร์ชันใหม่ออกมาเป็นประจำ (Java, PHP, Ruby, Node.js, Python, .NET, Go และ Docker) พร้อมด้วยการอัปเดตสำหรับระบบปฏิบัติการ เว็บเซิร์ฟเวอร์และแอปพลิเคชัน รวมถึงภาษาและเฟรมเวิร์กด้วย

คุณต้องเปิดใช้งานการอัปเดตแพลตฟอร์มที่จัดการในแท็บ Configuration (การกำหนดค่า) ที่ Console ของ Elastic Beanstalk หรือใช้ EB CLI หรือ API เพื่อให้ Elastic Beanstalk จัดการการอัปเดตแพลตฟอร์มได้โดยอัตโนมัติ หลังจากที่เปิดใช้งานคุณสมบัตินี้แล้ว คุณสามารถกำหนดค่าประเภทของการอัปเดตที่อนุญาตและช่วงเวลาที่จะมีการอัปเดตได้

AWS Elastic Beanstalk สามารถทำการอัปเดตแพลตฟอร์มสำหรับแพทช์และเวอร์ชันแพลตฟอร์มรองที่มาใหม่ได้โดยอัตโนมัติ Elastic Beanstalk จะไม่ทำการอัปเดตเวอร์ชันแพลตฟอร์มหลัก (เช่น Java 7 Tomcat 7 เป็น Java 8 Tomcat 8) โดยอัตโนมัติ เพราะการอัปเดตดังกล่าวประกอบด้วยการเปลี่ยนแปลงที่ใช้ร่วมกันกับการย้อนกลับไม่ได้และจำเป็นต้องมีการทดสอบเพิ่มเติม ในกรณีแบบนี้ คุณต้องเริ่มทำการอัปเดตด้วยตัวเอง

แพลตฟอร์มของ AWS Elastic Beanstalk มีการจัดเวอร์ชันโดยใช้รูปแบบนี้: MAJOR.MINOR.PATCH (เช่น 2.0.0) แต่ละส่วนจะเพิ่มขึ้นในกรณีต่อไปนี้:

เป็นเวอร์ชันหลักเมื่อมีการเปลี่ยนแปลงที่ใช้ร่วมกันไม่ได้

เป็นเวอร์ชันรองเมื่อมีฟังก์ชันเพิ่มเติมที่เพิ่มเข้ามาในรูปแบบที่ใช้ร่วมกันกับการย้อนกลับได้

เป็นเวอร์ชันแพทช์เมื่อมีการแก้ไขข้อผิดพลาดที่ใช้ร่วมกันกับการย้อนกลับได้

คุณสามารถทำการอัปเดตเวอร์ชันหลักได้ทุกเมื่อโดยใช้ Console การจัดการของ AWS Elastic Beanstalk, API หรือ CLI คุณมีตัวเลือกในการทำการอัปเดตเวอร์ชันหลักดังต่อไปนี้:

นำอัปเดตที่ให้บริการไปใช้ในสภาพแวดล้อมที่มี ดูการอัปเดตเวอร์ชันแพลตฟอร์มของสภาพแวดล้อม Elastic Beanstalk ของคุณ

สร้างการโคลนสภาพแวดล้อมที่มีด้วยเวอร์ชันแพลตฟอร์มใหม่ ดูการคัดลอกสภาพแวดล้อมเพื่อเรียนรู้เพิ่มเติม

การอัปเดตจะถูกนำไปใช้ตามกลไกการปรับใช้แบบไม่เปลี่ยนรูป เพื่อให้แน่ใจว่าสภาพแวดล้อมเดิมจะไม่เปลี่ยนแปลงจนกว่าฟลีตอินสแตนซ์ Amazon EC2 ที่ติดตั้งการอัปเดตแล้วจะพร้อมใช้แทนอินสแตนซ์ที่ทำงานอยู่ จากนั้นอินสแตนซ์เดิมเหล่านี้จะถูกยกเลิก นอกจากนี้ หากระบบคุณภาพ Elastic Beanstalk ตรวจพบปัญหาใดๆ ในระหว่างการอัปเดตนี้ ระบบจะเปลี่ยนเส้นทางการรับส่งข้อมูลไปยังฟลีตอินสแตนซ์ที่ใช้งานอยู่ เพื่อให้แน่ใจว่าผู้ใช้ปลายทางของแอปพลิเคชันจะได้รับผลกระทบน้อยที่สุด

เนื่องจากการอัปเดตแพลตฟอร์มที่จัดการแล้วใช้กลไกการปรับใช้ที่เปลี่ยนรูปไม่ได้ในการอัปเดต แอปพลิเคชันของคุณจะพร้อมใช้งานในช่วงที่มีการบำรุงรักษาและผู้ใช้ของแอปพลิเคชันจะไม่ได้รับผลกระทบจากการอัปเดตนี้

ไม่มีค่าใช้จ่ายเพิ่มเติมสำหรับคุณสมบัติการอัปเดตแพลตฟอร์มที่จัดการแล้ว คุณเพียงต้องชำระ EC2 instance เพิ่มเติมซึ่งจำเป็นต่อการทำการอัปเดตในช่วงของการอัปเดต

ช่วงที่มีการบำรุงรักษาคือช่วงเวลาสองชั่วโมงที่มีทุกสัปดาห์ซึ่ง AWS Elastic Beanstalk จะเริ่มการอัปเดตแพลตฟอร์ม หากเปิดใช้งานการอัปเดตแพลตฟอร์มที่มีการจัดการและมีแพลตฟอร์มเวอร์ชันใหม่พร้อมให้อัปเดต ตัวอย่างเช่น หากคุณเลือกช่วงที่มีการบำรุงรักษาซึ่งเริ่มทุกวันอาทิตย์เวลา 2.00 น. ทาง AWS Elastic Beanstalk จะเริ่มการอัปเดตแพลตฟอร์มระหว่างเวลา 2.00-4.00 น. ทุกวันอาทิตย์ โปรดทราบว่าการอัปเดตอาจแล้วเสร็จนอกช่วงเวลาที่วางไว้ซึ่งจะขึ้นอยู่กับการกำหนดค่าของแอปพลิเคชัน

ช่วงเวลาบำรุงรักษาจะตั้งค่าตามพื้นฐานสภาพแวดล้อม โดยคุณสามารถตั้งค่าช่วงเวลาบำรุงรักษาที่แตกต่างกันสำหรับแต่ละแอปพลิเคชันหรือส่วนต่างๆ ของแอปพลิเคชัน วิธีนี้ทำให้คุณสามารถอัปเดตสภาพแวดล้อมในเวลาที่เหลื่อมกันได้ หากคุณไม่ต้องการให้อัปเดตหลายส่วนของแอปพลิเคชันพร้อมกัน หากคุณเปิดใช้งานการอัปเดตแพลตฟอร์มที่จัดการแล้ว แต่ไม่ระบุช่วงที่มีการบำรุงรักษา จะมีการกำหนดช่วงบำรุงรักษา 2 ชั่วโมงทุกสัปดาห์ตามค่าเริ่มต้นให้แก่สภาพแวดล้อมของคุณ หากคุณต้องการเปลี่ยนเวลาที่มีการบำรุงรักษาในนามของคุณ สามารถทำได้โดยการแก้ไขการกำหนดค่าการอัปเดตที่จัดการใน AWS Management Console หรือใช้ UpdateEnvironment API

คุณจะได้รับการแจ้งเตือนว่ามีเวอร์ชันแพลตฟอร์มใหม่ที่พร้อมให้ใช้งานทาง AWS Management Console, การประกาศทางฟอรัม และบันทึกย่อประจำรุ่น

ดูรายละเอียดการเปลี่ยนแปลงระหว่างแพลตฟอร์มแต่ละเวอร์ชันได้ที่หน้าบันทึกย่อประจำรุ่นของ AWS Elastic Beanstalk

การดำเนินการเดียวที่คุณสามารถทำได้ขณะอัปเดตแพลตฟอร์มที่จัดการคือ ‘การยกเลิก’ การยกเลิกจะทำให้คุณหยุดการอัปเดตในทันทีและกลับไปเป็นเวอร์ชันเดิม

สภาพแวดล้อมของคุณจะอัปเดตเป็นเวอร์ชันล่าสุดที่มีพร้อมให้อัปเดตเสมอ ซึ่งขึ้นอยู่กับระดับ (การอัปเดตรองบวกกับแพทช์ หรือเฉพาะแพทช์อย่างเดียว) ที่คุณได้เลือก

รายละเอียดการอัปเดตแพลตฟอร์มที่จัดการแล้วทั้งหมดอยู่ในหน้า events (เหตุการณ์) และได้รับการแท็กเป็นเหตุการณ์ประเภท “MAINTENANCE” (การบำรุงรักษา)

จำนวนของเวอร์ชันใหม่ที่เผยแพร่ในปีนั้นๆ จะแตกต่างกันไปขึ้นอยู่กับความถี่และเนื้อหาของส่วนที่เผยแพร่ และแพตช์จากภาษา/เฟรมเวิร์กของผู้ให้บริการหรือทีมหลัก รวมทั้งผลของการตรวจสอบและแพตช์อย่างละเอียดโดยทีมวิศวกรแพลตฟอร์มของเรา

การสนับสนุน AWS Graviton

หากต้องการติดตั้งใช้แอปพลิเคชันของคุณที่มีโปรเซสเซอร์ที่ใช้ arm64 บน Elastic Beanstalk Console คุณสามารถเลือกสถาปัตยกรรมโปรเซสเซอร์และประเภทอินสแตนซ์จากแท็บความจุในกำหนดค่าการตั้งค่าตัวเลือกเพิ่มเติม

หากต้องการติดตั้งใช้แอปพลิเคชันของคุณโดยใช้ Elastic Beanstalk CLI, AWS CLI, CFN หรือ AWS CDK โปรดดูคู่มือนักพัฒนา Elastic Beanstalk

หากเวิร์กโหลดของคุณใช้ภาษาการเขียนโปรแกรมที่มีการตีความ เช่น Node.js, Python, Tomcat, PHP หรือ Ruby คุณไม่จำเป็นต้องคอมไพล์เวิร์กโหลดของคุณใหม่เพื่อใช้ Graviton หากคุณใช้ Go หรือ .Net Core สำหรับเวิร์กโหลด คุณจะต้องอัปเดตคำสั่ง build สำหรับประเภทอินสแตนซ์ arm64 นอกจากนั้น คุณต้องคอมไพล์การขึ้นต่อกันไบนารีใหม่หรือใช้การขึ้นต่อกันไบนารีที่เข้ากันได้กับ arm64 หากคุณใช้ Docker อิมเมจ Docker ของคุณต้องเป็นแบบหลายสถาปัตยกรรมและรองรับการติดตั้งใช้จริงกับทั้ง x86 และ arm64

Elastic Beanstalk รองรับ Graviton บน Amazon Linux 2 แบบ 64 บิตสำหรับแพลตฟอร์มและเวอร์ชันต่างๆ ดูรายการเต็มได้ที่เอกสารประกอบ

คุณสามารถเปลี่ยนเวิร์กโหลดของคุณเป็น Graviton ได้อย่างง่ายดาย และใช้ประโยชน์จากประสิทธิภาพและความคุ้มค่าในกรณีการใช้งานต่อไปนี้ เวิร์กโหลดบน Linux ที่สร้างขึ้นบนเทคโนโลยีโอเพนซอร์สเป็นหลัก, แอปพลิเคชันในคอนเทนเนอร์และทำงานบนไมโครเซอร์วิส เช่น Docker และ MC Docker, แอปพลิเคชันที่เขียนด้วยภาษาโปรแกรมแบบพกพา เช่น Java, Python, .NET Core, node.js และ PHP, แอปพลิเคชัน C/C++, Rust หรือ Go ที่คอมไพล์แล้ว, เวิร์กโหลด .NET Core (เวอร์ชัน 3.1 ขึ้นไป) ที่ทำงานบน Linux, เวิร์กโหลดแบบมัลติเธรด, เวิร์กโหลดที่ละเอียดอ่อนในการเข้าถึงหน่วยความจำที่ไม่สม่ำเสมอ (NUMA) และการพัฒนาและการทดสอบซอฟต์แวร์ arm64-native

การเก็บค่าบริการ

ไม่มีค่าบริการเพิ่มเติมในการใช้ AWS Elastic Beanstalk คุณจ่ายเฉพาะทรัพยากรของ AWS ที่ใช้จริงในการจัดเก็บและเรียกใช้แอปพลิเคชันของคุณ

ชำระค่าบริการเฉพาะส่วนที่คุณใช้เท่านั้นและไม่มีค่าธรรมเนียมขั้นต่ำเมื่อใช้ทรัพยากร AWS ใดๆ สำหรับข้อมูลการกำหนดราคา Amazon EC2 โปรดไปที่ส่วนการกำหนดราคาที่หน้ารายละเอียดเกี่ยวกับ EC2 สำหรับข้อมูลการกำหนดราคา Amazon S3 โปรดไปที่ส่วนการกำหนดราคาที่หน้ารายละเอียดเกี่ยวกับ S3 คุณสามารถใช้เครื่องคิดเลขอย่างง่ายของ AWS ในการประมาณใบเรียกเก็บค่าบริการตามขนาดแอปพลิเคชันที่แตกต่างกันไป

คุณสามารถดูค่าใช้จ่ายสำหรับช่วงเวลาที่เรียกเก็บเงินปัจจุบันของคุณได้ตลอดเวลาที่เว็บไซต์ Amazon Web Services โดยเข้าสู่บัญชี Amazon Web Services และเลือก "Account Activity" (กิจกรรมในบัญชี) ใต้ "Your Web Services Account" (บัญชีบริการเว็บของคุณ)

การสนับสนุน

ใช่ AWS Support ให้บริการที่ครอบคลุมปัญหาต่างๆ ที่เกี่ยวกับการใช้ AWS Elastic Beanstalk ของคุณ สำหรับรายละเอียดและราคาเพิ่มเติม โปรดดูหน้า AWS Support

คุณสามารถใช้ประโยชน์จากความรู้ใน AWS community ที่มีอยู่อย่างกว้างขวางเพื่อช่วยคุณด้านการพัฒนาผ่านฟอรัมสนทนา AWS Elastic Beanstalk ได้