GlusterFS 볼륨 생성 제안

GlusterFS 볼륨 생성 제안

3개 노드에서 10개 노드까지 여러 Openshift 클러스터를 배포해야 합니다. 3개 노드의 경우 복제된 볼륨을 생성하고 있습니다.

하지만 4개 이상에서는 복제 볼륨을 생성하는 것이 좋지 않아 각 노드에 300GB 디스크가 있고 이를 10개 노드에 복제하는 것은 최적이 아닙니다. 다음과 같이 사용할 수식을 찾고 있습니다.

For 4 nodes create volume as disperse:2:1
For 5 nodes create volume as disperse:?:?
For 6 nodes create volume as disperse:?:?
For 7 nodes create volume as disperse:?:?
For 8 nodes create volume as disperse:?:?
For 9 nodes create volume as disperse:?:?
For 10 nodes create volume as disperse:?:?

환경: MYSQL 5.7.28에 이 볼륨을 사용하고 각 서버에는 300GB 디스크가 있습니다. 300GB 중 MYSQL용으로 250GB 크기의 볼륨을 생성합니다.

OpenShift 3.11 version

# gluster --version
glusterfs 6.1

추신: 저는 저장 공간에 대한 배경 지식이 없기 때문에 Google에서 검색을 시도했지만 필요한 정보를 추출할 수 없었던 몇 가지 분명한 요점이 누락된 경우 양해해 주시기 바랍니다.

답변1

모든 노드를 스토리지 노드로 사용할 계획입니까, 아니면 노드의 하위 집합만 스토리지 노드로 사용할 계획입니까? 귀하의 질문에 따르면 MySQL은 250GiB를 사용합니다. 다른 애플리케이션에는 스토리지가 필요합니까?

복제 볼륨: 사용 가능한 효과적인 저장 공간은

volume_size = sum of storage available from three nodes / 3

귀하의 경우 볼륨 크기는 3개의 스토리지 노드를 사용하여 300GiB가 됩니다.

분산 볼륨: 사용 가능한 효과적인 저장 공간은

volume_size = storage in single node * (number of bricks - redundancy count)

귀하의 경우 볼륨 크기는 입니다 300 * (3-1) = 600GiB. 자세한 내용은 여기에서 확인할 수 있습니다.https://docs.gluster.org/en/v3/Administrator%20Guide/Setting%20Up%20Volumes/#creating-dispersed-volumes 분산 볼륨은 복제본 볼륨에 비해 공간을 절약할 수 있으므로 보관 목적에 적합합니다. 그러나 매 IO 중에 계산이 필요하기 때문에 Replica에 비해 속도가 느릴 수 있습니다.

카달루(https://kadalu.io) 프로젝트는 Kubernetes에서 볼륨을 프로비저닝하는 다른 접근 방식을 제공합니다. 스토리지에서 단일 Gluster 볼륨을 생성하고 PV가 요청될 때 해당 볼륨에서 하위 볼륨을 제공합니다(귀하의 경우 Storage for Mysql).

Kadalu는 현재 Replica 1 및 Replica 3 볼륨을 지원합니다. 복제본 1은 AWS/Azure와 같은 다른 스토리지 공급자로부터 스토리지 디바이스를 요청할 때 유용합니다. Replica 3은 노드 3개 중 1개가 중단되더라도 애플리케이션을 위한 고가용성 스토리지를 제공합니다. 최근 블로그 게시물(https://kadalu.io/blog/kadalu-kubernetes-storage)에서는 Kadalu에서 사용할 수 있는 여러 구성과 이를 기존 스토리지와 함께 사용하는 방법을 설명합니다.

Kadalu는 Gluster 관리 데몬인 glusterd를 사용하지 않고 GlusterFS를 사용하고 기본적으로 Kubernetes와 통합됩니다.

업데이트: 분산 볼륨에 대한 계산이 추가되었습니다.

number of disperse bricks = data bricks + redundancy count

3개의 저장 장치를 사용할 수 있는 경우

2 data bricks + 1 redundancy bricks

저장장치가 6개일 경우,

4 data bricks + 2 redundancy bricks

중복 브릭 수가 증가하면 사용 가능한 볼륨 크기가 줄어듭니다. 중복 브릭과 동일한 브릭 수가 감소하더라도 애플리케이션에서 볼륨을 사용할 수 있습니다. 예를 들어 4+2구성에서는 브릭 6개 중 2개가 다운되어도 볼륨을 사용할 수 있습니다.

관련 정보