예상 소요 시간: 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 파일을 채우는 단계는 두 가지입니다.
준비: 파트너는 공급업체에서 필수 소프트웨어 패키지를 가져와 안내에 따라 사전 처리 단계를 실행해야 합니다. 준비 단계가 완료되면 모든 파트너 소프트웨어 패키지 파일을 단일 디렉터리에 넣어야 합니다.
로드: 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 환경이 있어야 합니다. 다음과 같은 필수 명령줄 도구를 실행할 수 있어야 합니다.
gdclouddockersha256sumjq
일반적으로 Distributed Cloud 출시 tar 파일을 다운로드하는 데 사용되는 머신입니다.
필요한 모든 소프트웨어 패키지 파일은 ${PARTNER_SOFTWARE_DIR}라고 하는 단일 최상위 디렉터리에 준비됩니다.
파트너가 제공할 각 소프트웨어의 준비 단계에는 다음이 포함됩니다.
- 안내에 따라 해당 공급업체에서 예상되는 버전의 소프트웨어 패키지 파일을 가져옵니다.
- 준비된 소프트웨어 패키지 파일을 안내에 나온 예상 이름으로
${PARTNER_SOFTWARE_DIR}에 저장합니다. - 준비된 소프트웨어 패키지 파일을 안내에 나온 예상 이름으로
${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을 사용하여 이 파일을 준비해야 합니다.
첫 번째 표에는 각 패키지에 관한 다음 데이터가 포함됩니다.
- 예상 버전 열은 가져올 소프트웨어 패키지의 타겟 버전을 지정합니다.
- 예상 파일 이름 열은 소프트웨어 패키지를
${PARTNER_SOFTWARE_DIR}에 저장할 파일 이름을 지정합니다. - 예상 SHA256 열은 준비된 패키지 파일의 예상 SHA256 체크섬을 지정합니다. 준비된 파일에 지정된 SHA256 체크섬이 있는지 확인해야 합니다.
- 프로젝트 URL 열은 소프트웨어 패키지에 관한 정보가 포함된 URL을 지정합니다.
- 설명 열에는 소프트웨어 패키지가 간략하게 설명되어 있습니다.
문서 렌더링의 제한으로 인해 별도의 예상 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_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)이 입력되었는지 확인합니다. - 마지막으로 -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 이미지입니다.