> For the complete documentation index, see [llms.txt](https://docs.panther.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.panther.com/ko/system-configuration/panther-deployment-types/legacy-configurations/self-hosted-deployments.md).

# 자체 호스팅 배포(레거시)

## 개요

{% hint style="warning" %}
이 배포 유형은 거의 사용되지 않으며, 특별한 요구 사항이 있는 고객에게만 제공됩니다.
{% endhint %}

## 업그레이드

Panther가 새 릴리스를 발표하면, 셀프 호스팅 고객이 각자의 일정에 맞춰 업그레이드를 조율할 수 있도록 알려드립니다. 업그레이드는 일반적으로 간단하지만, 모든 것이 원활하게 진행되도록 업그레이드 전과 업그레이드 중에 따라야 할 몇 가지 단계가 있습니다.

### 업그레이드하기 전에

업그레이드를 시작하기 전에, 어떤 Panther 버전으로 업그레이드할지 알고 있는지 확인하세요. Panther는 의미적 버전 관리를 사용하며, 마이너 릴리스를 건너뛰지 않고 가장 최근 패치 버전으로 업그레이드하는 것을 강력히 권장합니다.

예를 들어, 현재 버전이 `1.10.X` 이고 버전 `1.13.X`로 업그레이드하려면, 먼저 다음의 가장 높은 패치 버전으로 업그레이드해야 합니다: `1.11.X`, 그런 다음 `1.12.X`그런 다음 최종적으로 `1.13.X`. 이렇게 하면 마이그레이션 문제가 발생하지 않습니다.

하나 또는 모든 마이너 버전에 대한 최신 패치 버전, 또는 특정 마이너 버전의 사용 가능한 패치 버전 목록을 보려면 다음 [AWS CLI](https://aws.amazon.com/cli/) 명령을 사용하세요:

```bash
export VERSION=<패치 버전을 확인하려는 마이너 Panther 버전, 예: 1.108>

# 특정 마이너 버전의 최신 패치 버전을 출력하려면:
aws s3 ls s3://panther-community-us-east-1 --no-sign-request | grep "PRE v$VERSION" | awk -F"PRE v|/"  '{print $2}' | sort -V | tail -1

# 특정 마이너 버전의 모든 패치 버전을 출력하려면:
aws s3 ls s3://panther-community-us-east-1 --no-sign-request | grep "PRE v$VERSION" | awk '{print $2}' | sort -t "." -k1,1n -k2,2n -k3,3n

# 각 마이너 버전의 최신 패치 버전을 출력하려면
aws s3 ls s3://panther-community-us-east-1 --no-sign-request | \
    grep "PRE v" | \
    awk -F"PRE v|/" '{print $2}' | \
    sort -V | \
    awk -F. '{key=$1"."$2} prev!=key && NR>1{print last} {prev=key; last=$0} END{print last}'
```

추가로, 다음을 사용 중이라면 `PantherDeploymentRole` 를 사용해 Panther를 배포할 때, 배포 중인 Panther 버전에 맞는 올바른 버전으로 `PantherDeploymentRole` 를 업데이트했는지 확인하세요. 버전 `1.13.X` 이고 버전 `1.14.X`로 업그레이드하려는 경우, `PantherDeploymentRole` 도 버전 `1.14.X` 이어야 합니다. 업그레이드하기 전에. 다음은 `PantherDeploymentRole` 템플릿 URL입니다:

```
https://panther-public-cloudformation-templates.s3.amazonaws.com/panther-deployment-role/{version}/template.yml
```

### 업그레이드하는 동안

업그레이드를 수행하려면 CloudFormation 콘솔에서 루트 Panther 스택을 찾아 `업데이트` 버튼을 클릭하고, `템플릿 URL 바꾸기`를 선택한 다음 `TemplateURL` 를 배포하려는 원하는 Panther 버전에 대해 삽입하세요. 템플릿 URL은 다음 형식이어야 합니다:

#### **예시**

[https://panther-enterprise-us-east-2.s3.amazonaws.com/v1.25.1/panther.yml](https://panther-enterprise-{region}.s3.amazonaws.com/%7Bversion%7D/panther.yml)

```
https://panther-enterprise-{region}.s3.amazonaws.com/{version}/panther.yml
```

몇 개의 페이지를 통해 CloudFormation 매개변수가 올바른지, 그리고 CloudFormation이 대신 IAM 리소스와 중첩된 CloudFormation 리소스를 생성할 수 있는지 확인하도록 안내받게 됩니다.

#### Pulumi CodeBuild 트리거

우리는 인프라 관리를 위해 Pulumi를 사용합니다. 메인 Panther 스택이 배포된 후, `panther-pulumi` CodeBuild 프로젝트를 위한 빌드를 시작해야 합니다.\
\
예: `aws codebuild start-build --project-name panther-pulumi`

## 참조

### 루트 스택 이름 지정

Panther를 배포할 때 배포할 루트 panther 스택의 템플릿 URL이 제공됩니다. 다음을 사용 중이라면 `PantherDeploymentRole` Panther를 배포하려면, 루트 스택 이름에 반드시 `panther-` 접두사가 포함되도록 하세요. 루트 스택의 이름은 스택이 생성하는 모든 리소스 이름 앞에 붙으며, `PantherDeploymentRole` 는 이름이 `panther-`.

### 배포 매개변수 구성

Panther CloudFormation 스택에는 구성 가능한 배포 매개변수가 여러 개 있습니다. 다음 옵션에 특히 주의하세요:

* `FedRAMPEnabled`: FedRAMP 제어를 활성화/비활성화합니다. 기본값은 `false`이며, 허용되는 값은 `true` 또는 `false`.
* `FirstUserEmail` ***(필수)***: Panther 관리자 초대가 이 이메일 주소로 전송됩니다. 이 값의 업데이트는 첫 번째 성공적인 배포 이후에는 무시됩니다.
* `FirstUserFamilyName` ***(필수)***: 초기 Panther 사용자 - 성
* `FirstUserGivenName` ***(필수)***: 초기 Panther 사용자 - 이름
* `PulumiSecretArn` 그리고 `PulumiSecretKeyArn` **(*****필수*****):** 이 값들은 저희 팀이 제공할 것입니다 - 전용 [Pulumi](https://www.pulumi.com/) 조직 내 접근 토큰을 받게 됩니다.
* `SentryEnabled`: Sentry 통합을 활성화/비활성화합니다. 기본값은 `true`이며, 허용되는 값은 `true` 또는 `false`입니다. 이 값은 `FedRAMPEnabled` 이 true일 때는 무시됩니다.
* `SnowflakeAPISecretARN` ***(필수)***: 구성 및 자격 증명이 들어 있는 Snowflake API 읽기 전용 비밀을 가리키는 ARN입니다.
* `SnowflakeAPISecretRotationDays`: Snowflake PANTHER\_READONLY 비밀의 회전 주기(일)입니다. 기본값은 0이며 최소값은 0입니다.
* `SnowflakeAdminAPISecretRotationDays`: Snowflake PANTHER\_ADMIN 비밀의 회전 주기(일)입니다. 기본값은 0이며 최소값은 0입니다. 권장 값은 1입니다.
* `SnowflakeAdminAPISecretARN` ***(필수)***: 구성 및 자격 증명이 들어 있는 Snowflake API 관리자 비밀을 가리키는 ARN입니다.
* `SnowflakeAdminAPISecretRotationDays`: Snowflake PANTHER\_ADMIN 비밀의 회전 주기(일)입니다. 기본값은 0이며 최소값은 0입니다. 권장 값은 1입니다.
* `SnowflakeDestinationClusterARNs` ***(필수)***: Snowflake IAM 역할과 연결할 Snowflake 클러스터 ARN입니다. 이는 다음을 구성하는 데 사용됩니다 [Snowpipe](https://docs.snowflake.com/en/user-guide/data-load-snowpipe-intro).
* `SnowflakeEdition`: Snowflake 인스턴스의 에디션입니다. 기본값은 `표준`.
* `SnowflakeType`: 데이터 레이크 백엔드의 유형입니다. **다음으로 설정** `연결됨`**.**

Panther에는 위에 나열된 것 외에도 여러 구성 옵션이 있습니다. Panther를 처음 배포할 때는 이러한 매개변수를 설정하지 않는 것을 권장합니다. 초기 배포의 어느 단계에서든 실패하면 전체 배포가 실패하고 모든 인프라를 삭제하는 롤백이 수행됩니다. Panther의 초기 배포를 완료한 후에는 다른 루트 매개변수로 스택을 업데이트할 수 있습니다. 그러면 이러한 설정 중 하나가 배포 실패를 유발하더라도 Panther는 전체를 새로 배포할 필요 없이 이전 설정으로 간단히 롤백합니다. 여기에는 snowflake 및 사용자 지정 도메인 구성 매개변수와 같은 항목이 포함됩니다.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.panther.com/ko/system-configuration/panther-deployment-types/legacy-configurations/self-hosted-deployments.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
