ibm gpfs

zhengbao_jun發表於2010-11-14

安裝 GPFS 及配置準備

將 install_gpfs.sh 和 GPFS 安裝檔案拷貝到所有伺服器安裝

實驗中放在/soft_ins下,當然也可以建一個 NFS 伺服器共享安裝。

[NSD1][root][/home/scripts/gpfs]>rcp_file.sh /home/scripts/gpfs/install_gpfs.sh
[NSD1][root][/home/scripts/gpfs]> run_cmd.sh /home/scripts/gpfs/install_gpfs.sh
ITPUB個人空間r]+zC|3Q

確認每臺伺服器安裝顯示 ok

新增所有.profile 的執行路徑

[NSD1][root][/home/scripts/gpfs]>run_cmd.sh /home/scripts/gpfs/chang_profile.sh
ITPUB個人空間 F1@ @ R:N

目錄準備

[NSD1][root][/home/scripts/gpfs]>run_cmd.sh mkdir /share  
[NSD1][root][/home/scripts/gpfs]>run_cmd.sh ln -s  /share /tmp/mmfs
[NSD1][root][/home/scripts/gpfs]>run_cmd.sh mkdir /tmp/gpfs
ITPUB個人空間_$D_6bd
ITPUB個人空間0L$ke\8b(I&zmH
ITPUB個人空間:`6j\-Lk7B7Y i.v

r6mzF"G[0

)ARe ve'y#S+B/[ {0

Y8]t6\BS)zX'q8G0ITPUB個人空間4ll"m^+L6Wz

配置 GPFS 叢集

配置節點檔案

[NSD1][root][/]>vi /tmp/gpfs/nodefile
NSD1:quorum
NSD2:quorum
App1:client
App2:client
App3:client
App4:client

2q$I8h c Q:SU b0

建立 GPFS 叢集

先確保清理乾淨原先 GPFS 叢集

[NSD1][root][/tmp/gpfs]>mmdelnode -f

2o6sGvH]F&r0

建立叢集

[NSD1][root][/tmp/gpfs]>mmcrcluster -C bgbcrun -U bgbc 
-N /tmp/gpfs/nodefile -p NSD1 -s NSD2
Thu Jun 28 15:42:57 BEIST 2007: 6027-1664 mmcrcluster: Processing node NSD1
Thu Jun 28 15:42:57 BEIST 2007: 6027-1664 mmcrcluster: Processing node NSD2
…..
mmcrcluster: Command successfully completed
mmcrcluster: 6027-1371 Propagating the cluster configuration data to all
affected nodes.  This is an asynchronous process.
其中引數含義
-C bgbcrun 設定叢集名稱
-U bgbc    定義域名
-N /tmp/gpfs/nodefile 指定節點檔名
-p NSD1 指定主NSD伺服器為 NSD1
-s NSD1 指定備NSD伺服器為 NSD1

Cn-^ e0y dk0

確認檢視

[NSD1][root][/tmp/gpfs]>mmlscluster

GPFS cluster information
========================
  GPFS cluster name:         bgbcrun.NSD1
  GPFS cluster id:           739157013761844865
  GPFS UID domain:           bgbc
  Remote shell command:      /usr/bin/rsh
  Remote file copy command:  /usr/bin/rcp

GPFS cluster configuration servers:
-----------------------------------
  Primary server:    NSD1
  Secondary server:  NSD2

 Node  Daemon node name            IP address       Admin node name         Designation|-------10--------20--------30--------40--------50--------60--------70--------80--------9||-------- XML error:  The previous line is longer than the max of 90 characters ---------|-----------------------------------------------------------------------------------------
   1   NSD1                      10.66.3.98       NSD1                       quorum
   2   NSD2                      10.66.3.99       NSD2                       quorum
   3   App1                      10.66.5.51       App1                     
   4   App2                      10.66.5.52       App2                     
   5   App3                      10.66.5.53       App3                     
   6   App4                      10.66.5.54       App4
ITPUB個人空間7?N0R$@IDH

W'\i]lz s)I0

)Ks?7K `XWK0
ITPUB個人空間Q-h\}/|7LG8X
ITPUB個人空間S7E;N#Jou9Oq
ITPUB個人空間/P'P? u[(o!H
ITPUB個人空間hMh+sx\

配置 GPFS 的共享盤

建立 NSD(Network Shared Disk)檔案

[NSD1][root][/tmp/gpfs]>vi /tmp/gpfs/nsdfile
新增
hdisk2:NSD1:NSD2: dataAndMetadata:4
ITPUB個人空間A'vuOu

生成 NSD 盤

[NSD1][root][/tmp/gpfs]>mmcrnsd -F /tmp/gpfs/nsdfile
mmcrnsd: Processing disk hdisk2
mmcrnsd: 6027-1371 Propagating the cluster configuration data to all
affected nodes.  This is an asynchronous process.
ITPUB個人空間K'jA0t*k#}A

此時,該檔案作了轉換

[NSD1][root][/tmp/gpfs]>cat nsdfile
# hdisk2:NSD2:NSD1: dataAndMetadata:4
gpfs1nsd:::dataAndMetadata:4:

ZZ,w4B$kYbVd0

確認結果

[NSD1][root][/tmp/gpfs]>lspv
hdisk3          00003e846ffa7a6e                    gpfs1nsd

tU3V(H'MsOU} M4r0

啟動 GPFS 系統

[NSD2][root][/tmp/gpfs]>mmstartup -a 
Thu Jun 28 15:52:12 BEIST 2007: 6027-1642 mmstartup: Starting GPFS ...
NSD2:  6027-2114 The GPFS subsystem is already active.
…
App4:  6027-2114 The GPFS subsystem is already active.

j8Auy5Yo#f0ITPUB個人空間X:Hc7\a/DXbR^W2Z

JQ7jz n wgg`0
ITPUB個人空間{/b7E[c;Qfk@hN(Jl
ITPUB個人空間#C!h'O|0f2z1g_ S

$oK)Dg.fM0ITPUB個人空間 ^MST*kn

配置 GPFS 的共享檔案系統

建立 GPFS 檔案系統

[NSD2][root][/]>mmcrfs /share sharelv -F /tmp/gpfs/nsdfile  -A yes -B 64K -n 30 -v no
GPFS: 6027-531 The following disks of sharelv will be formatted on node NSD1:
    gpfs1nsd: size 67108864 KB
GPFS: 6027-540 Formatting file system ...
GPFS: 6027-535 Disks up to size 140 GB can be added to storage pool 'system'.
Creating Inode File
Creating Allocation Maps
Clearing Inode Allocation Map
Clearing Block Allocation Map
GPFS: 6027-572 Completed creation of file system /dev/sharelv.
mmcrfs: 6027-1371 Propagating the cluster configuration data to all
affected nodes.  This is an asynchronous process.
引數含義如下:
/share 檔案系統 mount 點名
sharelv 指定檔案系統 lv 名
-F   指定 NSD 的檔名
-A   自動 mount 選項為 yes
-B   塊大小為64K
-n   掛載檔案系統的節點估計數30個
-v   校驗建立磁碟是否已有檔案系統 為否
ITPUB個人空間|jp*O"S?1P6`@

裝載檔案系統

[NSD2][root][/home/scripts/gpfs]>run_cmd.sh mount /share
ITPUB個人空間&FMO"r(gI%i

建立目錄

[App1][root][/]>mkdir /share/user1work
[App1][root][/]>chown user1:bea /share/user1work
[App1][root][/]>chmod 700 /share/user1work
[App1][root][/]>mkdir /share/user1temp
[App1][root][/]>chown user1:bea /share/user1temp
[App1][root][/]> chmod 750 /share/user1temp
ITPUB個人空間iTe c h i

同樣在另3臺機器建立其他目錄並修改相應所有者即許可權,即 work 目錄只有所有者可操作,temp 目錄可讀可進入。

ITPUB個人空間 P\#F*d9Uy+g:G
ITPUB個人空間0jMSGY,sA5M'`
ITPUB個人空間]]ZgU@4P9j
ITPUB個人空間vg{S1nH0g9kb7t_J

5h3a6zrTRc0

配置 GPFS 的屬性

配置 GPFS 選項屬性

在節點開機後自動啟動 GPFS

[NSD1][root][/]>mmchconfig autoload=yes
mmchconfig: Command successfully completed
mmchconfig: 6027-1371 Propagating the cluster configuration data to all
affected nodes.  This is an asynchronous process.

;X,}G9[#F,ha.Sy?3Y0

採用多個 Quorum 盤

[NSD1][root][/]> mmchconfig singleNodeQuorum=no
mmchconfig: 6027-1119 Obsolete option: singleNodeQuorum

"^e u!b/Jz7JR0

顯示 GPFS 選項屬性

[NSD1][root][/]>mmlsconfig
Configuration data for cluster bgbcrun.NSD2:
-----------------------------------------------
clusterName bgbcrun.NSD2
clusterId 739157013761844865
clusterType lc
autoload no
useDiskLease yes
uidDomain bgbc
maxFeatureLevelAllowed 912

/W"Iz_4X0

至此 GPFS 的安裝配置完成

[NSD1][root][/]>mmgetstate -a
 Node number  Node name        GPFS state 
------------------------------------------
       1      NSD1          active
       2      NSD2          active
       3      App1          active
       4      App2          active
       5      App3          active
      10      App4          active
ITPUB個人空間MG].u'oN.E\)AQ

Sd]Y9LRA.g(s1w3{0

] n\#M0mYg![0
ITPUB個人空間({&C8~y(G)of"Y

C`Y d:_Z0
/fmO8J.n-v0

實施結果

最終,通過 userid 的不同,在 App1 的共享目錄 /share下,user1 只能讀寫自己資料夾的檔案,對其它使用者的 temp 目錄可讀,對其它使用者的 work 目錄不能讀寫。

[App1][/share]>ls -latr
drwx------   2 user1     bea         2048 Jun 28 17:21 user1work
drwxr--x--  2 user1     bea         2048 Jun 28 17:21 user1temp
drwx------   2 502      bea            2048 Jun 28 17:22 user2work
drwxr--x---   2 502      bea            2048 Jun 28 17:22 user2temp
drwx------   2 503      bea         2048 Jun 28 17:22 user3work
drwxr-x--   2 503      bea         2048 Jun 28 17:22 user3temp
drwxr----   2 504      bea         2048 Jun 28 17:22 user4work
drwxr-x---   2 504      bea         2048 Jun 28 17:23 user4temp
[App1][user1][/share]>cd user2work 
ksh: user2temp : Permission denied.
[App1][user1][/share]>cd user2temp 
[App1][user1][/share]>>a
The file access permissions do not allow the specified action.
ksh[2]: a: 0403-005 Cannot create the specified file.
[App1][user1][/share]>cd /user1temp
[App1][user1][/share/user1temp]>>a
[App1][user1][/share/user1temp]>ls -l
-rw-r-----   1 user1   bea               0 Aug 13 18:47 a
[App1][user1][/share/xhtemp]>rm a
[App1][user1][/share/xhtemp]>ls -l
[App1][/share]>ls -latr
drwxr------   2 user1     bea         2048 Jun 28 17:21 user1work
drwxr------   2 user1     bea         2048 Jun 28 17:21 user1temp
drwxr------   2 502      bea            2048 Jun 28 17:22 user2work
drwxr------   2 502      bea            2048 Jun 28 17:22 user2temp
drwxr------   2 503      bea         2048 Jun 28 17:22 user3work
drwxr------   2 503      bea         2048 Jun 28 17:22 user3temp
drwxr------   2 504      bea         2048 Jun 28 17:22 user4work
drwxr------   2 504      bea         2048 Jun 28 17:23 user4temp

-r}l#b-W5b)m0

同樣,在其它3臺機器也有類似我們希望的結果。


!P(RD6T*A+O g:c5[+^ }0

[ y)n.{zX2h1f0

5v {N ` V q0

(H!V*v mB:O;\K,N7w0

其他有用的 GPFS 操作

增加1個節點

1.新增一個節點

除所有準備和安裝工作外,還需完成以下操作:

[NSD1][root][/home/scripts/gpfs]>mmaddnode -N bgbcw14:client 
Thu Jun 28 16:28:21 BEIST 2007: 6027-1664 mmaddnode: Processing node App3
mmaddnode: Command successfully completed
mmaddnode: 6027-1371 Propagating the cluster configuration data to all
  affected nodes.  This is an asynchronous process.
ITPUB個人空間i&W]1p}M tQ

2.停掉節點

停掉所有節點

[NSD2][root][/home/scripts/gpfs]>mmshutdown -a
Mon Jul 30 09:56:02 BEIST 2007: 6027-1341 mmshutdown: Starting force unmount of 
GPFS file systems
NSD1:  forced unmount of /share
…
App4:  forced unmount of /share
Mon Jul 30 09:56:07 BEIST 2007: 6027-1344 mmshutdown: Shutting down GPFS daemons
NSD1:  Shutting down!
…
App3:  Shutting down!
NSD1:  'shutdown' command about to kill process 368890
….
App4:  'shutdown' command about to kill process 474040
Mon Jul 30 09:56:13 BEIST 2007: 6027-1345 mmshutdown: Finished

4h1l \B6L P0v"yk g#J4G0

也可以用 mmshutdown -N 只停某個節點

清除 GPFS

1.	fuser –kcu /share
2.	unmount /share  #在所有節點
3.	mmdelfs sharelv,   
4.	mmlsfs sharelv #檢查結果
5.	mmdelnsd –F /tmp/gpfs/nsdfile
6.	mmshutdown –a
7.	mmdelnode –n /tmp/gpfs/nodefile
8.	mdelnode –f 	#最後清除叢集

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/235507/viewspace-678058/,如需轉載,請註明出處,否則將追究法律責任。

相關文章