DevOps คืออะไร นำมาประโยชน์ได้ยังไง และตัวอย่างการทำ DevOps ที่ Credit OK

สวัสดีครับ เนื่องจากผมได้มีโอกาสได้ออกไปสอนน้องนักศึกษาบางมด KMUTT วิชา Software Engineering เรื่องการทำ DevOps จึงขอจดบันทึกเนื้อหาที่จะนำไปสอนขึ้น Blog เอาไว้เผยแพร่ให้ทุกคนได้อ่านกัน ซึ่งในตอนนี้ผมก็จะกล่าวถึงว่า DevOps คืออะไร เกี่ยวกับคนที่ทำงานทางด้านนี้ เนื้องานมีอะไรบ้าง เครื่องมือที่น่าสนใจ ไปจนถึงการใช้งานจริงที่บริษัท Credit OK ว่าเราเอา DevOps ไปใช้งานกันยังไง

ตอนนี้ก็จะยาวๆ หน่อยก็อย่าเพิ่งยอมแพ้กันไปซะก่อนนะครับ 555 เอาล่ะ ผมจะไม่พูดพร่ำเพ้อละ เรามาเริ่มกันเลยดีกว่า สำหรับ Slide ที่ใช้สอน สามารถโหลดได้จากลิงค์นี้เลยครับ http://bit.ly/spicydog-devops-cpe

Continue reading

ทำ Data Pipeline กับ SFTP Server ด้วย GitLab และ Google Cloud Platform

เมื่อวานลองทำ Data Pipeline ท่าใหม่ที่ไม่เคยทำมาก่อน โดยลูกค้าจะเอาไฟล์มา Drop ไว้ให้บน SFTP แล้วเราจะต้องดูดจาก SFTP ส่งไปหา BigQuery คิดไปคิดมาได้ Solution แปลกใหม่น่าสนใจ เลยเอามาแชร์ให้อ่านกันเล่นๆ

Concept โดยคร่าวคือ เราจะต้อง Sync ข้อมูลจาก SFTP ลงมาใน Local ให้ได้ก่อน แล้วก็เลือกเฉพาะไฟล์ที่มีการเปลี่ยนแปลงส่งขึ้นไปบน Google Cloud Function (GCF) แล้วไปรัน Data Pipeline ต่อบนนั้น ซึ่งข้างบน GCloud นี่ไม่น่าเห็นห่วง เครื่องมือเขาพร้อมอยู่แล้ว แล้วน้องๆ ก็ช่วยกันดำเนินการจนสำเร็จสวยงามไปแล้ว เหลือแต่ส่วนที่เรารับผิดชอบเนี่ยแหละยังไม่ได้ทำ ทุกคนรออยู่ 555 สิ่งที่ต้องคิดเพราะยังไม่เคยทำมาก่อนคือ เรา Sync ไฟล์ลงมาจาก SFTP ได้ยังไงนี่ล่ะ แล้วจะเลือกส่งเฉพาะไฟล์ที่มีการอัพเดทได้อย่างไร

Continue reading

สรุปเรื่อง Kubernetes Services บน GKE หลังศึกษาและทดลองอย่างเอาจริงเอาจัง

Kubernetes เป็นระบบจัดการ Container ที่เป็นที่นิยมสูงมากในตอนนี้ ส่วนตัวผมแล้วก็พยายามเรียนรู้และใช้งานอยู่จริงเช่นกัน ในเรื่องของการ Deploy พวกนี้ผมถือว่าไม่มีปัญหาอะไร มีตัวอย่างให้ดูกันบนอินเทอร์เน็ตมากมาย จนกระทั่งมาถึงจุดที่ต้องการจะส่ง Traffic ออกมานอก Cluster เมื่อนั้นก็เริ่มเกิดความสับสนว่าตกลงมันต้องทำแบบไหนกันแน่ ซึ่งปัญหาทั้งหมดทั้งปวงมันเกิดจากผมไม่เข้าใจเรื่อง Service อย่างถ่องแท้นั่นเอง จะเนื่องจาก Official Doc เขียนไม่เคลียร์ หรือเป็นเพราะผมพื้นฐานไม่ดีพอที่จะอ่านมันแล้วเข้าใจก็สุดแล้วแต่ สุดท้ายเมื่อไม่นานมานี้ผมก็เลยเปิดการทดลองใช้งาน Service อย่างเอาจริงเอาจัง หลังจากใช้มั่วแบบงูๆ ปลาๆ มานาน เอาให้รู้กันไปว่าตกลงอะไรมันทำอะไรกันแน่ แต่จะประเภทมันต่างกันอย่างไร Configuration แต่ละตัวที่ใช้อยู่ประจำมันส่งผลยังไงกันแน่ จึงได้มาเขียนสรุปเรื่อง Services ชนิดต่างๆ บน Kubernetes ไปจนถึงการเอาไปใช้งานจริงว่า เมื่อไหร่ ควรจะใช้แบบไหนกันแน่ เผื่อจะช่วยล่นเวลาคนที่กำลังสับสนอยู่เช่นกัน

Continue reading

ทำความรู้จักกับ Cloud Run โฮสเว็บด้วย Container แบบไม่ต้องแตะ Infrastructure กันไปเลย

เมื่อต้นปีที่ผ่านมา ผมได้พูดถึง Google Cloud Functions กันไปแล้วในช่วงท้ายของ Serverless Big Data Architecture ว่ามันใช้งานง่ายและสะดวกขนาดไหน แต่ก็มีข้อจำกัดอย่างหนึ่งของ Google Cloud Functions ว่า จะต้องเขียนด้วยภาษาที่มันรองรับเท่านั้น ซึ่งตอนนี้ก็มี Python, ES, Golang และในงาน Cloud Next ’19 ที่ผ่านมา Google Cloud Platform ก็เปิดตัวของเล่นใหม่ให้ผมต้องลุกขึ้นปรบมือเลย เพราะอยากได้แบบนี้มานานแล้ว นั่นก็คือ Cloud Run นั่นเอง หลังจากได้เล่นมานิดๆ หน่อยๆ วันนี้จะพาแนะนำในเบื้องต้นว่า Cloud Run คืออะไร เหมาะสมกับงานประเภทไหน และมาทดลองใช้งานกัน

Continue reading

ตั้งเครื่อง GitLab Runner ใช้เอง แบบ Auto Scale ได้ ในราคาเบาๆ ด้วย Preemptible Instance

วันนี้จะขอมาเล่าส่วนหนึ่งของงาน DevOps ในบริษัท เป็นเรื่องของการเอา GitLab Runner เข้าไปรันบนเครื่อง Preemptible Instance ของ Google Cloud Platform ทำให้ลดค่าเครื่องไปได้อย่างมาก แต่ยังทำงานทุกอย่างเป็นปรกติดี เอาล่ะครับ อย่ามัวรอช้า เรามาเริ่มกันเลยดีกว่า

Continue reading

EP 3: Serverless Big Data Architecture on Google Cloud Platform @ Credit OK

สวัสดีทุกท่าน มาถึงตอนสุดท้ายแล้วนะครับ ซึ่งในตอนนี้ผมจะเล่าถึงวิธีการจัดการกับ Big Data แบบที่ Credit OK ทำอยู่นั้นเป็นประมาณไหน แล้วเราใช้ Serveeless Service จาก GCP อย่างไร เราเจออุปสรรคอะไรบ้าง และแก้ปัญหามาได้อย่างไร

บทความนี้เขียนขึ้นเพราะได้ขึ้นไปพูดที่งาน Barcamp นะครับ ใครสนใจดู Slide เปิดได้จากที่นี่เลย Serverless Big Data Architecture on Google Cloud Platform at Credit OK

Continue reading

EP 2: Serverless Big Data Architecture on Google Cloud Platform @ Credit OK

สวัสดีครับ สัปดาห์นี้จะมาเล่าต่อกันเรื่องการใช้ Google Cloud Platform ที่บริษัท Credit OK สำหรับสัปดาห์ที่แล้วได้เล่าถึงประวัติศาสตร์การ Deploy Application ต่างๆ ตั้งแต่ Bare Metal ไปจนถึง Cloud Functions ท่านใดสนใจจะกลับไปอ่านบทความก่อนหน้าก็ตามลิงค์ไปได้เลย Server & Application Deployment History ส่วนสัปดาห์นี้ ผมจะขอแนะนำบริการต่าง  ที่น่าสนใจบน Google Cloud Platform ทั้งทางฝั่ง Compute, Storage, Database และ Data Analytics

Continue reading

EP 1: Serverless Big Data Architecture on Google Cloud Platform @ Credit OK

สวัสดีครับทุกท่าน สืบเนื่องจากที่ผมได้ทำงานอยู่ที่ Credit OK ซึ่งเป็น Fintech Startup ที่ต้องใช้เทคโนโลยีสำหรับจัดการกับ Big Data แบบเป็นเรื่องเป็นราว มาตั้งแต่ตอนต้นปี 2018 โดยเริ่มต้นจากไม่มีอะไรเลย จึงได้มีโอกาสได้ศึกษาและเลือกเทคโนโลยีที่จะใช้อย่างอิสระ ได้ทดลองแล้วมาถูกใจกับ Google Cloud Platform (GCP) เพราะบริการที่มีให้ค่อนข้างตรงกับโจทย์ธุรกิจที่ต้องการ นอกจากนั้นยังเป็นบริการที่เข้าไปใช้งานได้เลยผ่านทาง GUI หรือ Library โดยไม่ต้องมากดตั้งเครื่องสักตัว (Serverless) ก็เลยรู้สึกว่าอยากจะมาแบ่งปันประสบการณ์​ที่ได้พบเจอมา และได้มีโอกาสไปพูดเป็นวิทยากรในหัวข้อนี้กับ MSIT ของ ม.เกษตร และในงาน Barcamp Bangkhen 2018 ก็พบว่าหลายคนให้ความสนใจในหัวข้อนี้ จึงเป็นอันควรแล้วจะมาเขียน Blog แบ่งปันความรู้กัน 🙂

สำหรับ Slide ในงาน Barcamp สามารถดูได้จากที่นี่ครับ
Serverless Big Data Architecture on Google Cloud Platform at Credit OK

Continue reading

ติดตั้ง Open VPN Server บน Google Cloud Platform ใช้งานแบบฟรีๆ

วันนี้จะมาเล่าและแนะนำวิธีการตั้ง Open VPN Server ใช้เองแบบฟรีๆ บน Google Cloud Platform สำหรับใช้เข้าถึงอินเทอร์เน็ตแบบทะลุไปออกทางฝั่ง US อย่างปลอดภัย และที่สำคัญคือหลบหลีกจากการถูกบล็อคการเข้าใช้งานเว็บไซต์หลายๆ เว็บไซต์ที่ไม่สามารถใช้ได้จากประเทศไทย ซึ่งหลายๆ เว็บไซต์ก็ไม่ควรบล็อคไม่รู้จะบล็อคทำไม มาเริ่มกันเลยดีกว่า Continue reading