ธรรมชาติของผลิตภัณฑ์ที่เป็นซอฟต์แวร์ โดยเฉพาะซอฟต์แวร์ที่มีรูปแบบเป็น Platform เช่น E-Commerce Platform, Streaming Service Platform และ Social Network Platform มักมีความเปลี่ยนแปลงบ่อย จึงต้องใช้รูปแบบการทำงานที่หลอมรวมผู้ที่เป็น Software Developer และ IT Operation ซึ่งรับผิดชอบด้าน Infrastructure เกิดเป็น DevOps โมเดล ซึ่งผนวกองค์ประกอบของเทคโนโลยีที่ดีและทีมงานที่ใช่ Cloud DevOps Engineer อาชีพที่หลายบริษัทให้ความสนใจ และต้องการคนที่มีทักษะด้านนี้มากขึ้น อาชีพนี้ต้องเข้าใจว่า Developer ต้องการอะไร แนะนำเครื่องมือที่เหมาะสม สร้าง Infrastructure ด้วยเครื่องมือที่ทันสมัย โดย Cloud/DevOps Engineer คือ ผู้ที่รับบทบาทในการทำให้เกิด Pipeline ของการส่งมอบ Software ที่รวดเร็ว และทำงานได้ต่อเนื่อง รวมทั้งสร้างระบบ Monitoring ให้ Service บน Cloud สามารถให้บริการได้อย่างมีประสิทธิภาพรายละเอียดเพิ่มเติมเล่มนี้1. คู่มือพัฒนาทักษะด้าน DevOps and Cloud Engineering สำหรับคนที่อยากเป็น Cloud DevOps Engineer 2. เนื้อหาเน้นภาคปฏิบัติที่ทำตามได้ทันที (Best Practice Workshop)3. พิมพ์สี่สีทั้งเล่มเพื่อให้แสดงผลเหมือนหน้าจอจริง
สารบัญ
Chapter 00 บทนำ- DevOps Engineer คืออะไรกันแน่?- Basic Skill ที่ DevOps Engineer ต้องมี- Book ConceptChapter 01 แนวคิดการจัดเก็บเวอร์ชันการจัดเก็บเวอร์ชันในการพัฒนาซอฟต์แวร์แนวคิดการจัดเก็บเวอร์ชันการจัดเก็บเวอร์ชันด้วยวิธีก็อปปี้ (Copy File & Folder)การจัดเก็บเวอร์ชันด้วยวิธีแพตช์ (Patch)Local Version Control SystemCentralized Version Control SystemDistributed Version Control SystemChapter 02 หลักการพื้นฐานของ Gitเปรียบเทียบ Git กับ Version Control System อื่นๆเข้าใจการทำงานของ Git (Git Workflow)Chapter 03 ฝึกการใช้งาน Git ขั้นพื้นฐานเริ่มต้นใช้งาน Git ครั้งแรกกับ GitLabเริ่มต้นนับหนึ่งกับ Git Version Controlการ Register และ Sign in ใน GitLabการสร้าง Project บน GitLabการสร้าง Remote Repositoryการติดตั้ง Git Client และการเรียกใช้งานการคอนฟิก Git ให้พร้อมใช้งานการ Check-in Source Codeวิธี Check-in กับ Local Repositoryวิธี Sync History กับ GitLab ServerChapter 04 การใช้งาน Git ร่วมกับ Jupyter Notebookการทำ Version Control กับ Jupyter Notebookทดลองแก้ไขและจัดเก็บซอร์สโค้ดการโคลนโปรเจ็กต์การเปิดและแก้ไขโค้ดการเปรียบเทียบซอร์สโค้ดการ Check-in เพื่อจัดเก็บซอร์สโค้ดการแก้ปัญหา Version Control ใน Jupyter Notebookปัญหาการใช้ Git ร่วมกับ Jupyter Notebookการคอนฟิก Jupyter NotebookChapter 05 การปรับแก้ขณะใช้งาน Gitการเตรียม Git ให้พร้อมใช้งานการสร้างและปรับแต่ง Git ให้พร้อมใช้งานการแก้ปัญหาขณะใช้งาน GitChapter 06 แนวคิดของ Git Branchingพื้นฐานการใช้งาน BranchSpore Driveประเภทของ Git ObjectsHEAD Pointer และคู่เกลอการสร้าง New Branchการสลับตำแหน่ง Branchesสร้าง Timeline ใหม่Chapter 07 การจัดการ Git Branch เบื้องต้นการจัดการกับ Git Branch ภาคปฏิบัติทักษะพื้นฐานการทำงานกับ Branchการสร้างโปรเจ็กต์ใหม่บน GitLab Serverการเชื่อมโยง Local Project กับ Remote Projectการปรับแต่ง Jupyter Notebook ให้พร้อมใช้กับ Gitการเรียกดู Commit Historyการแสดงรายชื่อ Branchเทคนิค Merge Branch แบบ Fast-Forwardเทคนิค Three Way MergeChapter 08 แนวคิดของ Docker Containerเปรียบเทียบ Container vs Virtual MachineDocker Container คืออะไรองค์ประกอบของ Docker PlatformDocker Container สำหรับผู้เริ่มต้นChapter 09 การใช้ Dockerfile, Docker-compose และการจัดการ Docker ด้วย Portainerการเขียนคำสั่ง Dockerfilesการใช้ Docker-compose จัดการ ContainerChapter 10 วิธีติดตั้ง LEMP Stack ด้วย Dockerเปรียบเทียบ Apache vs Nginxขั้นตอนติดตั้ง Apache Web Server ด้วยคำสั่ง docker runขั้นตอนการติดตั้ง Apache Web Server ด้วย Docker-composeขั้นตอนคอนฟิก Docker-compose สำหรับ Nginx Web Serverขั้นตอนคอนฟิก Nginx + PHPขั้นตอนคอนฟิก Nginx + PHP + MariaDBChapter 11 วิธีติดตั้ง VPS และ Let’s Encrypt ด้วย Docker Containerเทคโนโลยี Cloud และ SSL Certificateแนวคิดแบบ VPS และ Cloud Serverใบรับรองอิเล็กทรอนิกส์ SSL Certificateสร้าง VPS และ Let’s Encrypt ด้วย Docker ContainerForward และ Reverse Proxy ต่างกันอย่างไรการสร้าง Nginx Reverse ProxyChapter 12 การพัฒนา Microservices ด้วย Docker Containerการปรับเปลี่ยนจาก Monolith สู่ MicroservicesSection 1 : Monolithic ArchitectureSection 2 : Microservices ArchitectureSection 3 : RabbitMQSection 4 : Register GatewaySection 5 : Student ServiceSection 6 : Enroll ServiceSection 7 : Email ServiceChapter 13 การติดตั้ง API Gateway และระบบ Monitoring ด้วย Kong+Prometheus+Grafanaหน้าที่ของ API GatewayKong API Gatewayขั้นตอนติดตั้ง Kong, Prometheus และ Node-exporterขั้นตอนคอนฟิกการยืนยันตัวตน (Authentication)ขั้นตอนคอนฟิกการจำกัดปริมาณการใช้งาน (Request Rate Limiting)ขั้นตอนการสร้างระบบ Monitoring ด้วย Prometheus + GrafanaChapter 14 การพัฒนาระบบ OTP Service และ Session Server ด้วย Redis และ FlaskOTP Service และ Session Server คืออะไรMicroservices Architecture และ Design Workshopขั้นตอนการสร้าง OTP Serviceขั้นตอการสร้าง Send Mail OTP Serviceขั้นตอนการสร้าง OTP Gateway Serviceขั้นตอนการสร้าง API Authentication และ Rate Limitingการทดสอบการทำงานใน Postmanขั้นตอนการฝาก Session Server ไว้ที่ Redisขั้นตอนการสร้าง Register UI ด้วย Flaskขั้นตอนการทดสอบการลงทะเบียนวิธีการตรวจสอบข้อมูลใน DatabaseChapter 15 การพัฒนา Web Application แบบ (เกือบจะ) Zero Downtime ด้วย Swarm Clusterการพัฒนา Web Application ให้ Downtime น้อยที่สุดสถาปัตยกรรมระบบปัจจุบันบนคลาวด์ (Cloud)วิธีทำ Load Testing ด้วย Apache JMeterการคอนฟิก JMeter ก่อนทดลองเริ่มยิง Traffic ด้วย JMeterวิธีดูผลการทดลองวิธีโหลด Homepage ให้เร็วขึ้นด้วยการทำ Cachingวิธีจัดการ Container แบบ Cluster ด้วย Docker Swarmวิธีทำ Load Balance ด้วย Docker SwarmMicroservices Migrationวิธีการทดสอบ Session บน Swarm Clusterวิธีทำ Scalingวิธีปรับแต่งอื่นๆขั้นตอนการ Update Serviceขั้นตอนการ Rollback ServiceChapter 16 การทำ CI/CD Pipeline สำหรับ DevOps TeamAgile, CI/CD และ DevOps กับการพัฒนา ซอฟต์แวร์สมัยใหม่การพัฒนา CI/CD Pipeline ด้วย GitLab CIDevOps Cultureงานของ DevOps Engineerงานของ DeveloperWorkshop : การทำ CI/CD Pipeline ด้วย GitLab Serverขั้นตอนการทำ Unit Test ด้วย pytest Libraryขั้นตอนการทำ Unit Test กับ OTP Serviceขั้นตอนการติดตั้ง GitLab Serverขั้นตอนการติดตั้ง GitLab Runnerขั้นตอนการทำ CI/CD ด้วย GitLab CIการทดสอบการลงทะเบียนตาม Flow ที่ได้ออกแบบและพัฒนา
Be the first to review “หนังสือ Practical DevOps and Cloud Engineering”