ข้อมูลพื้นฐานที่คุณควรรู้ก่อนใช้งาน AWS #AWSSummitOnlineAsean

นี้ผมได้มีโอกาสเข้าไปศึกษาระบบ AWS ผ่านทางออนไลน์และได้มองเห็นความสามารถในหลายๆด้านของ AWS ที่เหมาะสมกับการทำงานในสายงานพัฒนาของผม และ อยากจะมาสรุปเนื้อหาที่ได้ศึกษามานี้
2020.06.05

บทนำ

สวัสดีครับ ผมชื่อแวน ทำงานเป็น Software Engineer ให้กับบริษัท Classmethod โดยเมื่อเร็วๆ นี้ผมได้มีโอกาสเข้าไปศึกษาระบบ AWS ผ่านทางออนไลน์และได้มองเห็นความสามารถในหลายๆด้านของ AWS ที่เหมาะสมกับการทำงานในสายงานพัฒนาของผม และ อยากจะมาสรุปเนื้อหาที่ได้ศึกษามานี้ให้ทุกคนได้อ่านและทำความเข้าใจเกี่ยวกับตัว AWS หรือ Amazon Web Service นี้ให้มากยิ่งขึ้น โดยหวังว่าบทความนี้จะเป็นประโยชน์ให้กับผู้ที่เริ่มต้นศึกษาข้อมูลและเริ่มเข้ามาทำงานเกี่ยวกับ AWS ไม่มากก็น้อยครับ

AWS Cloud คืออะไร ?

ถ้าหากพูดถึง Cloud แล้ว สิ่งที่อีกหลายๆคนนึกถึงการบริการพื้นที่รับฝากไฟล์บนอินเตอร์เน็ต อย่างพวก Google drive , OneDrive , iCloud และอื่นๆ ซึ่งพวกบริการเหล่านี้ก็นับเป็นบริการอีกอย่างหนึ่งของ Cloud ที่เรียกว่า CloudStorage แต่ก็เป็นหนึ่งในประเภทบริการของคลาวด์ เท่านั้น แท้ที่จริงแล้ว บริการนี้มีความหมายกว้างกว่าที่หลายคนคิด ซึ่ง AWS Cloud เองก็เช่นกัน โดยเนื้อหาในบล็อคนี้เราจะมาพูดถึง AWS product ต่างๆ ที่ออกมาเปิดให้บริการกัน

AWS products

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

Amazon EC2 (Elastic Compute Cloud)

คือ service ที่ใช้ในการวางโครงสร้างให้กับระบบ ถูกออกแบบมาให้มีหน่วยประมวลผลอยู่บน AWS Cloud ได้ เปรียบเสมือนกับเซิฟเวอร์ทั่วไปที่เราใช้งานกันปกติ เพียงแต่อยู่ในรูปแบบของ Cloud server ทำให้ง่ายและสะดวกต่อการใช้งานมากขึ้นโดยมีข้อดีดังต่อไปนี้

- Elasticity มีความยืดหยุ่น สามารถปรับขนาดพิ้นที่การทำงานให้เหมาะกับการใช้งานจริงได้อย่างรวดเร็ว โดยมีการวิเคราะห์และปรับเปลี่ยนการใช้งานในระดับนาที
- Control เราจะได้รับสิทธิ์ในการควบคุมต่างๆ เปรียบเสมือนเราเป็นเจ้าของ โดยสามารถเลือกที่จะเปิดปิด หรือ ติดตั้งโปรแกรมต่างๆ ลงไปในตัวระบบได้
- Flexible มีการปรับเปลี่ยนตามการใช้งาน สามารถเลือกหน่วยประมวลผล และ ขนาดของความจำได้หลากหลายประเภท
- Integrated ความสามารถในการเชื่อมต่อกับบริการอื่นๆ ของ AWS ได้เพื่อให้ EC2 สามารถใช้งานฟังก์ชั่นอื่นๆของ AWS ได้
- Reliable ให้ความมั่นใจ ว่ามีความปลอดภัยสูงและมีทีมงานผู้เชี่ยวชาญดูแลอยู่ตลอดเวลา ผ่านการรับรองมาตรฐานในระดับสากล
- Secure ให้ความสำคัญด้านความปลอดภัยของข้อมูลเป็นอันดับแรก
- Inexpensive มีตัวเลือกการใช้งานและราคาที่หลากลาย
- Easy ใช้งานง่าย รองรับการใช้งานได้หลายภาษา

Amazon Machine Image (AMI)

เป็นบริการที่ช่วยให้เราติดตั้ง OS พร้อม Software ต่างๆลงไปยัง EC2 ได้ และจำเป็นสำหรับเรียกใช้อินสแตนซ์หรือรายการในระบบ EC2 เราต้องระบุ AMI เมื่อเปิดใช้งานอินสแตนซ์ สามารถเปิดใช้งานได้หลายอินสแตนซ์จาก AMI เดียว และสามารถใช้ AMIs ที่แตกต่างกันเพื่อเปิดใช้งานอินสแตนซ์เมื่อคุณต้องการอินสแตนซ์ที่มีการกำหนดค่าที่แตกต่างกัน

Amazon EBS (Amazon Elastic Block Store)

เป็นบริการที่จัดเก็บข้อมูลถาวรออกแบบมาเพื่อใช้งานกับ Amazon Elastic Compute Cloud (EC2) สำหรับใช้เป็นพื้นที่ในการเก็บข้อมูล เมื่อเราติดตั้ง EBS เข้ากับ EC2 แล้ว ตัว EBS จะมีฟังก์ชั่นที่เป็นจุดเด่นหลักๆดังนี้

- Scale up or down in a minute สามารถเพิ่มหรือลดขนาดของเนื้อที่ในการจักเก็บได้ภายในไม่กี่นาที
- Pay for only what you provision เสียค่าใช้จ่ายตามขนาดที่กำหนดในการใช้งานจริง
- Snapshot เป็นฟังก์ชั่นที่จะทำการสำเนาตัวเองขึ้นมาเพื่อป้องกันความผิดพลาดในกรณีที่ตัวเครื่องเซิฟเวอร์เกิดความเสียหาย ทำให้มั่นใจได้ว่าข้อมูลของเรายังไม่ถูกทำลาย
- Encryption available ข้อมูลที่อยู่ใน EBS นั้นจะมีการเข้ารหัสเพื่อความปลอดภัยในการรับส่งข้อมูลอีกด้วย

Amazon S3 (Amazon Simple Storage Service)

คือบริการพื้นที่จัดเก็บข้อมูลที่หรือไฟล์ต่างๆ และมีสิทธิเต็มที่ในการบริหารจัดการไฟล์ได้อย่างเต็มที่ ซึ่งเราสามารถกำหนดสิทธิการเข้าถึงไฟล์ในแต่ละรายการได้ อีกทั้งในการเก็บข้อมูลเราสามารถเลือกเครือข่ายข้อมูลที่จัดเก็บได้ด้วย เพื่อลดระยะเวลาในการรับส่งข้อมูล ลดค่าใช้จ่าย เช่น Asia,Africa,Europe ซึ่งตัวบริการ S3 นั้นมีความสามารถต่างๆ ดังนี้

- Unlimited Storage มีเนื้อที่ในการจัดเก็บไฟล์ขนาดใหญ่ โดยสามารถจัดเก็บไฟล์ได้สูงสุด 5 TB ต่อการสร้างหนึ่ง Object ในการใช้งาน
- 99.999999999% durable มีความคงทนของข้อมูลในระดับสูง โดยมีเลข 9 ทั้งหมดถึง 11 ตัว ด้วยกัน ทำให้มั่นใจได้ว่าข้อมูลของเราจะมีโอกาสสูญหายน้อยมาก
- Access Log เรายังสามารถเข้าดูข้อมูลการเข้าถึงไฟล์ย้อนหลังได้ด้วยว่ามีใครเข้ามาแก้ไขไฟล์งานหรือเปลี่ยนแปลงตัวไฟล์ต่างๆหรือไม่
- Requester Pays มีความสามารถช่วยให้เจ้าของไฟล์ไม่ต้องแบกรับค่าใช้จ่าย โดยผู้ใช้งานไฟล์นั้นจะต้องเป็นผู้เสียค่าใช้จ่าย ในการนำไฟล์ออกไปจาก S3

Amazon VPC (Amazon Virtual Private Cloud)

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

บทสรุป

AWS เป็น Platform การให้บริการที่อยู่ในรูปแบบของ Cloud โดยเน้นไปที่การจัดการโครงสร้างพื้นฐานต่างๆของเว็บไซต์หรือแอพพลิเคชั่นต่างๆ ให้มีความสะดวกในการใช้งานและประหยัดค่าใช้จ่ายได้มากยิ่งขึ้น ทำให้ในปัจจุบัน AWS นั้นกำลังเป็นที่นิยมมากต่อหลายบริษัทที่กำลังพัฒนาและออกแบบเว็บไซต์หรือแอพพลิเคชั่นต่างๆ เพื่อให้มีการใช้งานและการดูแลสะดวกยิ่งขึ้น สำหรับผมในฐานะ นักพัฒนาแล้วก็เล็งเห็นว่า AWS นั้นมีความน่าสนใจมาก ควรค่าที่เราจะศึกษาเรียนรู้และนำมาใช้พัฒนากับโปรเจคที่เราดูแลหรือสายงานที่เรากำลังทำอยู่ และในอนาคตผมจะศึกษาเกี่ยวกับ AWS พร้อมกับเขียน Blog ที่มีข้อมูลในเชิงลึกเพิ่มขึ้น โดยหวังว่า Blog นี้จะเป็นตัวช่วยให้กับผู้ที่เริ่มเข้ามาศึกษา AWS ให้มีความเข้าใจมากยิ่งขึ้น ขอบคุณครับ (•◡•)