สรุปการบ้าน Audition 2 [Day 1–3] — The Cloud Camp 2024

Watcharapong Suckavanich
T. T. Software Solution
7 min readJun 3, 2024

💡 เราเชื่อว่าการเรียนรู้ทำให้ชีวิตคุณดีขึ้น

Intro

เนื่องจากผมได้เข้าโครงการ The Cloud Camp Audition 2 ของ Jumpbox by คุณโจโจ้ โดยมีการสอนจำนวน 3 วัน และสอบ 1 วัน

ทางผมเองได้เล็งเห็นถึงประโยชน์ และความรู้ที่คุณโจโจ้มอบให้ จึงอยากทำสรุปไว้ทบทวนตัวเอง และแบ่งปันให้หับผู้ที่สนใจครับ

Rule

  • Input = Output
  • Ask Question
  • Note Keyword
  • Practice thinking about what you remember

Cloud Computing

Cloud คือ Computer ที่อยู่ที่นึงบนโลก

ยิ่งมีคนใช้งานเยอะขึ้น ก็ยิ่งทำให้ต้องใชการประมวลผลมากขึ้น ใช้ CPU, RAM มากขึ้น

ถ้าใช้เยอะมากในที่สุด Server ก็จะเต็ม/ล่ม เพราะต้องการใช้งาน Resource มากกเกินกว่าที่ Server จะรับไหว

ในสมัยก่อน ถ้าเกิดเหตุการณ์แบบนี้ขึ้น ทางผู้รับผิดชอบก็จะต้องไปร้านขาย HW เพื่ออัพเกรดตัว Server เพื่อให้มี Spec มากขึ้น เพื่อให้รองรับการใช้งานที่เพิ่มขึ้นได้ (เพิ่ม CPU เพิ่ม RAM เพิ่ม GPU)

แต่ Process การอัพเกรดแบบนี้

  • ช้า
  • ประสิทธิภาพเทียบกับราคาต่ำ
  • มีปัจจัยเรื่อง Human Error มากมาย

จากข้างต้นจึงเกิดการพัฒนามาเป็น Cloud Tranformation

โดยใช้ Bot หรือระบบ Automation มาทำแทนคน

จึงเริ่มเข้าสู่ Cloud ERA Z(เริ่มต้นจาก AWS ปล่อย EC2 ปี 2013)

Cloud as known as Cloud Computing

มีคุณสมบัติ

  1. Reduce Cost ใช้เท่าไรจ่ายเท่านั้น
  2. Unlimited Storage มีพื้นที่ไม่จำกัด
  3. Scalable ขยายขนาดได้
  4. Security ปลอดภัย

Cloud Native

⚠️ Cloud Native is not the Cloud

Cloud Native ก็ไม่ใช่แค่เครื่องมือ มันเป็นอะไรที่มากกว่าเครื่องมือ

Native = Local

ใช้ความสามารถของ Cloud ให้เกิดประโยชน์สูงสุด

ในปัจจุบันเรียกว่า Hypervisor

ที่เรียกว่า Cloud Native นั้นเพราะต้องการให้เกิดประโยชน์สูงสุด

เป็นการจำลองเครื่องคอมพิวเตอร์ในคอมพิวเตอร์อีกที แล้วค่อยแบ่งให้คนมาใช้งาน

Cloud Native for Application

คือ โครงสร้างที่เราออกแบบ Application ให้สมบูรณ์ ที่เอาประโยชน์ของ Cloud มาใช้ให้เกิดประโยชน์สูงสุด

Cloud Native จริง คือยุคสมัย หนังสือต่างๆ ก็เขียนเรื่องนี้ เป็นทุกสิ่งต่างๆ รอบตัวเราที่กำลังมามากขึ้น

Cloud Native Maturity Matrix Tools

เป็นเครื่องมือที่ใช้เป็นตัวเปรียบเทียบ/ชี้วัดว่าตอนนี้ธุรกิจของเราอยู่จุดไหนแล้ว เป็น Cloud Native หรือยัง

Cloud Native เป็น Culture เป็น ยุคสมัยที่กำลังมาในทุกมุม ทุกด้าน

Convention

Symbol

Cloud Fundamental

  1. Cloud Characteristics
  2. Cloud Delivery Models
  3. Cloud Deployment Models

Cloud Characteristic

  1. On-demand usage < ใช้เท่าไรก็ใช้เท่าไร

2. Ubiquitous access < ใครก็สามารถเข้าถึงได้หลากหลาย ใช้งานพร้อมกันได้ (แต่ไม่ข้องเกี่ยวกัน)

3. Multi-tenant (resource pooling) < มีกี่องค์กรที่ใช้งานร่วมกันก็ได้ (แต่อยกอิสระต่อกัน) บนเครื่องเดียวกัน

4. Elasticity < ย่อ/ขยาย ขนาดได้ ตามปริมาณการใช้งาน ไม่ได้ขนาดคงที่ตลอด

โดยสามารถทำได้ 2 แบบ คือ

  • Pre-Determined ตั้งเวลาชยายขนาดได้
  • Runtime ทำตอนใช้งานจริง โดยมีตัววัดปริมาณการใช้งาน แล้วขยายตามเกฑณ์ที่ตั้งไว้

5. Measured usage < สามารถวัดปริมาณได้

  • มีหน้าตาให้ดู
  • มีระบบอัตดนมัติ
  • มีตัววัดปริมาณการใช้งาน
  • มีรายงานให้ดู

6. Resiliency < ถ้าพัง/ล่ม สามารถซ้อมตัวเองได้

มี 2 แบบ

  1. Multi Zone < แยกโซนกัน เช่น มี HW อยู่ที่กรุงเทพ กับ เชียงใหม่ เวลาที่ใดมีปัญหาก็สามารถใช้งานต่อเนื่องได้
  2. Multi Cloud < ใช้ Cloud หลายเจ้าเลย หากเกิดปัญหาขึ้นก็ใช้งานอีกเจ้าได้ทันที

Hypervisor on Real life

มี Software ของตัวเองโดยเฉพาะที่ไม่ต้องมี OS เอาไว้จัดการสร้างเครื่องจำลองต่างๆ บน HW ได้เลย

เบื้องหลัง Cloud Provider ต่างๆ ก็เป็นเหมือน Hypervisor เพื่อให้ Cloud User เข้ามาใช้งาน สร้าง VM ได้เอง โดยสามารถกำหนด Resource ได้เอง จะเอา CPU เท่าไร Ram เท่าไร Storage เท่าไร

Cloud Delivery Models

  • Infrastructure-as-a-Service (IaaS)
  • Platform-as-a-service (PaaS)
  • Software-as-a-serivce (SaaS)

Share Responsibility Model

สีเทา คือ คนที่เข้ามาใช้งานเป็นคนทำ

สีม่วง คือ ผู้ให้บริการเป็นคนทำ

On-Premise < บน HW เราเอง เราต้องจัดการเองทั้งหมด

IaaS < AWS, Azure

PaaS < Serverless, Scalable

SaaS < Google Doc, Youtube, ChatGPT

IaaS

PaaS

SaaS

Sub Models

คือตัวแยกย่อยของ 3 ตัวข้างบน

เช่น GoogleDrive, Dropbox, Onedrive

Combining

ถ้าใช้ PaaS แต่ไปตั้งค่าถึงเครื่อง Server ได้

หรือ ถ้าใช้ SaaS แต่เราต้องติดตั้ง Application เอง

📌 Serverless เหมาะสำหรับคนใช้ไม่เยอะ ใช้การประมวลผลไม่ตลอดเวลา ประหยัดกว่า IaaS เหมาะสำหรับใช้งานเยอะ มีการประมวลผลตลอด ใช้รายเดือนประหยัดกว่า เนื่องจาก Serverless หรือ PaaS ต้องมีคนจัดการพวก OS ให้ ดังนั้นเขาจะคิดค่าบริการพ่วงไปด้วยตลอด

Cloud Deployment Models

  • Public cloud < ผู้ให้บริการ Cloud สาธารณะ
  • Private cloud < เราตั้ง Cloud ของตัวเอง ใช้เอง หรือใช้ในหน่วยงานเอง
  • Multi-cloud < ใช้ cloud หลายเจ้า (รวมถึง Private cloud ด้วย)
  • Hybrid cloud < ใช้ผสมกัน เช่น ถ้ามีข้อมูลความลับ ส่วนตัว sensitive data จะเป็น Provate cloud ในประเทศ แต่ถ้าข้อมูลไม่สำคัญ จะไปอยู่ที่ Public Cloud ได้

Recap

Linux Fundamental

  1. Basic Operating System
  2. Introduction to Shell
  3. Linux Core Concept
  4. Package Manager
  5. Vi Editer

Basic Operating System

แบ่งออกเป็น 2 แบบ

Commercial License OS

Open Source OS

ไม่เสียค่า License เพื่อเวลา Scale จะได้ไม่ต้องกังวลเรื่อง License

Linux Distribution

Linux Management with Shell

  • CLI ช่องทางการติดต่อสื่อสารกับ User ภายใน command 1 บรรทัด
  • GUL ช่อทางการติดต่อสื่อสารกับ User ด้วย Graphic

Kernel แปลงภาษา เป็นตัวติดต่อสื่อสาร/ควบคุม HW (System Core)

Introduction to Shell

  1. Filesystem Hierarchy Standard
  2. The Home Directory
  3. Basic Command and Arguments
  4. Text Shell Types

Filesystem Hierarchy Standard

/ = root

bin = binary (executable file)

usr = user

etc = อื่นๆ

lib = library

home = เก็บ User

opt = optional

Home Directory

User สามารถใช้งานพร้อมกันได้ โดยไม่ยุ่งเกี่ยวกัน

--

--