Topic List
12.30 น. ผมสั่ง remote reboot server พร้อมความกังวลทุกครั้งที่สั่ง reboot ว่าเครื่องจะเปิดขึ้นหรือเปล่า
12.40 น. นิ่ง ping ไม่เห็น เริ่มเหงื่อตก
12.50 น. เริ่มโทรหา NOC โทรเข้าสำนักงาน ไม่ติด โทรหา จนท.ที่ติดต่อกันอยู่ ได้เบอร์ใหม่ของมือถือ จนท. ดูแลห้อง IDC
13.10 น. จนป่านนี้ จนท. ยังไม่ยอมรับสาย โทรหา จนท. ที่ติดต่อกันอยู่อีกที คาดว่า จนท. ไปกินข้าวกระมัง?
14.00 น. ไม่มีวี่แววว่าใครจะรับสาย
14.30 น. ตัดสินใจบึ่งรถไป IDC (เจอ จนท. บอกว่าไปกินข้าว เพิ่งกลับมา)
14.50 น. เสียบจอ ถอดปลั๊ก (หากุญแจหน้าเครื่องไม่เจอ ไม่รู้ไปเก็บไว้ที่ไหน ลืมแว่นตา เพ่งแล้วเพ่งอีกว่าเครื่องเราเครื่องไหนวะ กลัวถอดสายผิดเครื่อง)
14.55 น. boot แล้ว กำลังตรวจสอบ harddisk /dev/sdb1 0.1% ผ่านไปเกือบนาที 0.2% ตายแน่เลย 10 ชั่วโมงก็ไม่รู้จะเสร็จไหม
14.57 น. CTRL+C , CTRL+D ข้ามไปเลย boot..... complete
15.00 น. web site running
15.05 น. กลับบ้าน
แก้คอนฟิกให้ไม่ต้องเข็ค harddisk ขณะเปิดเครื่องดีกว่า ไม่งั้นแย่แน่ ๆ
แก้ค่าในไฟล์ /etc/fstab
/dev/sdb1 /mntpoint ext3 defaults 1 2
แก้ค่าตัวเลขข้างหลังให้เป็น 0 0
/dev/sdb1 /mntpoint ext3 defaults 0 0
ยังไม่กล้า reboot ไว้ค่อยแวะเข้าไปที่ IDC แล้วค่อยลอง reboot นะ
Update : 2014-07-16
15.30 น. Server down อีกแล้ว
15.50 น. โทรเช็คกับ CAT ทราบว่าเขาเปลี่ยน UPS ทำให้เครื่องดับทั้งหมด OK ให้ช่วยกดเปิดสวิทช์ของ wintesla (เครื่องนี้พอไฟดับ จะไม่ start เอง ต้องมากดปุ่ม power)
15.52 น. Server softganz ยังไม่มา noc บอกว่าไฟ harddisk ติดค้างเลย คาดว่าจะเกิดอาการเดิมคือ เครื่องกำลัง check disk อยู่แน่เลย ให้ noc ช่วยเสียบจอ แต่ server เคสสั้น เสียบจอยาก เลยต้องวิ่งเข้าไปเอง
16.10 น. เอาจอเสียบเข้าไป ปรากฏว่าเป็นอย่างนั้นจริง กำลังเช็คได้ 13% อีกนานกว่าจะเสร็จ
16.20 น. ลองสั่งใหม่ ไม่ให้ check disk ตอนเปิดเครื่อง ด้วยคำสั่ง “tune2fs” ซึ่งเป็นคำสั่งสำหรับเปิดจำนวนการ mout (command to turn off mount count based)
sudo tune2fs -c 0 -i 0 /dev/sdDN
โดย “D” คือ represents the disk และ “N” represents the partition number of the file system
16.22 น. ลอง reboot คราวนี้ไม่เช็คแล้ว ลองปิดเครื่อง แล้วกดสวิทช์เปิดใหม่ ก็ไม่เช็คแล้ว หวังว่าคงหายนะ เพราะอีกไม่นานจะโดนปิดเครื่องเพื่อย้าย server ไปไว้อีกห้อง
16.40 น. กลับบ้านแล้ว
ปรับค่าในการทำ System Backup ใหม่ เป็น
- ยกเลิก Configure Full System Backup : Backup MySQL Databases
- เพิ่ม Directories : /backup/daily/home/mysql
- เปลี่ยนเวลา cronjob เป็น 00:01 น. ทุกวัน
Update : สถานการณ์ของ load ดีขึ้น System backup เสร็จภายใน 1 ชั่วโมง rsync fullbackup เริ่มเวลา 03.00 น. เสร็จประมาณ 07.00 น.
รู้สึกว่า Directadmin จะ run cronjob เพื่อคำนวณสถิติทุกวันตอน 10 นาทีหลังเที่ยงคืน ทำให้ I/O เต็มเกือบ 100% ก็เลยขอลองปิดดูสักพัก แล้วค่อยว่ากันอีกที
root@godserv:# nano /etc/cron.d/directadmin_cron
* * * * * root /usr/local/directadmin/dataskq 2 0-23/6 * * * root echo 'action=vacation&value=all' >> /usr/local/directadmin/data/task.queue; <a class="hashtag" href="/tags/5">#5</a> 5 * * 0 root /sbin/quotaoff -a; /sbin/quotacheck -augm; /sbin/quotaon -a; <a class="hashtag" href="/tags/10">#10</a> 0 * * * root echo 'action=tally&value=all' >> /usr/local/directadmin/data/task.queue 20 4 1 * * root echo 'action=reset&value=all' >> /usr/local/directadmin/data/task.queue 0 4 * * * root echo 'action=check&value=license' >> /usr/local/directadmin/data/task.queue
ได้มาจาก www.thaihosttalk.com
Host ถูก hacked
อาการที่เจอ เริ่มจากได้รับแจ้งมาว่าเมล์ส่งออกไม่ได้ ลองเช็คดูปรากฏว่าถูก block เนื่องจากเป็น spam หลังจากนั้นก็ได้รับรายงานจาก DA ว่ามีการส่งอีเมล์เกิน 2000 ในแต่ละวัน ก็เริ่มเอะใจว่า สงสัยจะโดนเข้าแล้ว
เลยเข้าไปเช็คดู มีเว็บหนึ่งใช้า Jumla ก็เลยลองเปลี่ยน folder เป็นอย่างอื่นไปก่อน แล้วคอยดูผล
วันนี้ยังมีรายงานส่งเมล์เกินอีก เลยเข้าไปเปลี่ยนรหัสผ่าน ftp ก่อน แล้วตามเช็คไฟล์ มีไฟล์แปลก ๆ เข้ามา เลยตามลบทิ้งทั้งหมด
แล้วไปเช็คดูใน user อื่น ๆ ดู ก็ยังไม่พบเจอไฟล์แปลก ๆ
แล้วก็คอยดูผลต่อไป
Update 14/5/2013 - ยังไม่มีอะไรผิดปกติ
มีประกาศแจ้งในเว็บ www.thaihosttalk.com ว่า
"ใครที่ใช้ DA อยู่ให้เข้าไปตรวจสอบในส่วน php safemode configuration ดูนะครับ ว่ามีโดเมนที่ถูกแก้ไข open basedir เป็น off หรือเปล่า
ให้แก้ไขกลับเป็น ON ให้หมดทุกโดเมน เพราะมันจะทำให้สามารถเขียนไฟล์ข้าม home user ได้ ทำให้โดนแก้ไฟล์ทีเดียวได้ทั้งเครื่อง
เครื่องใครที่โดนแก้ รบกวนมาแจ้งให้ทราบด้วยครับ ว่าใช้ whmcs อยู่ด้วยหรือเปล่า เพราะยังไม่แน่ใจว่าที่โดนมันมาจากทางใหน อาจจะโดนแก้ผ่าน whmcs ตอนที่มันเคยรั่ว
ใครโดนแก้แนะนำให้เปลี่ยน passwd DA กับ whmcs ใหม่ด้วย
กับอีกจุดหนึ่งคือ url ชั่วคราวที่เข้าทาง ip/~user ให้ปิดซะ เพราะเป็นช่องโหว่ให้เขียนไฟล์ข้าม user ได้เช่นกัน"
เช็คดูแล้ว ตอนนี้ทุก domain ยังคงเป็น ON อยู่
ที่มา www.thaihosttalk.com
Host down ตั้งแต่เมื่อคืน 2012-09-02 00:20 น่าจะเกิดจากการ update php+mysql ทำให้ suphp ไม่ทำงาน
แก้ไขโดยการ build ใหม่ วิธีการจาก Invalid command 'suPHP_Engine'
root@god:# cd /usr/local/directadmin/custombuild root@god:# ./build update root@god:# ./build clean root@god:# ./build php-cgi y root@god:# ./build suphp y root@god:# ./build rewrite_confs
Updated : 2012-09-02 10:22 OK.
เจอกับฝนตกหนัก คนหาดใหญ่กลัวน้ำท่วม เข้ามาเว็บเต็มที่ ล่มเลย
ตายที่ 1000 คน ด้วย RAM 2GB เป็นจริงไหม หากเพิ่มแรมเป็น 10GB จะรับได้เป็น 5000 คน
หรือ config mysql ?
แก้ปัญหาเฉพาะหน้า
เปลี่ยน DNS hatyaicityclimate.org และ www.hatyaicityclimate.org ไปยัง Cloud sited.hatyaicityclimate.org ล่มภายใน 5 นาที (เช่า RAM ไว้น้อยเกิน 1GB)
เปลี่ยน DNS hatyaicityclimate.org และ www.hatyaicityclimate.org ไปยัง sitea.hatyaicityclimate.org (อยู่กรุงเทพ) รับไหว คนดู 900 คน (RAM 16GB)
site หลักยังล่มอยู่ พยายาม ssh ไม่เข้า directadmin เข้าช้ามาก จะเข้าไปเปิด apache service แต่เข้าไม่ได้เลย
โทรไปแจ้ง CAT ให้ช่วย hard reboot ให้หน่อย (แต่ไม่แน่ใจว่าเขา reboot ให้หรือเปล่า ดูจากเวลาที่เครื่องเปิดอยู่ เหมือนกับยังไม่ได้ reboot)
พยายามเข้า directadmin จนเข้าไปได้ รีบปิด apache service ก่อนเลย โหลดหาย
RAM 2GB ใช้หมด แถม swap อีก 2GB ตายกับตรงนี้ I/O เอาไม่ทัน
dump database มาเก็บไว้วิเคราะห์ ดู slow query log
คาดว่าปัญหาน่าจะอยู่ที่คอขวดของ mysql กับ I/O
ลองย้าย hatyaicityclimate.org มาก่อน (คนทั่วไปมักจะเข้าเว็บ www ซึ่งก็เป็นอย่างนั้นจริง ๆ) เริ่มมีคนกลับมาทีละน้อย ยังรับไหว
เช็คยอดคนดูในแต่ละ site เรื่อย ๆ จนคาดว่าน่าจะรับไหว เลยย้าย www.hatyaicityclimate.org กลับมา server หลัก
21.24 น. ยังมีชีวิตอยู่
เป็นเรื่องที่เริ่มเมื่อ บ่ายสามโมงของวันนี้ จู่ ๆ MySql ก็ down เริ่มจากหน่วง แล้วก็ load แล้วก็ดับ แล้วก็ reboot เอง
กลับมาอีกที service mysqld ก็ไม่ยอมทำงาน สั่ง start เสร็จก็หยุดทันที
ทางแก้ที่ทำไปก็ไม่รู้ว่าถูกต้องหรือเปล่า
- พยายาม start mysql จนยอมแพ้
- สั่ง cd /usr/local/directadmin/custombuild/; ./update all แล้วก็ยังไม่มีอะไรดีขึ้น
- ลอง ./update mysql มันฟ้องว่าไม่มีการกำหนดไว้ใน options.conf จึงเปิดไฟล์ /usr/local/directadmin/custombuild/options.conf มาดู แล้วแก้ mysql _ inst=no เป็น mysql _ inst=yes (แต่ mysql=5.0) แล้วลอง ./build mysql
- ผลคือมันไปโหลด mysql5.0 มาติดตั้ง ในขณะที่ของเดิมคือ mysql5.5 ปําดเลยว่าข้อมูลตูจะเจ๊งหรือเปล่าวะ
- ก่อนที่จะ service httpd start (ก่อนทำได้ service httpd stop ไว้ก่อน) เลยทำการ backup ข้อมูลด้วย mkdir /backup/xxx; cd /home/; rsync -Cavz . /backup/xxx ก่อน
- คอยจน backup เสร็จ จึงลอง service httpd start
- เข้าเว็บได้ แต่บางเว็บข้อมูลบาง table อ่านไม่ได้
- ไม่ไหวแล้ว กลับบ้านก่อนดีกว่า (นั่งทำอยู่ที่ สปสช. ยังไม่กลับบ้านเผื่อว่าต้องเข้าไปที่ IDC ลง OS ใหม่ แต่เห็นว่าคงไม่ต้องลงแล้ว น่าจะหาทางแก้ไขได้)
- ถึงบ้าน ก็ service httpd stop; service mysqld stop
- แก้ /usr/local/directadmin/custombuild/options.conf เปลี่ยน mysql=5.1 สั่ง ./update mysql ใหม่
- แล้วจึง ./build php5-cgi
- สั่ง service httpd start ติดปัญหา suphp ใน httpd.conf จึงไม่สามารถ start ได้
- หาใน google เจอว่า cd /usr/local/directadmin/custombuild; ./build update; ./build clean;./build suphp d ยังไม่ได้
- เปลี่ยนเป็น cd /usr/local/directadmin/custombuild; ./build update; ./build clean; ./build php y; ./build suphp y; ./build rewrite_confs
- ที่ work น่าจะเป็น ./build rewrite_confs
- service httpd start เรียบร้อย
- เช็คเว็บ OK เข้าได้ ฐานข้อมูลครบ
สรุปว่า ยังไม่รู้ว่าเกิดอะไรขึ้น แต่ที่เห็นผิดสังเกตุคือ ใน /xxx/xxx/mysql/mysql/ นั้นไม่มีไฟล์ host.* หมายถึงตาราง host ไม่มี ตอนแรกว่าจะ copy จากเครื่องอื่นเข้าไป แต่หลังจาก build mysql 5.1 มันน่าจะถูกสร้างขึ้นมาใหม่ (หรือไม่?)
เรื่องนี้สอนให้รู้ว่า ข้าพเจ้ายังมั่วอยู่อีกมาก ดู log แล้วก็ยังไม่รู้สาเหตุ แต่ก็ถูไถไปตามเรื่อง
ได้ทำการอัพเดทรุ่นของโปรแกรมบน VPS1 ดังนี้
- DirectAdmin 1.34.0 to 1.34.1
- Apache 2.2.13 to 2.2.14
- cURL 7.19.5 to 7.19.6
- Dovecot 1.2.4 to 1.2.6
- PHP5 (CLI) 5.2.10 to 5.2.11
- PCRE 7.9 to 8.00
- FreeType 2.3.9 to 2.3.11
หลัง update PHP5 เว็บไซท์หยุดทำงาน ต้อง restart Apache ใหม่ จึงกลับมาใช้งานได้เป็นปกติ
ได้ทำการอัพเดทรุ่นของโปรแกรมบน VPS2 ดังนี้
- Apache 2.2.13 to 2.2.14
- cURL 7.19.5 to 7.19.6
- Dovecot 1.2.4 to 1.2.6
- PHP5 (CLI) 5.2.10 to 5.2.11
ทุกอย่างเรียบร้อยเป็นปกติ