อยากจะพัฒนา Application ให้รองรับความยืดหยุ่นตาม Workload ของงาน และยังรองรับการใช้ทรัพยากรร่วมกันอีกด้วย ต้องทำอย่างไรดี ? 🤔
.
ในวันนี้แอดมินจะพาทุกคนมาทำความรู้จักกับ การพัฒนา Application ด้วยรูปแบบ Cloud Native จะเป็นอย่างไรนั้น ไปดูกันนน !!
.
อ้างอิงจาก Cloud Native Computing Foundation (CNCF) ได้เขียนไว้ว่า Cloud Native นั้นจะมีแนวคิดและเทคโนโลยี ที่จะช่วยให้เราสามารถสร้างและรันระบบโดยที่ Scale ได้ง่ายขึ้นและอีกทั้งรองรับ Environment ต่าง ๆ ได้ง่ายขึ้น ไม่ว่าจะเป็น Public, Private, Hybrid Cloud หรืออาจจะเป็น On-premise ก็ได้
.
ซึ่งแนวคิดนี้ทำให้
🔸 ระบบเป็นอิสระจากกัน (Loosely Coupled)
🔸 จัดการได้ง่าย (Manageble)
🔸 ดูการทำงานได้ (Observable)
🔸 Recovery จากความผิดพลาดต่าง ๆ ได้ (Resilient)
.
✨ Cloud Native คือ รูปแบบของการพัฒนา Application ให้รองรับการประมวลผลแบบ Cloud Computing เพื่อให้ Application นั้นมีความยืดหยุ่นตาม Workload ของงาน และยังรองรับการใช้ทรัพยากรร่วมกันอีกด้วย
.
คุณสมบัติหลักที่จำเป็นต้องมีของ Cloud Native มีอยู่ 3 อย่างด้วยกัน คือ
.
1. Application ต้องถูกออกแบบด้วยแนวคิดของ Microservice - เป็นแนวคิดในการแยกระบบงาน ออกมาเป็น Service ย่อย ๆ ลงมา ที่เป็นอิสระต่อกันให้ได้มากที่สุด แล้วค่อยแบ่งหน้าที่ให้แต่ละฝ่ายดูแลในแต่ละส่วน ทำให้สามารถพัฒนา Application แบบ Parallel เพื่อเพิ่มความเร็วในการพัฒนานั่นเอง
.
2. Application ต้องทำงานภายใต้เทคโนโลยี Container - เป็นการจำลองสภาพแวดล้อมการทำงานของ Application ที่ใช้ทรัพยากรน้อยกว่าการทำงานบน Virtual Machine เสียอีก มีการรองรับการใช้งานร่วมกับ Services อื่น ๆ อีกมากมาย
.
3. Application ต้องถูกพัฒนาด้วยแนวคิดแบบ DevOps - เป็นแนวคิดที่ครอบคลุมส่วนการทำงานหลัก ๆ ด้วยกัน เช่น การทำงานเป็นทีม (Culture), เครื่องมือที่ใช้ทำงาน (Technology), กระบวนการทำงาน (Process)
.
ซึ่งระบบของ Cloud Native นั้นจำเป็นต้องมีคุณสมบัติเหล่านี้ และประโยชน์ของ Cloud Native นั้นมี่อยู่หลายอย่างด้วยกันเช่น
.
🔹 ตัว Application นั้นใช้ทรัพยากรน้อยลงกว่าเดิม (เนื่องจากใช้ตัว Container)
🔹 ทำให้การพัฒนา Application นั้นทำได้รวดเร็วขึ้น
🔹 ลดความเสี่ยงที่จะทำให้ระบบล่มจากสาเหตุที่คาดเดาไม่ได้ (Resiliency)
🔹 รองรับความยืดหยุ่นในการจัดการ Workload (On Demand Workload)
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
#cloudnative #BorntoDev
同時也有10000部Youtube影片,追蹤數超過2,910的網紅コバにゃんチャンネル,也在其Youtube影片中提到,...
「cloud native computing」的推薦目錄:
cloud native computing 在 矽谷牛的耕田筆記 Facebook 的精選貼文
恭喜 etcd 加入 CNCF 畢業者的行列,愈來愈多的畢業專案囉,下列的畢業專案你用過哪些呢?
1. containerd
2. CoreDNS
3. Envoy
4. etcd
5. Fluentd
6. Harbor
7. Helm
8. Jaeger
9. Kubernetes
10. Prometheus
11. Rook
12. TiKV
13. TUF
14. Vitess
稍微分類的話,大概是
基本架構來說,運算儲存網路都有
觀測性來說, Monitoring + Logging + Tracing 也都有
其他的譬如安全性及 DB 也都有相關專案
有興趣的可以每個都研究一下囉
https://www.cncf.io/announcements/2020/11/24/cloud-native-computing-foundation-announces-etcd-graduation/
cloud native computing 在 軟體開發學習資訊分享 Facebook 的精選貼文
🔥 udemy 黑色星期五全站特價中
--課程已於 2020 年 11 月更新--
課程說明
Kubernetes 認證可以把你的職涯提升到一個全新的水平。 學習,練習,並在 Kubernetes 上獲得認證,在你的瀏覽器上實際動手實踐。
學習 Kubernetes 對任何一個 DevOps 專業人員來說都是必不可少的。 Devops 的工程師總是很搶手。
Kubernetes 是一個用於自動部署、擴充套件和管理容器應用程式的開源系統。 它最初是由谷歌設計的,現在由雲端計算基金會(Cloud Native Computing Foundation)維護。
簡化複雜技術
Kubernetes 目前處於應用程式部署的尖端。 為了提升你的 DevOps 職涯,學習如何有效地在 Kubernetes 上部署應用程式。
本課程幫助您獲得設計和部署在 Kubernetes 叢集上的雲端原生應用程式所需的知識。 一系列精心設計的動畫和插圖講座可以幫助你輕鬆理解複雜的概念。
https://softnshare.com/certified-kubernetes-application-developer/