Archive for August, 2007

Make dd give a progress report.

Friday, August 31st, 2007

คิดว่าหลายท่านคงเคยใช้คำสั่ง dd กันมาบ้างแล้ว
แต่เวลาใช้งานเราไม่สามารถที่จะรู้ได้เลยว่าคำสั่งนี้ทำไปถึงไหนแล้ว
ในบทนี้ผมจะเสนอวิธีการดูความคืบหน้าของการทำงานของคำสั่ง dd กันครับ

$ dd if=/dev/zero of=/tmp/demo bs=1M count=1563
1563+0 records in
1563+0 records out
1638924288 bytes (1.6 GB) copied, 15.355191 seconds, 104.4 MB/s

วิธีการที่ทำให้สามารถดูความคืบหน้าของการทำงานมีรายละเอียดดังน

โดยทั่วไปถ้าเราใช้คำสั่ง dd จะมาผมลัพธ์ออกมาดังข้างล่าง
จะใช้คำสั่ง

$ pkill -USR1 ^dd$

ควบคู่กับคำสั่ง watch โดยพิมพ์คำสั่งดังข้างล่าง

$ watch -n5 pkill -USR1 ^dd$

*คำสั่ง watch จะค้างจึงไม่สามารถพิมพ์คำสั่งอะไรเพิ่มได้ ถ้า่ต้องการออกให้กด ctrl+c
ขั้นสุดท้ายลองใช้คำสั่งและดูผลลัพธ์กันครับ ซึ่งผลลัพธ์จะ
ออกมาคล้ายๆข้อความด้านล่างครับ

$ dd if=/dev/zero of=/tmp/demo bs=1M count=1563
474+0 records in
474+0 records out
497025024 bytes (497 MB) copied, 4.06409 seconds, 122 MB/s
983+0 records in
983+0 records out
1030750208 bytes (1.0 GB) copied, 9.97723 seconds, 103 MB/s
1508+0 records in
1508+0 records out
1581252608 bytes (1.6 GB) copied, 15.1398 seconds, 104 MB/s
1563+0 records in
1563+0 records out
1638924288 bytes (1.6 GB) copied, 15.6136 seconds, 105 MB/s

No tag for this post.

ติดตั้ง MySQL Cluster

Friday, August 31st, 2007


ในบทความนี้จะใช้เครื่องจำนวน 4 เครื่อง โดยแต่ละเครื่องจะมีหน้าที่ storages node จำนวน 2 เครื่อง (mysql-ndb-1 และ mysql-ndb-2) API node จำนวน 1 เครื่อง (mysql-api-1) และ Management node จำนวน 1 เครื่อง (mgmt)

package สำหรับการติดตั้ง MySQL Cluster
MySQL-clustermanagement-community.xxxx.rpm,
MySQL-clusterstorage-community.xxxx.rpm,
MySQL-clustertools-community.xxxx.rpm
,
MySQL-clusterextra-community.xxxx.rpm

เมื่อทำการติดตั้ง package เรียบร้อยแล้ว ต่อมาให้มาที่เครื่อง mgmt
และพิมพ์คำสั่งและแก้ไขไฟล์ config ตามด้านล่าง

Improve disk performance for Red Hat Enterprise Linux running in a VMware and xen environment.

Thursday, August 30th, 2007

ในระบบ virtualization เช่น VMWare หรือ Xen source จะมีการใช้งาน Disk ผ่านทาง Host ดังนั้นประสิทธิภาพ
ในการทำงานถ้าเราให้ Host จัดการการใช้ Disk I/O ให้กับ Guest OS จะทำให้เกิด
ประสิทธิภาพมากกว่าเนื่องจากว่า Host ได้มีการรอคอยการร้องขอการใช้งาน Disk I/O
อยู่แล้วและสามารถจัดสรรการใช้งาน Disk I/O ได้ดีกว่า ดังนั้นเราจะทำการเปลี่ยนค่าของ
I/O scheduler ใหม่ให้กับ Guest โดยให้เซ็ตเป็น noop ซึ่ง หมายถึงว่าสามารถให้ host
optimize I/O requests ได้

สำหรับ Guest Red Hat Enterprise Linux 4


แก้ไขในไฟล์ grub.conf

title Red Hat Enterprise Linux Server (2.6.18-8.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-8.el5 ro root=/dev/vg0/lv0 elevator=noop
initrd /initrd-2.6.18-8.el5.img

สำหรับ Guest Red Hat Enterprise Linux 5

ทำหลังจาก system reboot เสร็จเรียบร้อยแล้ว

# cat /sys/block/hda/queue/scheduler
noop anticipatory deadline [cfq]
# echo ‘noop’ > /sys/block/hda/queue/scheduler
# cat /sys/block/hda/queue/scheduler
[noop] anticipatory deadline cfq

หมายเหตุ
Host คือ เครื่องที่้รัน vmware หรือ xen
Guest คือ virtual machine่

No tag for this post.

How to rescan the SCSI bus to add or remove a SCSI device without rebooting the computer?

Thursday, August 30th, 2007

เมื่อต้องการให้ Linux rescan SCSI drive โดยไม่ต้อง restart เครื่องสามารถทำโดยใช้คำสั่ง

echo “1″ > /sys/class/fc_host/host/host#/issue_lip
echo “- - -” > /sys/class/scsi_host/host/host#/scan


โดยที่ # คือ หมายเลข SCSI bus ที่ต้องการให้ rescan

ในบางกรณีเราจำไม่อบากให้ rescan ใหม่ทั้งหมด ก็สามารถทำได้ดังนี้

Remove a device:

# echo "scsi remove-single-device <H> <C> <I> <L>" > /proc/scsi/scsi  

Add a device:

# echo "scsi add-single-device <H> <C> <I> <L>" > /proc/scsi/scsi  

คำเตือน

ไม่สามารถใช้คำสั่งนี้กับ Hardware ที่ไม่สนับสนุน Hot plug หรือก็คือเจ้า SCSI นี้ละ
และไม่รับประกันความเสี่ยงที่จะเกิดการ corrupt ของข้อมูล
หรือ เกิดอาการติงต้องกับ SCSI system ดังนั้นการ reboot ระบบยังเป็นสิ่งที่ควรทำมากกว่า

Tags: add SCSI, add SCSI online, remove SCSI, remove SCSI online, rescan SCSI, rescan SCSI bus, rescan SCSI bus online, rescan SCSI online

GNU/Linux distro timeline

Wednesday, August 29th, 2007

ในปัจจุบันมี Distros ของ Linux เกิดขึ้นมากมาย แต่จะมีสักกี่คนจะรู้บ้างละว่า Distros ไหนบ้างที่เป็น Distro ที่เป็นต้นกำเนิดของ Linux Distors ต่างๆ เราลองมาดูกันสิว่า Linux ที่เราใช้อยู่มีต้นกำเนิดมาจาก Distros ไหน

ติดตั้ง device mapper multipathing บน SAN/NAS

Tuesday, August 28th, 2007

เป็นบทความเก่าเอามาปัดฝุ่นใหม่ครับ เนื่องจากคิดว่าบางท่านอาจจะไม่ทราบว่าเอาไว้ืทำอะไร device-mapper multipathing มีไว้เพื่อใช้งานเพื่อทำ multipathing ควบคู่กับอุปกรณ์ที่เป็นพวก storage ครับ เช่น SAN หรือ NAS ครับ โดยเจ้าตัว device-mapper multipathing มีความสามารถที่จะทำงานในลักษณะ Load-Balance หรือ Fail-Over เพื่อใช้ในการ access storage ครับ ขอยกตัวอย่างเพื่อไม่เป็นไม่ให้งงกันไปใหม่แล้วกันนะครับ
ตัวอย่าง เรามีอุปกรณ์ SAN อยู่และการเชื่อมต่อกับอุปกรณ์จะใช้สาย Fiber 2 เส้นด้วยกัน(เพื่อป้องการเหตุที่สายอีกเส้นใช้งานไม่ได้)เมื่อเชื่อมต่อกับ Linux เรียบร้อยแล้ว Linux จะเห็น HDD จากตัว Linux เพิ่มเป็น 2 เท่าจากเดิม เนื่องจากว่ามีสาย Fiber 2 เส้นเชื่อมต่อไปยัง SAN นั้นเอง ดังนั้นถ้าเราแบ่งเนื่อที่ให้กับ Linux 1 LUN ด้วยกัน (LUN A) Linux จะเห็น HDD เป็น 2 ลูก คือ 2 ลูกของ LUN A เมื่อทำการเชคดู HDD แล้วจะพบว่ามี device sda, sdb ด้วยกัน แต่ sda และ sdb เป็น LUN เดียวกันทำให้เมื่อเวลา access จะสามารถ access ตัวใดก็ได้ ดังนั้นถ้าเรา Mount sda ขึ้นมาแต่ใช้ไปนานๆเกิดสายของ sda เสียขึ้นมาก็ไม่สามารถใช้งานได้จะต้อง Mount sdb ขึ้นมาแทน ด้วยเหตุนี้จึงมีโปรแกรมพวก multipath เกิดขึ้น เพื่อสร้าง virtual device สำหรับ sda, sdb เพื่อเป็นตัวแทนของ sda, sdb โดยที่นิยมใช้งานกันก็จะมี Option Fail-Over และ Load-Balance โดยในบทความนี้จะกล่าวถึงการ configure device-mapper multipathing แบบ Fail-Over ครับ โดยมีขั้นตอนดังนี้

How to add a swap partition to my system

Tuesday, August 28th, 2007

เมือต้องการเพิ่ม SWAP Partition ขึ้นมาใหม่จำเป็นจะต้องมีพาร์ทิชั่นว่างและต้อง set partition type เป็น Linux-SWAP ด้วย ยกตัวอย่างมี Partition ว่างเป็น /dev/hdb3


ขั้นตอนการสร้าง SWAP
1. mkswap /dev/hdb3 // สร้าง SWAP ที่ Partition /dev/hdb3
2. swapon /dev/hdb3 // enable SWAP
3. เพิ่ม /dev/hdb3 swap swap defaults 0 0 ไปที่ไฟล์ /etc/fstab
4. mount -a

เมื่อเสร็จขั้นตอนแล้วลองตรวจสอบด้วยคำสั่ง free ดูนะครับ

No tag for this post.

Transparent proxy in squid 2.6

Tuesday, August 28th, 2007

การเซ็ต transparent proxy ใน squid 2.6 จะใส่แค่ค่า
http_port 8080 transparent

แทน (version เก่า)


http_port 8080
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

และเซ็ต iptables

echo “1″ > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -t nat -F
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 80 -j REDIRECT –to-port 8080

Tags: proxy, Squid

3D Desktop Sun Microsystems

Friday, August 24th, 2007

3D desktop ของ SUN ต้องการเครื่องที่้มี Spec ที่ค่อนข้างสูงทั้งในส่วนของพลังการคำนวนและการแสดงผล และ 3D desktop ตัวนี้ได้ถูกออกแบบมาให้สามารถใช้งานได้ทั้งระบบปฏิบัติการ windows, Linux และ UNIX (ไม่แน่ใจในส่วนของ MAC OS)







Tags: 3D Desktop

Sponsor Links

Find entries :