개요
ES(Elasticsearch)는 GitHub Enterprise Server 인스턴스에서 검색 기능을 지원합니다. 더 나은 성능 및 보안 태세의 이점을 제공하기 위해 인스턴스를 버전 3.13 이상으로 업그레이드하면 어플라이언스의 Elasticsearch 버전이 5.6.16에서 8.7.0으로 업그레이드됩니다.
다음 섹션은 관리자가 Elasticsearch 업그레이드를 준비하고 모니터링하는 데 도움이 됩니다. 핵심 사항은 다음과 같습니다.
- 업그레이드는 검색 및 감사 로그 기능의 환경을 일시적으로 저하합니다.
- 클러스터 구성에서 인스턴스를 업그레이드하는 경우 스크립트를 실행하여 ES 업그레이드를 위해 클러스터를 준비해야 합니다. 클러스터 업그레이드을(를) 참조하세요.
- 백업의 경우 업그레이드가 완료되면 모든 고객이 인스턴스의 스냅샷을 찍어야 합니다.
검색 및 감사 로그에 미치는 영향
모든 검색 인덱스는 ES8로 업그레이드한 후 다시 빌드됩니다. 사용자는 다시 빌드하는 동안 검색 환경이 저하되지만, 그렇지 않으면 인스턴스가 작동하고 사용할 수 있을 것으로 예상됩니다. 인덱스 다시 빌드 프로세스는 데이터 집합의 크기에 따라 달라지며 몇 시간에서 며칠까지 걸릴 수 있습니다.
감사 로그는 업그레이드 직후에 사용할 수 없으며 모든 감사 로그를 마이그레이션하는 데 몇 시간이 걸릴 수 있습니다.
인덱스 다시 빌드가 완료된 직후 백업(backup-utils 사용)을 수행하고 이후의 모든 복원에 해당 스냅샷 사용하는 것이 좋습니다. 인스턴스에서 백업 구성을(를) 참조하세요. GitHub Enterprise Server 3.11 또는 3.12를 실행하는 인스턴스에서 백업을 복원하는 경우 ES 인덱스를 마이그레이션하고 3.13 인스턴스에서 다시 빌드한 후에만 ES를 사용하는 모든 콘텐츠를 사용할 수 있습니다.
Elasticsearch 업그레이드 모니터링
사이트 관리자 대시보드에서 ES 업그레이드의 진행률을 모니터링할 수 있습니다.
- 페이지의 오른쪽 위 모서리에서 을(를) 클릭합니다.
- 왼쪽 사이드바에서 검색 인덱스를 클릭합니다.
인덱스 다시 빌드가 완료되면 모든 검색 인덱스에 녹색과 "100%"가 표시됩니다.
복구 작업자 수 변경
기본적으로 인덱스 복구 작업자 수는 CPU 코어 수를 8로 나눈 값으로 설정됩니다(상한은 8임). 인덱스 다시 빌드 속도를 높이기 위해 작업자 수를 조정할 수 있습니다. 그러나 이를 수행하기 전에 부하에 대한 잠재적인 영향을 고려해야 합니다.
-
에 SSH합니다. 인스턴스가 여러 노드로 구성된 경우(예: 고가용성 또는 지역 복제가 구성된 경우) 주 노드에 대한 SSH를 수행합니다. 클러스터를 사용하는 경우 임의 노드에 대해 SSH를 수행할 수 있습니다. HOSTNAME을 인스턴스의 호스트 이름 또는 노드의 호스트 이름이나 IP 주소로 바꿉니다. 자세한 내용은 "관리 셸(SSH)에 액세스"을(를) 참조하세요.
Shell ssh -p 122 admin@HOSTNAME
ssh -p 122 admin@HOSTNAME
-
작업자 수를 변경하려면 다음 명령을 입력합니다.
Shell ghe-config app.github.es-workers NUMBER-OF-WORKERS
ghe-config app.github.es-workers NUMBER-OF-WORKERS
-
ghe-config-apply
를 실행합니다.
사이트 관리자 대시보드의 "인덱스 검색" 섹션에서 개별 인덱스 다시 빌드에 대한 작업자 수를 조정할 수도 있습니다. Elasticsearch 업그레이드 모니터링 섹션을 참조하세요.