2.2. 온프레미스 3scale up


APIcast 배포가 증가함에 따라 사용 가능한 스토리지 용량을 늘려야 할 수 있습니다. 스토리지를 확장하는 방법은 영구 스토리지에 사용하는 파일 시스템의 유형에 따라 다릅니다.

NFS(네트워크 파일 시스템)를 사용하는 경우 다음 명령을 사용하여 PV(영구 볼륨)를 확장할 수 있습니다.

$ oc edit pv <pv_name>

다른 스토리지 방법을 사용하는 경우 다음 섹션에 나열된 방법 중 하나를 사용하여 영구 볼륨을 수동으로 확장해야 합니다.

2.2.1. 방법 1: 영구 볼륨 백업 및 스왑

절차

  1. 기존 영구 볼륨에 데이터를 백업합니다.
  2. 새 크기 요구 사항에 맞게 스케일링된 대상 영구 볼륨을 생성하고 연결합니다.
  3. 사전 바인딩된 영구 볼륨 클레임을 생성하고 새 PVC의 크기(PersistentVolumeClaim) 및 volumeName 필드를 사용하는 영구 볼륨 이름을 지정합니다.
  4. 백업에서 새로 생성된 PV로 데이터를 복원합니다.
  5. 새 PV의 이름으로 배포 구성을 수정합니다.

    $ oc edit dc/system-app
  6. 새 PV가 구성되어 제대로 작동하는지 확인합니다.
  7. 이전 PVC를 삭제하여 클레임된 리소스를 해제합니다.

2.2.2. 방법 2: 3scale 백업 및 재배포

절차

  1. 기존 영구 볼륨에 데이터를 백업합니다.
  2. 3scale Pod를 종료합니다.
  3. 새 크기 요구 사항에 맞게 스케일링된 대상 영구 볼륨을 생성하고 연결합니다.
  4. 백업에서 새로 생성된 PV로 데이터를 복원합니다.
  5. 사전 바인딩된 영구 볼륨 클레임을 생성합니다. 다음을 지정합니다.

    1. 새 PVC의 크기
    2. volumeName 필드를 사용하는 영구 볼륨 이름입니다.
  6. amp.yml 을 배포합니다.
  7. 새 PV가 구성되어 제대로 작동하는지 확인합니다.
  8. 이전 PVC를 삭제하여 클레임된 리소스를 해제합니다.

2.2.3. 3scale 온프레미스 배포 구성

3scale용으로 확장할 주요 배포 구성은 다음과 같습니다.

  • APIcast 프로덕션
  • 백엔드 리스너
  • 백엔드 작업자

2.2.3.1. OCP를 통한 확장

CloudEvent CR을 사용하는 OCP(OpenShift Container Platform)를 통해 배포 구성을 up 또는 down으로 확장할 수 있습니다.

특정 배포 구성을 스케일링하려면 다음을 사용합니다.

  • 다음 VMDK CR을 사용하여 APIcast 프로덕션 배포 구성을 확장합니다.

    apiVersion: apps.3scale.net/v1alpha1
    kind: APIManager
    metadata:
      name: example-apimanager
    spec:
      apicast:
        productionSpec:
          replicas: X
  • 다음 CR을 사용하여 배포 구성의 백엔드 리스너, 백엔드 작업자 및 백엔드 cron 구성 요소를 확장합니다.

    apiVersion: apps.3scale.net/v1alpha1
    kind: APIManager
    metadata:
      name: example-apimanager
    spec:
      backend:
        listenerSpec:
          replicas: X
        workerSpec:
          replicas: Y
        cronSpec:
          replicas: Z
  • Pod당 원하는 프로세스 수로 적절한 환경 변수를 설정합니다.

    • backend-listener Pod의 PUMA_WORKERS:

      $ oc set env dc/backend-listener --overwrite PUMA_WORKERS=<number_of_processes>
    • system-app Pod의 UNICORN_WORKERS:

      $ oc set env dc/system-app --overwrite UNICORN_WORKERS=<number_of_processes>

2.2.3.2. 수직 및 수평 하드웨어 스케일링

리소스를 추가하여 OpenShift에서 3scale 배포의 성능을 향상시킬 수 있습니다. 수평 확장으로 OpenShift 클러스터에 Pod로 더 많은 컴퓨팅 노드를 추가하거나 기존 컴퓨팅 노드에 더 많은 리소스를 수직 확장으로 할당할 수 있습니다.

수평 스케일링

OpenShift에 포드로 더 많은 컴퓨팅 노드를 추가할 수 있습니다. 추가 컴퓨팅 노드가 클러스터의 기존 노드와 일치하는 경우 환경 변수를 재구성할 필요가 없습니다.

수직 스케일링

기존 컴퓨팅 노드에 더 많은 리소스를 할당할 수 있습니다. 더 많은 리소스를 할당하는 경우 성능을 높이기 위해 Pod에 프로세스를 추가해야 합니다.

참고

3scale 배포에서 다양한 사양 및 구성으로 컴퓨팅 노드를 사용하지 마십시오.

2.2.3.3. 라우터 확장

트래픽이 증가하면 Red Hat OCP 라우터에서 요청을 적절하게 처리할 수 있는지 확인하십시오. 라우터에서 요청의 처리량을 제한하는 경우 라우터 노드를 확장해야 합니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.