Zoekt 차트
Tier: Premium, Ultimate
Offering: Self-Managed
Status: Experiment
Offering: Self-Managed
Status: Experiment
- GitLab 15.9에 도입되었습니다.
index_code_with_zoekt
및search_code_with_zoekt
라는 플래그와 함께 사용됩니다. 기본적으로 비활성화되어 있습니다.
- GitLab 16.6에서 GitLab.com에서 활성화되었습니다.
Self-Managed GitLab에서는 기본적으로 이 기능을 사용할 수 없습니다.
관리자는 해당 기능을 사용하도록 설정할 수 있습니다. 자세한 내용은 피처 플래그를 참조하십시오.
GitLab.com에서는 이 기능을 사용할 수 있습니다.
이 기능은 Experiment입니다.
GitLab 지원팀은 Zoekt 차트의 구성 또는 문제 해결에 대해 지원할 수 없습니다.
GitLab 지원팀은 Zoekt 차트의 구성 또는 문제 해결에 대해 지원할 수 없습니다.
Zoekt 차트는 정확한 코드 검색을 지원합니다.
gitlab-zoekt.install
을 true
로 설정하여 차트를 설치할 수 있습니다. 자세한 내용은 gitlab-zoekt
를 참조하십시오.
Zoekt 차트 활성화
Zoekt 차트를 활성화하려면 다음 값들을 설정하십시오:
--set gitlab-zoekt.install=true \
--set gitlab-zoekt.replicas=2 \ # Zoekt 파드 수. 하나의 파드만 사용하려면 이 설정을 건너뛸 수 있습니다.
--set gitlab-zoekt.indexStorage=128Gi # Zoekt 노드 디스크 크기. Zoekt는 리포지터리 저장 공간의 약 3배를 사용합니다.
CPU 및 메모리 사용량 설정
다음과 같은 GitLab.com 기본 설정을 수정하여 Zoekt 차트의 요청(requests) 및 제한(limits)을 정의할 수 있습니다:
webserver:
resources:
requests:
cpu: 4
memory: 32Gi
limits:
cpu: 16
memory: 128Gi
indexer:
resources:
requests:
cpu: 4
memory: 6Gi
limits:
cpu: 16
memory: 12Gi
gateway:
resources:
requests:
cpu: 2
memory: 512Mi
limits:
cpu: 4
memory: 1Gi
GitLab에서 Zoekt 구성
- GitLab 16.6에서 Shards가 nodes로 이름이 변경되었습니다.
GitLab의 최상위 그룹을 위해 Zoekt를 구성하려면 다음을 수행하세요:
-
도구 상자 pod의 Rails 콘솔에 연결합니다:
kubectl exec <도구 상자 pod 이름> -it -c toolbox -- gitlab-rails console -e production
-
Zoekt의 피처 플래그를 활성화합니다:
::Feature.enable(:index_code_with_zoekt) ::Feature.enable(:search_code_with_zoekt)
-
색인 설정을 구성합니다:
# Zoekt 노드 중 하나를 선택합니다. node = ::Search::Zoekt::Node.last # 최상위 그룹의 이름을 사용합니다. namespace = Namespace.find_by_full_path('<색인을 할 최상위 그룹>') enabled_namespace = Search::Zoekt::EnabledNamespace.find_or_create_by(namespace: namespace) node.indices.create!(zoekt_enabled_namespace_id: enabled_namespace.id, namespace_id: namespace.id, state: :ready)
이제 Zoekt는 해당 그룹의 프로젝트를 색인화할 수 있으며, 프로젝트가 업데이트되거나 생성된 후에 작동합니다.