ก่อนอื่นเราไปทำความรู้จักกับเจ้า Apache Guacamole กันก่อนมันคืออะไร? Apache Guacamole (กัวคาโมเล) เป็นซอฟต์แวร์แบบโอเพนซอร์สเว็บเกตเวย์สำหรับรีโมท เพื่อให้ไคลเอ็นต์สามารถเข้าถึงเซิร์ฟเวอร์จากระยะไกลได้ ผ่านเว็บเบราว์เซอร์ที่รองรับ HTML5 เช่น Mozila Firefox, Google Chrome หรือ Safari โดยใช้โปรโตคอล เช่น SSH, VNC, RDP และมีระบบยืนยันตัวตนสองชั้น (OTP) หากใครยังนึกภาพไม่ออกว่าจะเอา Apache Guacamole มาอิมพลีเม้นท์หรือเป็น Solution ทางเลือกท่าไหนได้บ้าง ใช้ประโยชน์อย่างไร ผู้เขียนจะเกริ่นเล่าให้ฟัง… โดยปกติในองค์กรหรือหน่วยงานที่กำลังมองหา Remote App ที่จะช่วยให้ผู้ใช้งานสามารถทำงานจากที่ไหนก็ได้ เช่น รีโมทมาใช้ Application ระบบบัญชี (ERP) หรือใช้ทรัพยากรร่วมกัน (File Server) บนระบบปฏิบัติการ Windows server ถ้าเป็นท่านี้ผู้ดูแลระบบก็เพียงหาซอฟต์แวร์ Remote Desktop มาติดตั้ง หรือติดตั้งเซอร์วิส Remote Desktop […]
Continue readingMore TagCategory: CONTAINERS
Containers
Linux OOM (Out of Memory) ความจำเต็ม!!! หน่วยความจำไม่เพียงพอ
แน่นอนครับว่าการจัดการหน่วยความจำใน Linux เป็นเรื่องยากที่จะเข้าใจครับ ออกแบบระบบยังไง? ให้แอพพลิเคชั่นกินแรม แล้วต่อด้วยกิน swap 555+++ ก็แค่ Firefox processes รัน 1,000 กว่า pid. เริ่มด้วยคำสั่งที่เรามักใช้กันบ่อยๆ นึกอะไรไม่ออกก็ ps, top, free โลดเช่น ดูหน่วยความจำว่าอะไรใช้อยู่บ้าง ผู้เขียนขอแบ่งปันประสบการณ์และความรู้จากการใช้ Firefox browser แอปพลิเคชันที่ทำงานใน userspace เคอร์เนล (user profiles) ที่ต้องใช้หน่วยความจำสำหรับตัวมันเอง สำหรับผู้ใช้จำนวนมากบนเซิร์ฟเวอร์เครื่องเดียว (Linux Terminal Deskop) แต่เมื่อทรัพยากรหมดเกี้ลง (แรมระบบเหลือน้อย) ระบบจะ้ช้า เว้นแต่ user logout ระบบ Linux ถึงจะกู้คืนหน่วยความจำจากสภาวะ OOM (Out of Memory) อธิบายการทำงานคือ แอพพลิเคชั่นจะต้องขอให้เคอร์เนลจัดสรรหน่วยความจำเพิ่มเติมให้แต่ถ้าดูจากรูป ไม่มีหน่วยความจำว่าง ทำให้กระบวนการทำงานช้าลง เช่น กด save […]
Continue readingMore TagPrivate OpenVPN Server ด้วย Docker container บน Multi-Cloud
สำหรับบทความนี้เราจะไปติดตั้งระบบ Private VPN ด้วยซอฟต์แวร์ OpenVPN กันครับ โดยจะเป็นการ deploy ด้วย Docker container บน Multi-Cloud Platform-as-a-Service ครับ ซึ่งการติดตั้งก็ง่ายสุดๆ เพราะเลือกติดตั้งแบบ 1-Click install ได้เลยจาก Marketplace โดยที่เราสามารถเลือกโหมดติดตั้ง OpenVPN ได้ 2 รูปแบบคือ คำเตือน: ไม่ขออธิบายว่า OpenVPN คืออะไรนะครับ อันนี้สามารถเปิดกูเกิลค้นหาอ่านเพิ่มเติมได้! Secure Internet Access (โหมดท่องอินเทอร์เน็ตอย่างปลอดภัย) – ซูโลชั่นสำหรับให้การเข้าถึงอินเทอร์เน็ตที่ปลอดภัยและป้องกันภัยคุกคามจาก Wi-Fi สาธารณะ– เป็นนโยบายการใช้อินเทอร์เน็ตขององค์กรที่ต้องการรับส่งข้อมูลอย่างปลอดภัย– โหมดนี้จะใช้ DNS คิวรีของ Google (Google Public DNS) Secure Remote Access (เข้าถึงทรัพยากรขององค์กรภายใน Environment group) – ซูโลชั่นนี้สำหรับให้บริการพนักงาน […]
Continue readingMore TagMonitor MySQL, MariaDB Galera Cluster ด้วย Prometheus + Grafana
ก่อนหน้าผู้เขียนก็มีโพสต์เกี่ยวกับเรื่อง Grafana ไปหลายบทความแล้วดูได้ที่นี่ และบทความนี้เราจะมาทำระบบ Monitoring ด้วย Prometheus และ Grafana กันครับ โดยจะใช้ Prometheus ซึ่งเป็น open-source เป็นฐานข้อมูล และใช้ตัว Grafana ทำหน้าที่แสดงค่าต่างๆ โดยใช้ Exporter ดึงข้อมูลหรือ query เพื่อนำมาแสดงค่า ซึ่งเราจะเพิ่ม Exporter หลักๆ 2 ตัวเข้ามาใน Prometheus และ deploy stack ด้วย docker-compose. 1. node-exporter (Server system data collection)2. mysqld_exporter (MySQL server data collection) node-exporter เป็น Exporter ตัวหนึ่งใน Prometheus ที่เอาไว้ดึงค่าต่างๆ ของฮาร์ดแวร์ภายในเครื่องเซิร์ฟเวอร์ เช่น CPU, Disk, Memory […]
Continue readingMore TagDeploy MariaDB และ PhpMyAdmin Container ด้วย Podman บน openSUSE MicroOS
บทความก่อนหน้านี้ได้พูดถึง Podman (Pod Manager) ไปบ้างแล้ว สำหรับในบทความนี้จะว่าด้วยการ Deploy แอปพลิเคชั่นท่าง่ายๆ ในการรัน Container บน MicroOS 1. รัน Container สำหรับ systemd (Containers as systemd Services)2. รัน Container ใน Pod (Containers as Pod) ก่อนจะเข้าสู่แต่ล่ะท่า… แล้ว openSUSE MicroOS คืออะไร? openSUSE MicroOS ระบบปฏิบัติการยุค “Container as a Service” ดิสโทรลูกจากดิสโทรแม่อย่าง SUSE Linux ตัวดิสโทร MicroOS ยังมาพร้อมกับออปชั่นติดตั้งระบบปฏิบัติการที่เราสามารถเลือกได้ซึ่งมีด้วยกัน 4 ออปชั่น MicroOS– Minimal installation ยัดแพกเกจเฉพาะที่จำเป็น – Services ต่าง […]
Continue readingMore TagMicroOS Container: Podman ทางเลือกใหม่สำหรับผู้ใช้ Docker
สำหรับผู้ใช้ดิสโทรสาวก Red Hat จะสังเกตเห็นว่า Red Hat แทนที่ Docker daemon ด้วย CRI-O / Podman ตั้งแต่ RHEL 8 แล้ว (แล้วปล่อย CentOS ทิ้ง) แล้ว Podman คืออะไร? ตามคำจำกัดความที่เว็บไซต์อย่างเป็นทางการของ Podman กล่าวว่า… Podman เป็น daemonless container engine สำหรับการพัฒนา, จัดการ และเรียกใช้ OCI Containers บนระบบ Linux System ของเรา มันไม่จำเป็นต้องมีสิทธิ์ root ในการสร้างและรันคอนเทนเนอร์ ซึ่งหมายความว่า Podman สามารถทำงานใน environment โหมด root ได้ (run as root หรือ rootless mode) Podman […]
Continue readingMore Tagติดตั้ง Grafana container บนแพลตฟอร์ม Ruk-Com PaaS
วันนี้มาขอแชร์แบ่งปันเกี่ยวกับวิธีการติดตั้ง Grafana โดยใช้ official Docker image บนแพลตฟอร์ม Ruk-Com PaaS ครับ จะว่าไปแล้ว search ในกูเกิลก็น่าจะมีมั้ง! 55++ ทำความรู้จักกับ Grafana อิหวังว่ะ! Grafana เป็น dashboard tool แบบโอเพนซอร์ส คือเครื่องมือในการสร้าง dashboard สำหรับ Monitoring เซิร์ฟเวอร์ครับ วิธีการใช้งานคือเราต้องเพิ่มทำการเพิ่ม data source (แหล่งข้อมูล) เช่น Prometheus, Elasticsearch, MySQL, PostgreSQL, ฯลฯ เป็นต้น เพื่อบอก Grafana ว่าให้ไปดึงข้อมูลส่วนไหนมาสร้างเป็นกราฟแสดงข้อมูล เช่น CPU, Memory ครับ ข้อดีคือมันแสดงข้อมูลในระดับ real-time และยังกำหนดการแจ้งเตือนไปยังอีเมล, ไลน์ หรือ Slack ได้ ทำให้ใช้งานได้หลากหลายนั้นเองครับ โดยเราสามารถดาวน์โหลดมาติดตั้งได้ทั้งแบบไบนารีและคอนเทนเนอร์ Grafana […]
Continue readingMore TagCertified containers กับ Docker containers ต่างกันอย่างไร?
ไม่ขอเกริ่นเกี่ยวกับ Docker นะครับ สำหรับการ Deploy แอปพลิเคชันสมัยใหม่แบบ Docker-based application (แบบเดิม monolithic applications) ด้วย Docker images บนตัว Docker รันไทม์หลัก ๆ แล้ว images มาจาก 3 แหล่งครับ คลัง Docker Hub registry Public registry (community images/Docker Native) และ Private registry image (Custom Docker Containers) โดยที่คลังเก็บ images บน Docker Hub registry จะแบ่งประเภทของ images ไว้ 2 ประเภทคือ Official Images เป็น Official Images ดูแลโดย Docker […]
Continue readingMore Tag11.11 Big Sale! Alibaba Cloud รองรับ 1 ล้าน Container ในเวลาเพียง 1 ชั่วโมง!
Alibaba Cloud รองรับ Auto-Scale Up 1 ล้าน Container ภายในเวลาเพียง 1 ชั่วโมง ยังไง? “เราภูมิใจเป็นอย่างมากที่ได้สนับสนุนผู้บริโภค 800 ล้านคนและร้านค้ากว่า 250,000 แบรนด์ในช่วงเทศกาลช้อปปิ้งที่ใหญ่ที่สุดในโลก” นั้นเป็นคำกล่าวของ Li Cheng ประธานเจ้าหน้าที่ฝ่ายเทคโนโลยีของ Alibaba Group. วันนี้พาไปส่องเทคโนโลยีที่อยู่เบื้องหลัง 11.11 ที่ระบบรองรับคำสั่งซื้อ 583,000 คำสั่งซื้อได้ในวินาที! เทศกาล 11.11 Alibaba Cloud สร้างสถิติใหม่ ย้อนไปปี 2009 ที่จัดเทศกาล 11.11 ขึ้นเป็นครั้งแรก ช่วงนั้นมียอดสั่งซื้อออนไลน์เพียง 400 orders ต่อวินาที และล่าสุดเทศกาล 11.11 ปี 2020 Big Sale! ที่ผ่านมา อาณาจักรอีคอมเมิร์ซในเครือ Alibaba มียอดสั่งซื้อสูงสุดถึง 583,000 รายการในเวลาเพียงวินาที! ครับ […]
Continue readingMore Tagเรื่องนี้มีแค่คุณเท่านั้นที่ได้รู้ Auto scaling กับ Predictive scaling
ถ้าจะให้พูดแบบทึ่ง ๆ ตรง ๆ เรื่องนี้โรงเรียนไม่เคยสอน หนังสืออ้างอิงก็ไม่มี เรื่องนี้มีแค่คุณเท่านั้นที่ได้รู้… Auto scaling กับ Predictive scaling รู้แล้วอย่าไปเล่าให้ใครฟังนะครัช 55++ เมื่อ 10ปี ก่อนเรื่องนี้โรงเรียนไม่มีสอนเพราะ Predictive scaling เป็นแนวคิดใหม่การทำ Auto scalingเข้าประเด็นแบบไม่มีปี่มีขลุ่ยเลยละกันครัช Auto-scaling กับ Predictive scaling Auto Scalable เป็นคอนเซปต์การปรับขนาดโดยอัตโนมัติเดิมทีการสร้างแผนการปรับขนาดแบบดั่งเดิมผู้ดูแลระบบจะกำหนดค่าด้วยออปชัน เช่น Schedule หรือ Usage-Based Rules ด้วย System metrics ซึ่งเป็นตัวชี้วัดเพื่อมอนิเตอร์การปรับขนาดเพิ่มขึ้น/ลดลงอัตโนมัติ. การทำ Auto Scaling ก็เพื่อรักษาประสิทธิภาพการทำงานของแอปพลิเคชันและเซิร์ฟเวอร์ให้มีเสถีรยภาพ(ไม่ให้ระบบล่ม) คงประสิทธิภาพการทำงานนั้นเอง Auto scaling แบ่งออกได้เป็น 2 ประเภทคือ ฝั่ง Workload การปรับขนาดแอปพลิเคชันของคุณโดยอัตโนมัติในเวลาที่ใช้ โดยการเพิ่มจำนวนของ Pod และ schedule ไปยัง […]
Continue readingMore Tag