inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

그림으로 배우는 쿠버네티스(v1.35)

5.6.스토리지클래스(StorageClass)

안녕하세요. 스토리지 클래스에 대해 궁금한 점이 있어서 질문 드립니다.

224

3rdwars

작성한 질문수 1

1

현재 상황은 로컬pc와 aws ec2 인스턴스를 site to site vpn방식으로 연결하고, 로컬 pc를 마스터노드, ec2 인스턴스를 워커노드 형태로 쿠버네티스 클러스터를 구성한 상태입니다. 같이 하는 친구가 워낙 잘 해서 이렇게 인프라를 잘 구축해줬는데, 저는 여기서 스토리지 클래스를 구성해 동적 프로비저닝을 구현하면 좋겠다는 생각을 해서 쿠버네티스 문서에 나와 있는 내용과 강의시간에 배운 내용들을 참조해 로컬 마스터노드에서 작업을 진행중인데 생각보다 구성이 잘 안 돼서 질문드리게 됐습니다. 

로컬 마스터노드에서 스토리지클래스를 구성해 쿠버네티스 클러스터로 연결된 ec2 인스턴스의 ebs를 프로비저너로 사용하려고 하는데 이게 구현이 가능한 기술일까요? 계속 찾아보니 aws에서 제공해주는 aws storagegateway와 s3를 이용한 datasync가 있는데 꼭 이 방법을 이용해야 하는지 아니면 ec2와 연결된 ebs에 볼륨을 붙일 수 있을지 궁금해서 질문드립니다. 질문 드리기 전에 여기저기 찾아봐도 nfs를 이용한 스토리지클래스들의 예는 조금 찾아볼 수 있는데, 이 경우 마땅한 레퍼런스를 잘 찾을 수 없어 염치 불고하고 질문드립니다.

kubernetes docker

답변 1

0

조훈(Hoon Jo)

안녕하세요 

로컬에 구성한 마스터 노드(컨트롤 플레인)에서 Provisioner가 구성이 되어 AWS의 Provisioner에 API 호출을 해야 할꺼 같습니다. 정확한건 저도 테스트가 필요하고요. 

이미 구현되어 있는 EKS 같은 경우 이미 이 구성이 완료되어 서비스 형태로 embedded 되어 있고요. 

이를 따로 구현하시겠다라는거라서, AWS Provisioner(gp2, gp3등)를 외부에서 구현할 수 있는 부터 확인하시는게 맞을꺼 같네요. 


General Purpose SSD
Provisioned IOPS SSD
볼륨 유형 gp3 gp2 io2Block Express ‡ io2      io1
내구성 99.8%~99.9% 내구성(연간 장애율 0.1%~0.2%) 99.8%~99.9% 내구성(연간 장애율 0.1%~0.2%) 99.999% 내구성(연간 장애율 0.001%) 99.999% 내구성(연간 장애율 0.001%) 99.8%~99.9% 내구성(연간 장애율 0.1%~0.2%)
사용 사례
  • 지연 시간이 짧은 대화형 앱

  • 개발 및 테스트 환경

다음이 필요한 워크로드:

  • 밀리초 미만의 지연 시간

  • 지속적인 IOPS 성능

  • 64,000 IOPS 이상 또는 1,000Mib/s 이상의 처리량

  • 지속적인 IOPS 성능 또는 16,000 IOPS 이상이 필요한 워크로드

  • I/O 집약적 데이터베이스 워크로드

볼륨 크기 1GiB - 16TiB 4GiB~64TiB 4GiB - 16TiB
볼륨당 최대 IOPS(16KiB I/O) 16,000 256,000 64,000 †
볼륨당 최대 처리량 1,000MiB/s 250MiB/s* 4,000MiB/s 1,000MiB/s †
Amazon EBS 다중 연결 지원되지 않음 지원
부트 볼륨 지원

 

관련 내용들 입니다. 

https://kubernetes.io/ko/docs/concepts/storage/storage-classes/

https://kubernetes.io/ko/docs/concepts/storage/storage-classes/#aws-ebs

https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/ebs-volume-types.html

0

3rdwars

감사합니다. 한 번 더 확인하고 진행해 보겠습니다

섹션2. 1.5쿠버네티스_컨트롤플레인_노드와_워커_노드_그리고 kubeadm으로 쿠버네티스 직접 구성하기-v1.30 오류

0

58

2

[해결] 2.4. tabby config.yaml 파일 복사 실패 시

1

115

1

9.3 Error 발생 유도 테스트 확인 부탁드립니다.

0

106

2

livenessProbe 어플리케이션 재시작 의미

0

79

2

K8S 노들에 접근이 안됩니다.

0

182

6

arm virtualBox의 vagrant up 에러

0

122

2

추후 강의계획 질문

0

159

1

MAC 에서 사용할 수 있는 ova 파일은 없나요?

0

223

2

7.8. w3-affinity-leader 적용 에러 문제 질문드립니다.

0

225

5

커리큘럼 순서 문의

0

214

2

apply 실행 후 pod상태가 ContainerCreating 에서 변경이 안됩니다.

0

374

2

livenessProbe에 대한 설명이 조금 부족한거 같네요

0

226

3

controlplane_node.sh 실행 오류 문의

0

253

2

예제폴더의 경로와 영상의 경로가 너무나도 다릅니다

0

224

2

9.6강의 소스 수정 요청 및 에러 문의

0

174

2

8.6 강의 중 sysnet4admin/chk-info 이미지 bash 이슈

0

168

3

드디어 맥에서도 virtualbox가 지원 됩니다.

0

293

2

8.3강의 set-ctx-pod-admin.sh 수정 요청

0

126

3

7.5 강의 tardy-nginx 이미지 문제

0

3316

3

ch1. controlplan_node.sh 실행 시 에러가 뜹니다

0

312

3

Kubenetes 클러스터에 추가적으로 신뢰하는 CA를 넣을 수 있나요?

0

193

1

clusterrolebinding의 --namespace 옵션의 역할

0

172

2

A.0003 파일 vagrant file 수정 (자문자답)

0

172

2

nfs-client-provisioner 관련 생성 오류 질문

0

197

1