เมื่อ DEV ลองไป Workshop Azure monitoring, security and compliance 

วันนี้ฟัง + Workshop Azure monitoring, security, compliance ที่ มหาลัยวิทยาลัยราชภัฏบ้านสมเด็จเจ้าพระยา จัดโดยกลุ่ม Zabbix in Thailand และจัดสอนโดย อาจารย์ ตูล MVPSKILL สำหรับหัวข้อมี ตามนี้เลยครับ้ Recap Cloud Adoption Framework Cloud Adoption Framework เป็น Guideline ที่ช่วยย้าย Workload จาก On-Premises ไป Cloud ซึ่งแต่ละ Provider มีแนวทาง และชื่อเรียกที่แตกต่างกันไปครับ ถ้าสนใจดูที่ Blog นี้ได้เลย เมื่อ DEV ลองไป Workshop Azure Cloud Adoption Framework และเหมือนจะได้ยินว่าส่วนของ Office 365 มีแนวนี้เหมือนกันครับ สำหรับ Session ในวันนี้จะต่อยอดหลังจากย้ายมา Cloud แล้วนั้นเอง โดยจากภาพของ CAF จะเป็นส่วนของ Govern / Manage / Secure ครับ หลังจาก Recap กันไปแล้ว มาลอง อจ ตุล พามาเจาะแต่ละ 3 มุม Manage / Govern / Secure ว่ามี Tools + Service อะไรบ้างครับ Manage สำหรับส่วนของ Manage ที่ อจ พาดูจะมี 3 ตัว Azure Monitor / Virtual machine scale sets /…

ลองมาฟัง AWS Auto Scaling EC2 & Spot Instance

วันนี้ลงทุนลามาลองฟังดูครับ (หนีประชุมด้วย 555) โดยงานนี้จัดที่ทรู สเปซ เซ็นเตอร์พ้อยต์ ออฟ สยาม เซ็นเตอร์ มาลองฟังค่ายอื่นๆ นอกจาก Azure บ้างครับ จะมีอะไรบ้างลองดูกันครับ Compute Service Auto Scaling Workshop หลังจากฟังทฤษฏีเสร็จมาลองทำ Workshop กับครับ โดยงานนี้ดีมาก มี Account ฟรีจากทาง AWS มาให้ใช้ 48 ชั่วโมงครับ โดยตัว Lab มี 2 Version ตอนทำ Workshop ผมเลือกตัว Command ครับ ภาพรวมจะเป็นตามนี้ครับ แต่ละ Component สร้างจาก Command ทำบนตัว AWS Cloud9 – เป็น EC2 ที่ทำหน้าที่เหมือน JumpHost เข้ามาแล้ว หน้าจอจะเหมือน VS Code เรามารัน Command เป็น EC2 แบบนึง ตอนทำก็เปิด Web UI มาคู่ๆกัน มาตรวจครับ โดยเป็นการ Run ผ่าน Cloud9 ผมมองตัว Cloud9 เป็น JumpHost นะ เพราะ Account ที่ AWS ให้มาจะ AWS Console ไม่ได้นะ ติดสิทธิ์ หน้าตาเจ้า Cloud9 ตามรูป จากนั้น Follow ตาม Workshop ไป และลองดู CloudWatch + Auto Scaling groups จะเป็นว่าจากที่ตัว ssm-stress.json…

Access AlmaLinux 9 via RDP

XRDP is an open-source implementation of remote desktop protocols developed by Microsoft. Prerequisites Setup XRDP on AlmaLinux 9 Test Remote Desktop from Windows Reference

[VS2022] แก้ไขปัญหา There is no project properties provider for “Persistence = ProjectFileWithInterceptionViaSnapshot”. Projects are not loaded

ช่วงนี้มีเคสให้ไปช่วยตรวจสอบบ่อยๆครับ ล่าสุดที่เจอ Error ตามรูปด้านบนเลยครับ มี output log ประมาณนี้ครับ Solution จากที่ลองหาใน Stackoverflow แนะนำให้ลอง Repair ตัว Visual Studio ก่อนครับ แต่ลองแล้วไม่ได้ 555 พอลองมาไล่ดู Log มีข้อมูลแนะนำที่น่าสนใจอันนึงครับ The project file cannot be opened. Unable to locate the .NET SDK. Check that it is installed, your PATH is configured for the correct architecture, and that the version specified in global.json (if any) matches the installed version. เห็น Keyword your PATH is configured for the correct architecture ลองไปดูใน System Variable โดยสำหรับ Visual Studio 2022 ที่ถูกต้องจะเป็น ดังรูป Reference

ผมว่ามันน่าจะขาดอะไรไปนะ

เรื่องมีอยู่ว่าที่ บ มี Inhouse Training สอนเรื่องการเก็บ Requirement แหละ ผู้สอนมีบอกถึง Cost ที่ต้องเสียไปหากมี Defect หลุดไป (High Cost of Requirement Errors)แต่ละช่วงตามรูปด้านล่าง ซึ่งมันถูกต้อง ถ้าในช่วงของ Project หรือ SDLC (ไม่ว่าจะเป็น Waterfall / Agile) ทำให้ทุกอย่างชัดเจน และ Test ได้ตั้งแต่ช่วง Requirement จะดีที่สุดครับ แก้ในเอกสาร ช่วงอื่นๆ กระทบไป Code / Architecture หรือ สอนงานไปแล้ว (Field Operation) ยิ่งหลุดไปเท่าไหร่คนที่เกี่ยวข้องจะเยอะขึ้น แต่ในการทำงานจริง ผมว่าเพิ่มช่วง Pre-Sale / Sale / Marketing นี่แหละ มันเป็นจุดที่ต้องสนใจ หลายครั้งที่มี Commit อะไรไว้ + ไม่ได้ส่งสัญญาให้ Review แล้วมันเกิดปัญหากับทีมที่มารับช่วงต่อ ดังนี้ จากเคสที่ยกตัวอย่างมาทั้งหมด เราจะพบว่า การสื่อสาร / Sync ข้อมูลสำคัญมาก รวมถึง Empathy เห็นอกเห็นใจคนอื่น จากตัวอย่างข้างต้น ถ้าช่วง Pre-Sale ทาง Marketing หรือใครก็ตามที่ทำ Pre-Sale เข้าใจคนข้างหลังก็จะดีมาก หลายๆที่กำหนด Policy คนที่ทำ Sale /Pre-sale / Marketing ได้ค่าคอมหลังจบ Project จะช่วยสะกิดตรงนี้ได้เยอะ แต่ที่ บ ผม ได้ยินว่า ถ้าลูกค้า Sign แล้วถือว่าได้ค่าคอมเลยครับ เลยมีเคสลด แลก แจกแถม กันเยอะ เพื่อให้ลูกค้า…

มาฟังงาน Level Up with GitHub Codespaces and Copilot: Thailand

สำหรับงานนี้เป็นอีกงานที่มา Onsite ครับ รู้สึกว่ามีสมาธิกว่าดูที่บ้าน พอดีมีแมวพยายามจะเข้าเป็นสมาชิกบ้าน ฮ่าๆ โดยงานนี้จะเป็นงานสุดท้ายใน Series ของ Thailand Developer Day ครับ หลังจากนั้นจะเป็นช่วง Workshop เอาตัว PetSpotR (Version Workshop) มาลองเล่นครับ ได้ลองเล่นตัว GitHub Codespaces + GitHub Copilot หลังจากลองถามตัว ChatGPT เอาครับ ซึ่งตัว Workshop จะเป็นการลองใช้ Step คร่าว ตัวเต็มดูจาก Live ครับ ^_^ มาลองแก้ Dropdown ของ LostPet.razor (ถ้าใน Workshop จะเป็นหัวข้อที่ 5 ครับ) สำหรับในงานมี VDO ย้อนหลังด้วยครับ Level Up with GitHub Codespaces and Copilot (Version Youtube) ผมเองดองตัว AKS ไว้เหมือนกัน เมื่อวันพุธไว้เหมือนกันคงต้องหาเวลากลับไปดูต่อแล้วครับ งานวันนี้ได้ Idea GitHub Codespaces + Copilot จากเดิมที่ใช้ ChatGPT อาจจะต้องลองย้ายค่ายแล้ว 55 งานวันนี้เลี้ยงดีครับ มาถึงมี Badge แจก และข้าวเที่ยง KFC / สปาเกตตี้ครับ โกโกอร่อยจริงด้วย และสุดท้ายวันนี้ได้ออกจากบ้านมา มีให้เปียกน้องแมวขากลับด้วย อิอิ Blog ของท่านอื่นๆ Resource

Jenkins-Git Parameter Filter Branch Name

jenkins

หลังจากย้ายจาก SVN > GitLab 3 ปีกว่าเนี่ย ปัญหาสำคัญอย่างนึงที่เจอประจำ การตั้งชื่อ Branch ซึ่งมันมีข้อตกลงนะ ล่าสุดตามนี้เลย สำหรับ flow และชื่อ Branch หากใครอ่าน Blog [GIT] แบ่งปัน Git Flow ที่ได้ใช้งานจริง มาก่อนอาจจะไม่เหมือนนะครับ มีปรับใหญ่ไปรอบนึงครับ ถ้าครบ 1 ปี จะมาแชร์ใหม่อีกรอบครับ ปัญหา ช่วงหลังๆ ชื่อ Branch เริ่มแปลกขึ้น เช่น แล้วที่นี่พอผ่านไปนานๆ ใครเจ้าของ Branch แล้วมันทำเพื่ออะไร ? Git Parameter Filter Branch พอดีมีเคสที่ต้องเข้ามาแก้ Jenkinfile ด้วย เอาหละใช้วิธี Workaround ก่อนและกัน โดยกำหนดจาก Jenkins – Git Parameter ถ้าตั้งชื่อ Branch ไม่ตรงตาม Regex ไม่ให้แสดงชื่อ Branch เพื่อจะ Build ทดสอบ หรือ Build ส่งลูกค้า โดย Pattern การตั้งชื่อ Branch ข้างต้นสามารถเขียน RegEx ได้ ดังนี้ นำ RegEx มาใช้งาน ปิดท้าย จริงๆ แล้ว Blog ที่ผมเขียนอาจจะไปแก้ปัญหาที่อาจจะไม่ถูกจุดสักทีเดียว ถ้าจะให้ดี Reference

เปลี่ยน docker มาใช้ ubuntu wsl แทน

WSL

ถ้าใครใช้ docker desktop ตอนลงมันก็จะมี wsl จะมี 2 ตัวแบบนี้ แต่ผมอยากใช้ตัวอื่นด้วย เช่น ubuntu เราจะปรับยังไงมาดูกันครับ เริ่มต้นไปที่ store ลอง search ubuntu ของผมเลือก 22.04 LTS เลย จากนั้นกด Get มาเลย จากนั้นกด Open มันจะขึ้น popup ใหม่ขึ้นมาตามนี้ หลังจากกำหนดค่าเสร็จสิน ลองกลับไปดูว่ามีลงกี่ตัวแล้ว จะพบว่ามี 3 ตัว โดยดูจากคำสั่ง wsl.exe -l -v ตอนนี้ยัง default ที่ docker-desktop-data อยู่นะ ดูจาก * ที่บอกครับ เปลี่ยนให้ตัว default เป็น ubuntu ด้วยคำสั่งที่มี Pattern ดังนี้ ลองรันจริง และตรวจสอบ default ไปพร้อมกันครับ ลองใช้งาน wsl ดูครับ เข้าได้เรียบร้อยครับ ถ้าใครที่ยังไม่ได้ Set Default wsl + ลง Linux Distro อื่นๆ นอกจากของ Docker เวลา Run Command จะเจอ Error ประมาณนี้ครับ ส่วน docker มี Integration ด้วยนะ ลองเลือกกันได้ครับ จากนั้นเลือก Ubuntu 22.04 แล้ว Apply & Restart ครับ Reference

Note VMware ESXi on Windows

VMWARE ESXi

หลังจากลอง Research มาหลายวันสรุปสั้นๆได้ประมาณนี้ สำหรับใครที่จะใช้ VMware EXSi 6.7.0 บน Windows นะครับ ปล. CPU Intel นะครับ ถ้าเป็น AMD เหมือนที่ลองกับ Lenovo Legion มันจะไปตายตอนสร้าง VM ใน EXSi มันจะหา AMD-V ไม่เจอ แม้ว่าจะเปิดใน Bios แล้ว Reference