预计完成时间:60 分钟
可操作组件所有者:OELCM/节点
技能配置文件:部署工程师
本页面介绍了如何使用相应的 Google Distributed Cloud (GDC) 经过网闸隔离的发布版 tar 文件加载合作伙伴提供的第三方软件包。本页面的说明旨在供其他页面引用。
术语
- 合作伙伴软件包:分布式云部署所需的第三方软件包,但未包含在合作伙伴运营的部署版本的发布版 tar 文件中,必须由合作伙伴提供。
- 加载合作伙伴软件包:一种从分布式云版本 tar 文件中填充工件的过程,其中包含合作伙伴提供的软件包。
- 合作伙伴软件清单:一个 JSON 文件,用于描述一系列合作伙伴软件包的元数据。这些软件包会加载到相应的 Distributed Cloud 版本 tar 文件中。
- 合作伙伴软件制品目录:基础设施运营商 (IO) 收集合作伙伴软件包的源目录。
- 制品根目录:用于提取 Distributed Cloud 版本 tar 文件中的制品的顶级目录。
- 工作节点:一台配置较高的机器,用于运行命令以提取 Distributed Cloud tar 文件并加载合作伙伴软件包。它可以是系统控制器、引导加载程序或 Operations Suite 基础架构 (OI) 工作站,具体取决于部署环境。
概览
若要使用合作伙伴软件包填充 Distributed Cloud 版本 tar 文件,需要执行两个步骤:
准备:合作伙伴需要从供应商处获取所需的软件包,并按照说明运行预处理步骤。准备步骤完成后,所有合作伙伴软件包文件都必须放入一个目录中。
加载:IO 运行命令,以使用合作伙伴提供的软件包填充发布版 tar 文件中的制品。
下表列出了部署场景与所涉及的 Distributed Cloud 版本 tar 文件之间的对应关系。
| 场景 | 相应的发布版本 tar 文件 | 加载合作伙伴软件的说明 |
| 设置运维套件基础架构 (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 脚本引导分布式云 | 分布式云 shell 脚本,例如 rehydrate_siem_apps.sh |
运行 P3 步骤来准备软件包。 运行 L3 步骤以加载软件包。 |
运行 Preparation 步骤的前提条件
运行准备步骤的机器必须具有 bash 环境,例如 Linux 机器或适用于 Linux 的 Windows 子系统 (WSL) 环境。并且必须能够运行所需的命令行工具,包括:
gdclouddockersha256sumjq
通常是用于下载 Distributed Cloud 版本 tar 文件的机器。
所有需要的软件包文件都已准备好,并放在一个名为 ${PARTNER_SOFTWARE_DIR} 的顶级目录中。
对于合作伙伴提供的每款软件,准备步骤包括:
- 根据说明从相应供应商处获取预期版本的软件包文件。
- 将准备好的软件包文件保存到
${PARTNER_SOFTWARE_DIR},并使用说明中预期的名称。 - 将准备好的软件包文件保存或导出到
${PARTNER_SOFTWARE_DIR},并使用说明中预期的名称。
准备好所有必需的软件包文件后,您必须验证每个文件是否具有预期的名称、版本和 SHA256 校验和(如果指定),然后才能运行加载这些文件的说明。
验证完成后,所有合作伙伴准备的软件包文件都会安全地转移到加载合作伙伴软件文件的机器上,同时转移的还有分布式云版本 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 准备此文件。
第一个表格包含每个软件包的以下数据:
- 预期版本列指定要提取的软件包的目标版本。
- 预期文件名列指定了要将软件包保存到的文件名
${PARTNER_SOFTWARE_DIR}。 - 预期 SHA256 列指定了准备好的软件包文件的预期 SHA256 校验和。您必须验证准备好的文件是否具有指定的 SHA256 校验和。
- 项目网址列指定包含软件包相关信息的网址。
- 说明列简要介绍了软件包。
由于文档呈现方面的限制,单独的预期 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 企业版的媒体 | 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 | 用于管理窗口的实用程序 | https://learn.microsoft.com/en-us/sysinternals/downloads/pstools |
force-directed-app-for-splunk_310.tgz |
3.1.0 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/3767/ |
infosec-app-for-splunk_170.tgz |
1.7.0 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/4240/ |
linux-auditd_310.tgz |
3.1.0 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/2642/ |
linux-auditd-technology-add-on_312.tgz |
3.1.2 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/4232/ |
palo-alto-networks-add-on-for-splunk_13.tgz |
8.1.3 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/2757/ |
palo-alto-networks-app-for-splunk_813.tgz |
8.1.3 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/491/ |
punchcard-custom-visualization_150.tgz |
1.5.0 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/3129/ |
servicenow-security-operations-addon_1401.tgz |
1.40.2 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/3921/ |
servicenow-security-operations-event-ingestion-addon-for-splunk-enterprise_14.tgz |
1.4.0 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/4412/ |
splunk-add-on-for-microsoft-security_232.tgz |
2.3.0 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/6207/ |
splunk-add-on-for-microsoft-windows_900.tgz |
9.0.0 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/742/ |
splunk-add-on-for-stream-forwarders_813.tgz |
8.1.3 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/5238/ |
splunk-add-on-for-stream-wire-data_813.tgz |
8.1.3 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/5234/ |
splunk-app-for-stream_813.tgz |
8.1.3 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/1809/ |
splunk-common-information-model-cim_532.tgz |
5.3.2 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/1621/ |
splunk-es-content-update_4420.tgz |
4.42.0 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/3449/ |
splunk-machine-learning-toolkit_550.tgz |
5.5.0 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/2890/ |
splunk-sankey-diagram-custom-visualization_160.tgz |
1.6.0 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/3112/ |
splunk-security-essentials_381.tgz |
3.8.1 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/3435/ |
splunk-supporting-add-on-for-active-directory_310.tgz |
3.1.0 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/1151/ |
splunk-timeline-custom-visualization_162.tgz |
1.6.2 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/3120/ |
ta-for-microsoft-windows-defender_108.tgz |
1.0.8 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/3734/ |
tenable-add-on-for-splunk_700.tgz |
7.0.0 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/4060/ |
tenable-app-for-splunk_605.tgz |
6.0.5 | Splunk Dashboard App(适用于 1.14.7 及更高版本) | https://splunkbase.splunk.com/app/4061/ |
splunk-9.4.2-e9664af3d956-windows-x64.msi |
9.4.2 | Splunk 集群的 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 企业版 | 6f6fa9e800ec7151ca763091c81cdeef1008e1d7026544cbdd3ba4b5ed59170f |
| Win Server 2022 | 48e2eee1f5fd916cae89766520b825f1ee14062bac2bd5b74d8ba07c3b64abcd |
| Win Server 2022 语言包 | 850a318c277f9b0d7436031efd91b36f5d27dad6e8ea9972179204a3fc756517 |
| PSTools | a9ca77dfe03ce15004157727bb43ba66f00ceb215362c9b3d199f000edaa8d61 |
| Force Directed App for Splunk | f763bb89548b85f87a0c7f7d05b6a2be4c0f4a738afee151133c2c3ad931f0d1 |
| InfoSec App for Splunk | 36eccfbc8c1b0a7e45517affa0293f8f068dd0c52ed67382bdaf07a57f401361 |
| Linux Auditd | 1493389d0289ec8bb8a5adcc009d257944194c943ddbf1bd1041705463420ecd |
| Linux Auditd 技术插件 | 279cb365d6176e595ec2f9d1a86e2e1cd14f4d9521794dfd9912bb35bbf3c323 |
| Palo Alto Networks 加购项 | 243e52326e35ae34f17798d753ba7195402dfb0ad4be16ea07c29eb47f1b8850 |
| Palo Alto Networks 应用 | 7475bdeadefb71e4c9fab2fb84382fbffa33a0b6977fd77e2cb10ebd643fd2dc9 |
| Punchcard 自定义可视化图表 | 2933475935a50ca513ccba6e28910a969ca3d849a967d3709745a975c179764d |
| ServiceNow Security Operations 加购项 | d272d6a58fa423defdb229c615794a8c258c33de0429fc60619cfb007e0e2e4e |
| ServiceNow 事件提取 | 14b7b1e38ecdfe25e183ad92b4a231e5a5f8d9fea4a6771e1b41c24f93a59d17 |
| Microsoft 安全插件 | 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} 中的合作伙伴软件包需要传输到 Google Distributed Cloud (GDC) 网闸隔离环境中的目标机器,在该环境中运行加载步骤,同时传输 ${GDCH_TAR_DIR} 中的 OI 版本 tar 文件 prod_partner_OIC_component_bundle.tar.gz。
合作伙伴软件包和发布版 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 文件已转移到工作节点,并已提取到本地目录。
- 合作伙伴软件包文件已转移到工作节点中的本地目录。
jq和docker命令可在工作节点中使用。
您必须调整以下导出的变量,以引用实际的目录结构。
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)。 - 最后,使用配置脚本运行
rehydrate_siem_apps.sh脚本(用于 -c 实参)。
cd ${ARTIFACTS_ROOT}/scripts
chmod +x rehydrate_siem_apps.sh
./rehydrate_siem_apps.sh -c rehydrate_siem_apps.conf
在输出文件中,它会提供 Docker 映像的上传位置。此映像是一种特殊的 OCI Tarball 映像,不应使用 docker pull 拉取,而是会自动使用。