4. 載入第三方軟體

預計完成時間:60 分鐘

可操作元件擁有者:OELCM/節點

技能設定檔:部署工程師

本頁說明如何使用相應的 Google Distributed Cloud (GDC) 氣隙隔離版本 tar 檔案,載入合作夥伴提供的第三方軟體套件。本頁的指示說明僅供其他頁面參照。

術語

  • 合作夥伴軟體套件:部署 Distributed Cloud 時需要使用的第三方軟體套件,但合作夥伴營運部署的發布 tar 檔案中未包含此套件,因此必須由合作夥伴提供。
  • 載入合作夥伴軟體套件:從 Distributed Cloud 發布的 tar 檔案,以合作夥伴提供的軟體套件填入構件的程序。
  • 合作夥伴軟體資訊清單:說明合作夥伴軟體套件清單中繼資料的 JSON 檔案。這些套件會載入,以填入對應的 Distributed Cloud 版本 tar 檔案。
  • 合作夥伴軟體構件目錄:基礎架構營運商 (IO) 收集合作夥伴軟體套件的來源目錄。
  • 構件根目錄:頂層目錄,用於解壓縮 Distributed Cloud 版本 tar 檔案中的構件。
  • 工作節點:高階電腦,用於執行指令來擷取 Distributed Cloud tar 檔案,並載入合作夥伴軟體套件。視部署環境而定,這可能是系統控制器、啟動程序或 Operations Suite Infrastructure (OI) 工作站。

總覽

如要使用合作夥伴軟體套件填入 Distributed Cloud 發行版本 tar 檔案,請按照下列兩個步驟操作:

  1. 準備:合作夥伴需要從供應商擷取必要的軟體套件,並按照說明執行前置處理步驟。準備步驟完成後,所有合作夥伴軟體套件檔案都必須放在同一個目錄中。

  2. 載入:IO 會執行指令,從發布的 tar 檔案填入構件,並使用合作夥伴提供的軟體套件。

下表將部署情境對應至相關的 Distributed Cloud 發布 TAR 檔案。

情境 對應的發布 tar 檔案 載入合作夥伴軟體的操作說明
設定 Operations Suite 基礎架構 (OI) 環境 OI 發布的 tar 檔案 prod_partner_OIC_component_bundle.tar.gz 執行 P1 步驟,準備軟體套件。
執行 L1 步驟來載入套件。
啟動 GDC 環境 GDC 發布的 tar 檔案 prod_partner_gdch.tar.gz 執行 P2 步驟,準備軟體套件。
執行 L2 步驟來載入套件。
升級 GDC 環境 GDC 發布的 tar 檔案 prod_partner_gdch.tar.gz 執行 P2 步驟,準備軟體套件。
執行 L2 步驟來載入套件。
使用 Shell 指令碼啟動 Distributed Cloud 分散式雲端 Shell 指令碼,例如 rehydrate_siem_apps.sh 執行 P3 步驟,準備軟體套件。
執行 L3 步驟來載入套件。

執行 Preparation 步驟的必要條件

執行準備步驟的機器必須具備 bash 環境,例如 Linux 機器或 Windows Subsystem for Linux (WSL) 環境。且必須能夠執行必要的指令列工具,包括:

  • gdcloud
  • docker
  • sha256sum
  • jq

通常是下載 Distributed Cloud 版本 tar 檔案的機器。

所有必要的軟體套件檔案都會準備到單一頂層目錄,稱為 ${PARTNER_SOFTWARE_DIR}

合作夥伴提供的每項軟體,準備步驟包括:

  1. 按照指示,從對應的供應商取得預期版本的軟體套件檔案。
  2. 將準備好的軟體套件檔案儲存至 ${PARTNER_SOFTWARE_DIR},並使用操作說明中預期的名稱。
  3. 將準備好的軟體套件檔案儲存或匯出至 ${PARTNER_SOFTWARE_DIR},並使用操作說明中預期的名稱。

準備好所有必要的軟體套件檔案後,請先驗證每個檔案是否具有預期名稱、版本和 SHA256 總和檢查碼 (如有指定),再執行載入這些檔案的指示。

驗證完成後,合作夥伴準備的所有軟體套件檔案都會安全地轉移至機器,合作夥伴軟體檔案和 Distributed Cloud 版本 tar 檔案會一併載入。通常是透過 USB 隨身碟轉移。如需低到高檔案移轉程序,請參閱 OOPS-P0001 程序。

OI 發行檔案操作說明

本節說明準備及載入合作夥伴軟體套件以部署 OI 的步驟。

P1:準備 OI 設定的軟體套件

如要瞭解準備步驟,請參閱必要條件一節。

在同一部機器上,下載對應的 Distributed Cloud 版本 tar 檔案後,即可執行這個步驟。

設定目錄,以存放準備好的軟體套件。準備軟體套件的目錄結構範例如下:

$(pwd)
└── extract  # $EXTRACT_DIR
└── gdch  # $DOWNLOAD_DIR
    └── $GDCH_VERSION  # $GDCH_TAR_DIR
        ├── ...  # Downloaded GDCH release files
    └── partner-software-${GDCH_VERSION?}
        ├── oic  # $PARTNER_SOFTWARE_DIR
        ├── gdch # $PARTNER_SOFTWARE_DIR for P2 step

您必須調整下列匯出的變數,才能參照實際的目錄結構。

GDCH_VERSION=VERSION
DOWNLOAD_DIR=<the parent directory holding the downloaded files, including GDCH release tar files, e.g. $(pwd)/gdch>

# GDCH_TAR_DIR contains the downloaded GDCH release tar files.
export GDCH_TAR_DIR=${DOWNLOAD_DIR?}/${GDCH_VERSION?}

# PARTNER_SOFTWARE_DIR holds the prepared partner software package files.
export PARTNER_SOFTWARE_DIR=${DOWNLOAD_DIR?}/partner-software-${GDCH_VERSION?}/oic
mkdir -p ${PARTNER_SOFTWARE_DIR}

P1.1 按照表格中的軟體套件規格和操作說明,準備軟體套件

如要準備部署 OI 軟體套件所需的檔案,請針對下表中的每個軟體套件檔案執行下列操作:

客戶會向 Microsoft 合作夥伴取得所有 Microsoft 安裝媒體。 如果是 config_mgr_prereqs.zip 檔案,請使用 IT Toil Process IT-T0023 準備這個檔案。

第一個表格包含每個套件的下列資料:

  1. 「預期版本」欄會指定要擷取的軟體套件目標版本。
  2. 「預期檔案名稱」欄會指定將軟體套件儲存至 ${PARTNER_SOFTWARE_DIR} 的檔案名稱。
  3. 「預期 SHA256」欄會指定準備好的套件檔案預期 SHA256 檢查碼。您必須驗證準備好的檔案是否具有指定的 SHA256 總和檢查碼。
  4. 「專案網址」欄會指定含有軟體套件資訊的網址。
  5. 「說明」欄會簡要說明軟體套件。

由於文件算繪的限制,獨立的「預期 SHA256」表格會指定準備好的套件檔案預期 SHA256 檢查碼。

預期檔案名稱 預期版本 說明 專案網址
MCM_Configmgr_2403.exe 2403 MS Configuration Manager 的安裝媒體 https://www.microsoft.com/en-us/evalcenter/download-microsoft-endpoint-configuration-manager
SW_DVD9_NTRL_SQL_Svr_Standard_Edtn_2019Dec2019_64Bit_English_OEM_VL_X22-22109.ISO 2019 年 12 月 安裝 MS SQL 2019 Standard (英文) 的媒體 https://microsoft.com/sqlserver
SW_DVD9_Win_Pro_11_23H2.11_64BIT_English_Pro_Ent_EDU_N_MLF_X23-86376.ISO 11_23H2.11 安裝 MS Windows 11 Enterprise 的媒體 https://www.microsoft.com/en-us/windows
SW_DVD9_Win_Server_STD_CORE_2022_2108.37_64Bit_English_DC_STD_MLF_X23-84195.ISO 2022_2108.37 MS Windows Server 2022 的安裝媒體 https://www.microsoft.com/en-us/windows-server
SW_DVD9_NTRL_Win_Svr_2022_64Bit_MultiLang_Langpack_FOD_App_Compat_X22-61280.ISO 2022 MS Windows Server 2022 語言套件、相容性模式和選用功能的安裝媒體。 https://www.microsoft.com/en-us/windows-server
PSTools-2.51.zip 2.51 管理 Windows 的公用程式 https://learn.microsoft.com/en-us/sysinternals/downloads/pstools
force-directed-app-for-splunk_310.tgz 3.1.0 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/3767/
infosec-app-for-splunk_170.tgz 1.7.0 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/4240/
linux-auditd_310.tgz 3.1.0 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/2642/
linux-auditd-technology-add-on_312.tgz 3.1.2 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/4232/
palo-alto-networks-add-on-for-splunk_13.tgz 8.1.3 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/2757/
palo-alto-networks-app-for-splunk_813.tgz 8.1.3 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/491/
punchcard-custom-visualization_150.tgz 1.5.0 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/3129/
servicenow-security-operations-addon_1401.tgz 1.40.2 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/3921/
servicenow-security-operations-event-ingestion-addon-for-splunk-enterprise_14.tgz 1.4.0 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/4412/
splunk-add-on-for-microsoft-security_232.tgz 2.3.0 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/6207/
splunk-add-on-for-microsoft-windows_900.tgz 9.0.0 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/742/
splunk-add-on-for-stream-forwarders_813.tgz 8.1.3 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/5238/
splunk-add-on-for-stream-wire-data_813.tgz 8.1.3 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/5234/
splunk-app-for-stream_813.tgz 8.1.3 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/1809/
splunk-common-information-model-cim_532.tgz 5.3.2 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/1621/
splunk-es-content-update_4420.tgz 4.42.0 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/3449/
splunk-machine-learning-toolkit_550.tgz 5.5.0 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/2890/
splunk-sankey-diagram-custom-visualization_160.tgz 1.6.0 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/3112/
splunk-security-essentials_381.tgz 3.8.1 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/3435/
splunk-supporting-add-on-for-active-directory_310.tgz 3.1.0 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/1151/
splunk-timeline-custom-visualization_162.tgz 1.6.2 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/3120/
ta-for-microsoft-windows-defender_108.tgz 1.0.8 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/3734/
tenable-add-on-for-splunk_700.tgz 7.0.0 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/4060/
tenable-app-for-splunk_605.tgz 6.0.5 Splunk 資訊主頁應用程式 (適用於 1.14.7 以上版本) https://splunkbase.splunk.com/app/4061/
splunk-9.4.2-e9664af3d956-windows-x64.msi 9.4.2 Splunk Cluster 適用的 Splunk Enterprise 安裝程式 (適用於 1.14.7 以上版本) https://www.splunk.com/
splunkforwarder-9.3.1-0b8d769cb912-x64-release.msi 9.3.1 適用於所有 Windows 電腦的 Splunk 代理程式 (適用於 1.14.7 以上版本) https://www.splunk.com/
套件 預期 SHA256 值
MCM Configmgr 480a0bb68cc12fa9cca274ec2b003b7c3776b6c6613f5475ed0872b252e6c8e2
SQL 2019 668048e3104a89eb08adf6823ab5a9f3b168c2aa2351cd58758162207b30772c
Win 11 Enterprise 6f6fa9e800ec7151ca763091c81cdeef1008e1d7026544cbdd3ba4b5ed59170f
Win Server 2022 48e2eee1f5fd916cae89766520b825f1ee14062bac2bd5b74d8ba07c3b64abcd
Win Server 2022 語言套件 850a318c277f9b0d7436031efd91b36f5d27dad6e8ea9972179204a3fc756517
PSTools a9ca77dfe03ce15004157727bb43ba66f00ceb215362c9b3d199f000edaa8d61
Force Directed App for Splunk f763bb89548b85f87a0c7f7d05b6a2be4c0f4a738afee151133c2c3ad931f0d1
適用於 Splunk 的 InfoSec 應用程式 36eccfbc8c1b0a7e45517affa0293f8f068dd0c52ed67382bdaf07a57f401361
Linux Auditd 1493389d0289ec8bb8a5adcc009d257944194c943ddbf1bd1041705463420ecd
Linux Auditd 技術外掛程式 279cb365d6176e595ec2f9d1a86e2e1cd14f4d9521794dfd9912bb35bbf3c323
Palo Alto Networks 外掛程式 243e52326e35ae34f17798d753ba7195402dfb0ad4be16ea07c29eb47f1b8850
Palo Alto Networks 應用程式 7475bdeadefb71e4c9fab2fb84382fbffa33a0b6977fd77e2cb10ebd643fd2dc9
Punchcard 自訂視覺化 2933475935a50ca513ccba6e28910a969ca3d849a967d3709745a975c179764d
ServiceNow Security Operations 外掛程式 d272d6a58fa423defdb229c615794a8c258c33de0429fc60619cfb007e0e2e4e
ServiceNow 事件擷取 14b7b1e38ecdfe25e183ad92b4a231e5a5f8d9fea4a6771e1b41c24f93a59d17
Microsoft Security Add-on 31b4b2630d04fcd5cab28ad977779e4f31a367a1603a3b030482c32ca7021af4
Microsoft Windows 外掛程式 fef3214da64838039e11e3a163527c6d907d604ceddd1482850df546f3341047
Stream Forwarders 外掛程式 aae74100dbdd08ed207b4ed9cbfc8db4b4c757b2aeebba48dffe7a42f6fbd6e2
Stream Wire Data 外掛程式 4e212d6b07384446fb5e2109d11741ab020ec0e0d000aa780abca27a0faa984c
Splunk App for Stream 593362ff6a17835c1279f0ec9b1d20a8a247aca9cdce172332a97c35155169f7
通用資訊模型 (CIM) bdb7bc5f3d0e784992ef1e9c824b0a34a486d5996a558cbb1465318346f4d52b
ES 內容更新 911ccc995eca4ec930140c25ef3fe15c0a3169331002865ab8d77f065bec019b
機器學習工具包 d84055987a668ed41b3862c2e7fdb989670b73379d8531149d10863b9f5408ef
桑基圖 d240d4c660a5466c56b28929f188d86ad68eef5fc0d3440680a798dd2f6a55b2
安全性基本須知 9f0ed72e69db128b71d4e31795567e1523f1f2a367ef5ff51d380807c8dab358
Active Directory 外掛程式 f0df012cf146d3df74c1b617be447092fb5b92b505a8fa935463f658d821169f
時間軸自訂圖表 578b8d200d93b2447ebac1d05f5a3ce5d88deab158422785dbda1d2a1d95c912
Windows Defender 外掛程式 5c3d69a4e98d3b8dc969a4f0412870936070112cb8150697d08d9335d2e25206
Tenable 外掛程式 73d75588fd57a91a4e5d804006c0236cd1cb3fda139477b7bb8d085c66ec65c7
Tenable 應用程式 26bc39b3f41661eb5e68354636e8d36ef2df0124ee8006abc7cba47f62e5c4d1
Splunk Enterprise a949e8e07ef54f9c76bfdfe6070d9b71f5f815b3f79e429d8d1983226f3918e9
通用轉送器 db06ad3a0b05413e65f9fcccba7f12532bdb83ec8bc33f06bb2cddbf3e021949

P1.2:驗證準備好的軟體套件

如要驗證軟體套件,系統必須從下載的 Distributed Cloud 版本 TAR 檔案中擷取指令碼和中繼資料檔案。

EXTRACT_DIR=$(pwd)/extract/${GDCH_VERSION?}
mkdir -p ${EXTRACT_DIR?}

RELEASE_PREFIX="prod_partner_"
# The command is going to take long time.
tar -I pigz -xvf ${GDCH_TAR_DIR?}/${RELEASE_PREFIX}OIC_component_bundle.tar.gz -C ${EXTRACT_DIR?} ./release/scripts ./release/partner_software_metadata --strip-components 2

然後執行指令來驗證:

${EXTRACT_DIR?}/scripts/verify_package_files.sh ${EXTRACT_DIR}/partner_software_metadata/OIC_component_partner_software_info.json

繼續進行下一個步驟前,請先準備預期版本的軟體套件,確認並修正所有驗證錯誤。如果軟體套件已知與預期版本不同,可以忽略相應的檢查碼驗證錯誤,但您必須確保準備好的檔案可以運作。

P1.3:轉移準備好的軟體套件

驗證完成後,${PARTNER_SOFTWARE_DIR} 中的合作夥伴軟體套件必須連同 ${GDCH_TAR_DIR} 中的 OI 版本 tar 檔案 prod_partner_OIC_component_bundle.tar.gz,一併傳輸至 Google Distributed Cloud (GDC) 實體隔離環境中的目標機器,並在該處執行「載入」步驟

合作夥伴軟體套件和發布 tar 檔案位於共同的父項目錄 ${DOWNLOAD_DIR} 中,可透過相同程序轉移。

P2:準備 Distributed Cloud 適用的軟體套件

如要瞭解準備步驟,請參閱必要條件一節。

設定目錄,以存放準備好的軟體套件。您必須調整下列匯出的變數,才能參照實際的目錄結構。

  GDCH_VERSION=VERSION
  DOWNLOAD_DIR=<the parent directory holding the downloaded files, including GDCH release tar files, e.g. $(pwd)/gdch>

  # GDCH_TAR_DIR contains the downloaded GDCH release tar files.
  export GDCH_TAR_DIR=${DOWNLOAD_DIR?}/${GDCH_VERSION?}

  # PARTNER_SOFTWARE_DIR contains the prepared partner software package files.
  export PARTNER_SOFTWARE_DIR=${DOWNLOAD_DIR?}/partner-software-${GDCH_VERSION?}/gdch
  mkdir -p ${PARTNER_SOFTWARE_DIR}

執行下列指令,提取所需 Docker 映像檔,並匯出至對應的 tar 檔案:

  EXTRACT_DIR=$(pwd)/extract/${GDCH_VERSION?}
  mkdir -p ${EXTRACT_DIR?}

  RELEASE_PREFIX="prod_partner_"
  # The command is going to take long time.
  tar -I pigz -xvf ${GDCH_TAR_DIR?}/${RELEASE_PREFIX}gdch.tar.gz -C ${EXTRACT_DIR?} ./release/scripts ./release/partner_software_metadata --strip-components 2

  ${EXTRACT_DIR?}/scripts/save_container_images.sh ${EXTRACT_DIR}/partner_software_metadata/gdch_partner_container_info.json

P3:準備 Distributed Cloud 的其他軟體套件

這個步驟通常會在系統控制器中執行,用於設定 OI。必須符合下列必要條件:

  • 發布的 tar 檔案已轉移至系統控制器,並解壓縮至本機目錄。
  • 合作夥伴軟體套件檔案已傳輸到同一部電腦的本機目錄。
  • 請先確認已從 Splunk 下載所有檔案,再繼續操作
  • 已完成所有先前的載入步驟

與上一個步驟相同,您必須調整下列匯出的變數,以參照實際的目錄結構。

GDCH_VERSION=VERSION
EXTRACT_DIR=<the parent directory containing the directories for extracted GDCH release files and partner software files, e.g. $(pwd)/gdch>

# ARTIFACTS_ROOT is the directory containing the extracted GDCH release files.
export ARTIFACTS_ROOT=${EXTRACT_DIR?}/full-release-${GDCH_VERSION?}

# PARTNER_SOFTWARE_DIR contains the partner software package files.
export PARTNER_SOFTWARE_DIR=${EXTRACT_DIR?}/partner-software-${GDCH_VERSION?}/oic

確認 ${ARTIFACTS_ROOT}/operations_center 包含 mandiantsecops_heavyfwd.tgz

[[ -f "${ARTIFACTS_ROOT}/operations_center/mandiantsecops_heavyfwd.tgz" ]] && echo "File exists." || echo "File does not exist."

L1:載入軟體套件以設定 OI

這個步驟通常會在系統控制器中執行,用於設定 OI (稱為工作機器)。必須符合下列先決條件:

  • 發布的 tar 檔案已傳輸至工作電腦,並根據擷取程序擷取至本機目錄 ${ARTIFACTS_ROOT}
  • 合作夥伴軟體套件檔案已傳輸到同一部電腦的本機目錄 ${PARTNER_SOFTWARE_DIR}

載入合作夥伴軟體套件的目錄結構範例如下:

$(pwd)
└── gdch  # $EXTRACT_DIR
    └── full-release-$GDCH_VERSION  # $ARTIFACTS_ROOT
        ├── ...  # Extracted GDCH release files
    └── partner-software-${GDCH_VERSION?}
        ├── oic  # $
        ├── gdch # $PARTNER_SOFTWARE_DIR for L2/L3 step

您必須調整下列匯出的變數,才能參照實際的目錄結構。

GDCH_VERSION=VERSION
EXTRACT_DIR=<the parent directory containing the directories for extracted GDCH release files and partner software files, e.g. $(pwd)/gdch>

# ARTIFACTS_ROOT is the directory containing the extracted GDCH release files.
export ARTIFACTS_ROOT=${EXTRACT_DIR?}/full-release-${GDCH_VERSION?}

# PARTNER_SOFTWARE_DIR contains the partner software package files.
export PARTNER_SOFTWARE_DIR=${EXTRACT_DIR?}/partner-software-${GDCH_VERSION?}/oic

在工作電腦中執行下列指令,載入部署 OI 時所需的合作夥伴軟體:

${ARTIFACTS_ROOT}/gdcloud system partner-software load --manifest=${ARTIFACTS_ROOT}/partner_software_metadata/OIC_component_partner_software_info.json "${PARTNER_SOFTWARE_DIR}" "${ARTIFACTS_ROOT}"

成功執行指令後,${ARTIFACTS_ROOT}/operations_center 會填入 OI 的合作夥伴軟體套件。

如果指令因驗證錯誤而失敗,請檢查錯誤。 錯誤通常是由下列原因所致:

  • 缺少部分軟體套件檔案。
  • 軟體套件檔案的版本不符合預期。

您需要準備預期版本的軟體套件,以修正錯誤。

  # This is a fallback approach to load the partner software packages to deploy OI
  ${ARTIFACTS_ROOT}/scripts/load_raw_packages.sh ${ARTIFACTS_ROOT}/partner_software_metadata/OIC_component_partner_software_info.json

GDC 發行檔案操作說明

本節說明如何載入合作夥伴軟體套件,以供 GDC 部署。

L2:載入 GDC 部署作業的軟體套件

請在工作節點上執行這個步驟,也就是用於啟動部署作業的啟動程序機器,或是用於升級作業的 OI 工作站。

需求條件:

  • 發布的 tar 檔案已轉移至工作節點,並解壓縮至本機目錄。
  • 合作夥伴軟體套件檔案已傳輸至工作節點的本機目錄。
  • 工作節點提供 jqdocker 指令。

您必須調整下列匯出的變數,才能參照實際的目錄結構。

GDCH_VERSION=VERSION
EXTRACT_DIR=<the parent directory containing the directories for extracted GDCH release files and partner software files, e.g. $(pwd)/gdch>

# ARTIFACTS_ROOT is the directory containing the extracted GDCH release files.
export ARTIFACTS_ROOT=${EXTRACT_DIR?}/full-release-${GDCH_VERSION?}

# PARTNER_SOFTWARE_DIR contains the partner software package files.
export PARTNER_SOFTWARE_DIR=${EXTRACT_DIR?}/partner-software-${GDCH_VERSION?}/gdch

L2.1:載入 Distributed Cloud 部署作業所需的合作夥伴容器映像檔

L2.1.1 設定 Docker 設定
  • 在啟動程序中,載入步驟會在啟動器機器上執行,容器映像檔會載入啟動器 Harbor 登錄檔,並在後續部署步驟中分配至根管理員 Harbor 登錄檔。

    export REGISTRY_ADDR=$(cat /root/.docker/config.json | jq -r '.auths | keys[]' | head -1)
    

    請務必仔細檢查 REGISTRY_ADDR 是否與啟動程序機器的 IP 位址相符:

    ip -4 -br a s | grep "$REGISTRY_ADDR"
    
  • 在升級程序中,載入步驟會在 OI 工作站執行,容器映像檔會載入至根管理員 Harbor 登錄檔。

    rac_kubeconfig=<KUBECONFIG_PATH to the root admin cluster>
    alias kr="kubectl --kubeconfig=${rac_kubeconfig?}"
    
    export REGISTRY_ADDR=$(echo \
      $(kr get harborcluster harbor -n harbor-system -o jsonpath='{.spec.externalURL}') \
      | sed s#https://##)
    echo "Using harbor registry in ${REGISTRY_ADDR}"
    
    export KUBECONFIG=${rac_kubeconfig?}
    cp ${ARTIFACTS_ROOT}/docker-credential-gdcloud /usr/bin
    export API_GROUP=public
    ${ARTIFACTS_ROOT}/gdcloud auth configure-docker
    unset API_GROUP
    
L2.1.2 將合作夥伴提供的容器映像檔載入至 Harbor 登錄檔。
  export PROJECT=library
  export PARTNER_CONTAINER_IMAGES_FILE=${ARTIFACTS_ROOT}/partner_software_metadata/gdch_partner_container_info.json

  ${ARTIFACTS_ROOT}/scripts/load_container_images.sh ${PARTNER_CONTAINER_IMAGES_FILE}

L2.2:確認合作夥伴容器映像檔已成功載入

您必須確認載入的合作夥伴容器映像檔可從根管理員裸機節點成功提取。

如要判斷要提取的容器映像檔清單,請使用:

  jq -r  '.[]? | [.image] | join(",")' "$PARTNER_CONTAINER_IMAGES_FILE"

如要驗證,請透過 SSH 連線至根管理員裸機節點,並針對每個載入的容器映像檔,確認下列指令是否成功傳回:

  crictl pull ${container_image_path}

L3:載入 Distributed Cloud 的其他軟體套件

  • 前往 ${ARTIFACTS_ROOT}/scripts/
  • 確認設定中已輸入正確的檔案名稱 (例如 OC_LINUX_AUDITD_NAME=<file name on machine>)。
  • 確認已填入預設值 (例如 PARTNER_SOFTWARE_DIR)。
  • 最後,使用 -c 引數的設定指令碼執行 rehydrate_siem_apps.sh 指令碼。
cd ${ARTIFACTS_ROOT}/scripts
chmod +x rehydrate_siem_apps.sh
./rehydrate_siem_apps.sh -c rehydrate_siem_apps.conf

輸出檔案會提供 Docker 映像檔的上傳位置。這個映像檔是專用的 OCI Tarball 映像檔,不應使用 docker pull 提取,而是會自動使用。