ci-server-engineer/.claude/skills/high-availability/tasks/hac-checks.md
cliu bf7d88a027 R1.05 re-check batch 3: alarms, audit, authorization, classes, HAC, reporting, pyTOOLS
Full manual diffs (L15, C20, E30, L25, J40, C10 §2, L10, P10, P11, J20,
C30, P20, R40, E10) and read-only checks on the shared R1.05 test server.
Skills and summaries moved to R1.05; new skill pytools (IM 36K10P40) from
docs (no Python on the test server). Issues ISS-132..181; corrections to
version-differences (E10, E30, P11, dss_ath_grp_u0104); C10 summary lists
the 3 new authorization actions; r105-verification V10-V17.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 10:21:36 +11:00

4.4 KiB
Raw Blame History

task version source status
Check HAC on a system (licence, processes, hac.sup, scripts, HMI properties, logs) R1.05 (first written for R1.03) IM 36K10J20-01EN 4th Edition (Feb. 2026) §1.3–§1.5, §2, §4.1.4, §6.1 (unchanged since the 3rd Edition); checked read-only on the R1.03 test system 2026-10-01 and the R1.05 test server 2026-10-09 verified read-only on R1.03 (2026-10-01) and on the R1.05 test server (2026-10-09), both single servers without HAC; the checks on a running pair (§3) are not tested (no redundant pair)

HAC checks

All read-only. Only read files, variables and the process list: do not run hac* tools (hacwcmd, hacitmval, hachmfcmd, hacwdg -d …) just to check, they talk to (or start) HAC processes.

1. Is HAC in use?

Check Command / file HAC in use when …
Licence dir %TLS_ROOT_PATH%\tls\sup\hacini.sup the file exists (licence files are <tool>ini.sup)
Start script type %TLS_ROOT_PATH%\tls\com\ci_start.cmd it is a copy of hacw_standby (title CI Server_in stand-by mode, starts haclog, lockmgr, isfjrn)
Server number echo %CI_PRIM% 0 primary, 1 secondary, 2, 3
Processes tasklist /FI "IMAGENAME eq hac*" hacwdg, hacrec, haclog, hacmir, hacwagt, hacwitm run

| Extension scripts (R1.05) | dir %TLS_ROOT_PATH%\tls\com\*_hacw_*.cmd | project scripts run on activate/deactivate (ISS-160) |

R1.03.00 test system (2026-10-01) and R1.05.00 test server (2026-10-09): no hacini.sup, normal ci_start.cmd (title CI Server), CI_PRIM and TLS_BACKUP_PATH unset, no hac* process, no *_hacw_*.cmd — HAC not used. Note: isfjrn is started by database_start.cmd on every node, so an isfjrn process alone does not mean HAC is used.

2. Configuration

  • tls\sup\hac.sup: read with the Setup File Editor or findstr /v /b "!" %TLS_ROOT_PATH%\tls\sup\hac.sup (active lines only). Check MODE, HAC_HOSTS (real host names, not SERVER_A…), PRIMARY/SECONDARY addresses, IP_DEVICE (a real router/switch with priority 1; no localhost in production), START_MANUAL (NO once commissioned), RECOVERY_ON, JOURNAL_ON, HMF_DAYS. The installed file is a template (SERVER_A, 192.168.1.1, localhost, START_MANUAL = YES): if these are still present the pair was never configured. The R1.05 hac.sup, hac_ees.sup, haccache.sup, hac.tpl and hac_ees.tpl are identical to R1.03 (hash comparison, 2026-10-08), so the template values and ISS-053 still apply.
  • hac.sup must be identical on all servers (it is excluded from the mirror on purpose).
  • HAC HMI: %TLS_WAP_PATH%\cfg\jhacProperties\application.properties — primary=, secondary= (addresses of every network), port1/port2 (16000), logport (16001), ownport/ownports (16010, 32: the HMI's own UDP ports 16010–16041). Same file content on R1.03 and R1.05 (2026-10-09). On R1.05 hacw_hmi also loads tls\exe\lib\*: the HMI needs a complete CI Server installation on that machine (ISS-161).
  • Firewall: UDP 16000–16006 between the servers, UDP 16010–16041 for HAC HMI stations, TCP 34489 (history merge), ICMP between the servers.
  • Extension scripts (R1.05): any <prefix>_hacw_activate.cmd / <prefix>_hacw_deactivate.cmd in tls\com runs on every switchover; read them, they are part of the configuration and must be the same on all servers (ISS-160).

3. State and logs (running pair; not tested — no redundant pair on R1.03 or R1.05)

  • HAC HMI: hacw_hmi (not in the start menu). Per server: responsive, operational status (Standby / Activating / Active / Deactivating), mode (Automatic / Manual), CI Server / custom / IP health, mirror mode and status (consistent = black text), recovery table, IP devices, log.
  • Status items if configured: <section>.OPER_MODE (87 manual, 88 automatic), .OPER_STAT (95 active, 99 standby), .CI_STAT/.IP_STAT (90 healthy, 89 fault), .DATA1_MODE/ .DATA1_STAT (mirror) — read with itmval -g.
  • Logs: %TLS_LST_PATH%\hac_log_<n>.txt (cyclic; hac_log_0.txt names the current page), hacmir.log/hacmir_old.log (mirror), %TLS_LOG_PATH%\hacw_standby.log, hacw_activate.log, and umhlog.log (HAC*, ISFJRN messages; ISFJRN names the journal report <DSSSDA>_jrn.lst after an unclean shutdown).
  • Watchdog start problems: hacwdg -d in a console shows initialization errors (only on a HAC server being commissioned, with the user's approval; it starts a Watchdog).