> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getporter.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 앱 배포 리소스 부여

> 애플리케이션 플랫폼에서 서비스 배포를 위한 리소스 부여 방법을 안내합니다.

<Card>
  미리 정해둔 리소스 프로파일 또는 직접 입력 방식으로 리소스를 부여할 수 있습니다.
</Card>

<AccordionGroup>
  <Accordion title="운영 시스템 접속 방법">
    <Frame>
      <img className="block rounded-md" src="https://files.cloudtype.io/ale-docs/ai/images/ko/global-model01.png" />
    </Frame>

    대시보드 우측 상단의 프로필 아이콘을 클릭하면 운영 시스템에 접속할 수 있습니다.

    <Tip>
      [운영 시스템 관리자 권한을 부여](/ko/enterprise/user-management#관리자-권한-부여)받은 사용자 계정으로만 접속 가능합니다.
    </Tip>
  </Accordion>
</AccordionGroup>

<Frame>
  <img className="block rounded-md" src="https://files.cloudtype.io/ale-docs/operations/images/resource-app01.png" />
</Frame>

> **운영 시스템의 스페이스 페이지**에서 스페이스 목록 우측의 <Icon icon="gauge" size={15} color="9fa3a5" /> 아이콘을 클릭하면 해당 스페이스의 리소스를 관리할 수 있는 창이 표시됩니다. 두 가지 방법으로 스페이스에 리소스를 부여할 수 있습니다.

* **리소스 세트를 미리 설정한 리소스 프로파일을 적용**

* **개별 리소스 항목을 직접 입력하여 적용**

<Info>
  스페이스가 생성되면 `Default` 프로파일이 기본값으로 적용됩니다.
</Info>

## 프로파일로 부여

<Frame>
  <img className="block rounded-md" src="https://files.cloudtype.io/ale-docs/operations/images/resource-app02.png" />
</Frame>

> **리소스 프로파일**을 선택하고 하단부의 `적용하기`를 클릭하면, 해당 프로파일에 미리 설정해둔 리소스 전체를 한 번에 적용할 수 있습니다.

<Tip>
  리소스 프로파일은 CPU와 메모리뿐만 아니라 다양한 설정들을 미리 구성하여 리소스 할당 과정을 간소화합니다. 이를 통해 리소스 관리를 더욱 효율적이고 일관되게 수행할 수 있습니다.
</Tip>

<Accordion title="리소스 프로파일 설정하기">
  <Steps>
    <Step title="프로파일 이름과 표시명 정하기">
      <Frame>
        <img className="block rounded-md" src="https://files.cloudtype.io/ale-docs/operations/images/resource-app03.png" />
      </Frame>

      운영 시스템 설정 페이지의 리소스 할당량 섹션에서 리소스 프로파일 `추가하기` 버튼을 클릭하면, 적용할 리소스셋을 미리 설정한 리소스 프로파일을 추가할 수 있습니다. 먼저 프로파일 이름과, 사용자에게 표시될 표시명을 입력합니다.
    </Step>

    <Step title="리소스 타입(On demand / Spot)별 리소스 설정하기">
      <Frame>
        <img className="block rounded-md" src="https://files.cloudtype.io/ale-docs/operations/images/resource-app04.png" />
      </Frame>

      리소스 타입별 리소스 값을 설정하세요. 설정에 따라 한 가지 리소스 타입만 사용하거나 두 가지의 타입을 혼용할 수 있습니다. **값을 입력하지 않은 항목은 placeholder 값이 적용**되며, 주요 항목의 의미는 아래와 같습니다.

      * **vCPU / Memory / Disk** : 스페이스 전체에 부여하는 리소스 값
      * **Max vCPU / Memory / Disk** : 개별 서비스에 부여할 수 있는 리소스 상한
      * **Max running** : 개설할 수 있는 서비스의 수
      * **Max replica**  : 개별 서비스에 부여할 수 있는 레플리카 수의 상한
      * **Node group** :`on-demand` 또는 `spot`입력. 자세한 설명은 아래를 참고하세요.

      <AccordionGroup>
        <Accordion title="on-demand / spot" defaultOpen={true}>
          > `Porter AI`는 효율적인 리소스 운용을 위해 워커 노드의 인스턴스 타입에 따른 리소스 할당을 지원합니다. 리소스 설정 시 Node group 필드에 `on-demand` 또는 `spot`을 입력하면, 입력값에 따른 인스턴스를 사용합니다.

          <Tip>
            클러스터의 워커 노드를 on-demand 인스턴스로만 구성하거나 spot 인스턴스의 리소스가 부족해도 spot 리소스를 사용하도록 설정할 수 있습니다. 이 경우 Porter AI에서 spot 리소스로 배포한 서비스는 `spot` 표시만 적용되며, 실제로는 on-demand 인스턴스에서 작동하게 됩니다.
          </Tip>

          <Note>
            Spot 리소스로 배포된 서비스는 스팟 리소스 일괄 제거 기능으로 한 번에 모두 중지시킬 수 있습니다. 테스트 등을 위해 일시적으로 운영하는 서비스에 스팟 리소스를 적용해 배포하면, **스팟 리소스 제거 기능**을 활용해 클라우드 자원을 효율적으로 관리할 수 있습니다.

            <Frame>
              <img className="block rounded-md" src="https://files.cloudtype.io/ale-docs/operations/images/07_21.png" />
            </Frame>
          </Note>

          <Info>
            온디맨드/스팟 인스턴스의 가용성 관리 방식과 요금 부과 정책은 CSP별로 상이합니다. 다음의 링크를 참고하여 적절한 형태의 인스턴스를 선택하세요.

            * [Amazon EC2 Spot](https://aws.amazon.com/ko/ec2/spot/details/)
            * [GCP Spot VM](https://cloud.google.com/compute/docs/instances/spot?hl=ko)
            * [Azure Spot VM](https://learn.microsoft.com/ko-kr/azure/virtual-machines/spot-vms)
          </Info>
        </Accordion>
      </AccordionGroup>
    </Step>

    <Step title="리소스 외의 일반 사항 입력하기(도메인 연결, 팀원 수 등)">
      <Frame>
        <img className="block rounded-md" src="https://files.cloudtype.io/ale-docs/operations/images/resource-app05.png" />
      </Frame>

      * **Domain** : 스페이스에서 연결할 수 있는 커스텀 도메인 수(0으로 설정 시, 도메인 연결 불가)
      * **Max Services** : 스페이스에서 개설할 수 있는 최대 서비스 수(온디맨드/스팟 포함)
      * **Max Members** : 스페이스에 초대할 수 있는 팀원의 수
      * **Max Projects** : 스페이스에 개설할 수 있는 프로젝트의 수
      * **Services per Environment** : 배포 환경(Namespace)당 개설 가능한 서비스 수
      * **Others** : placeholder의 수가 0인 경우, 무제한으로 적용됩니다.
    </Step>
  </Steps>

  <Tip>
    스페이스 생성 시 Default 프로파일의 리소스 세트가 적용됩니다.
  </Tip>
</Accordion>

## 리소스 직접 입력

### 리소스 타입별 리소스 설정

<Frame>
  <img className="block rounded-md" src="https://files.cloudtype.io/ale-docs/operations/images/resource-app04.png" />
</Frame>

> 리소스 타입(On-demand / Spot)별 리소스 값을 설정할 수 있습니다. 설정에 따라 한 가지 리소스 타입만 사용하거나 두 가지의 타입을 혼용할 수 있습니다. **값을 입력하지 않은 항목은 placeholder 값이 적용**되며, 주요 항목의 의미는 아래와 같습니다.

* **vCPU / Memory / Disk** : 스페이스 전체에 부여하는 리소스 값
* **Max vCPU / Memory / Disk** : 개별 서비스에 부여할 수 있는 리소스 상한
* **Max running** : 개설할 수 있는 서비스의 수
* **Max replica**  : 개별 서비스에 부여할 수 있는 레플리카 수의 상한
* **Node group** :`on-demand` 또는 `spot`입력. 자세한 설명은 아래를 참고하세요.

<AccordionGroup>
  <Accordion title="on-demand / spot" defaultOpen={true}>
    > `Porter AI`는 효율적인 리소스 운용을 위해 워커 노드의 인스턴스 타입에 따른 리소스 할당을 지원합니다. 리소스 설정 시 Node group 필드에 `on-demand` 또는 `spot`을 입력하면, 입력값에 따른 인스턴스를 사용합니다.

    <Tip>
      클러스터의 워커 노드를 on-demand 인스턴스로만 구성하거나 spot 인스턴스의 리소스가 부족해도 spot 리소스를 사용하도록 설정할 수 있습니다. 이 경우 spot 리소스로 배포한 서비스는 `spot` 표시만 적용되며, 실제로는 on-demand 인스턴스에서 작동하게 됩니다.
    </Tip>

    <Note>
      Spot 리소스로 배포된 서비스는 스팟 리소스 일괄 제거 기능으로 한 번에 모두 중지시킬 수 있습니다. 테스트 등을 위해 일시적으로 운영하는 서비스에 스팟 리소스를 적용해 배포하면, **스팟 리소스 제거 기능**을 활용해 클라우드 자원을 효율적으로 관리할 수 있습니다.

      <Frame>
        <img className="block rounded-md" src="https://files.cloudtype.io/ale-docs/operations/images/07_21.png" />
      </Frame>
    </Note>

    <Info>
      온디맨드/스팟 인스턴스의 가용성 관리 방식과 요금 부과 정책은 CSP별로 상이합니다. 다음의 링크를 참고하여 적절한 형태의 인스턴스를 선택하세요.

      * [Amazon EC2 Spot](https://aws.amazon.com/ko/ec2/spot/details/)
      * [GCP Spot VM](https://cloud.google.com/compute/docs/instances/spot?hl=ko)
      * [Azure Spot VM](https://learn.microsoft.com/ko-kr/azure/virtual-machines/spot-vms)
    </Info>
  </Accordion>
</AccordionGroup>

### 일반 설정(도메인 연결, 팀원 수 등)

<Frame>
  <img className="block rounded-md" src="https://files.cloudtype.io/ale-docs/operations/images/resource-app05.png" />
</Frame>

* **Domain** : 스페이스에서 연결할 수 있는 커스텀 도메인 수(0으로 설정 시, 도메인 연결 불가)
* **Max Services** : 스페이스에서 개설할 수 있는 최대 서비스 수(온디맨드/스팟 포함)
* **Max Members** : 스페이스에 초대할 수 있는 팀원의 수
* **Max Projects** : 스페이스에 개설할 수 있는 프로젝트의 수
* **Services per Environment** : 배포 환경(Namespace)당 개설 가능한 서비스 수
* **Others** : placeholder의 수가 0인 경우, 무제한으로 적용됩니다.

## 리소스 일괄 제거

<Frame>
  <img className="block rounded-md" src="https://files.cloudtype.io/ale-docs/operations/images/resource-app06.png" />
</Frame>

> 스페이스 우측의 <Icon icon="gauge" size={15} color="9fa3a5" /> 아이콘을 클릭하면, **선택된 스페이스**의 리소스 타입별로 서비스를 한 번에 중지시킬 수 있습니다.

* 스팟 리소스 제거 : 스팟 리소스로 생성한 서비스만 제거
* 모든 리소스 제거 : 모든 서비스를 제거

<Tip>
  테스트 등을 위해 일시적으로 운영하는 서비스에 스팟 리소스를 적용해 배포하면, **스팟 리소스 제거 기능**을 활용해 클라우드 자원을 효율적으로 관리할 수 있습니다.
</Tip>
