疑難排解

第一步驟

如果出現問題,請先檢查下列項目:
  • 在安裝期間,請確定內容檔案的路徑正確。
  • 檢閱日誌檔以確認指定正確的系統需求。

    如果安裝失敗,安裝程式會自動清理解壓縮的資源,保持 .log 檔案完整,以便進行除錯。

  • 確定在 DNS 伺服器中定義 AppScan 360° FQDN。
  • 確認所有 AppScan 360° Pod 都在執行。
  • 輸入 AppScan 360° URL 以查看服務。

登入問題

如果您在登入 AppScan 360° 時遇到問題,請嘗試下列操作:
  • 確認 AppScan 360° 叢集可連線至資料庫電腦。
  • 確認 AppScan 360° 資料庫已在資料庫電腦上成功建立。
  • 確認 SQL 伺服器已配置為允許遠端連線。
  • 確認 AppScan 360° 叢集可連線到 LDAP 伺服器。
  • 檢查 AppScan 360° 套件配置檔中的 LDAP 配置。

日誌檔

下列日誌可能有助於對 AppScan 360° 進行疑難排解:
  • 安裝日誌位於包含解壓縮套件的 AppScan 360° 資料夾中:
    <EXTRACTION_FOLDER>/logs/singular-setup[/teardown].log
  • 應用程式日誌位於 ASCP 共用儲存空間中。例如,如果從 Pod 中存取:
    /storagemount/logs

    應用程式日誌限制為 2MB。達到此上限後,將建立另一個日誌,總計最多會建立十個日誌檔案。

  • 微服務日誌與平台活動相關。每個微服務都會產生自己的日誌檔,檔案名稱會由微服務名稱作為字首。
    <fileStorageRoot>/SaaSWorkingDirectory/SaaSStorage/Logs 
  • 掃描日誌包含關於掃描執行的詳細資訊,包括進度更新、指標和除錯資訊。它們專屬於每個掃描執行,並可以從 AppScan 360° 使用者介面下載。
    <fileStorageRoot>/SaaSWorkingDirectory/SaaSStorage/Scans/<scanID>/<ExecutionID>/EngineLogs 

升級問題

單一 VM 環境升級至 2.0.0 版後,偶爾可能會發生工作管理員 Pod 無法啟動的情況。如果要解決這個問題,請依照下列步驟操作:
  • 如果您使用線上指令碼升級 AppScan 360°,請執行:
    ./AppScan360_SingleVMsetup_v2.0.0.run -- $PWD remediateStorageIssues
  • 如果您使用離線指令碼升級 AppScan 360°,請執行:
    ./AppScan360_SingleVMsetup_v2.0.0_Offline.run -- $PWD remediateStorageIssues

Pod 映像提取問題

單一 VM Ubuntu 環境中使用本端 Docker 登錄部署 AppScan 360° 時,可能會遇到因為登錄連線錯誤而導致 Pod 無法啟動的問題。

在 Pod 事件中常見的錯誤可能如下:
Normal   Pulling    60s (x4 over 4m1s)   kubelet            
Pulling image "<ip>:5443/as360-k8s-docker-images/reloader:v1.2.1"
Warning  Failed     30s (x4 over 3m31s)  kubelet            
Failed to pull image "<ip>:5443/as360-k8s-docker-images/reloader:v1.2.1": rpc error: code = DeadlineExceeded desc = failed to pull and unpack image "<ip>:5443/as360-k8s-docker-images/reloader:v1.2.1": failed to resolve reference "<ip>/as360-k8s-docker-images/reloader:v1.2.1": failed to do request: Head "https://<ip>/v2/as360-k8s-docker-images/reloader/manifests/v1.2.1": dial tcp <ip>:5443: i/o timeout

如果在錯誤訊息中看到 dial tcp <ip>:5443: i/o timeout,這通常表示您的 Kubernetes 節點(k0s 儲存器)與 Docker 登錄之間存在網路連線問題。

如果要解決這個問題,請依照下列步驟操作:
  1. 連線至 k0s 儲存器並安裝診斷工具:
    docker exec -it k0s sh
    # (Run once per container) Install basic network tools:
    apk add --no-cache curl busybox-extras bind-tools
  2. 從儲存器測試網路連線:
    1. 使用 telnet 檢查與登錄的連線狀態:
      telnet <registry-ip> 5443

      如果您沒有看到「已連線」訊息,表示連線已遭封鎖。

    2. 嘗試在儲存器中使用 ctr 指令直接提取映像
      k0s ctr images pull --user <user>:<pass> <registry-ip>:5443/as360-k8s-docker-images/reloader:v1.2.1

      如果此步驟失敗,問題很可能與防火牆規則有關。

  3. 檢查防火牆 (UFW) 與 IPTables 規則
    1. 主機上,檢查防火牆規則:
      iptables -L -n -v
    2. 尋找與 ufw(簡單防火牆)相關的鏈,確認是否有像下方日誌一樣封鎖流量的規則。
      Chain INPUT (policy DROP 39231 packets, 2148K bytes)
       pkts bytes target     prot opt in     out     source               destination         
      6603K 9311M ufw-before-logging-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
      6603K 9311M ufw-before-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
       407K   50M ufw-after-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
      39311 2154K ufw-after-logging-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
      39311 2154K ufw-reject-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
      39311 2154K ufw-track-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0    
  4. 更新 UFW 規則以允許主機上的 Docker 網路流量:
    1. 允許 Docker 網路介面上的流量:
      sudo ufw allow in on docker0
      sudo ufw allow out on docker0
    2. 允許連線至登錄埠的流量
      sudo ufw allow out from any to <registry-ip> port 5443 proto tcp
      sudo ufw allow out from any to <registry-ip> port 7443 proto tcp
  5. 驗證解決方案
    1. 從 k0s 儲存器重新執行連線測試(telnetctr images pull)。
    2. 如果測試成功,Pod 映像提取現在應可正常運作。

支援

HCL 客戶支援中心

為協助進行有效的疑難排解協助,請包括下列項目:
  • 對於安裝問題,請包括安裝日誌
  • 對於掃描問題,請包括掃描目錄 (<fileStorageRoot>/SaaSWorkingDirectory/SaaSStorage/Scans/<scanID>/<ExecutionID>/) 的內容,這包括掃描的應用程式(.irx 檔案或用於靜態分析的 .war/.jar/.zip 來源檔案)和任何掃描日誌。如需疑難排解掃描的相關資訊,請參閱 靜態分析掃描的疑難排解