ci-server-engineer/.claude/skills/high-availability/tasks/hac-checks.md
2026-10-01 19:12:44 +10:00

50 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
task: Check HAC on a system (licence, processes, hac.sup, scripts, HMI properties, logs)
version: R1.03
source: IM 36K10J20-01EN §1.3–§1.5, §2, §4.1.4, §6.1; checked read-only on the test system 2026-10-01
status: verified (read-only, single unlicensed server)
---
# HAC checks
All read-only.
## 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 |
Test system (R1.03.00): no `hacini.sup`, normal `ci_start.cmd`, `CI_PRIM` unset, no `hac*`
process — HAC not 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.
- `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).
- Firewall: UDP 16000–16006, TCP 34489 (history merge), ICMP between the servers.
## 3. State and logs (running pair)
- 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.