Docker swarm เป็น Native Clustering ของ Docker คือเป็นเครื่องมือช่วยจัดการเครื่อง server ที่รัน Docker หลายๆเครื่องให้อยู่ในสภาพแวดล้อมเดียวกัน พูดง่ายๆก็คือ การนําเอาเครื่อง server หลายๆเครื่อง (Worker) มาช่วยกันทํางาน โดยจะถูกควบคุมการทํางานโดย Manager และยังมีระบบ IPVS ที่เป็น Load-balance ซึ่งจะทําให้เราสามารถเข้าถึง Website หรือ Application ต่างๆ ที่เรารันอยู่ได้จากเครื่องไหนก็ได้ใน Swarm โดย IPVS จะช่วยจัดการให้เราเองโดยอัตโนมัติ ศัพท์ที่เกี่ยวกับ Docker swarm ที่ควรรู้มีดังนี้
จากรูปจะเห็นว่า Manager จะเป็นตัวจัดการ และกระจายงานต่างๆไปให้กับ Worker ทํางาน โดยปกติแล้ว Manager ควรมีมากกว่า 1 เครื่อง และควรมีเป็นจํานวนเลขคี่ เหตุผลก็คือ เมื่อ Manager เครื่องใดเครื่องหนึ่งเกิดปัญหาขึ้นมา Manager เครื่องอื่นจะขึ้นมาทํางานแทนทันที เราสามารถกําหนดให้ Manager ทําหน้าที่กระจายงานอย่างเดียว หรือทั้งกระจายงานและ ร่วมทํางานด้วยก็ได้ ถ้าในกรณีที่ Worker เครื่องใดหยุดทํางาน Manager จะย้าย Task ของเครื่องที่หยุดทํางาน ไปกระจายให้กับ Worker เครื่องอื่นๆโดยอัตโนมัติ มีการยืนยันตัวตน, กำหนดสิทธิ์ และเข้ารหัส Traffic ที่มีการพูดคุยกันระหว่าง Node ภายใน Swarm พร้อมระบบจัดการ TLS Certificate ภายในตัว
เนื่องจากคุณสมบัติของ Docker swarm ทําให้เราสามารถ Scale และ Load-balance service ได้ง่ายๆ จึงเหมาะกับงานที่ต้องการ Scale ระบบ ยกตัวอย่างเช่น ระบบลงทะเบียนนักศึกษา ซึ่งในช่วงลงทะเบียน จะมีนักศึกษาเข้าใช้งานพร้อมกันจํานวนมากทําให้ต้อง Scale ระบบเพื่อให้รองรับจํานวนนักศึกษาที่เข้าใช้งาน Docker swarm จึงช่วยให้การ Scale ระบบเป็นเรื่องง่ายและรวดเร็ว
ในบนความนี้ผมจะอธิบาย step การใช้งานในแบบคร่าวๆนะครับ เพื่อให้เห็นภาพโดยรวมทั้งระบบก่อน และในบทความหน้าผมจะทดลองใช้งาน Docker swarm กันจริงๆให้ดูครับ การใช้งานจะเริ่มต้นด้วยกําหนดเครื่อง Manager เมื่อเรากําหนดเครื่องใดเครื่องหนึ่งเป็น manager แล้ว เราจะได้ token มาสองอันดังนี้
เราจะนํา server ที่รัน docker เครื่องอื่นๆ เค้าไป join โดยใช้ token และ ip ของเครื่อง Manager ที่เรากําหนดไว้ตอนต้น เมื่อเรานําเครื่องมา join กันเรียบร้อยแล้ว ขั้นตอนต่อไปคือต้อง create service เพื่อสั่งให้ Docker swarm ทํางาน Application ตามที่เราต้องการ และเรายังสามารถ Scale เพิ่ม-ลดจํานวน task (Container) ได้ตามต้องการ ตอนต่อไปเรื่อง เริ่มต้นใช้ Docker Swarm
วิธี calibration จอ touchscreen raspberry piในบทความนี้ จะอธิบายเกี่ยวกับการ calibration จอ touchscreen ของ raspberry pi โดยจอ touchscreen ที่ใช้คือ Raspberry Pi 7" Touchscreen Display มาเริ่มกันเลยครับ
สวัสดีครับ บทความนี้จะเป็นการเรียนรู้และ ทําความเข้าใจในส่วนของเรื่อง Props children ใน React รวมไปถึงวิธีการใช้งานในแบบต่างๆ
โครงสร้างของ jpg fileเรารู้จักกันดีนะครับว่า jpg file เป็นไฟล์รูปภาพ ในบทความนี้เราจะมาดูกันว่าโครงสร้างของไฟล์รูปภาพ หรือ jpg file เป็นอย่างไร เมื่อเราใช้โปรแกรมพวก Hex Viewer ต่างๆ เปิด jpg file ดู เราจะสามารถดูเนื้อของไฟล์ที่ถูกเขียนบน hdd ได้ซึ่งจะแสดงผลเป็นเลขฐาน 16