Skip to main content
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

부하 분산을 위한 고려 사항

부하 분산을 사용하여 S3 클라이언트에서 수집 및 검색 워크로드를 처리할 수 있습니다.

로드 밸런싱이란 무엇인가요?

클라이언트 애플리케이션이 StorageGRID 시스템에서 데이터를 저장하거나 검색하는 경우 StorageGRID 로드 밸런서를 사용하여 수집 및 검색 워크로드를 관리합니다. 부하 분산은 작업 부하를 여러 스토리지 노드에 분산시켜 속도와 연결 용량을 극대화합니다.

StorageGRID 로드 밸런서 서비스는 모든 관리 노드와 모든 게이트웨이 노드에 설치되며 레이어 7 로드 밸런싱을 제공합니다. 클라이언트 요청에 대한 TLS(전송 계층 보안) 종료를 수행하고, 요청을 검사하고, 스토리지 노드에 대한 새로운 보안 연결을 설정합니다.

각 노드의 로드 밸런서 서비스는 클라이언트 트래픽을 스토리지 노드로 전달할 때 독립적으로 작동합니다. 로드 밸런서 서비스는 가중치 부여 프로세스를 통해 CPU 가용성이 더 높은 스토리지 노드로 더 많은 요청을 라우팅합니다.

참고 StorageGRID 로드 밸런서 서비스가 권장되는 로드 밸런싱 메커니즘이기는 하지만 대신 타사 로드 밸런서를 통합하는 것이 좋을 수도 있습니다. 자세한 내용은 NetApp 계정 담당자에게 문의하거나 다음을 참조하세요. "TR-4626: StorageGRID 타사 및 글로벌 로드 밸런서" .

몇 개의 로드 밸런싱 노드가 필요합니까?

일반적인 모범 사례로, StorageGRID 시스템의 각 사이트에는 로드 밸런서 서비스가 있는 두 개 이상의 노드가 포함되어야 합니다. 예를 들어, 사이트에는 두 개의 게이트웨이 노드가 포함될 수도 있고, 관리 노드와 게이트웨이 노드가 모두 포함될 수도 있습니다. 서비스 어플라이언스, 베어 메탈 노드 또는 가상 머신(VM) 기반 노드를 사용하는지 여부에 관계없이 각 부하 분산 노드에 적절한 네트워킹, 하드웨어 또는 가상화 인프라가 있는지 확인하세요.

로드 밸런서 엔드포인트란 무엇인가요?

로드 밸런서 엔드포인트는 들어오고 나가는 클라이언트 애플리케이션 요청이 로드 밸런서 서비스가 포함된 노드에 액세스하는 데 사용할 포트와 네트워크 프로토콜(HTTPS 또는 HTTP)을 정의합니다. 엔드포인트는 또한 클라이언트 유형(S3), 바인딩 모드, 그리고 선택적으로 허용되거나 차단된 테넌트 목록을 정의합니다.

로드 밸런서 엔드포인트를 생성하려면 구성 > 네트워크 > *로드 밸런서 엔드포인트*를 선택하거나 FabricPool 및 S3 설정 마법사를 완료합니다. 지침:

포트에 대한 고려 사항

로드 밸런서 엔드포인트의 포트는 처음 생성하는 엔드포인트의 경우 기본적으로 10433으로 설정되지만, 1~65535 사이의 사용되지 않는 외부 포트를 지정할 수 있습니다. 포트 80 또는 443을 사용하는 경우 엔드포인트는 게이트웨이 노드에서만 로드 밸런서 서비스를 사용합니다. 이러한 포트는 관리 노드에서 예약되어 있습니다. 두 개 이상의 엔드포인트에 동일한 포트를 사용하는 경우 각 엔드포인트에 대해 다른 바인딩 모드를 지정해야 합니다.

다른 그리드 서비스에서 사용하는 포트는 허용되지 않습니다. 를 참조하십시오"네트워크 포트 참조" .

네트워크 프로토콜에 대한 고려 사항

대부분의 경우 클라이언트 애플리케이션과 StorageGRID 간의 연결에는 TLS(전송 계층 보안) 암호화를 사용해야 합니다. TLS 암호화 없이 StorageGRID 에 연결하는 것은 지원되지만, 특히 프로덕션 환경에서는 권장되지 않습니다. StorageGRID 로드 밸런서 엔드포인트에 대한 네트워크 프로토콜을 선택할 때 *HTTPS*를 선택해야 합니다.

로드 밸런서 엔드포인트 인증서에 대한 고려 사항

로드 밸런서 엔드포인트의 네트워크 프로토콜로 *HTTPS*를 선택하는 경우 보안 인증서를 제공해야 합니다. 로드 밸런서 엔드포인트를 생성할 때 다음 세 가지 옵션 중 하나를 사용할 수 있습니다.

  • 서명된 인증서를 업로드하세요(권장). 이 인증서는 공개적으로 신뢰할 수 있는 인증 기관이나 사설 인증 기관(CA)에서 서명할 수 있습니다. 공개적으로 신뢰할 수 있는 CA 서버 인증서를 사용하여 연결을 보호하는 것이 가장 좋은 방법입니다. 생성된 인증서와 달리 CA에서 서명한 인증서는 중단 없이 순환할 수 있으므로 만료 문제를 방지하는 데 도움이 될 수 있습니다.

    로드 밸런서 엔드포인트를 생성하기 전에 다음 파일을 얻어야 합니다.

    • 사용자 정의 서버 인증서 파일.

    • 사용자 정의 서버 인증서 개인 키 파일입니다.

    • 선택적으로, 각 중간 발급 인증 기관의 인증서로 구성된 CA 번들입니다.

  • 자체 서명 인증서를 생성합니다.

  • 글로벌 StorageGRID S3 인증서를 사용하세요. 로드 밸런서 엔드포인트에 대해 인증서를 선택하려면 먼저 이 인증서의 사용자 지정 버전을 업로드하거나 생성해야 합니다. 보다 "S3 API 인증서 구성" .

어떤 가치가 필요한가?

인증서를 생성하려면 S3 클라이언트 애플리케이션이 엔드포인트에 액세스하는 데 사용할 모든 도메인 이름과 IP 주소를 알아야 합니다.

인증서의 주체 DN(고유 이름) 항목에는 클라이언트 애플리케이션이 StorageGRID 에 사용할 정규화된 도메인 이름이 포함되어야 합니다. 예를 들어:

Subject DN: /C=Country/ST=State/O=Company,Inc./CN=s3.storagegrid.example.com

필요에 따라 인증서는 와일드카드를 사용하여 로드 밸런서 서비스를 실행하는 모든 관리 노드와 게이트웨이 노드의 정규화된 도메인 이름을 나타낼 수 있습니다. 예를 들어, *.storagegrid.example.com * 와일드카드를 사용하여 표현합니다. adm1.storagegrid.example.com 그리고 gn1.storagegrid.example.com .

S3 가상 호스팅 스타일 요청을 사용하려는 경우 인증서에는 각 항목에 대한 대체 이름 항목도 포함되어야 합니다."S3 엔드포인트 도메인 이름" 와일드카드 이름을 포함하여 구성한 모든 항목. 예를 들어:

Alternative Name: DNS:*.s3.storagegrid.example.com
참고 도메인 이름에 와일드카드를 사용하는 경우 다음을 검토하세요."서버 인증서에 대한 강화 지침" .

보안 인증서의 각 이름에 대한 DNS 항목도 정의해야 합니다.

만료된 인증서를 어떻게 관리하나요?

주의 S3 애플리케이션과 StorageGRID 간의 연결을 보호하는 데 사용된 인증서가 만료되면 애플리케이션이 StorageGRID 에 대한 액세스 권한을 일시적으로 잃을 수 있습니다.

인증서 만료 문제를 방지하려면 다음 모범 사례를 따르세요.

  • 로드 밸런서 엔드포인트 인증서 만료S3 API용 글로벌 서버 인증서 만료 알림과 같이 인증서 만료 날짜가 다가옴을 경고하는 알림을 주의 깊게 모니터링하세요.

  • StorageGRID 와 S3 애플리케이션의 인증서 버전을 항상 동기화 상태로 유지하세요. 로드 밸런서 엔드포인트에 사용된 인증서를 교체하거나 갱신하는 경우 S3 애플리케이션에서 사용하는 동등한 인증서도 교체하거나 갱신해야 합니다.

  • 공개적으로 서명된 CA 인증서를 사용하세요. CA에서 서명한 인증서를 사용하면 곧 만료되는 인증서를 중단 없이 교체할 수 있습니다.

  • 자체 서명된 StorageGRID 인증서를 생성했고 해당 인증서가 만료되려고 하는 경우, 기존 인증서가 만료되기 전에 StorageGRID 와 S3 애플리케이션에서 모두 인증서를 수동으로 교체해야 합니다.

바인딩 모드에 대한 고려 사항

바인딩 모드를 사용하면 로드 밸런서 엔드포인트에 액세스하는 데 사용할 수 있는 IP 주소를 제어할 수 있습니다. 엔드포인트가 바인딩 모드를 사용하는 경우 클라이언트 애플리케이션은 허용된 IP 주소나 해당 정규화된 도메인 이름(FQDN)을 사용하는 경우에만 엔드포인트에 액세스할 수 있습니다. 다른 IP 주소나 FQDN을 사용하는 클라이언트 애플리케이션은 엔드포인트에 액세스할 수 없습니다.

다음 바인딩 모드를 지정할 수 있습니다.

  • 글로벌 (기본값): 클라이언트 애플리케이션은 모든 게이트웨이 노드 또는 관리 노드의 IP 주소, 모든 네트워크의 모든 HA 그룹의 가상 IP(VIP) 주소 또는 해당 FQDN을 사용하여 엔드포인트에 액세스할 수 있습니다. 엔드포인트의 접근성을 제한해야 하는 경우가 아니면 이 설정을 사용하세요.

  • HA 그룹의 가상 IP. 클라이언트 애플리케이션은 HA 그룹의 가상 IP 주소(또는 해당 FQDN)를 사용해야 합니다.

  • 노드 인터페이스. 클라이언트는 선택한 노드 인터페이스의 IP 주소(또는 해당 FQDN)를 사용해야 합니다.

  • 노드 유형. 선택한 노드 유형에 따라 클라이언트는 모든 관리 노드의 IP 주소(또는 해당 FQDN) 또는 모든 게이트웨이 노드의 IP 주소(또는 해당 FQDN)를 사용해야 합니다.

세입자 접근에 대한 고려 사항

테넌트 액세스는 어떤 StorageGRID 테넌트 계정이 로드 밸런서 엔드포인트를 사용하여 버킷에 액세스할 수 있는지 제어할 수 있는 선택적 보안 기능입니다. 모든 테넌트가 엔드포인트에 액세스하도록 허용할 수도 있고(기본값), 각 엔드포인트에 대해 허용 또는 차단된 테넌트 목록을 지정할 수도 있습니다.

이 기능을 사용하면 테넌트와 엔드포인트 간에 더 나은 보안 격리를 제공할 수 있습니다. 예를 들어, 이 기능을 사용하면 한 세입자가 소유한 최고 기밀 또는 기밀 자료가 다른 세입자가 전혀 접근할 수 없도록 할 수 있습니다.

참고 접근 제어를 위해 테넌트는 클라이언트 요청에 사용된 접근 키로부터 결정되고, 요청의 일부로 접근 키가 제공되지 않으면(익명 접근의 경우처럼) 버킷 소유자를 사용하여 테넌트를 결정합니다.

테넌트 액세스 예

이 보안 기능이 어떻게 작동하는지 이해하려면 다음 예를 살펴보세요.

  1. 다음과 같이 두 개의 로드 밸런서 엔드포인트를 생성했습니다.

    • 공개 엔드포인트: 포트 10443을 사용하고 모든 테넌트의 액세스를 허용합니다.

    • 극비 엔드포인트: 포트 10444를 사용하고 극비 테넌트만 액세스할 수 있도록 허용합니다. 다른 모든 테넌트는 이 엔드포인트에 액세스하는 것이 차단됩니다.

  2. 그만큼 top-secret.pdf 극비 세입자가 소유한 양동이에 들어있습니다.

접근하려면 top-secret.pdf 극비 테넌트의 사용자는 GET 요청을 발행할 수 있습니다. https://w.x.y.z:10444/top-secret.pdf . 이 테넌트는 10444 엔드포인트를 사용할 수 있으므로 사용자는 개체에 액세스할 수 있습니다. 그러나 다른 테넌트에 속한 사용자가 동일한 URL에 동일한 요청을 발행하면 즉시 액세스 거부 메시지를 받게 됩니다. 자격 증명과 서명이 유효하더라도 액세스가 거부됩니다.

CPU 가용성

각 관리 노드와 게이트웨이 노드의 로드 밸런서 서비스는 S3 트래픽을 스토리지 노드로 전달할 때 독립적으로 작동합니다. 가중치 부여 프로세스를 통해 로드 밸런서 서비스는 CPU 가용성이 더 높은 스토리지 노드로 더 많은 요청을 라우팅합니다. 노드 CPU 부하 정보는 몇 분마다 업데이트되지만 가중치는 더 자주 업데이트될 수 있습니다. 모든 스토리지 노드에는 최소 기본 가중치 값이 할당됩니다. 노드가 100% 사용률을 보고하거나 사용률을 보고하지 못하는 경우에도 마찬가지입니다.

어떤 경우에는 CPU 가용성에 대한 정보가 로드 밸런서 서비스가 있는 사이트로 제한됩니다.