GitLab이 관리하는 클러스터 자원 추적 (사용 중단됨)
- GitLab 14.0에서 소개됨.
 - GitLab 15.3에서 GitLab Premium에서 GitLab Free로 이동됨.
 
GitLab은 인벤토리 객체를 사용하여 클러스터에 배포하는 리소스를 추적합니다.
인벤토리 객체는 제어되는 객체 목록을 포함하는 ConfigMap입니다.
관리되는 리소스는 cli-utils.sigs.k8s.io/inventory-id 주석을 사용합니다.
인벤토리 객체의 기본 위치
에이전트 구성 파일에서 프로젝트 목록을 지정합니다. 예:
gitops:
  manifest_projects:
  - id: gitlab-org/cluster-integration/gitlab-agent
    default_namespace: my-ns
에이전트는 manifest_projects 목록의 각 항목에 대해 인벤토리 객체를 생성합니다.
인벤토리 객체는 default_namespace로 지정한 네임스페이스에 저장됩니다.
인벤토리 객체의 이름과 위치는 다음을 기반으로 합니다:
- 
default_namespace. 이 매개변수를 지정하지 않으면, 인벤토리 객체는default네임스페이스에 저장됩니다. - 
name은 매니페스트가 있는 프로젝트의 ID 및 에이전트의 ID입니다. 
default_namespace 매개변수를 변경하거나
다른 프로젝트로 매니페스트를 이동하는 경우 기존 인벤토리 객체를 찾을 수 없습니다.인벤토리 객체의 위치 변경
인벤토리 객체의 네임스페이스 및 이름을 구성할 수 있습니다. 이 작업은 클러스터 내 객체의 위치를 변경합니다.
- 
인벤토리 객체 템플릿을 생성합니다.
ConfigMap객체입니다. 예:apiVersion: v1 kind: ConfigMap metadata: name: unique-name-for-the-inventory namespace: my-project-namespace labels: cli-utils.sigs.k8s.io/inventory-id: unique-name-for-the-inventory - 
namespace및name을 지정합니다.name이 다른 인벤토리 객체와 충돌하지 않도록 고유해야 합니다. - 
cli-utils.sigs.k8s.io/inventory-id값이 고유한지 확인합니다. 이 값은이 인벤토리 객체에서 추적하는 객체에 사용됩니다.config.k8s.io/owning-inventory주석이 이 값으로 설정됩니다.값은
name과 일치할 필요는 없지만 동일한 값으로 설정하는 것이 편리합니다. - 매니페스트 파일을 단일 논리적 그룹으로 저장합니다.
 
inventory_policy 옵션
때로는 매니페스트 변경으로 GitLab 인벤토리 객체로 추적되지 않는 리소스에 영향을 미칩니다.
에이전트가 기존 및 이전에 추적되지 않은 리소스를 덮어쓸 때 작동 방식을 변경하려면 inventory_policy 값을 변경합니다.
inventory_policy 값
 | 설명 | 
|---|---|
must_match
 | 기본 정책입니다. 업데이트하려면 라이브 객체에는 해당 인벤토리 객체에있는 cli-utils.sigs.k8s.io/inventory-id 레이블과 동일한 값으로 config.k8s.io/owning-inventory 주석이 있어야 합니다. 값이 일치하지 않거나 객체에 주석이 없는 경우, 객체가 업데이트되지 않고 오류가보고됩니다.
 | 
adopt_if_no_inventory
 | 
config.k8s.io/owning-inventory 주석이없는 객체를 채택합니다.이 모드를 사용하면 GitOps 기능을 사용하여 기존 객체를 관리하려는 경우가 있습니다. 예기치 않은 채택을 피하기 위해 모든 객체를 채택 한 후 설정을 기본 must_match 모드로 변경하십시오.
 | 
adopt_all
 | 
config.k8s.io/owning-inventory 주석이 다른 값으로 설정된 객체도 가져옵니다.이 모드를 사용하면 일부 객체를 다른 에이전트로 또는 다른 도구에서 에이전트로 마이그레이션하려는 경우가 있습니다. 예기치 않은 채택을 피하기 위해 모든 객체를 채택 한 후 설정을 기본 must_match 모드로 변경하십시오.
 | 
도움말