2.2. 온프레미스 3scale up
APIcast 배포가 증가함에 따라 사용 가능한 스토리지 용량을 늘려야 할 수 있습니다. 스토리지를 확장하는 방법은 영구 스토리지에 사용하는 파일 시스템의 유형에 따라 다릅니다.
NFS(네트워크 파일 시스템)를 사용하는 경우 다음 명령을 사용하여 PV(영구 볼륨)를 확장할 수 있습니다.
oc edit pv <pv_name>
$ oc edit pv <pv_name>
다른 스토리지 방법을 사용하는 경우 다음 섹션에 나열된 방법 중 하나를 사용하여 영구 볼륨을 수동으로 확장해야 합니다.
2.2.1. 방법 1: 영구 볼륨 백업 및 스왑 링크 복사링크가 클립보드에 복사되었습니다!
절차
- 기존 영구 볼륨에 데이터를 백업합니다.
- 새 크기 요구 사항에 맞게 스케일링된 대상 영구 볼륨을 생성하고 연결합니다.
-
사전 바인딩된 영구 볼륨 클레임을 생성하고 새 PVC의 크기(PersistentVolumeClaim) 및
volumeName
필드를 사용하는 영구 볼륨 이름을 지정합니다. - 백업에서 새로 생성된 PV로 데이터를 복원합니다.
새 PV의 이름으로 배포 구성을 수정합니다.
oc edit dc/system-app
$ oc edit dc/system-app
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 새 PV가 구성되어 제대로 작동하는지 확인합니다.
- 이전 PVC를 삭제하여 클레임된 리소스를 해제합니다.
2.2.2. 방법 2: 3scale 백업 및 재배포 링크 복사링크가 클립보드에 복사되었습니다!
절차
- 기존 영구 볼륨에 데이터를 백업합니다.
- 3scale Pod를 종료합니다.
- 새 크기 요구 사항에 맞게 스케일링된 대상 영구 볼륨을 생성하고 연결합니다.
- 백업에서 새로 생성된 PV로 데이터를 복원합니다.
사전 바인딩된 영구 볼륨 클레임을 생성합니다. 다음을 지정합니다.
- 새 PVC의 크기
-
volumeName
필드를 사용하는 영구 볼륨 이름입니다.
- amp.yml 을 배포합니다.
- 새 PV가 구성되어 제대로 작동하는지 확인합니다.
- 이전 PVC를 삭제하여 클레임된 리소스를 해제합니다.
2.2.3. 3scale 온프레미스 배포 구성 링크 복사링크가 클립보드에 복사되었습니다!
3scale용으로 확장할 주요 배포 구성은 다음과 같습니다.
- APIcast 프로덕션
- 백엔드 리스너
- 백엔드 작업자
2.2.3.1. OCP를 통한 확장 링크 복사링크가 클립보드에 복사되었습니다!
CloudEvent CR을 사용하는 OCP(OpenShift Container Platform)를 통해 배포 구성을 up 또는 down으로 확장할 수 있습니다.
특정 배포 구성을 스케일링하려면 다음을 사용합니다.
다음 VMDK CR을 사용하여 APIcast 프로덕션 배포 구성을 확장합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 CR을 사용하여 배포 구성의 백엔드 리스너, 백엔드 작업자 및 백엔드 cron 구성 요소를 확장합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pod당 원하는 프로세스 수로 적절한 환경 변수를 설정합니다.
backend-listener
Pod의PUMA_WORKERS
:oc set env dc/backend-listener --overwrite PUMA_WORKERS=<number_of_processes>
$ oc set env dc/backend-listener --overwrite PUMA_WORKERS=<number_of_processes>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow system-app
Pod의UNICORN_WORKERS
:oc set env dc/system-app --overwrite UNICORN_WORKERS=<number_of_processes>
$ oc set env dc/system-app --overwrite UNICORN_WORKERS=<number_of_processes>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.3.2. 수직 및 수평 하드웨어 스케일링 링크 복사링크가 클립보드에 복사되었습니다!
리소스를 추가하여 OpenShift에서 3scale 배포의 성능을 향상시킬 수 있습니다. 수평 확장으로 OpenShift 클러스터에 Pod로 더 많은 컴퓨팅 노드를 추가하거나 기존 컴퓨팅 노드에 더 많은 리소스를 수직 확장으로 할당할 수 있습니다.
수평 스케일링
OpenShift에 포드로 더 많은 컴퓨팅 노드를 추가할 수 있습니다. 추가 컴퓨팅 노드가 클러스터의 기존 노드와 일치하는 경우 환경 변수를 재구성할 필요가 없습니다.
수직 스케일링
기존 컴퓨팅 노드에 더 많은 리소스를 할당할 수 있습니다. 더 많은 리소스를 할당하는 경우 성능을 높이기 위해 Pod에 프로세스를 추가해야 합니다.
3scale 배포에서 다양한 사양 및 구성으로 컴퓨팅 노드를 사용하지 마십시오.
2.2.3.3. 라우터 확장 링크 복사링크가 클립보드에 복사되었습니다!
트래픽이 증가하면 Red Hat OCP 라우터에서 요청을 적절하게 처리할 수 있는지 확인하십시오. 라우터에서 요청의 처리량을 제한하는 경우 라우터 노드를 확장해야 합니다.