歡迎您光臨本站 註冊首頁

自己編譯fenced解決最大4個fence設備的限制

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

自己編譯fenced解決最大4個fence設備的限制

在RHCS中,當一台機器出現問題時處於正常狀態的機器會通過Fence將其重啟或關機以釋放IP、磁碟等資源。

但是目前的fenced版本中,有一個限制: 每個fence level中最大可以是4個fence設備。 這個限制在大部份時候是夠用的。但是如果想突破這個限制(本文中把限制設置成為了 8),可以按照如下方法作:

以下以RHEL4U5x86_64的版本為例

1. 安裝操作系統,建議完全安裝。

2. 下載源代碼包: fence-1.32.45-1.src.rpm . 安裝這個軟體包。
rpm -ivh fence-1.32.45-1.src.rpm

3. 在目錄 /usr/src/redhat/SOURCES/ 下創建文件fence.patch.0 ,

# cat /usr/src/redhat/SOURCES/fence.patch.0
顯示內容如下

diff -ruN fenced/agent.c fenced/agent.c
--- fenced/agent.c      2007-04-17 12:22:43.000000000 -0400
+++ fenced/agent.c      2007-11-05 01:21:32.000000000 -0500
@@ -24,7 +24,7 @@
#include "ccs.h"

#define MAX_METHODS            8
-#define MAX_DEVICES            4
+#define MAX_DEVICES            8
#define MAX_AGENT_ARGS_LEN     512

#define METHOD_NAME_PATH        "/cluster/clusternodes/clusternode[@name=\"%s\"]/fence/method[%d]/@name"


4. 修改文件 /usr/src/redhat/SPECS/fence.spec

在BuildRoot行下面添加 Patch0: fence.patch.0, 在%prep中添加 %patch0 -p0, 如果需要,可以升級版本號。
如下: 具體的文件可以參考附件。

Source0: %{name}-%{version}.tar.gz
Source1: watchdog-5.2.6.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
Patch0: fence.patch.0

................................

%prep
%setup -q
%setup -T -D -a 1
%patch0 -p0



5. 編譯並且創建新版本的軟體包
rpmbuild -ba  /usr/src/redhat/SPECS/fence.spec

編譯的時候,假如有依賴問題,可以按照提示安裝響應的軟體包。
需要注意的是,如果使用64_86的操作系統,一定要注意seamonkey-nss-1.0.8-0.2.el4.x86_64.rpm已經安裝。


6. 編譯完成之後,可以在/usr/src/redhat/RPMS/x86_64 下找到這個新生成的軟體包。 需要的話,可以使用rpm 命令安裝。

[ 本帖最後由 johnyo 於 2007-11-5 15:20 編輯 ]

[火星人 ] 自己編譯fenced解決最大4個fence設備的限制已經有561次圍觀

http://coctec.com/docs/service/show-post-7932.html