บันทึกการย้ายบล็อก Ghost สู่ Hugo

เมื่อความเรียบง่ายคือคำตอบ ช่วงแรกที่เริ่มเขียนบล็อก เราเลือกใช้ Ghost แบบ self-host เพราะมันดู modern, editor ใช้งานดี Ghost รันผ่าน Docker ใน homelab ที่บ้าน แล้วเชื่อมต่อออกไปข้างนอกด้วย Cloudflare Tunnel + โดเมนของเราเอง ทุกอย่างทำงานได้ดี …จนเวลาผ่านไป เราเริ่มรู้สึกว่าเวลาเปิดหน้าเว็บ มันหน่วงขึ้นนิดหน่อย ไม่มากก็จริง แต่ก็พอจะรู้สึกได้ และเริ่มน่ารำคาญขึ้นเรื่อย ๆ ที่แย่กว่านั้นคือ มีอยู่วันหนึ่งไฟที่บ้านดับยาวทั้งวัน UPS ที่ต่อกับ homelab เอาไม่อยู่ เว็บเลยดับหายไปทั้งวันแบบดื้อ ๆ 😅 ตอนนั้นแอบคิดในใจว่า “นี่เรากำลังโฮสต์บล็อกตัวเอง หรือกำลังดูแล data center กันแน่นะ” ถึงเวลาหาอะไรใหม่ที่เบากว่า จริง ๆ แล้วเราก็ไม่ได้ต้องการระบบ CMS อะไรใหญ่โตเลย เขียนโพสต์ง่าย ๆ ด้วย Markdown Publish ได้ไว ไม่ต้องรอระบบอะไรทั้งนั้น ใช้ Git จัดการเวอร์ชันได้สะดวก ไม่ต้องรัน server หรือ database ให้ปวดหัว พอลองหาดู static site generator ที่ตอบโจทย์พวกนี้ เราก็มาเจอกับ Hugo ตัวเล็ก เร็ว และเรียบง่าย Compile แต่ละรอบแค่เสี้ยววินาที ...

June 8, 2025 · 2 min · Teera

แนวทางการปรับจูน ZFS Proxmox (2024)

แนวทางการปรับจูน ZFS Proxmox รวบรวมจากประสบการณ์ผู้เขียนทั้งหมด หลังจากใช้งาน ZFS มาประมาณ 1 ปี อาจจะมีข้อมูลไม่ถูกต้อง 100% โปรดใช้วิจารณญาณในการอ่าน Command line ใช้งานบน Proxmox VE 8.2.4 วิธีปรับจูน ZFS properties ใช้คำสั่งเดียว ในการปรับ properties ทั้งหมด ( อ้างอิง ) zfs set atime=off compression=lz4 recordsize=1M xattr=sa rpool วิธีปรับจูน ZFS volblocksize การตั้งค่า volblocksize ต้องทำก่อนที่จะสร้าง vm โดยไปที่ Proxmox UI (Datacenter -> Storage -> local-zfs -> Edit) กำหนด 64k ( อ้างอิง ) วิธีปรับจูน ZFS ARC nano /etc/modprobe.d/zfs.conf กำหนดค่า zfs_arc_min เริ่ม 2GB และ zfs_arc_max ตามที่เราอยากให้ arc ใช้งาน ( Convert Gigabyte to Byte ) ...

June 29, 2024 · 1 min · Teera

ขยายพื้นที่ ZFS Pool (mirror) โดยใช้ VDEV เดิม

สำหรับวิธีการขยายพื้นที่ ZFS Pool แบบ mirror โดยการเปลี่ยน HDD ลูกเดิมใน VDEV (mirror-0) ให้มีขนาดใหญ่กว่าเดิม ข้อดีคือ สามารถเปลี่ยน HDD ครั้งละลูก ส่วนใครสะดวกเพิ่ม VDEV (mirror-x) สามารถอ่าน blog ก่อนหน้าได้เช่นกัน ขยายพื้นที่ ZFS Pool (mirror) Command line ใช้งานบน Proxmox VE 8.2.4 ปัจจุบันมี VDEV (mirror-0) ซึ่งขนาดพื้นที่ใช้งานคือ 2TB disk1: /dev/sdc ขนาด 2TB disk2: /dev/sdd ขนาด 2TB disk3: /dev/sde ขนาด 4TB ต้องการนำ disk3 ไปแทนที่ disk1 ls -l /dev/disk/by-id/ | grep sde ค้นหา disk by-id zpool status nas เรียกดูสถานะ zpool zpool replace poolname old_disk new_disk ...

June 21, 2024 · 1 min · Teera

แก้ปัญหา Mini PC LAN พัง!

Mini PC ตัวนี้เราซื้อมือสอง ใช้งานเป็น Proxmox Cluster (pve1) ตั้งแต่ 03/2023 ก็ล่วงเลยมาประมาณปีนิดๆ แรกเริ่มเลย มันชอบมีอาการ network หลุดบ่อยๆ จนล่าสุดใช้งาน LAN Port ไม่ได้อีกเลย แม้ว่าจะมีมาให้ 2 port แนวทางแก้ไข หาซื้อ USB to LAN มาใช้แทนของเดิม และรองรับ Linux ก็ลองหาใน shopee จนไปเจอสินค้าของ Vention รุ่น USB 3.0 Gigabit Ethernet ราคา 3xx หลังจากได้รับสินค้า ก็ติดตั้งเข้าไปที่ Mini PC ผ่านทาง USB 3.0 จากนั้นก็เสียบสายแลน ต่อจอผ่าน hdmi เพราะจำเป็นต้องเช็คก่อนว่า Proxmox มันจะมองเห็นไหม? ip link show คำสั่ง show network interfaces ตอนนี้ Proxmox สามารถมองเห็น network interface ตัวใหม่แระ ip link set enx207bd2e4a424 up คำสั่ง active interfaces ...

June 8, 2024 · 1 min · Teera

ขยายพื้นที่ ZFS Pool (mirror)

ปัจจุบันเราใช้งาน ZFS Pool แบบ mirror (เทียบเท่า raid 1) ข้อดีคือ HDD สามารถพังได้ 1 ลูก โดยข้อมูลไม่เสียหาย ส่วนการเพิ่มขยาย ZFS Pool ก็ต้องเพิ่ม HDD ทีละ 2 ลูกเช่นกัน โดยจะเพิ่ม HDD 6TB x 2 ลูก จะส่งผลให้ขนาดพื้นที่เก็บข้อมูลเพิ่มจากเดิม 2TB+6TB=8TB Command line ใช้งานบน Proxmox VE 8.2.2 zpool status poolname (เรียกดูสถานะ poolname) zpool status nas เข้าไปที่ Proxmox UI (pve -> Disks) มองหา disk ที่เพิ่มเข้ามาใหม่ /dev/sdf และ /dev/sdg จากนั้นไปค้นหา disk by-id ls -l /dev/disk/by-id/ | grep sdf ls -l /dev/disk/by-id/ | grep sdg ...

June 1, 2024 · 1 min · Teera

วิธีย้าย Disk ZFS ไปใช้งาน Enclosure 5-bay

จากบทความก่อนหน้า เราได้รีวิว HDD Enclosure 5-bay สำหรับบทความนี้ เราจะมาพูดถึงการย้าย Disk ZFS ของเดิม 2 ลูก มาใส่ที่ Enclosure 5-bay ORICO hard drive enclosure จุใจขนาด 5-bay (DS500C3) Command line ใช้งานบน Proxmox VE 8.2.2 กรณีมีการ run VM หรือ LXC โดยใช้งาน ZFS storege ตัวที่ต้องการย้าย ต้องทำการ shutdown เสียก่อน zpool export poolname (ถอด zpool ออกจากระบบ) zpool export nas ปิดเครื่อง Docking 2-bay จากนั้นถอด HDD ย้ายไปใส่ Enclosure 5-bay zpool import -d /dev/disk/by-id poolname (เพิ่ม zpool เข้าระบบ) zpool import -d /dev/disk/by-id nas อธิบายเพิ่มเติมในส่วนการ import จริงๆแล้ว เราสามารถใช้คำสั่ง zpool import poolname ได้เลย แต่แบบนั้นมันจะเป็นการ import ด้วย device name /dev/sda, /dev/sdb ซึ่งมันค่อนข้างมีความเสี่ยง เพราะเราใช้งานแบบ HDD Enclosure มีโอกาศสูงมากที่ device name มันจะเป็นตำแหน่งจาก sda ไปเป็น sdd เราเลยชอบใช้วิธี import ด้วย /dev/disk/by-id มากกว่า ...

May 21, 2024 · 1 min · Teera

ORICO hard drive enclosure จุใจขนาด 5-bay (DS500C3)

ย้อนไปเมื่อ 2 ปีก่อน เราเคยใช้ Orico docking ขนาด 2-bay รุ่น 6528US3-C ปัจจุบันยังใช้งานได้ดีอยู่ แต่ช่วงหลังเมื่อมาใช้งาน ZFS รู้สึกว่าแค่ 2-bay มันไม่เพียงพอซะแล้ว เลยเป็นที่มาของการอัพเกรดมาใช้งานแบบ 5-bay นั้นเอง สำหรับ Orico รุ่น DS500C3 รองรับการใช้งานขนาด 5-bay มีพัดลมระบายความร้อน ฝาเปิด-ปิดเป็นแบบแม่เหล็ก เชื่อมต่อผ่านทาง usb type-c MaterialABS Supported Capacity90TB,18TB Single Disk Output InterfaceUSB3.1 Type-C SpeedUSB3.1 Gen1 5Gbps (Theoretical Speed) Power Supply12V6.5A IndicatorBlue LED Indicator Dimension220140190mm Hot-Swapping functionSupported. ด้านหน้าจะมีไฟแสดงสถานะ 6 ดวง โดยดวงแรกขวาจะเป็นไฟสถานะการเปิดใช้งานตัวเครื่อง แล้วก็ไล่มาแต่ละดวง คือไฟสถานะของ hard disk แต่ละตัวนั้นเอง ฝาด้านบนเป็นแบบแม่เหล็ก สามารถเปิดเพื่อใส่ hard disk แล้วทำการปิดลงไป แม่เหล็กจะดูด ซึ่งค่อนดีแน่นหนาเลย ถือเป็นการออกแบบที่ค่อนข้างดี ซ้ายมือจะเป็นปุ่ม power แล้วข้างๆคือ port type-c ส่วนขวาสุดคือ port สำหรับจ่ายไฟ ซึ่งจะมี adapter 12V 6.5A แถมมาให้ในกล่อง ข้างบนคือช่องระบายความร้อน hard disk ด้านล่างของตัวเครื่องคือพัดลมระบายความร้อนให้กับ hard disk โดยตัวพัดลมจะทำการดูดอากาศไปวิ่งผ่าน hard disk แล้วระบายออกทางช่องด้านหลัง อุปกรณ์อื่นๆที่แถมมาในกล่อง คู่มือ, สาย usb type-b to type-c, adapter 12V 6.5A เมื่อกดปุ่ม power ด้านหลังเครื่อง ไฟแสดงสถานะการทำงานติดสีน้ำเงิน (ดวงแรกขวาสุด) เปิดฝาข้างบน แล้วทำการเสียบ hard disk ลงไป 3 ตัว ไฟสถานะของ hard disk แต่ละตัวก็จะสว่างขึ้น กรณี hard disk ลูกนั้นมีการอ่านหรือเขียนข้อมูล ไฟสถานะจะกระพริบ ...

December 4, 2023 · 1 min · Teera

Synology off-site backup ข้อมูลด้วย rsync

กฏการสำรองข้อมูลแบบ 3-2-1 เป็นการสำรองข้อมูลอย่างปลอดภัย โดยจะถูกแบ่งเป็น 3 ส่วน มีสำเนาข้อมูลของคุณอย่างน้อย 3 ชุด เก็บสำเนาเหล่านี้ไว้บนสื่อที่แตกต่างกัน 2 ชนิด จัดเก็บสำเนาไว้นอกไซต์อย่างน้อย 1 ชุด วันนี้เลยจะมาแนะนำวิธีการสำเนาข้อมูลไว้นอกไซต์ (off-site backup) ใช้งานผ่านทาง rsync ที่สามารถ setup บนเครื่อง linux ทั่วไปได้เลย วิธีตั้งค่า rsync (Linux) เครื่อง linux ที่ติดตั้งเป็น Debian 12 ติดตั้ง rsync apt install rsync สร้าง username และ password สำหรับใช้งาน rsync adduser rsync สร้าง folder สำหรับ backup จากนั้นกำหนดสิทธิ์ chown -R rsync:rsync /mnt/backupSynology ตั้งค่า rsync module nano /etc/rsyncd.conf [backup] path = /mnt/backupSynology comment = off-site backup synology read only = no list = yes uid = rsync #uid username rsync gid = rsync #gid username rsync auth users = rsync #username rsync secrets file = /etc/rsyncd.secrets สร้างไฟล์ rsyncd.secrets เพื่อเก็บ username และ password ...

November 16, 2023 · 1 min · Teera

วิธีย้าย ZFS Storage ไปยังเครื่องอื่น

จากบทความที่แล้ว เราได้ทำสร้าง ZFS Storage มาใช้งาน ส่วนบทความนี้ เราจะพูดถึงวิธีการย้าย ZFS Storage จากเครื่องนึง ไปสู่อีกเครื่องนึง สร้าง ZFS Storage ใช้งานกันเถอะ Server: PVE1 ทำการ export zpool ออกจาก PVE1 ซึ่ง pool_name ของเราชื่อ “nas” zpool export <pool_name> zpool export nas ถอด usb เครื่องเก่าไปเสียบเครื่องใหม่ (PVE3) กรณีเป็น HDD internal ก็ทำการ shutdown server แล้วถอดไปเสียบเครื่องใหม่ได้เลย Server: PVE3 ทำการ import zpool zpool import root@pve3:~# zpool import no pools available to import กรณีเจอข้อความ “no pools available to import” ให้เพิ่มชื่อ pool_name ...

October 21, 2023 · 1 min · Teera

แนวทางการ tuning ZFS Proxmox

จากบทความที่แล้ว ได้พูดถึงการปรับ limit ZFS ARC ส่วนบทความนี้จะเป็นการ tuning performance หลังจากใช้งาน ZFS Storage แล้วเจอปัญหาหลักๆคือ เรื่องใช้งาน IO สูงผิดปกติ จนตัว Proxmox ค้างบ่อยครั้ง แนวทางการ limit ZFS ARC ถ้าติดตั้ง Proxmox ด้วยระบบ ZFS จะมี pool เริ่มต้นมาให้คือ rpool ซึ่งเราจะสามารถใช้งานได้ทั้ง local และ local-zfs สำหรับเป็น storage vm, container zfs list เรียกดู list NAME USED AVAIL REFER MOUNTPOINT rpool 27.8G 29.4G 96K /rpool rpool/ROOT 11.5G 29.4G 96K /rpool/ROOT rpool/ROOT/pve-1 11.5G 29.4G 11.5G / rpool/data 16.2G 29.4G 112K /rpool/data result zfs list ...

October 12, 2023 · 2 min · Teera