> ## Documentation Index
> Fetch the complete documentation index at: https://wb-21fd5541-sdk-testing-latest.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> 데이터베이스, 저장소, Redis, IAM 설정에 환경 변수를 사용해 Self-Managed W&B Server 설치를 설정합니다.

# 환경 변수 설정

System Settings 관리자 UI에서 인스턴스 수준 설정을 구성하는 것 외에도, W\&B는 환경 변수를 사용해 코드로 이러한 값을 설정할 수 있는 방법을 지원합니다. 이 페이지에는 Self-Managed W\&B Server 배포에서 데이터베이스, 저장소, Redis, ID 공급자 및 기타 인스턴스 수준 동작을 제어하기 위해 설정할 수 있는 환경 변수가 나열되어 있습니다. 관리자 UI 대신 이러한 변수를 사용해 설정을 코드로 관리할 수 있습니다. IAM 관련 변수는 [IAM 고급 설정](./iam/advanced_env_vars)을 참고하세요.

<div id="environment-variable-reference">
  ## 환경 변수 레퍼런스
</div>

다음 표에서는 각 환경 변수와 해당 변수가 제어하는 동작, 그리고 값에 적용되는 제약 조건을 설명합니다.

| 환경 변수                                   | 설명                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| --------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `LICENSE`                               | 사용자의 wandb/local 라이선스                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `MYSQL`                                 | MySQL 연결 문자열                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `BUCKET`                                | 데이터를 저장할 S3 / GCS 버킷                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `BUCKET_QUEUE`                          | 객체 생성 이벤트를 위한 SQS / Google PubSub 큐                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `NOTIFICATIONS_QUEUE`                   | run 이벤트를 게시할 SQS 큐                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `AWS_REGION`                            | 버킷이 위치한 AWS 리전                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| `HOST`                                  | 인스턴스의 FQD, 예: `https://my.domain.net`                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `OIDC_ISSUER`                           | Open ID Connect ID 공급자의 URL(예: `https://cognito-idp.us-east-1.amazonaws.com/us-east-1_uiIFNdacd`)                                                                                                                                                                                                                                                                                                                                                                                                                |
| `OIDC_CLIENT_ID`                        | ID 공급자에 있는 애플리케이션의 Client ID                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `OIDC_AUTH_METHOD`                      | Implicit(기본값) 또는 pkce입니다. 자세한 내용은 다음 섹션을 참조하세요.                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `SLACK_CLIENT_ID`                       | 알림에 사용할 Slack 애플리케이션의 client ID                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `SLACK_SECRET`                          | 알림에 사용할 Slack 애플리케이션의 secret                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `LOCAL_RESTORE`                         | 인스턴스에 액세스할 수 없는 경우 이 값을 일시적으로 true로 설정할 수 있습니다. 임시 자격 증명은 컨테이너 로그에서 확인하세요.                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `REDIS`                                 | W\&B와 함께 외부 REDIS 인스턴스를 설정하는 데 사용할 수 있습니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `LOGGING_ENABLED`                       | true로 설정하면 액세스 로그가 stdout으로 스트리밍됩니다. 이 변수를 설정하지 않아도 sidecar 컨테이너를 마운트하고 `/var/log/gorilla.log`를 tail할 수 있습니다.                                                                                                                                                                                                                                                                                                                                                                                                    |
| `GORILLA_ALLOW_USER_TEAM_CREATION`      | true로 설정하면 관리자가 아닌 사용자가 새 팀을 만들 수 있습니다. 기본값은 false입니다.                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `GORILLA_CUSTOMER_SECRET_STORE_SOURCE`  | W\&B Weave에서 사용하는 팀 secret을 저장할 secret manager를 설정합니다. 지원되는 secret manager는 다음과 같습니다: <ul><li><b>내부 secret manager</b> (기본값): <code>k8s-secretmanager://wandb-secret</code></li><li><b>AWS Secret Manager</b>: <code>aws-secretmanager</code></li><li><b>Google Cloud Secret Manager</b>: <code>gcp-secretmanager</code></li><li><b>Azure</b>: <code>az-secretmanger</code></li></ul>                                                                                                                            |
| `GORILLA_DATA_RETENTION_PERIOD`         | 삭제된 run 데이터를 몇 시간 동안 보관할지 지정합니다. 삭제된 run 데이터는 복구할 수 없습니다. 입력값 뒤에 `h`를 붙이세요. 예: `"24h"`.                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `GORILLA_DISABLE_PERSONAL_ENTITY`       | true로 설정하면 [personal entities](/ko/support/models/articles/what-is-the-difference-between-team-and-)를 비활성화합니다. 개인 entity에서 새 개인 프로젝트를 만드는 것을 막고, 기존 개인 프로젝트에 쓰는 것도 막습니다.                                                                                                                                                                                                                                                                                                                                         |
| `GORILLA_GRAPHQL_DISABLE_INTROSPECTION` | true로 설정하면 GraphQL introspection을 비활성화합니다. 즉, `__type` 및 `__schema` 쿼리는 요청은 계속 성공하지만 스키마 데이터를 반환하지 않습니다. **Self-Managed**에서는 Gorilla 설정 필드 `graphql-disable-introspection`을 설정해도 동일한 효과가 있습니다. 이 변수는 `WeightsAndBiases` custom resource의 `spec.values.global.extraEnv` 아래에 설정하세요(Operator 가이드의 [`global.extraEnv` 예시](/ko/platform/hosting/self-managed/operator#ldap) 참조). **클라이언트 애플리케이션이 introspection이 이미 비활성화된 배포에 연결되는 경우 [W\&B SDK v0.26.0](/ko/release-notes/sdk-releases#0-26-0) 이상이 필요합니다**.           |
| `GRAPHQL_REJECT_UNAUTHED_REQUESTS`      | **API** 서비스에서 `true`로 설정하면 인증된 사용자가 없는 GraphQL 요청을 거부합니다. 인증되지 않은 요청에는 HTTP 401이 반환됩니다. **Self-Managed** 및 **Dedicated Cloud** v0.80.0+에서만 지원되며, Multi-tenant Cloud에서는 사용할 수 없습니다. 이 기능은 옵트인 방식입니다. 즉, 환경 변수가 설정되지 않았거나 `true`가 아니면 동작은 변경되지 않습니다. API 컴포넌트에만 설정하세요(예: Helm values의 `api.env`). 활성화하기 전에 익명 GraphQL 액세스에 의존하는 워크플로(예: 로그인하지 않고 공유 Reports를 보거나 Open Projects를 사용하는 경우)가 여전히 요구 사항을 충족하는지 확인하세요. **Self-Managed**에서는 Gorilla 설정 필드 `graphql-reject-unauthed-requests`를 `true`로 설정해도 동일한 효과가 있습니다. |
| `GORILLA_ARTIFACT_GC_ENABLED`           | true로 설정하면 삭제된 Artifacts에 대한 가비지 컬렉션을 활성화합니다. Self-Managed 배포에 필요합니다. 자세한 내용은 [artifact 삭제](/ko/models/artifacts/delete-artifacts)를 참조하세요.                                                                                                                                                                                                                                                                                                                                                                       |
| `WANDB_ARTIFACT_DIR`                    | 다운로드한 모든 artifact를 저장할 위치입니다. 설정하지 않으면 트레이닝 스크립트 기준의 `artifacts` 디렉터리가 기본값으로 사용됩니다. 이 디렉터리가 존재하고 실행 중인 사용자가 여기에 쓸 권한이 있는지 확인하세요. 생성된 메타데이터 파일의 위치는 제어하지 않으며, 이는 `WANDB_DIR` 환경 변수로 설정할 수 있습니다.                                                                                                                                                                                                                                                                                                                   |
| `WANDB_DATA_DIR`                        | 스테이징 artifact를 업로드할 위치입니다. 기본 위치는 `platformdirs` Python 패키지의 `user_data_dir` 값을 사용하므로 플랫폼에 따라 달라집니다. 이 디렉터리가 존재하고 실행 중인 사용자가 여기에 쓸 권한이 있는지 확인하세요.                                                                                                                                                                                                                                                                                                                                                                |
| `WANDB_DIR`                             | 생성된 모든 파일을 저장할 위치입니다. 설정하지 않으면 트레이닝 스크립트 기준의 `wandb` 디렉터리가 기본값으로 사용됩니다. 이 디렉터리가 존재하고 실행 중인 사용자가 여기에 쓸 권한이 있는지 확인하세요. 다운로드된 artifact의 위치는 제어하지 않으며, 이는 `WANDB_ARTIFACT_DIR` 환경 변수로 설정할 수 있습니다.                                                                                                                                                                                                                                                                                                                    |
| `WANDB_IDENTITY_TOKEN_FILE`             | [identity federation](/ko/platform/hosting/iam/identity_federation/)용으로, Java Web Token(JWT)이 저장된 로컬 디렉터리의 절대 경로입니다.                                                                                                                                                                                                                                                                                                                                                                                             |

<Note>
  * `GORILLA_DATA_RETENTION_PERIOD` 환경 변수는 신중하게 사용하세요. 이 변수는 **삭제된 run 데이터**(삭제 프로세스 이후의 미디어 등 run과 연결된 파일 포함)에 적용됩니다. 이 변수는 artifact를 삭제하지 않습니다. artifact 삭제 및 `GORILLA_ARTIFACT_GC_ENABLED` 사용 방법은 [artifact 삭제](/ko/models/artifacts/delete-artifacts)를 참조하세요. run 및 파일 삭제가 저장소와 이 설정에 어떤 영향을 미치는지 알아보려면 **run 삭제**의 [삭제된 run 데이터가 저장소에서 제거되는 시점](/ko/models/runs/delete-runs#when-deleted-run-data-is-removed-from-storage)을 참조하세요. 이 변수를 설정하면 보존 기간에 따라 데이터가 제거됩니다. 이 값을 활성화하거나 변경하기 전에 데이터베이스와 저장소 버킷을 모두 백업하세요.

    버킷에서 객체를 백그라운드로 제거하는 작업은 **대략적으로** 수행되므로, 특정 시간 안에 완료된다고 보장할 수 없습니다. 예상 동작, 문제 해결 방법, 그리고 이것이 저장소 비용과 어떤 관련이 있는지 알아보려면 [버킷 저장소 및 비용 관리](/ko/platform/hosting/managing-bucket-storage)를 참조하세요.
  * [Kubernetes Operator](/ko/platform/hosting/self-managed/operator)에서 `GRAPHQL_REJECT_UNAUTHED_REQUESTS`를 활성화하려면 API 컴포넌트에만 설정하세요:

    ```yaml theme={null}
    api:
    env:
        GRAPHQL_REJECT_UNAUTHED_REQUESTS: "true"
    ```

    변경 사항을 적용한 후 설정을 확인하기 전에 API 파드가 롤아웃될 때까지 기다리세요. 이 동작을 비활성화하려면 이 변수를 제거하거나 다른 값으로 설정하세요.
</Note>

<div id="advanced-reliability-settings">
  ## 고급 안정성 설정
</div>

다음 섹션에서는 W\&B Server 배포의 안정성과 성능을 높이기 위해 적용할 수 있는 선택적 설정을 설명합니다.

<div id="redis">
  ### Redis
</div>

외부 Redis 서버는 선택 사항이지만, 프로덕션 시스템에서는 권장됩니다. Redis는 서비스의 안정성을 높이고 캐싱을 사용해 로드 시간을 줄이는 데 도움이 되며, 특히 규모가 큰 프로젝트에서 효과적입니다. 고가용성(HA)을 지원하는 ElastiCache 같은 관리형 Redis 서비스를 사용하고, 다음 사양을 따르세요:

* 최소 4 GB 메모리, 권장 8 GB
* Redis 버전 6.x
* 전송 중 암호화
* 인증 활성화

W\&B에서 Redis 인스턴스를 구성하려면 `http(s)://YOUR-W&B-SERVER-HOST/system-admin`의 W\&B 설정 페이지로 이동하세요. **Use an external Redis instance** 옵션을 활성화한 다음, 아래 형식으로 Redis 연결 문자열을 입력하세요:

<Frame>
  <img src="https://mintcdn.com/wb-21fd5541-sdk-testing-latest/_BDoNoao0FSZz-dv/images/hosting/configure_redis.png?fit=max&auto=format&n=_BDoNoao0FSZz-dv&q=85&s=d56bd6ab2a2ff52181095c6bcbd64a32" alt="W&B에서 REDIS 구성" width="659" height="799" data-path="images/hosting/configure_redis.png" />
</Frame>

컨테이너 또는 Kubernetes 배포에서 환경 변수 `REDIS`를 사용해 Redis를 구성할 수도 있습니다. 또는 `REDIS`를 Kubernetes secret으로 설정할 수도 있습니다.

이 페이지에서는 Redis 인스턴스가 기본 포트 `6379`에서 실행 중이라고 가정합니다. 다른 포트를 사용하도록 구성하고, 인증을 설정하고, `redis` 인스턴스에서 TLS를 활성화하려는 경우 연결 문자열 형식은 다음과 같습니다: `redis://$USER:$PASSWORD@$HOST:$PORT?tls=true`
