The Cloud Camp Week#14 (Recap + Q&A)

รูปจาก Bing AI

Week นี้ Recap + Q&A ผมมีจดๆไว้ สรุปมาดังนี้ Architecture 1. คือตอนนี้เจอเคสที่ว่า service บางตัวต้องอยู่แยกnodeกับ service อื่น เพื่อไม่ให้ทั้งระบบพัง เช่น api service อยู่แยกกับ document service อยากรู้ว่าเมื่อไหร่ควรแยกหรือร่วม พวก criteria Ans ดูก่อนว่า App Host ที่ไหน VM / Container / Serverless ถัดมาจะแยก หรือร่วมกัน ต้องวัดให้ชัดก่อนว่า ตัว App นั้นๆ ใช้ Resource ไปเท่าไหร่ ทำ Observability ให้มี Metric ออกมา เช่น Resource Consumption / จำนวน Request ที่เข้ามา / Connection ที่ถืออยู่ เป็นต้น พอวัดได้แล้ว เราเอา Metric นั้นมากำหนดเงื่อนไข ใช้ Resource ให้คุ้มค่า ในจำนวน Node ที่น้อยสุด ถ้าเป็น K8S ในกรณีที่ Resource Request / Limit + Readiness Probe แล้วตึงมือ ถึงเริ่มขยับไปใช้ Node อื่น โดยการทำ HPA เพื่อ Scale นั้นเอง Observability 1. ตอนที่เราเรียนวันเสาร์ได้ลองเอา พวก log, metric, trace ยิงตรงไป display กับอีกวิธีนึงคือไป stamp ลง…

Alfresco: Edit in Microsoft Office problem not working

Currently I am using Alfresco Community 6.2. When I am trying to Edit a document by using “Edit in Microsoft Office” link. It is opening Microsoft Office, but due to some problems appear such as Root Cause Solution For Office 2010: For Office 2013: For Office 365 Note: BasicAuthLevel possible value are 0 – Basic authentication disabled1 – Basic authentication enabled for SSL connections only2 – Basic authentication enabled for SSL and for non-SSL connections Reference

The Cloud Camp Week#13 (Observability#2)

งาน Week นี้ merge วุ่นวาย และระลึกชาติ เพราะไปช่วยเรื่องอื่นมานานนนน และมีเรื่องวุ่นๆเรื่อง Branching กัน ไม่อยากแตก ไม่อยาก Tag แต่ต้องการให้ keep //ดูย้อนแย้งระดับนึง 555 สำหรับสัปดาห์นี้จะเป็นตอนต่อจากของ Week ก่อนหน้า The Cloud Camp Week#12 (Observability#1) Opentelemetry – Log / Metric โดยเพิ่มเติมในส่วนของ Trace ครับ Traces Where is it happening? – เกิดที่ไหน จุดไหน และมี Flow อย่างไร Tracing เป็นตัวเชื่อมความสัมพันธ์ระหว่าง Activity หรือ Span รวมไปถึงตัว Log และ Metric ว่าเกี่ยวข้องกันยังในในแต่ละระบบ หรือ microservice ในช่วงเวลาหนึ่ง โดยมี Keyword ที่ต้องรู้ก่อน ดังนี้ – Traces Pipeline Traces เราจะรู้ระยะเวลาระหว่าง Microservice (Span) พวก Duration ถ้าตรวจสอบแล้วเจอเคสผิดปกติ เช่น จาก A > B เกินจาก Thresold ที่กำหนด เราสามารถตัดสินใจได้ เช่น – Insight Span – propagation B3Format – เป็นรูปแบบกลางที่ช่วยทำตัว propagation ของ OpenTelemetry โดยแปะไปในทุก Request และเป็น Seed เพื่อเอาไป Generate Token ในเวลาที่ข้าม Microservice…

Git error: src refspec master does not match any

พอดีมีทำ Automate Task ใน Jenkins เพื่อลดภาระให้มันช่วง Generate Script แล้ว commit & push กลับไป พอทำเสร็จลองรันใน Jenkins โดน error ตบกลับมาเลย 555 สำหรับตัว Error src refspec master does not match any มันบอกว่าหา Reference ไม่เจอเลย เช่น เรา push เข้า remote branch master แต่เรายังไม่ได้สร้าง branch master ขึ้นมาครับ ทางแก้สร้าง branch ครับ ตัว Jenkinsfile เต็มๆ

มุมมองของ Dev อยากได้อะไรจาก Support

หลายครั้งที่ดูงาน MA ในฝั่งของ Dev เองที่เป็นส่วนสุดท้ายที่ได้รับงานจาก Support มาแล้ว อย่างที่ บ ผม Support แยกเป็น 3 Tier App CS> Senior CS และสุดท้าย Developer นั้นเองครับ แต่การทำงานจริง Forword เมล์แบบไม่มีข้อมูลอะไรเลยมาแทน หรือไม่ดองจนวินาทีสุดท้ายที่ลูกค้าไม่จ่าย MAแล้วส่งต่อ อันหลัง ถ้าผ่านมาหลายเดือนและ หลักฐานพวก Log อะไรหายไปหมดแล้ว หรือคนที่แจ้งย้ายหน่วย อาจจะเสียชีวิตไปแล้วก็มีนะ ทางผมเองได้มีปรับ App และ Pattern มาให้ 2 Tier ก่อนหน้าให้ความเมตตาในการขอข้อมูลเตรียมไว้ หรือ กรอกไว้ เพื่อช่วยทาง Support Tier App CS > Senior CS สอบถาม End User (ลูกค้า) เพื่อลด Ticket Ping-Pong / Ticket Dancing / Mail Loop ส่งถามกันไปกันมา กว่าจะเข้าสาระอีกที 20-30 Hop และรอกันไปมา จนลูกค้าหงุดหงิด โดย Pattern ของผมจะประมาณนี้ครับ Pattern ในการเตรียมข้อมูลส่งให้ Developer – Step Action / Step to Reproduce สิ่งที่ควรถามเพิ่ม เมื่อพอได้ Setup แล้ว ทาง Support เองสามารถลอง Proof ได้ หรือ ได้ Keyword ค้น KM ข้างในองค์กร / Glossary…

The Cloud Camp Week#12 (Observability#1)

Week นี้ merge จบแล้วมั้ง สำหรับการ Merge ที่ใช้ Resource แบบเยอะมาก และเวลาประมาณ 2 Week จากงานเข้าใน Blog ตอนก่อน ใน Week นี้ระหว่างเก็บงาน Merge ฟังที่เรียนไปด้วยครับ โดยจะมีหัวข้อ ดังนี้ Observability Observability = Observe(การสังเกต) + ability (ความสามารถ) Observability = ความสามารถในการสังเกต ต่อยอดมาจากแนวคิด Control Theory ที่ติดตามสิ่งที่สนใจให้อยู่ในสภาพที่พร้อมใช้ (Desire State) จาก Output ทื่มันบอกมา อาทิ เช่น พวก Metric ยกตัวอย่างรถยนต์ มี Speed Meter / Engine Temperature เป็นต้น เพื่อให้รู้พฤติกรรมของระบบ (behavior of the system) มุมของ IT ตัว Observability เอามาใช้ autoscaling แต่การทำเรื่องนี้ต้องรู้สถานะของระบบก่อน (keeping track) ในตอนที่ Load เยอะ หรือ ตอน Error ถ้าอยากรู้ว่าเราต้องเอาตัว Observability มาใช้ไหม ให้ดูจากคำถามของ CNCF Guideline/Measure ตามนี้ Goal: เอา Data ที่ได้มาวิเคราะห์ เพื่อตอบคำถามที่อยากรู้ด้าน Observability และทำให้เกิด feedback loops มาปรับระบบให้สอดคล้อง CNCF Landscape V2 สำหรับ CNCF Landscape V2 ที่ออกออกมาแล้ว มีการจัดกลุ่มเครื่องมือสำหรับงานด้าน Observability…

เรื่องวุ่นๆของเงื่อนไขใน Jenkins Pipeline

พอดีได้วนกลับมาแก้ไข JenkinsFile เลยคิดว่าไหนๆก็มาแก้อีกรอบแล้ว มาเขียน Blog สรุปเลยดีกว่าใน Jenkins Pipeline ในตัว JenkinsFile เราสามารถเขียนเงื่อนไข หรือ Condition ได้กี่แบบ สำหรับผมจะแบ่งได้ 2 กลุ่ม ดังนี้ เงื่อนไข เพื่อให้ Stage นั้นทำงาน (ถูก Execute) สำหรับในกลุ่มเงื่อนไขที่ที่บอกให้ Stage ทำงานขึ้นมาจะใช้คำสั่ง when โดยมีรูปแบบการใช้งานได้ ดังนี้ จริงๆมันมีอีกหลายตัวเลยครับที่ใช้ได้ใน When ลองดูได้จาก Link นี้เพิ่มเติมได้ครับ แต่ส่วนตัวที่ใช้หลักๆ expression / allOf / anyOf / branch และ Environment คำสั่ง when ในตัว Pipeline ถูก Execute หลังจาก คำสั่ง agent / input / options ทำงานเรียบร้อยแล้ว ถ้าต้องการทำในส่วนของ when ก่อนก็ใช้ตัว beforeAgent / beforeInput / beforeOptions โดยกำหนดเป็น true ก่อนครับ เงือนไขใน Step สำหรับเงื่อนไขแต่ละ Step เขียนได้ 2 แบบ อ๋อ และก็เงื่อนไขแบบนี้นอกจากในส่วนของ Step ยังมาเขียนใน Post Action ได้ด้วย เช่น ในกรณี Sucess ให้ส่ง Notify เข้า mattermost และ TestReport เข้าเมล์ เป็นต้น Reference