Google Distributed Cloud (GDC) 에어갭의 인프라 운영자 (IO)로서 시스템 상태를 확인하고, 사용자 및 네트워크를 구성하고, 컴퓨팅, 스토리지, 네트워킹과 같은 기본 하드웨어 시스템의 수명 주기를 관리합니다.
시작하기 전에
이 문서를 완료하려면 다음 리소스에 대해 액세스 권한이 필요합니다.
gdcloud CLI 또는
kubectlCLILinux 환경
조직을 관리하는 데 필요한 권한을 얻으려면 보안 관리자에게 조직 관리자 (organization-admin) 역할을 부여해 달라고 요청하세요.
서버 액세스 및 모니터링
GDC 서버에 액세스하고 상태를 모니터링하여 안전하고 최신 상태이며 작동하는지 확인합니다.
조직의 서버 모니터링에 대한 자세한 내용은 측정항목 쿼리 및 보기 페이지를 참고하세요.
서버 수명 주기 관리
서버 수명 주기 관리에는 다음 기능이 포함됩니다.
- 전원을 껐다가 다시 켜거나 재부팅합니다.
- 이미지 재처리 중
- 베이스보드 관리 컨트롤러 (BMC) 및 복잡한 프로그래밍 가능 논리 장치(CPLD) 펌웨어 업데이트
- 운영체제 또는 소프트웨어 업데이트
- 보안 설정과 같은 운영체제 구성
기본 운영체제 보안 패치, 서버 호스트 소프트웨어 번들 업그레이드, 서버 펌웨어 업그레이드는 유지보수 기간 중에 정기적으로 실행됩니다.
유지보수 기간에는 다음 작업이 포함됩니다.
- 서버 운영체제에 긴급 보안 업데이트를 설치합니다.
- 하나 이상의 서버에서 호스트 소프트웨어 번들을 업그레이드합니다.
- 하나 이상의 서버에서 펌웨어를 업그레이드합니다.
워크로드 서버 추가 및 관리
워크로드 서버를 추가하거나 기존 워크로드 서버를 관리하려면 iac 저장소에 저장된 OrganizationZonalConfig 커스텀 리소스를 업데이트합니다.
사용 가능한 서버 및 서버 유형 목록을 생성합니다.
kubectl get servers -n gpc-system -o \ jsonpath='{range .items[?(@.status.bareMetalHostStatus.provisionState=="available")]}{.metadata.name}{"\t"}{.spec.serverHardware.machineClassName}{"\t"}{.status.bareMetalHostStatus.provisionState}{"\n"}{end}'결과는 다음과 유사합니다.
ag-aa-bm04 o1-standard1-64-gdc-metal available ag-ab-bm07 o1-standard1-64-gdc-metal available ag-ab-bm11 o1-highmem1-96-gdc-metal available ag-ab-bm12 o1-highmem1-96-gdc-metal available ag-ab-bm13 o1-highmem1-96-gdc-metal available ag-ab-bm14 o1-highgpu1-48-gdc-metal available ag-ab-bm15 o1-highgpu1-48-gdc-metal available ag-ab-bm16 o1-highgpu1-48-gdc-metal available사용 가능한 서버를 확인하고 조직의 워크로드 서버를 수정할 때 사용 가능한 서버만 할당해야 합니다.
iac저장소에서OrganizationZonalConfig커스텀 리소스 YAML 파일을 엽니다.vim IAC_REPO_PATH/iac/infrastructure/global/orgs/root/ORG_NAME-ZONE.yaml다음을 바꿉니다.
IAC_REPO_PATH:iac저장소의 폴더 경로입니다.ORG_NAME: 조직 이름ZONE: 유니버스의 영역 이름입니다. 영역 이름은{generalRegion}-{regionQualifier}{regionCounter}-{zoneLetter}형식을 사용하여 파생됩니다. 예를 들면us-central1-b입니다. 지역 속성 값에 대한 설명은 고객 접수 설문지의 지역 섹션을 참고하세요.
YAML 파일의
workloadServers섹션을 업데이트합니다. 새 워크로드 서버를 추가하거나 각 유형의 기존 서버 수를 관리합니다.... workloadServers: o1-highmem1-40-gdc-metal: 1 o1-standard1-64-gdc-metal: 2 o1-highmem1-96-gdc-metal: 3 o1-highmem1-104-gdc-metal: 4 o1-highmem1-448-gdc-metal: 5 o1-highgpu1-48-gdc-metal: 6 ...대화형 편집기를 저장하고 닫습니다.
조직 영역 구성 YAML 파일의 변경사항을 스테이징하고 커밋합니다.
git add IAC_REPO_PATH/iac/infrastructure/global/orgs/root/ORG_NAME-ZONE git commitGitLab에 업데이트를 푸시합니다.
git -c http.sslVerify=false push코드 검토 및 병합을 기다립니다.
Distributed Cloud 배포의 모든 Distributed Cloud 영역의 모든 GitLab 저장소에 대해 동일한 콘텐츠와 디렉터리 구조로 이러한 단계를 반복합니다.
Distributed Cloud 배포에서 각 영역에는 연결이 끊긴 개별 GitLab 인스턴스가 포함됩니다. GitLab에서 생성, 업데이트 또는 삭제된 모든 전역 리소스에 대해 각 영역의 GitLab 저장소에 정확히 동일한 콘텐츠를 커밋해야 합니다. 전역 루트 조정자 포드는 전역 API의
zoneselectionresult커스텀 리소스의primary필드에 정의된 기본 Distributed Cloud 영역에서 실행됩니다. 조정자는 기본 영역의 GitLab에서 글로벌 API로 데이터를 동기화합니다.할당한 워크로드 서버를 사용할 수 있는지 확인합니다.
kubectl --kubeconfig /root/release/root-admin/root-admin-kubeconfig get servers -n gpc-system -o \ jsonpath='{range .items[?(@.spec.nodePoolClaimRef.namespace=="org-1")]}{.metadata.name}{"\t"}{.status.provisionReady}{"\n"}{end}'워크로드 서버가
true로 설정된 경우 사용할 수 있습니다. 출력은 다음과 비슷합니다.zi-aa-bm04 true zi-aa-bm05 true zi-aa-bm06 true
저장용량 확장
영역에서 각 조직에 사용할 수 있는 스토리지 양은 OrganizationZonalConfig 리소스의 capacities 필드에 정의되어 있습니다.
이러한 스토리지 클래스의 할당량을 늘리려면 각 영역에서 OrganizationZonalConfig 리소스를 업데이트하세요.
iac저장소에서OrganizationZonalConfig커스텀 리소스 YAML 파일을 엽니다.vim IAC_REPO_PATH/iac/infrastructure/global/orgs/root/ORG_NAME-ZONE.yaml다음을 바꿉니다.
IAC_REPO_PATH:iac저장소의 폴더 경로입니다.ORG_NAME: 조직 이름ZONE: 유니버스의 영역 이름입니다(예:us-central1-b). 지역 속성 값에 대한 자세한 내용은 고객 접수 설문지의 지역 섹션을 참고하세요.
스토리지 유형의 새 할당량 값으로 YAML 파일의
capacities섹션을 업데이트합니다. 예를 들면 다음과 같습니다.# Several lines of code are omitted here. spec: capacities: storage: file-standard: FILE_QUOTA block-standard: BLOCK_QUOTA object-standard: OBJECT_QUOTA다음을 바꿉니다.
FILE_QUOTA: 영역의 파일 스토리지에 대한 새 할당량 값입니다(예:10Ti).BLOCK_QUOTA: 영역의 블록 스토리지에 대한 새 할당량 값입니다(예:10Ti).OBJECT_QUOTA: 영역의 객체 스토리지에 대한 새 할당량 값입니다(예:10Ti).
OrganizationZonalConfig리소스 내에서 스토리지 용량을 정의하는 방법에 대한 자세한 내용은TypedResourceCapacities참고 문서를 참고하세요.대화형 편집기를 저장하고 닫습니다.
조직 영역 구성 YAML 파일의 변경사항을 스테이징하고 커밋합니다.
git add IAC_REPO_PATH/iac/infrastructure/global/orgs/root/ORG_NAME-ZONE git commitGitLab에 업데이트를 푸시합니다.
git -c http.sslVerify=false push코드 검토 및 병합을 기다립니다.
GDC 배포의 모든 GDC 영역에 있는 모든 GitLab 저장소에 대해 동일한 콘텐츠와 디렉터리 구조로 위 단계를 반복합니다.