HP-UX MC/SG安裝詳細參考手冊 .

liuhaimiao發表於2014-08-15
HP-UX MC/SG安裝詳細參考手冊 一、 配置MC的基本過程本表僅供參考:建立 /.rhosts, 使root對兩機的所有資源都有所需的許可權建立Cluster的配置文字: /etc/cmcluster/config.d 建立pkg1: /etc/cmcluster/pkg1/pkg1.conf /etc/cmcluster/pkg1/pkg1.cntl /etc/cmcluster/pkg1/service1 同步兩機的MC配置檔案: rcp -r /etc/cmcluster MachineB:/etc 檢查配置是否正確: cmcheckconf -v -C /etc/cmcluster/cmclconf -P /etc/mcluster/pkg0/pkg0.conf / -P /etc/cmcluster/pkg1/pkg1.conf 編譯、分發配置: cmapplyconf -v -C /etc/cmcluster/cmclconf -P /etc/cmcluster/pkg0/pkg0.conf / -P /etc/cmcluster/pkg1/pkg1.conf 修改LVM啟動檔案 /etc/lvmrc AUTO_VG_ACTIVATE=0 使VG00,VG01,VG02不隨系統的啟動便置為可用修改 /etc/hosts增加對pkg0和pkg1浮動地址的定義[Optional]: pkg0 132.97.4.12 pkg1 132.97.4.14 修改MC/ServiceGuard啟動檔案 /etc/rc.config.d/cmcluster AUTOSTART_CMCLD=1 檢查/etc/rc.config.d/nfsconf,引數值應設定如下:[沒必要] NFS_CLIENT=0 NFS_SERVER=0 同步兩機的相關的配置檔案: /.rhosts /etc/lvmrc /etc/rc.config.d/nfsconf /etc/rc.config.d/cmcluster /etc/passwd /etc/group /etc/hosts /etc/cmcluster/* 執行cluster: cmruncl -v cmviewcl –v 檢查LOG: /etc/cmcluster/pkg1/control.sh.log /var/adm/syslog/syslog.log 二、 關於本文編寫本文的目的公司的技術人員,根據該模板均能成功安裝配置統一風格、符合FR規範的MC高可用系統,透過本文件,系統管理員可對雙機的基本概念有一定的瞭解;可完成雙機的安裝配置、日常管理、監控等任務。規則定義及說明主機命名規則:本文的主機名分別是:node1和node2;並用藍色表示該名稱可隨不同環境改變。其他說明:本文所有藍色字元均為根據不同環境修改的;而褐色部分則為可選內容,即這些操作可根據使用者實際需要選擇;紅色表示重要部分。三、 安裝軟體? 安裝MC/ServiceGuard軟體。? 安裝Database Toolkits軟體 (安裝後位於/opt/cmcluster/toolkit/目錄內)。? 使用swinstall命令進行上述安裝。四、 準備系統建立主機信任關係? 編輯安全控制檔案/.rhosts:包含其他節點的根使用者授權,如 node1 root node2 root 啟動時間同步程式? 建議在各個節點上面啟用NTP(xntpd程式),編輯/etc/ntp.conf檔案。 (注:該項可以跳過)五、 網路卡準備 硬體要求:每臺伺服器三塊網路卡(lan0、lan1、lan2)或兩塊網路卡(lan0、lan1)加RS232串列埠(只有在雙節點群集中使用),其中lan0作為主機的主網路卡 ,作為資料通訊用,而lan1作為lan0的備份網路卡,lan2(RS232)作為心跳訊號通訊;[光兩塊網路卡也可以,資料和心跳走一條線] 網路卡配置:網路卡的配置在/etc/rc.config.d/netconf檔案中定義。 注意,在此檔案中應將主網路卡進行配置,而備份網路卡不能配置IP地址。六、 準備磁碟 (關鍵是共享磁碟--如:磁碟陣列)建立邏輯卷(LV)結構建立root盤的映象? 如果不需要的話,可以不做(只能使用命令完成,不能使用SAM)? 建立bootable LVM,以備作為root盤的映象: # pvcreate -B /dev/rdsk/cxtydz ?? 加入root VG: # vgextend /dev/vg00 /dev/dsk/cxtydz ?? 將新盤作成boot盤: # mkboot /dev/rdsk/cxtydz ?? 將AUTO File複製到新盤的LIF區內: # mkboot -a “hpux (disk;0)/stand/vmunix” / /dev/rdsk/cxtydz ?? 對root和primary swap LV在新盤上做映象(注意,應將VG00中的所有裝置均做映象,如/usr、/swap等): # lvextend -m 1 /dev/vg00/lvol1 /dev/dsk/cxtydz ?? 更新BDRA中的boot資訊: # /usr/sbin/lvlnboot -v -r /dev/vg00/lvol1 ? # /usr/sbin/lvlnboot -s /dev/vg00/lvol2 ?? 檢查BDRA是否正確: # /usr/sbin/lvlnboot -R /dev/vg00 ?? 確認映象的正確性: # lvlnboot -v ? 建立卷組(VG)和邏輯卷(LV)注:(可以使用SAM或命令方式)? 選擇VG所使用的磁碟(得到每個節點上可以看見的磁碟,識別出共享磁碟一般表現為磁碟陣列裝置檔案),在每個節點上面均執行下面的命令,列出每個節點可見的磁碟裝置: # lssf /dev/dsk/*d0 ?? 在節點1上面建立物理卷(PV) # pvcreate /dev/rdsk/c1t2d0 ? # pvcreate /dev/rdsk/c0t2d0 ?? 在節點1上面建立卷組(VG) 建立卷組目錄 # mkdir /dev/卷組名 ? 在卷組目錄內建立卷組控制檔案 # mknod /dev/卷組名/group c 64 0xhh0000 ? (其中,主裝置號總是64,次裝置號以16進位制數0xhh0000表示,hh必須在系統內唯一,使用系統中下一個可用的數值。使用下面的命令可以得到系統中已經存在的卷組: # ls -l /dev/*/group ?) 建立卷組並將物理卷加入其中 # vgcreate /dev/卷組名 /dev/dsk/c1t2d0 ? # vgextend /dev/卷組名 /dev/dsk/c0t2d0 ?? 重複上述步驟建立其他卷組? 在節點1上面建立邏輯卷(LV) # lvcreate -L 12 /dev/卷組名 ?? 在節點1上面建立檔案系統(如果需要) 在新建的邏輯捲上面建立檔案系統 # newfs -F vxfs /dev/卷組名/rlvol1 ? 建立mount目錄點 # mkdir /mnt1 ? Mount檔案系統以檢查正確性 # mount /dev/卷組名/lvol1 /mnt1 ?修改卷組屬性 在node1上deactivate 卷組: # umount /mnt1 ? # vgchange -a n /dev/卷組名 ? 在另一臺主機上設定VG (只能使用命令方式完成) 1) 在節點1上面,生成卷組映像檔案 #vgchange –c y /dev/卷組名? //改為cluster模式 # vgexport -v –s -p -m /tmp/卷組名.map /dev/卷組名 ? 2) 在節點1上面,將卷組映像檔案複製到節點2 # rcp /tmp/卷組名.map node2:/tmp/卷組名.map ? 3) 在節點2上面,建立卷組目錄 # mkdir /dev/卷組名 ? 4) 在節點2上面,建立卷組控制檔案 # mknod /dev/卷組名/group c 64 0xhh0000 ? 5) 在節點2上面,使用從節點1複製的卷組映像檔案中的資訊建立卷組結構 # vgimport -v –s -m /tmp/卷組名.map /dev/卷組名 / ? /dev/dsk/c1t2d0 /dev/dsk/c0t2d0 ? (注意,在節點2上面的裝置檔名字可能與節點1上面不同,必須確認) 6) 在節點2上面啟用卷組 # vgchange -a y /dev/卷組名 ? 7) 建立mount目錄點 # mkdir /mnt1 ? Mount檔案系統以檢查正確性 # mount /dev/卷組名/lvol1 /mnt1 ? 9) Umount檔案系統 # umount /mnt1 ? 10) Deactivate VG # vgchange -a n /dev/卷組名 ? 建立其他卷組結構重複上述步驟,建立其他卷組結構所有卷組建立完成後編輯/etc/lvmrc檔案,保證在系統啟動時不自動啟用與CLUSTER有關的卷組(將AUTO_VG_ACTIVATE置為0,並確認root卷組包含在custom_vg_activation函式內)。這些卷組將在應用包的control.sh文字中啟用。 最後步驟配置MC/ServiceGuard雙機前的最後步驟 在配置節點(節點1)上啟用所有卷組 # vgchange -a y /dev/卷組名 ? 七、 配置CLUSTER (可以使用SAM或命令方式完成)生成CLUSTER配置檔案模板[可以用現成的改] # cmquerycl -v -C /etc/cmcluster/cmclconf.ascii -n node1 / ? -n node2 ? 編輯CLUSTER配置檔案模板 CLUSTER_NAME cluster1 #CLUSTER的名字 FIRST_CLUSTER_LOCK_VG /dev/vg01 #LOCK卷組,叢集解體,各節點誰先搶到Lock VG就有誰重組叢集。 NODE_NAME node1 #節點名字 NETWORK_INTERFACE lan1 HEARTBEAT_IP 15.13.171.32 #lan1是HEARTBEAT網路 NETWORK_INTERFACE lan2 #lan2是備份網路 NETWORK_INTERFACE lan0 #[此網路卡不配也可] STATIONARY_IP 192.6.143.10 #lan0的靜態IP地址 FIRST_CLUSTER_LOCK_PV /dev/dsk/c1t2d0 #LOCK盤的物理卷名字 # SERIAL_DEVICE_FILE /dev/tty0p0 #RS232序列HEARTBEAT線路 NODE_NAME node2 NETWORK_INTERFACE lan1 HEARTBEAT_IP 15.13.171.30 //心跳 NETWORK_INTERFACE lan2 //備份 NETWORK_INTERFACE lan0 //資料 STATIONARY_IP 192.6.143.20 FIRST_CLUSTER_LOCK_PV /dev/dsk/c1t2d0 # SERIAL_DEVICE_FILE /dev/tty0p0 HEARTBEAT_INTERVAL 1000000 NODE_TIMEOUT 2000000 AUTO_START_TIMEOUT 600000000 NETWORK_POLLING_INTERVAL 2000000 VOLUME_GROUP /dev/vg01 VOLUME_GROUP /dev/vg02 #注:所有CLUSTER相關的卷組都要在此寫出 檢查CLUSTER配置的正確性(強烈建議:任何時候對雙機配置檔案做過改動,重新啟動雙機之前必須進行配置的檢查) # cmcheckconf -v -C /etc/cmcluster/cmclconf.ascii ? 設定自動啟動引數 編輯檔案/etc/rc.config.d/cmcluster,將引數AUTOSTART_CMCLD設為1,則在系統自舉時自動啟動CLUSTER。 八、 配置Package和Services (可以使用SAM或命令方式完成)建立子目錄在/etc/cmcluster中為每個Package建立子目錄 # mkdir /etc/cmcluster/pkg1 ? # mkdir /etc/cmcluster/pkg2 ? 建立配置檔案模板為每個Package建立一個配置檔案模板 # cmmakepkg -p /etc/cmcluster/pkg1/pkg1conf.ascii ? # cmmakepkg -p /etc/cmcluster/pkg2/pkg2conf.ascii ? 編輯配置檔案模板編輯Package配置檔案,根據實際需要修改相關項: PACKAGE_NAME pkg1 NODE_NAME node1 主節點 NODE_NAME node2 備份節點 RUN_SCRIPT /etc/cmcluster/pkg1/control.sh Package啟動指令碼 RUN_SCRIPT_TIMEOUT NO_TIMEOUT HALT_SCRIPT /etc/cmcluster/pkg1/control.sh Package停止指令碼 HALT_SCRIPT_TIMEOUT NO_TIMEOUT SERVICE_NAME service1 對每個service重複此3行定義 SERVICE_CMD[] SERVICE_FAIL_FAST_ENABLED NO Service是標識應用avalible與否的。 SERVICE_HALT_TIMEOUT 300 SUBNET 15.16.168.0 Package對應的子網(可以多個)。虛擬IP的子網。各個不同的Package間子網可以相同。此子網和真實的子網必須一致。虛擬IP在control.sh中指定。 PKG_SWITCHING_ENABLED YES NET_SWITCHING_ENABLED YES NODE_FAIL_FAST_ENABLED NO 建立控制指令碼的模板建立Package控制指令碼的模板 # cmmakepkg -s /etc/cmcluster/pkg1/control.sh ? 控制指令碼模式設定將Package控制指令碼設為可執行模式 # chmod +x /etc/cmcluster/pkg1/control.sh ? 編輯控制指令碼 編輯修改Package控制指令碼時注意進行以下工作:? 在PATH中增加啟動service所需要的路徑? 增加需要啟用的卷組名字? 增加需要mount的檔案系統和邏輯卷的名字? 定義IP地址和子網? 增加service名字? 增加service命令? 注意函式start_services和halt_services中啟動和停止service使用的指令碼引數,保證service啟動和停止命令的正確性檢查並分發配置檔案? 將Package控制指令碼複製到其他節點 # rcp /etc/cmcluster/pkg1/control.sh / ? node2:/etc/cmcluster/pkg1/control.sh ?? 檢查CLUSTER配置(強烈建議:任何時候對雙機配置檔案做過改動,重新啟動雙機之前必須進行配置的檢查) # cmcheckconf -C /etc/cmcluster/cmclconf.ascii / ? -P /etc/cmcluster/pkg1/pkg1conf.ascii / ? -P /etc/cmcluster/pkg2/pkg2conf.ascii ?? 停止Cluster ? 生成並分發二進位制CLUSTER配置檔案 # cmapplyconf -v -C /etc/cmcluster/cmclconf.ascii / ? -P /etc/cmcluster/pkg1/pkg1conf.ascii / ? -P /etc/cmcluster/pkg2/pkg2conf.ascii ?? 啟動Cluster 九、 管理Cluster和Package 管理Cluster和節點啟動Cluster # cmruncl -v ? # cmruncl -v -n node1 -n node2 ?在已執行的Cluster中增加一個節點執行 # cmrunnode -v node2 ?在已執行的Cluster中停止一個節點執行 # cmhaltnode -f -v node2 ?停止整個Cluster # cmhaltcl -f -v ?對Cluster進行重新配置? 停止整個Cluster ? 如果要改變CLUSTER LOCK VG,則 # vgchange -c n vg01 ? # vgchange -a y vg01 ?? 重新進行配置工作? cmapplyconf ? cmruncl 管理Package和Service 啟動Package # cmrunpkg -n node1 pkg1 ? # cmmodpkg -e node1 pkg1 ? //把切換屬性置為yes.故障發生後可以自動切換。很重要!!停止Package,不切換 # cmhaltpkg pkg1 ?移動Package # cmhaltpkg pkg1 -n node1 ? # cmrunpkg -n node2 pkg1 ? # cmmodpkg -e pkg1 ?//讓package可以切換對Package進行重新配置? 停止整個Cluster ? 修改配置檔案? 修改control.sh檔案(注意保證所有節點一致)? cmapplyconf ? cmruncl 檢視執行情況 # cmviewcl -v ?十、 測試Cluster配置測試Package Manager 1) 得到service的pid(使用ps -ef命令) 2) 殺死service程式(使用kill命令) 3) 使用cmviewcl -v命令檢視狀態 4) 將Package移動回原節點 5) 對資料庫系統的測試可以根據具體情況進行測試Cluster Manager 1) 關閉一個節點的電源 2) 使用cmviewcl -v命令檢視狀態 3) 開啟節點的電源 4) 使用cmviewcl -v命令檢視狀態 5) 將Package移動回原節點 6) 對資料庫系統的測試可以根據具體情況進行測試Network Manager 1) 使用lanscan命令得到主/備網路資訊 2) 使用cmviewcl -v命令檢視狀態 3) 從主網路卡上拔掉網線 4) 使用cmviewcl -v命令檢視狀態(應完成本地網路切換) 5) 重新連線網線 6) 使用cmviewcl -v命令檢視狀態 啟用VG的方式 1) 獨佔方式 #vgchange –a e /dev/vgxx //以獨佔方式啟用 2) 普通方式 #vgchange –c n /dev/vgxx #vgchange –a y /dev/vgxx 十一、 故障診斷方法 1、 檢查Cluster和Package狀態 使用cmviewcl -v命令 2、 檢查RS232狀態 使用cmviewcl -v命令 3、檢查Package IP地址 使用netstat -in命令 4、檢視LOG檔案 /var/adm/syslog/syslog.log /etc/cmcluster/pkg1/control.sh.log 5、檢視Cluster和Package配置檔案 6、檢視Package控制指令碼檔案(control.sh) 7、使用cmquerycl和cmcheckconf命令檢查配置的合法性 8、檢查LAN配置情況 # netstat -in # lanscan # arp -a # landiag # linkloop # /usr/contrib/bin/cmgetconfig -f # cmviewcl -v 附:一些有用的系統命令檢視硬體配置情況 # /usr/sbin/dmesg # /usr/sbin/ioscan # /usr/sbin/lssf /dev/rdsk/c0t5d0 # diskinfo /dev/rdsk/c0t5d0 # swapinfo ? # lanscan ?配置LAN # /sbin/set_parms hostname # /sbin/set_parms ip_address 編輯etc/hosts 檔案 reboot 或 # /sbin/set_parms initial(根據提示操作)建立新檔案系統 # newfs -F hfs ? # mkdir /mountpoint ? # mount /mountpoint ? Edit /etc/fstab file 擴充HFS檔案系統 # umount /mountpoint ? # lvextend -L 400 ? # extendfs ? # mount /mountpoint ?移動檔案系統 # newfs -F hfs /dev/vg01/rlvol1 ? # mkdir /home.new ? # mount /dev/vg01/lvol1 /home.new ? # cd /home ? # find . | cpio -pdumv /home.new ? # rm -rf /home/* ? # umount /home.new ? # mount /dev/vg01/lvol1 /home ? # rmdir /home.new ?檔案系統日常維護 /var/adm/wtmp /var/adm/btmp /var/adm/sulog /var/adm/cron/log /var/spool/mqueue/syslog /var/spool/mqueue/senmail.st /var/spool/uucp/.Admin/* /usr/spool/uucp/.Log/* /var/adm/lp/log /var/adm/messages /var/adm/sw/swinstalllog /var/adm/sw/swremovelog /var/adm/sw/sw*.log 刪除core檔案 # find / -name core -exec rm {} ?將磁碟從一個卷組移到另一個卷組 # pvmove /dev/dsk/c3t2d0 ? # vgreduce /dev/vg01 /dev/dsk/c3t2d0 ? # vgextend /dev/vg02 /dev/dsk/c3t2d0 ? PV-Link(物理卷鏈路)配置只在主鏈路上面執行pvcreate。在建立卷組時將所有鏈路包含在vgcreate命令的引數內。在已有的卷組中增加PV-Link:vgextend vgXX /dev/dsk/ 在已有的卷組中刪除PV-Link:vgreduce vgXX /dev/dsk/ 手工啟動HP-UX 進入ISL介面: Boot from primary boot path > n ? Boot from alternate boot path > n ? Enter boot path > 52.6.0 ? . . . Interact with ISL > y ? ISL> hpux (;0)/stand/vmunix ?進入單使用者狀態 ISL> hpux -is (;0)/stand/vmunix ?安裝軟體時檢查swagentd是否啟動(單使用者時不會自動啟動) # /sbin/init.d/swagentd start ?軟體打包到磁帶(swinstall格式) # swcopy到/var/spool/sw(或其他目錄) # swpackage -s /var/spool/sw -d /dev/rmt/0m / ? -x target_type=tape ?殺死指定名字的程式 # ps -e | awk “/name1|name2/ {print /“ kill -9 /“ /$1} “ |sh ?檢測INFORMIX SERVER狀態在SHELL中檢測INFORMIX SERVER狀態是否為ON-LINE if ( ! ( onstat -p | grep -E “On_Line“ > /dev/null 2>&1 ) ) ; then . . . fi 

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

相關文章