[技術分享] Hpe NS8/NS4主機程序(Process)及子系統(Subsys)管理(上)

作者/郭哲銘

作者簡歷 作者現職凌群電腦NSK服務總處系統工程師,主要負責HPE Nonstop證券、期貨、銀行客戶交易系統維運服務、軟體產品整合服務,專長為HPE NonStop系統整合。 前言 在 NonStop 系統環境中,有許多程式、工具和子系統應用程式共同執行並控制系統的核心任務運作。本期我們將介紹 NonStop 系統中常用的各種子系統 (SubSystem),並簡要描述這些子系統中許多常見任務的操作方式。 NSK Swap file management Kernel Managed Swap Facility (KMSF) 提供 HPE NonStop Server Virtual Memory 的管理設定及安裝。 一、KMSF SWAPFILE 環境設定內容 == $SYSTEM.ADDKMSF.ADDKMSF == ADD SWAPFILE $SYSTEM.ZSYSSWAP.SWAP00, CPU 0 ,EXT 40000, MAXEXTENTS 400 ADD SWAPFILE $SYSTEM.ZSYSSWAP.SWAP01, CPU 1, EXT 40000, MAXEXTENTS 400 ADD SWAPFILE $DSMSCM.ZSYSSWAP.SWAP02, CPU 2, EXT 40000, MAXEXTENTS 400 ADD SWAPFILE $DSMSCM.ZSYSSWAP.SWAP03, CPU 3, EXT 40000, MAXEXTENTS 400 START SWAPFILE $SYSTEM.ZSYSSWAP.SWAP00 START SWAPFILE $SYSTEM.ZSYSSWAP.SWAP01 START SWAPFILE $DSMSCM.ZSYSSWAP.SWAP02 START SWAPFILE $DSMSCM.ZSYSSWAP.SWAP03 二、KMSF 操作管理 (新增、啟動、停止、刪除) NSK - ADD SWAPFILE $XXX.ZSYSSWAP.SWAP00,CPU 0,SIZE 64 GB NSK - START SWAPFILE $XXX.ZSYSSWAP.SWAP00 NSK - ADD SWAPFILE $XXX.ZSYSSWAP.SWAP01,CPU 1,SIZE 64 GB NSK - START SWAPFILE $XXX.ZSYSSWAP.SWAP01 NSK - STATUS SWAPFILE * NSK - STOP SWAPFILE $SYSTEM.ZSYSSWAP.CPU0A NSK - DELETE SWAPFILE $SYSTEM.ZSYSSWAP.CPU0A NSK - STOP SWAPFILE $SYSTEM.ZSYSSWAP.CPU0B NSK - DELETE SWAPFILE $SYSTEM.ZSYSSWAP.CPU0B TMF TMF (Transaction Monitor Facilities) 提供交易資料檔案的完整性保護,經由 AuditTrail 及 Audit Volumes/Audit Files,將交易過程中的資料異動進行映射 (image),提供交易資料的異動保護,異常回復及 log audit。

《圖一》
一、TMF 環境建置及管理 (COLD START & 環境配置參數)
  • TMF COLD START FILE 內容
  • SET AUDITTRAIL auditdump off SET AUDITTRAIL filesize 10000 SET AUDITTRAIL filespervolume 20 SET AUDITTRAIL ActiveVols $AUDIT ADD AUDITTRAIL Master START TMF Add DataVol $SYSTEM, AuditTrail MAT, IGNOREPREVIOUSCONFIG Add DataVol $DSMSCM, AuditTrail MAT, IGNOREPREVIOUSCONFIG
  • Configuration Volume
  • $SYSTEM Audittrail Format 2 DisasterRecovery Off TmpWaitTimer Off GoRemote Msg PioBuffer (600,1,100000) NetDisconnectTimer 30 seconds NetSessionIdleTimer 0 seconds HungTxsTimer Off TransactionProtocol Standard AuditTrail Configuration: Master ActiveVols: $AUDIT Subvolume ZTMFAT, Prefix AA, filesize 10000, filespervolume 20 auditdump Off, overflowthreshold 80%, begintransdisable 90% MaxRetainedATFiles 0 OverflowVols: None RestoreVols: None Catalog Configuration: retaindepth 3, released Off, roundrobin Off BeginTrans Configuration: TransCountThresh (7500,8000) TmfLibMemThresh (85,90) TmpMemThresh (90,95) TransPerCpu (4096,4096) AutoAbort 18000 Seconds RecRMCount 256 RMOpenPerCpu 128 BranchesPerRM 128 ThreshAutoIncrease FALSE ThreshLowerLimit 80 TransPerCpuThresh (100,100) 二、TMFCOM 指令操作
  • 檢查 TMF 狀態
  • TACL>TMFCOM TMF>STATUS TMF TMF Status: System: \XXX, Time: 11-Jul-2019 14:02:07 State: started Transaction Rate: 0.00 TPS TmpWaitTimer Off MemHeapUsage: TMFLIB heap usage by CPU: Heap size 22 Mb 00: 4% 01: 4% 02: 3% 03: 4% 04: N/A 05: N/A 06: N/A 07: N/A 08: N/A 09: N/A 10: N/A 11: N/A 12: N/A 13: N/A 14: N/A 15: N/A TMP heap usage by CPU: Heap size 1024 Mb 00: 0% 01: 0% SeqNumLimits: Sequence Number Limits by CPU 00: 96686766 01: 62672420 02: 22359237 03: 20092950 04: 140000 05: 140000 06: 140000 07: 140000 08: 140000 09: 140000 10: 140000 11: 140000 12: 140000 13: 140000 14: 140000 15: 140000 AuditTrail Status: Master Active audit trail capacity used: 3% First pinned file: $AUDIT.ZTMFAT.AA000046 Reason: Current File Current file: $AUDIT.ZTMFAT.AA000046 BeginTrans Status: ENABLED Catalog Status: Status: up BeginTrans Status 及 TMF Status 必須為啟動狀態
  • 檢查 DISK DATA VOLUMES 是否受 TMF 正常保護
  • TMF>STATUS DATAVOLS Audit Recovery Volume Trail Mode State ------------------------------------------------------ $DSMSCM Mat Online Started $SYSTEM Mat Online Started
  • AUDITTRAIL-FILE 監看
  • TMF>STATUS AUDITTRAIL ,DETAIL AuditTrail Status: Master Active audit trail capacity used: 3% First pinned file: $AUDIT.ZTMFAT.AA000046 Reason: Current File Files: $AUDIT.ZTMFAT.AA000042( available ) $AUDIT.ZTMFAT.AA000043( available ) $AUDIT.ZTMFAT.AA000044( available ) $AUDIT.ZTMFAT.AA000045( available ) $AUDIT.ZTMFAT.AA000046( active, current ) SPOOLER SUBSYSTEM SPOOLER 做為 NSK 的印表控制管理系統,提供應用程式的報表輸出及相關檔案或 LOG 的匯出收集功能。

    《圖二》
    一、Spooler 啟動管理
  • WARM START (溫啟動:系統環境沿用上次的設定值,不做變動)
  • TACL>OBEY $SYSTEM.SPL.SPLWARM SPOOL/IN $SYSTEM.SPL.SPL,NAME $SPLS,OUT $0,PRI 180,NOWAIT,CPU 0,TERM $ZHOME/1 SPOOLCOM;SPOOLER,START
  • COLD START (冷啟動)
  • TACL>OBEY $SYSTEM.SPL.SPLCOLD 一般 SPOOLER 啟動會以 WARM START 為主,除非有變動系統相關設定參數或須重新設定環境才會使用 COLD-START SPLCOLD FILE 內容及參數定義如下: COMMENT ======================================================== COMMENT = THIS IS $SYSTEM.SPL.SPLCOLD = COMMENT = IT CREATE A SPOOL SYSTEM FROM THE GROUND UP = COMMENT = = COMMENT = PURGE ANY EXISTING FILE HAVING THE SAME NAME AS THE = COMMENT = DATA FILE WE INTEND TO USE (BETTER MAKE SURE YOU REALLY = COMMENT = WANT TO DO THIS) = COMMENT ================================================ PURGE $SYSTEM.SPL.DATAFILE COMMENT ================================================ COMMENT = PURGE FILES HAVING NAMES WE INTEND TO USE = COMMENT ================================================ PURGE $SYSTEM.SPL.SPL3 COMMENT ================================================ COMMENT = CREATE THE DATA FILE = COMMENT = "DATAFILE" FOR ONLINE COLLECTOR, = COMMENT ================================================ FUP CREATE $SYSTEM.SPL.DATAFILE , EXT (30000,30000) FUP SECURE $SYSTEM.SPL.DATAFILE,"NCNC" COMMENT ================================================ COMMENT = RUN THE SUPERVISOR. = = COMMENT ================================================ SPOOL /IN $SYSTEM.SPL.SPL , OUT $0 , NAME $SPLS , PRI 180 , CPU 0 ,NOWAIT,TERM $ZHOME/1,65534, 32760, 4095, 31, 255, 16, 32765 COMMENT ================================================ COMMENT = CONTROL FILE = $SYSTEM.SPL.SPL[0-9] = COMMENT = LOG FILE = $0 = COMMENT = SUPERVISOR PROCESS NAME = $SPLS = COMMENT = EXECUTION PRIORITY = 180 = COMMENT = PRIMARY CPU = 0 = COMMENT = BACKUP CPU = 1 = COMMENT = MAX. NUMBER OF JOBS = 65534 = COMMENT = MAX. NUMBER OF LOCATIONS = 32760 = COMMENT = MAX. NUMBER OF DEVICES = 4095 = COMMENT = MAX. NUMBER OF COLLECTORS = 31 = COMMENT = MAX. NUMBER OF PRINT PROCESS = 255 = COMMENT = MAX. NUMBER OF FONTS = 16 = COMMENT = MAX. NUMBER OF BATCH JOBS = 32765 = COMMENT ================================================ DELAY 5 SEC COMMENT ================================================ COMMENT = THE SPOOLER IS NOW IN THE COLD STATE. THE NEXT COMMAND = COMMENT = RUNS SPOOLCOM , SPECIFYING A SPOOLER "CONFIGURATION = COMMENT = FILE" TO INITIALIZE AND START THE SPOOLER = COMMENT ================================================ SPOOLCOM;SPOOLER,START DELAY 5 SEC SPOOLCOM /IN $SYSTEM.SPL.SPLCONF/
  • Spooler Drain
  • SPOOLER SHUTDOWN,必須使用 SUPER GROUP TACL>SPOOLCOM )SPOOLER,DRAIN 二、Spooler 設定管理
  • 新增 DEVICE/LOCATION
  • TACL> SPOOLCOM )DEV $PRXXX , PROCESS $FAST, SPEED 300, WIDTH 200,& HEADER OFF,PARM %2000 )LOC #PRXXX.DEFAULT,DEVICE $PRXXX )DEV $PRXXX,START
  • 刪除 DEVICE/LOCATION
  • )DEVICE $PRXXX,DELETE )LOCATION #PRXXX.DEFAULT,DELETE 三、Spoolcom 指令操作
  • 檢查 DEVICE 狀態
  • )DEV $PRXXX,STATUS DETAIL
  • 將 DEVICE SHUTDOWN(DRAIN) 停止 )DEV $PRXXX,DRAIN
  • LIST 所有的 JOB
  • )JOB
  • 檢查 PRINT PROCESS 的狀態 )PRINT
  • JOB 的暫停、啟動及刪除
  • )JOB 88 ,HOLD )JOB 88 ,START )JOB 88 ,DELETE ! 四、Peruse 指令操作 一般用戶可以使用 PERUSE來管理 SPOOLER 的JOB 的相關屬性,包括:PRIORITY、NUMBER OF COPIES 及 JOB 的狀態及查看 JOB 內容等。
  • TACL> PERUSE
  • PERUSE - T9593L01 - (14NOV2018) SYSTEM \XXX (c) Copyright 2016 Hewlett-Packard Enterprise Development LP JOB BATCH STATE PAGES COPIES PRI HOLD LOCATION REPORT 2 READY 308 1 4 #PWCOLD FT MGR 3 READY 308 1 4 #PWCOLD FT MGR 4 READY 308 1 4 #PWCOLD FT MGR 5 READY 308 1 4 #PWCOLD FT MGR 6 READY 308 1 4 #PWCOLD FT MGR
  • JOB 的暫停,啟動及刪除
  • -J 6 -HOLD -HOLD OFF -DEL
  • JOB 內容的 LIST 查看
  • -LIST ALL -LIST 25 , 27 (只列出 Page 25 及 27 內容) -LIST 20/25 (列出 Page 20 ~ 25 內容) -LIST/OUT $S.#PR625B/20/25 (列印20~25 頁內容至 印表機位置:$S.#PR625B )
  • JOB 的 LOCATION 對應輸出
  • -J 6023 -LOC #PR825B 參考資料
  • NonStop NS4 Planning Guide
  • NonStop NS8 Planning Guide
  • Kernel-Managed Swap Facility (KMSF) Manual
  • TMF Reference Manual
  • Spooler Utilities Reference Manual