Wednesday, May 12, 2010

otrs installation note

require rpm
gd, gd-devel, kernel-headers, perl-Net-DNS

Download otrs from http://otrs.org/download/


[root@otrs opt]# tar xjvf otrs-2.4.7.tar.bz2 -C /opt
[root@otrs opt]# mv otrs-2.4.7 otrs
[root@otrs opt]# useradd -r -d /opt/otrs/ -c 'OTRS user' otrs
[root@otrs opt]# usermod -G apache otrs
[root@otrs opt]# cd /opt/otrs/Kernel
[root@otrs Kernel]# cp Config.pm.dist Config.pm
[root@otrs Kernel]# cd Config
[root@otrs Config]# cp GenericAgent.pm.dist GenericAgent.pm

[root@otrs bin]# cd /opt/otrs/bin

check otrs folder permission
[root@otrs bin]# ./SetPermissions.pl /opt/otrs --web-group=apache --otrs-group=apache

check perl modules for otrs
[root@otrs bin]# ./otrs.checkModules

建議 Encode::HanExtra 最後裝
裝 SOAP-Lite 先裝 RPC::XML


設定 LDAP 整合前有一個特別的程序,否則將會整和不成功
1. 先用預設帳號 root@local / root 登入
2. 改 Config.pm
3. 另外用一台電腦 使用欲用來管理的 ldap 帳號登入
4. 用原本的 root@local 去設定 ldap 帳號的管理權限

Friday, May 07, 2010

heartbeat , drbd 切換節點前注意事項

heartbeat , drbd 在切換節點前注意事項
因為如果不能成功讓 secondary 接手就喪失 heartbeat 的意義
環境: node01 為 primary, node02 為 secondary

若 linux kernel 升級 下次用新的 kernel 開機時 drbd module 會失效
原因是 drbd 是 kernel 編譯的模組 若有和開機相對應的模組

所以 linux kernel 升級 -> 重新開機 -> apt-get remove drbd8-source drbd8-utils –> apt-get install drbd8-source drbd8-utils

2. 關掉 primary 時 請在 secondary 接手的機器做以下確認動作 ,

a. 檢查 /proc/drbd , 如果如下未 sync 完畢 請等待 sync 完畢 (通常是關機一段時間, 有大量的資料待 sync)

drbd driver loaded OK; device status:
version: 8.3.3 (api:88/proto:86-91)
GIT-hash: 49bfeeaf3690ad0b9afd5376feda9e9eb34a30f3 build by nobody@node02, 2010-05-07 10:45:39
m:res cs ro ds p mounted fstype
… sync'ed: 12.2% (4352/4952)M
0:r0 SyncTarget Secondary/Primary Inconsistent/UpToDate C
root@node02:~# more /root/drbd.status
version: 8.3.3 (api:88/proto:86-91)
GIT-hash: 49bfeeaf3690ad0b9afd5376feda9e9eb34a30f3 build by nobody@node02, 2010-04-29 01:22:52
0: cs:SyncSource ro:Primary/Secondary ds:UpToDate/Inconsistent C r—-
ns:9358320 nr:8306688 dw:19144016 dr:20373293 al:36175 bm:35703 lo:0 pe:298 ua:0 ap:0 ep:1 wo:b oos:162604
[===========>........] sync'ed: 64.9% (162604/454208)K
finish: 0:01:41 speed: 1,436 (9,112) K/sec

b. 確認 heartbeat, drbd service

heartbeat
/etc/init.d/heartbeat status
heartbeat OK [pid 1590 et al] is running on node02 [node02]…

drbd
root@node02:~# /etc/init.d/drbd status
drbd driver loaded OK; device status:
version: 8.3.3 (api:88/proto:86-91)
GIT-hash: 49bfeeaf3690ad0b9afd5376feda9e9eb34a30f3 build by nobody@node2, 2010-05-07 10:45:39
m:res cs ro ds p mounted fstype
0:r0 Connected Secondary/Primary UpToDate/UpToDate C

Saturday, March 13, 2010

Monitoring an ADSL link using a simple script

ADSL 常常被衝爆 屢屢遭 User 的 call
來吧,以後如果斷線就自己重開吧!

Monitoring an ADSL link using a simple script
http://logicsquad.net/freebsd/pingmonitor-how-to.html

Thursday, March 04, 2010

iSCSI 驗證項目

Q1: 掛載在 iSCSI Target 的 Disk 是否可以移轉到其他 Target Server ?

A1: 可。經過試驗後,可以移轉。不用擔心 Server 掛掉, iSCSI Disk 認不到。

Q2: 是否可以同時多個 iSCSI Initiators 存取同一個 iSCSI Disk

A2: 不可,如果同時 Server A, Server B 掛載同一個 iSCSI Disk ,則兩邊只會看到自己所寫得部份,要達到這個功能需要使用 GFS 等具有 Share disk 功能的 File System。

Wednesday, March 03, 2010

Squid - 透過 proxy 無法 SVN Commit

使用者透過 Proxy 無法做 SVN Commit

出現下面訊息

Commit
Commit failed (details follow):
Server sent unexpected return value (400 Bad Request) in response to MKACTIVITY
request for '/svn/mstar/!svn/act/6c6b0d3e-111a-5f4e-bd9a-f24d71d4de02'

解法:

很簡單, 只是 Squid 看不懂 request method

vi /etc/squid/squid.conf

extension_methods REPORT MERGE MKACTIVITY CHECKOUT PROPFIND

Thursday, February 25, 2010

CentOS4 iscsi initiators

iSCSI initiators 在 CentOS 4 與 CentOS5 使用上有點不一樣

1. 安裝

# yum install iscsi-initiator-utils

2. 設定

# vi /etc/iscsi.conf

DiscoveryAddress=ISCSI_TARGET_HOST_OR_IP
OutgoingUserName=ISCSI_USER_NAME
OutgoingPassword=ISCSI_PASSWORD
LoginTimeout=15

3. 啟用服務

# chkconfig iscsi on
# /etc/init.d/iscsi start

4. 確認

# fdisk -l
# tail -f /var/log/messages
# find /sys/devices/platform/host* -name "block*"

5. 格式化

# fdisk /dev/sdc
# mkfs.ext4 /dev/sdc1

ref

http://www.cyberciti.biz/tips/howto-centos-rhel4-iscsi-initiators.html

Sunday, February 21, 2010

apt-mirror : "apt-mirror is already running, exiting at /usr/bin/apt-mirror line 187"

如果執行 apt-mirror 出現這個錯誤

"apt-mirror is already running, exiting at /usr/bin/apt-mirror line 187"

通常是 apt-mirror 不正常結束所造成

請先檢查你的 base_path 在哪

base_path = /home/apt-mirror

則 /home/apt-mirror/var/apt-mirror.lock 刪掉
再重新執行 apt-mirror 即可

Tuesday, February 16, 2010

[CentOS] 初探 OpenIMPI 研究

OpenIMPI - Intelligent Platform Management Interface

OpenIMPI 他是一個硬體平台的管理介面,目的是讓不同廠商的管理軟體能夠透過一致的介面,管理不同的韌體和硬體平台,有效降低伺服器系統的設備總擁有成本。目前大部的 Server 或是 KVM 都會提供 OpenIMPI。
OenIMPI 是要是透過 BMC (baseboard management controller),他是獨立於主機的一顆特別的 IC , 他可以在主機當機時,仍然可以對系統做一些處置,如開關機。有些情況的當機純粹是軟體所造成的,只要重開即可,有了 OpenIMPI 就不用跑機房一趟,所以對 MIS 是非常好的工具。

除此之外,我們也可以透過 OpenIMPI 來做 Cluster 的 Fence Device, 這也是我要開始瞭解 OpenIMPI 的目的。


更詳盡的說明,請參閱 "嵌入式IPMI管理器可增強伺服器的可靠性"
http://www.eettaiwan.com/ART_8800335004_480402_NT_22631dba.HTM

[安裝]
OpenIPMI 有三個重要的組件 OpenIPMI, OpenIPMI-libs, OpenIPMI-tools
其中 OpenIPMI, OpenIPMI-libs 是用來提供服務, OpenIPMI-tools 則是提供查詢工具。

yum install OpenIPMI OpenIPMI-libs OpenIPMI-tools
chkconfig impi on
service impi start

[使用]
直接打 ipmitool 就可以顯示所有功能


ex. 顯示 sensor 所有數值
ipmitool sensor

ACPI STATE | 0x01 | ok
CPU0 Pres | 0x02 | ok
CPU1 Pres | 0x02 | ok
CPU0 TEMP | 48 degrees C | ok
CPU1 TEMP | 46 degrees C | ok
SYS TEMP | 22 degrees C | ok
CPU FAN1 | 6000 RPM | ok
CPU FAN2 | 6000 RPM | ok
CPU FAN3 | 6200 RPM | ok
CPU FAN4 | 6000 RPM | ok
CPU FAN5 | 6200 RPM | ok
CPU FAN6 | 6000 RPM | ok
CPU FAN7 | 6200 RPM | ok
CPU FAN8 | 6000 RPM | ok
CPU FAN9 | 6000 RPM | ok
CPU FAN10 | 6200 RPM | ok
SYS FAN1 | 6000 RPM | ok
SYS FAN2 | 5800 RPM | ok
CPU0 VCOREA | 1.39 Volts | ok
CPU1 VCOREA | 1.39 Volts | ok
VCC12V | 12.22 Volts | ok
VBAT | 1.84 Volts | cr
VCC3V3 | 3.27 Volts | ok
VCC5V | 5.07 Volts | ok
VCC3V3 DUAL | 3.30 Volts | ok
Watchdog | Not Readable | ns
POST ERROR | Not Readable | ns
MEMORY ECC | Not Readable | ns
PCI ERROR | Not Readable | ns


ex. 取 CPU1 溫度
ipmitool sensor get "CPU1 TEMP"

Locating sensor record...
Sensor ID : CPU1 TEMP (0x24)
Entity ID : 3.2
Sensor Type (Analog) : Temperature
Sensor Reading : 46 (+/- 0) degrees C
Status : ok
Lower Non-Recoverable : na
Lower Critical : 10.000
Lower Non-Critical : na
Upper Non-Critical : 70.000
Upper Critical : 90.000
Upper Non-Recoverable : na
Assertion Events :
Assertions Enabled : lcr- unc+
Deassertions Enabled : lcr- unc+


其他更進一步的指令,須回到公司替 Server 設定 IPMI 的 IP 才有辦法測試給大家。
等過完年吧~

Sunday, February 14, 2010

Linux Cluster for NFS 安裝及設定 - 隨筆記錄中

趁休假這段空檔,來做一下用 iSCSI 做 Linux Cluster 的 LAB
我會有兩台機器做為 Cluster Node, 再另一台機器提供 iSCSI 的 Shared Disk
環境如下

[環境]
下面是我在休假前準備的環境
1. Storage Ubuntu 9.10 192.168.1.20 作為Shared Disk使用
2. Node1 CentOS5.4 192.168.1.21 Cluster的節點一
3. Node2 CentOS5.4 192.168.1.22 Cluster的節點二
4. Service IP 192.168.1.25 Cluster的 Service IP

其中 Storage 未來可以改用 FreeNAS 來取代,由於機器不夠先暫時用我的電腦撐一下


[基礎知識]

首先,如果要能讓 Disk 具有 iSCSI 的功能 要安裝 iscsi-initiator-utils 套件
至於,如何掛載 Share Disk 則需要 iscsitarget 套件。


[Storage]
我們採用 iscsitarget 來做 Share Disk
由於 CentOS4 不提供 iscsitarget 套件,再者下載原始程式也是無法 Compile 成功,
所以如果要使用 CentOS ,建議用 CentOS5 所提供現成的套件。
a. 安裝
iscsitarget
b. 設定
vi /etc/ietd.conf

我新增下面三行
Target iqn.2010-02.com.testabc:storage.disk2.sys1.xyz
Lun 0 Path=/home/test.img,Type=fileio
Alias Test

其中 path 可以為 實體的 raw disk , 如 /dev/sdb1, 或是 image file
ex. 用 dd 產生 1G 的檔案
dd if=/dev/zero of=/home/test.img count=1000000 size=1024


vi /etc/default/iscsitarget
將 ISCSITARGET_ENABLE 設定 true
ex. ISCSITARGET_ENABLE=true
c. 啟動
設定好後
/etc/init.d/iscsitarget start

[Node1, Node2]
安裝 iscsi-initiator-utils 套件
yum install iscsi-initiator-utils

測試掛載 iscsi 磁碟
iscsiadm --mode discovery --type sendtargets --portal 192.168.1.20


測試登出 iscsi 磁碟
iscsiadm -m node -L all



列出所有 target
iscsiadm -m node

若無法登出,多半是 Share Disk 停止分享,
可以到下面的目錄將無法登出的目錄砍掉即可
/var/lib/iscsi/nodes

將設定寫入
vi /etc/iscsi/initiatorname.iscsi
DiscoveryAddress=172.16.8.109

chkconfig iscsi on
service chkconfig start

下次重新開機就會自動找到
注意:每個 iscsi export 出來的 mount 只能由一個 Node 掛載,不能同時兩個 Nodes 掛載。




參考網站
Open-iSCSI Project
http://www.open-iscsi.org

iSCSI Enterprise Target
http://iscsitarget.sourceforge.net

Saturday, February 13, 2010

[CentOS4] iSCSI 安裝與測試

[iSCSI 安裝]
下載地點 http://iscsitarget.sourceforge.net

目前最新版為 iscsitarget-1.4.19.tar.gz
iscsitarget 編譯時需要 kernel header,
透過 /lib/modules/[kernel 版本]/build 連結的地方找 kernel source
並進行 autopatch, RELEASE_NOTES 裡面會註明支援的 kennel 版本

我用 kernel 版本是 2.6.28.10

開始安裝吧~
tar zxvf iscsitarget-1.4.19.tar.gz
cd iscsitarget-1.4.19
make && make install