4. 서드 파티 소프트웨어 로드

예상 소요 시간: 60분

작동 가능 구성요소 소유자: OELCM/노드

기술 프로필: 배포 엔지니어

이 페이지에서는 파트너가 제공하는 서드 파티 소프트웨어 패키지를 해당 Google Distributed Cloud (GDC) 에어 갭 출시 tar 파일과 함께 로드하는 방법을 설명합니다. 이 페이지의 안내는 다른 페이지에서 참조하도록 되어 있습니다.

용어

  • 파트너 소프트웨어 패키지: Distributed Cloud 배포에 필요하지만 파트너 운영 배포용 출시 tar 파일에 포함되지 않으며 파트너가 제공해야 하는 서드 파티 소프트웨어 패키지입니다.
  • 파트너 소프트웨어 패키지 로드: Distributed Cloud 출시 tar 파일에서 파트너 제공 소프트웨어 패키지로 아티팩트를 채우는 프로세스입니다.
  • 파트너 소프트웨어 매니페스트: 파트너 소프트웨어 패키지 목록의 메타데이터를 설명하는 JSON 파일입니다. 이러한 패키지는 해당 Distributed Cloud 출시 tar 파일을 채우기 위해 로드됩니다.
  • 파트너 소프트웨어 아티팩트 디렉터리: 인프라 운영자 (IO)가 파트너 소프트웨어 패키지를 수집하는 소스 디렉터리입니다.
  • 아티팩트 루트 디렉터리: Distributed Cloud 출시 타르 파일의 아티팩트가 추출되는 최상위 디렉터리입니다.
  • 작업 노드: Distributed Cloud tar 파일을 추출하고 파트너 소프트웨어 패키지를 로드하는 명령어를 실행하는 고급 머신입니다. 배포 컨텍스트에 따라 시스템 컨트롤러, 부트스트래퍼 또는 Operations Suite 인프라 (OI) 워크스테이션일 수 있습니다.

개요

파트너 소프트웨어 패키지로 Distributed Cloud 출시 tar 파일을 채우는 단계는 두 가지입니다.

  1. 준비: 파트너는 공급업체에서 필수 소프트웨어 패키지를 가져와 안내에 따라 사전 처리 단계를 실행해야 합니다. 준비 단계가 완료되면 모든 파트너 소프트웨어 패키지 파일을 단일 디렉터리에 넣어야 합니다.

  2. 로드: IO는 명령어를 실행하여 출시 tar 파일에서 파트너가 제공한 소프트웨어 패키지로 아티팩트를 채웁니다.

다음 표에서는 배포 시나리오와 관련된 Distributed Cloud 출시 타르 파일을 매핑합니다.

시나리오 해당 출시 tar 파일 파트너 소프트웨어 로드 안내
운영 제품군 인프라 (OI) 환경 설정 OI 출시 타르 파일 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 단계를 실행하여 패키지를 로드합니다.
셸 스크립트로 분산 클라우드 부트스트랩 분산 클라우드 셸 스크립트(예: rehydrate_siem_apps.sh) P3 단계를 실행하여 소프트웨어 패키지를 준비합니다.
L3 단계를 실행하여 패키지를 로드합니다.

Preparation 단계를 실행하기 위한 기본 요건

준비 단계를 실행할 머신에는 Linux 머신이나 Linux용 Windows 하위 시스템 (WSL) 환경과 같은 bash 환경이 있어야 합니다. 다음과 같은 필수 명령줄 도구를 실행할 수 있어야 합니다.

  • 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. 프로젝트 URL 열은 소프트웨어 패키지에 관한 정보가 포함된 URL을 지정합니다.
  5. 설명 열에는 소프트웨어 패키지가 간략하게 설명되어 있습니다.

문서 렌더링의 제한으로 인해 별도의 예상 SHA256 표에는 준비된 패키지 파일의 예상 SHA256 체크섬이 지정되어 있습니다.

예상 파일 이름 예상 버전 설명 프로젝트 URL
MCM_Configmgr_2403.exe 2403 MS 구성 관리자용 설치 미디어 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 클러스터용 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
펀치 카드 맞춤 시각화 2933475935a50ca513ccba6e28910a969ca3d849a967d3709745a975c179764d
ServiceNow Security Operations 부가기능 d272d6a58fa423defdb229c615794a8c258c33de0429fc60619cfb007e0e2e4e
ServiceNow 이벤트 수집 14b7b1e38ecdfe25e183ad92b4a231e5a5f8d9fea4a6771e1b41c24f93a59d17
Microsoft Security 부가기능 31b4b2630d04fcd5cab28ad977779e4f31a367a1603a3b030482c32ca7021af4
Microsoft Windows 부가기능 fef3214da64838039e11e3a163527c6d907d604ceddd1482850df546f3341047
Stream Forwarders 부가기능 aae74100dbdd08ed207b4ed9cbfc8db4b4c757b2aeebba48dffe7a42f6fbd6e2
Stream Wire Data 부가기능 4e212d6b07384446fb5e2109d11741ab020ec0e0d000aa780abca27a0faa984c
Splunk App for Stream 593362ff6a17835c1279f0ec9b1d20a8a247aca9cdce172332a97c35155169f7
Common Information Model (CIM) bdb7bc5f3d0e784992ef1e9c824b0a34a486d5996a558cbb1465318346f4d52b
ES 콘텐츠 업데이트 911ccc995eca4ec930140c25ef3fe15c0a3169331002865ab8d77f065bec019b
머신러닝 도구 키트 d84055987a668ed41b3862c2e7fdb989670b73379d8531149d10863b9f5408ef
흐름 다이어그램 d240d4c660a5466c56b28929f188d86ad68eef5fc0d3440680a798dd2f6a55b2
Security Essentials 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) 에어갭 환경의 타겟 머신으로 OI 출시 타르 파일 prod_partner_OIC_component_bundle.tar.gz(${GDCH_TAR_DIR}에 있음)과 함께 전송해야 합니다.

파트너 소프트웨어 패키지와 출시 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_centermandiantsecops_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 이미지의 업로드 위치가 표시됩니다. 이 이미지는 docker pull로 풀지 않고 자동으로 사용되는 특수 OCI Tarball 이미지입니다.