[ko] Update outdated files in dev-1.25-ko.1 (M34-M41)
Co-authored-by: Seokho Son <shsongist@gmail.com>pull/36989/head
parent
77b688c8f6
commit
ad34916c0f
|
@ -74,10 +74,7 @@ kubelet에서 관리하는 디스크와 성능 특성이 다른 스토리지,
|
|||
|
||||
### CSI 임시 볼륨 {#csi-ephemeral-volumes}
|
||||
|
||||
{{< feature-state for_k8s_version="v1.16" state="beta" >}}
|
||||
|
||||
이 기능을 사용하려면 `CSIInlineVolume` [기능 게이트](/ko/docs/reference/command-line-tools-reference/feature-gates/)를 활성화해야 한다.
|
||||
쿠버네티스 1.16부터는 기본적으로 활성화되어 있다.
|
||||
{{< feature-state for_k8s_version="v1.25" state="stable" >}}
|
||||
|
||||
{{< note >}}
|
||||
CSI 드라이버 중 일부만 CSI 임시 볼륨을 지원한다.
|
||||
|
|
|
@ -9,7 +9,7 @@ title: 퍼시스턴트 볼륨
|
|||
feature:
|
||||
title: 스토리지 오케스트레이션
|
||||
description: >
|
||||
로컬 스토리지, <a href="https://cloud.google.com/storage/">GCP</a>나 <a href="https://aws.amazon.com/products/storage/">AWS</a>와 같은 퍼블릭 클라우드 공급자 또는 NFS, iSCSI, Gluster, Ceph, Cinder나 Flocker와 같은 네트워크 스토리지 시스템에서 원하는 스토리지 시스템을 자동으로 마운트한다.
|
||||
로컬 스토리지, <a href="https://aws.amazon.com/products/storage/">AWS</a>나 <a href="https://cloud.google.com/storage/">GCP</a>와 같은 퍼블릭 클라우드 공급자 또는 NFS, iSCSI, Ceph, Cinder와 같은 네트워크 스토리지 시스템에서 원하는 스토리지 시스템을 자동으로 마운트한다.
|
||||
content_type: concept
|
||||
weight: 20
|
||||
---
|
||||
|
@ -166,7 +166,7 @@ spec:
|
|||
path: /any/path/it/will/be/replaced
|
||||
containers:
|
||||
- name: pv-recycler
|
||||
image: "k8s.gcr.io/busybox"
|
||||
image: "registry.k8s.io/busybox"
|
||||
command: ["/bin/sh", "-c", "test -e /scrub && rm -rf /scrub/..?* /scrub/.[!.]* /scrub/* && test -z \"$(ls -A /scrub)\" || exit 1"]
|
||||
volumeMounts:
|
||||
- name: vol
|
||||
|
@ -238,10 +238,9 @@ Source:
|
|||
Events: <none>
|
||||
```
|
||||
|
||||
특정 인-트리 볼륨 플러그인에 대해 `CSIMigration` 기능을 활성화하면 `kubernetes.io/pv-controller` 파이널라이저는 제거되고,
|
||||
`external-provisioner.volume.kubernetes.io/finalizer` 파이널라이저가 추가된다.
|
||||
이와 비슷하게, `CSIMigration` 기능을 비활성화하면 `external-provisioner.volume.kubernetes.io/finalizer` 파이널라이저는 제거되고,
|
||||
`kubernetes.io/pv-controller` 파이널라이저가 추가된다.
|
||||
특정 인-트리 볼륨 플러그인에 대해 `CSIMigration{provider}` 기능 플래그가 활성화되어 있을 때,
|
||||
`kubernetes.io/pv-controller` 파이널라이저는
|
||||
`external-provisioner.volume.kubernetes.io/finalizer` 파이널라이저로 대체된다.
|
||||
|
||||
### 퍼시스턴트볼륨 예약
|
||||
|
||||
|
@ -286,7 +285,7 @@ spec:
|
|||
|
||||
### 퍼시스턴트 볼륨 클레임 확장
|
||||
|
||||
{{< feature-state for_k8s_version="v1.11" state="beta" >}}
|
||||
{{< feature-state for_k8s_version="v1.24" state="stable" >}}
|
||||
|
||||
퍼시스턴트볼륨클레임(PVC) 확장 지원은 기본적으로 활성화되어 있다. 다음 유형의
|
||||
볼륨을 확장할 수 있다.
|
||||
|
@ -413,14 +412,9 @@ PVC 확장 실패의 사용자에 의한 복구는 쿠버네티스 1.23부터
|
|||
|
||||
퍼시스턴트볼륨 유형은 플러그인으로 구현된다. 쿠버네티스는 현재 다음의 플러그인을 지원한다.
|
||||
|
||||
* [`awsElasticBlockStore`](/ko/docs/concepts/storage/volumes/#awselasticblockstore) - AWS Elastic Block Store (EBS)
|
||||
* [`azureDisk`](/ko/docs/concepts/storage/volumes/#azuredisk) - Azure Disk
|
||||
* [`azureFile`](/ko/docs/concepts/storage/volumes/#azurefile) - Azure File
|
||||
* [`cephfs`](/ko/docs/concepts/storage/volumes/#cephfs) - CephFS 볼륨
|
||||
* [`csi`](/ko/docs/concepts/storage/volumes/#csi) - 컨테이너 스토리지 인터페이스 (CSI)
|
||||
* [`fc`](/ko/docs/concepts/storage/volumes/#fc) - Fibre Channel (FC) 스토리지
|
||||
* [`gcePersistentDisk`](/ko/docs/concepts/storage/volumes/#gcepersistentdisk) - GCE Persistent Disk
|
||||
* [`glusterfs`](/ko/docs/concepts/storage/volumes/#glusterfs) - Glusterfs 볼륨
|
||||
* [`hostPath`](/ko/docs/concepts/storage/volumes/#hostpath) - HostPath 볼륨
|
||||
(단일 노드 테스트 전용. 다중-노드 클러스터에서 작동하지 않음.
|
||||
대신 `로컬` 볼륨 사용 고려)
|
||||
|
@ -428,29 +422,41 @@ PVC 확장 실패의 사용자에 의한 복구는 쿠버네티스 1.23부터
|
|||
* [`local`](/ko/docs/concepts/storage/volumes/#local) - 노드에 마운트된
|
||||
로컬 스토리지 디바이스
|
||||
* [`nfs`](/ko/docs/concepts/storage/volumes/#nfs) - 네트워크 파일 시스템 (NFS) 스토리지
|
||||
* [`portworxVolume`](/ko/docs/concepts/storage/volumes/#portworxvolume) - Portworx 볼륨
|
||||
* [`rbd`](/ko/docs/concepts/storage/volumes/#rbd) - Rados Block Device (RBD) 볼륨
|
||||
* [`vsphereVolume`](/ko/docs/concepts/storage/volumes/#vspherevolume) - vSphere VMDK 볼륨
|
||||
|
||||
아래의 PersistentVolume 타입은 사용 중단되었다. 이 말인 즉슨, 지원은 여전히 제공되지만 추후 쿠버네티스 릴리스에서는 삭제될 예정이라는 것이다.
|
||||
|
||||
* [`awsElasticBlockStore`](/ko/docs/concepts/storage/volumes/#awselasticblockstore) - AWS Elastic Block Store (EBS)
|
||||
(v1.17에서 **사용 중단**)
|
||||
* [`azureDisk`](/ko/docs/concepts/storage/volumes/#azuredisk) - Azure Disk
|
||||
(v1.19에서 **사용 중단**)
|
||||
* [`azureFile`](/ko/docs/concepts/storage/volumes/#azurefile) - Azure File
|
||||
(v1.21에서 **사용 중단**)
|
||||
* [`cinder`](/ko/docs/concepts/storage/volumes/#cinder) - Cinder (오픈스택 블록 스토리지)
|
||||
(v1.18에서 **사용 중단**)
|
||||
* [`flexVolume`](/ko/docs/concepts/storage/volumes/#flexvolume) - FlexVolume
|
||||
(v1.23에서 **사용 중단**)
|
||||
* [`flocker`](/ko/docs/concepts/storage/volumes/#flocker) - Flocker 스토리지
|
||||
(v1.22에서 **사용 중단**)
|
||||
* [`quobyte`](/ko/docs/concepts/storage/volumes/#quobyte) - Quobyte 볼륨
|
||||
(v1.22에서 **사용 중단**)
|
||||
* [`storageos`](/ko/docs/concepts/storage/volumes/#storageos) - StorageOS 볼륨
|
||||
(v1.22에서 **사용 중단**)
|
||||
* [`gcePersistentDisk`](/ko/docs/concepts/storage/volumes/#gcepersistentdisk) - GCE Persistent Disk
|
||||
(v1.17에서 **사용 중단**)
|
||||
* [`glusterfs`](/ko/docs/concepts/storage/volumes/#glusterfs) - Glusterfs 볼륨
|
||||
(v1.25에서 **사용 중단**)
|
||||
* [`portworxVolume`](/ko/docs/concepts/storage/volumes/#portworxvolume) - Portworx 볼륨
|
||||
(v1.25에서 **사용 중단**)
|
||||
* [`vsphereVolume`](/ko/docs/concepts/storage/volumes/#vspherevolume) - vSphere VMDK 볼륨
|
||||
(v1.19에서 **사용 중단**)
|
||||
|
||||
이전 쿠버네티스 버전은 아래의 인-트리 PersistentVolume 타입도 지원했었다.
|
||||
|
||||
* `photonPersistentDisk` - Photon 컨트롤러 퍼시스턴트 디스크.
|
||||
(v1.15 이후 **사용 불가**)
|
||||
(v1.15부터 **사용 불가**)
|
||||
* [`scaleIO`](/ko/docs/concepts/storage/volumes/#scaleio) - ScaleIO 볼륨
|
||||
(v1.21 이후 **사용 불가**)
|
||||
(v1.21부터 **사용 불가**)
|
||||
* [`flocker`](/ko/docs/concepts/storage/volumes/#flocker) - Flocker 스토리지
|
||||
(v1.25부터 **사용 불가**)
|
||||
* [`quobyte`](/ko/docs/concepts/storage/volumes/#quobyte) - Quobyte 볼륨
|
||||
(v1.25부터 **사용 불가**)
|
||||
* [`storageos`](/ko/docs/concepts/storage/volumes/#storageos) - StorageOS 볼륨
|
||||
(v1.25부터 **사용 불가**)
|
||||
|
||||
## 퍼시스턴트 볼륨
|
||||
|
||||
|
@ -562,17 +568,14 @@ CLI에서 접근 모드는 다음과 같이 약어로 표시된다.
|
|||
| CSI | 드라이버에 의존 | 드라이버에 의존 | 드라이버에 의존 | 드라이버에 의존 |
|
||||
| FC | ✓ | ✓ | - | - |
|
||||
| FlexVolume | ✓ | ✓ | 드라이버에 의존 | - |
|
||||
| Flocker | ✓ | - | - | - |
|
||||
| GCEPersistentDisk | ✓ | ✓ | - | - |
|
||||
| Glusterfs | ✓ | ✓ | ✓ | - |
|
||||
| HostPath | ✓ | - | - | - |
|
||||
| iSCSI | ✓ | ✓ | - | - |
|
||||
| Quobyte | ✓ | ✓ | ✓ | - |
|
||||
| NFS | ✓ | ✓ | ✓ | - |
|
||||
| RBD | ✓ | ✓ | - | - |
|
||||
| VsphereVolume | ✓ | - | - (파드를 배치할(collocated) 때 동작한다) | - |
|
||||
| PortworxVolume | ✓ | - | ✓ | - | - |
|
||||
| StorageOS | ✓ | - | - | - |
|
||||
|
||||
### 클래스
|
||||
|
||||
|
@ -616,9 +619,7 @@ PV는 `storageClassName` 속성을
|
|||
* `glusterfs`
|
||||
* `iscsi`
|
||||
* `nfs`
|
||||
* `quobyte` (v1.22에서 **사용 중단됨**)
|
||||
* `rbd`
|
||||
* `storageos` (v1.22에서 **사용 중단됨**)
|
||||
* `vsphereVolume`
|
||||
|
||||
마운트 옵션의 유효성이 검사되지 않는다. 마운트 옵션이 유효하지 않으면, 마운트가 실패한다.
|
||||
|
@ -718,9 +719,13 @@ PVC는 항상 클래스가 없는 PV를 요청하는 것으로 해석되므로
|
|||
플러그인은 모든 PVC 생성을
|
||||
금지한다.
|
||||
* 어드미션 플러그인이 꺼져 있으면 기본 스토리지클래스에 대한 기본값 자체가 없다.
|
||||
`storageClassName`이 없는 모든 PVC는 클래스가 없는 PV에만 바인딩할 수 있다. 이 경우
|
||||
`storageClassName`이 없는 PVC는 `storageClassName`이 `""`로 설정된 PVC와
|
||||
같은 방식으로 처리된다.
|
||||
`storageClassName`이 `""`으로 설정된 모든 PVC는
|
||||
`storageClassName`이 마찬가지로 `""`로 설정된 PV에만 바인딩할 수 있다.
|
||||
하지만, `storageClassName`이 없는 PVC는
|
||||
기본 스토리지클래스가 사용 가능해지면 갱신될 수 있다. PVC가 갱신되면
|
||||
해당 PVC는 더 이상 `storageClassName`이 `""`로 설정된 PV와 바인딩되어있지 않게 된다.
|
||||
|
||||
더 자세한 정보는 [retroactive default StorageClass assignment](#retroactive-default-storageclass-assignment)를 참조한다.
|
||||
|
||||
설치 방법에 따라 설치 중에 애드온 관리자가 기본 스토리지클래스를 쿠버네티스 클러스터에
|
||||
배포할 수 있다.
|
||||
|
@ -737,6 +742,20 @@ AND 조건으로 동작한다. 요청된 클래스와 요청된 레이블이 있
|
|||
속성 대신 사용되었다. 이 어노테이션은 아직까지는 사용할 수 있지만,
|
||||
향후 쿠버네티스 릴리스에서는 지원되지 않는다.
|
||||
|
||||
|
||||
#### 기본 스토리지클래스 할당 소급 적용하기 {#retroactive-default-storageclass-assignment}
|
||||
|
||||
{{< feature-state for_k8s_version="v1.25" state="alpha" >}}
|
||||
|
||||
새로운 PVC를 위한 `storageClassName`을 설정하지 않고 퍼시스턴트볼륨클레임을 생성할 수 있으며, 이는 클러스터에 기본 스토리지클래스가 존재하지 않을 때에도 가능하다. 이 경우, 새로운 PVC는 정의된 대로 생성되며, 해당 PVC의 `storageClassName`은 기본값이 사용 가능해질 때까지 미설정 상태로 남는다.
|
||||
하지만, [`RetroactiveDefaultStorageClass` 기능 게이트](/ko/docs/reference/command-line-tools-reference/feature-gates/)를 활성화하면 쿠버네티스는 다르게 동작하여, 기존에 존재하는 PVC 중 `storageClassName`가 설정되지 않은 PVC는 새로운 기본 스토리지클래스를 사용하도록 갱신된다.
|
||||
|
||||
기본 스토리지클래스가 사용 가능해지면, 컨트롤플레인은 `storageClassName`가 없는 PVC를 찾는다. `storageClassName`의 값이 비어있거나 해당 키 자체가 없는 PVC라면, 컨트롤플레인은 해당 PVC의 `storageClassName`가 새로운 기본 스토리지클래스와 일치하도록 설정하여 갱신한다. `storageClassName`가 `""`인 PVC가 있고, 기본 스토리지클래스를 설정한다면, 해당 PVC는 갱신되지 않는다.
|
||||
|
||||
기본 스토리지클래스가 존재할 때 `storageClassName`가 `""`로 설정된 PV와의 바인딩을 유지하고싶다면, 연결된 PVC의 `storageClassName`를 `""`로 설정해야 한다.
|
||||
|
||||
이 행동은 관리자가 오래된 기본 스토리지클래스를 삭제하고 새로운 기본 스토리지클래스를 생성하거나 설정하여 기본 스토리지클래스를 변경하는 데 도움이 된다. 기본값이 설정되어있지 않을 때의 이 작은 틈새로 인해 이 때 생성된 `storageClassName`가 없는 PVC는 아무런 기본값도 없이 생성될 수 있지만, 기본 스토리지클래스 할당 소급 적용에 의해 이러한 방식으로 기본값을 변경하는 것은 안전하다.
|
||||
|
||||
## 볼륨으로 클레임하기
|
||||
|
||||
클레임을 볼륨으로 사용해서 파드가 스토리지에 접근한다. 클레임은 클레임을 사용하는 파드와 동일한 네임스페이스에 있어야 한다. 클러스터는 파드의 네임스페이스에서 클레임을 찾고 이를 사용하여 클레임과 관련된 퍼시스턴트볼륨을 얻는다. 그런 다음 볼륨이 호스트와 파드에 마운트된다.
|
||||
|
|
|
@ -70,7 +70,7 @@ weight: 70
|
|||
볼륨을 생성한 후에, 스케줄러는
|
||||
볼륨을 사용할 수 있는 노드에 파드를 스케줄링한다.
|
||||
|
||||
[CSI 임시 볼륨](/ko/docs/concepts/storage/volumes/#csi)의 경우에는
|
||||
[CSI 임시 볼륨](/ko/docs/concepts/storage/ephemeral-volumes/#csi-ephemeral-volumes)의 경우에는
|
||||
볼륨 유형이 로컬 볼륨이고
|
||||
큰 자원이 필요하지 않은 특정 CSI 드라이버에서만 사용된다는 가정하에,
|
||||
항상 스토리지 용량을 고려하지 않고
|
||||
|
|
|
@ -71,17 +71,13 @@ volumeBindingMode: Immediate
|
|||
| Cinder | ✓ | [OpenStack Cinder](#openstack-cinder)|
|
||||
| FC | - | - |
|
||||
| FlexVolume | - | - |
|
||||
| Flocker | ✓ | - |
|
||||
| GCEPersistentDisk | ✓ | [GCE PD](#gce-pd) |
|
||||
| Glusterfs | ✓ | [Glusterfs](#glusterfs) |
|
||||
| iSCSI | - | - |
|
||||
| Quobyte | ✓ | [Quobyte](#quobyte) |
|
||||
| NFS | - | [NFS](#nfs) |
|
||||
| RBD | ✓ | [Ceph RBD](#ceph-rbd) |
|
||||
| VsphereVolume | ✓ | [vSphere](#vsphere) |
|
||||
| PortworxVolume | ✓ | [Portworx 볼륨](#portworx-볼륨) |
|
||||
| ScaleIO | ✓ | [ScaleIO](#scaleio) |
|
||||
| StorageOS | ✓ | [StorageOS](#storageos) |
|
||||
| Local | - | [Local](#local) |
|
||||
|
||||
여기 목록에서 "내부" 프로비저너를 지정할 수 있다(이
|
||||
|
@ -413,7 +409,7 @@ parameters:
|
|||
* Distribute 볼륨: `volumetype: none`
|
||||
|
||||
사용 가능한 볼륨 유형과 관리 옵션에 대해서는
|
||||
[관리 가이드](https://access.redhat.com/documentation/en-US/Red_Hat_Storage/3.1/html/Administration_Guide/part-Overview.html)를 참조한다.
|
||||
[관리 가이드](https://access.redhat.com/documentation/en-us/red_hat_gluster_storage/)를 참조한다.
|
||||
|
||||
자세한 정보는
|
||||
[Heketi 구성 방법](https://github.com/heketi/heketi/wiki/Setting-up-the-topology)을 참조한다.
|
||||
|
@ -473,7 +469,7 @@ vSphere 스토리지 클래스에는 두 가지 유형의 프로비저닝 도구
|
|||
- [CSI 프로비저닝 도구](#vsphere-provisioner-csi): `csi.vsphere.vmware.com`
|
||||
- [vCP 프로비저닝 도구](#vcp-프로비저닝-도구): `kubernetes.io/vsphere-volume`
|
||||
|
||||
인-트리 프로비저닝 도구는 [사용 중단](/blog/2019/12/09/kubernetes-1-17-feature-csi-migration-beta/#why-are-we-migrating-in-tree-plugins-to-csi)되었다. CSI 프로비저닝 도구에 대한 자세한 내용은 [쿠버네티스 vSphere CSI 드라이버](https://vsphere-csi-driver.sigs.k8s.io/) 및 [vSphereVolume CSI 마이그레이션](/ko/docs/concepts/storage/volumes/#csi-마이그레이션)을 참고한다.
|
||||
인-트리 프로비저닝 도구는 [사용 중단](/blog/2019/12/09/kubernetes-1-17-feature-csi-migration-beta/#why-are-we-migrating-in-tree-plugins-to-csi)되었다. CSI 프로비저닝 도구에 대한 자세한 내용은 [쿠버네티스 vSphere CSI 드라이버](https://vsphere-csi-driver.sigs.k8s.io/) 및 [vSphereVolume CSI 마이그레이션](/ko/docs/concepts/storage/volumes/#vsphere-csi-migration)을 참고한다.
|
||||
|
||||
#### CSI 프로비저닝 도구 {#vsphere-provisioner-csi}
|
||||
|
||||
|
@ -544,7 +540,7 @@ vSphere CSI 스토리지클래스 프로비저닝 도구는 Tanzu 쿠버네티
|
|||
스토어에 분산되어 요구 사항을 충족시키게 된다.
|
||||
|
||||
퍼시스턴트 볼륨 관리에 스토리지 정책을 사용하는 방법에 대한 자세한 내용은
|
||||
[볼륨의 동적 프로비저닝을 위한 스토리지 정책 기반 관리(SPBM)](https://vmware.github.io/vsphere-storage-for-kubernetes/documentation/policy-based-mgmt.html)를
|
||||
[볼륨의 동적 프로비저닝을 위한 스토리지 정책 기반 관리(SPBM)](https://github.com/vmware-archive/vsphere-storage-for-kubernetes/blob/fa4c8b8ad46a85b6555d715dd9d27ff69839df53/documentation/policy-based-mgmt.md)를
|
||||
참조한다.
|
||||
|
||||
vSphere용 쿠버네티스 내에서 퍼시스턴트 볼륨 관리를 시도하는
|
||||
|
@ -599,61 +595,6 @@ parameters:
|
|||
경우에만 사용해야 한다. 현재 `layering` 에서만 기능이 지원된다.
|
||||
기본값은 ""이며, 기능이 설정되어 있지 않다.
|
||||
|
||||
### Quobyte
|
||||
|
||||
{{< feature-state for_k8s_version="v1.22" state="deprecated" >}}
|
||||
|
||||
Quobyte 인-트리 스토리지 플러그인은 사용 중단되었으며,
|
||||
아웃-오브-트리 Quobyte 플러그인에 대한 [예제](https://github.com/quobyte/quobyte-csi/blob/master/example/StorageClass.yaml)
|
||||
`StorageClass`는 Quobyte CSI 저장소에서 찾을 수 있다.
|
||||
|
||||
```yaml
|
||||
apiVersion: storage.k8s.io/v1
|
||||
kind: StorageClass
|
||||
metadata:
|
||||
name: slow
|
||||
provisioner: kubernetes.io/quobyte
|
||||
parameters:
|
||||
quobyteAPIServer: "http://138.68.74.142:7860"
|
||||
registry: "138.68.74.142:7861"
|
||||
adminSecretName: "quobyte-admin-secret"
|
||||
adminSecretNamespace: "kube-system"
|
||||
user: "root"
|
||||
group: "root"
|
||||
quobyteConfig: "BASE"
|
||||
quobyteTenant: "DEFAULT"
|
||||
```
|
||||
|
||||
* `quobyteAPIServer`: `"http(s)://api-server:7860"` 형식의
|
||||
Quobyte의 API 서버이다.
|
||||
* `registry`: 볼륨을 마운트하는 데 사용할 Quobyte 레지스트리이다. 레지스트리를
|
||||
``<host>:<port>`` 의 쌍으로 지정하거나 여러 레지스트리를
|
||||
지정하려면 쉼표만 있으면 된다.
|
||||
예: ``<host1>:<port>,<host2>:<port>,<host3>:<port>``
|
||||
호스트는 IP 주소이거나 DNS가 작동 중인 경우
|
||||
DNS 이름을 제공할 수도 있다.
|
||||
* `adminSecretNamespace`: `adminSecretName` 의 네임스페이스.
|
||||
기본값은 "default".
|
||||
* `adminSecretName`: 시크릿은 API 서버에 대해 인증하기 위한 Quobyte 사용자와 암호에
|
||||
대한 정보를 담고 있다. 제공된 시크릿은 "kubernetes.io/quobyte"
|
||||
유형과 `user` 및 `password` 키를 가져야 하며, 예를 들면
|
||||
다음과 같다.
|
||||
|
||||
```shell
|
||||
kubectl create secret generic quobyte-admin-secret \
|
||||
--type="kubernetes.io/quobyte" --from-literal=user='admin' --from-literal=password='opensesame' \
|
||||
--namespace=kube-system
|
||||
```
|
||||
|
||||
* `user`: 이 사용자에 대한 모든 접근을 매핑한다. 기본값은 "root".
|
||||
* `group`: 이 그룹에 대한 모든 접근을 매핑한다. 기본값은 "nfsnobody".
|
||||
* `quobyteConfig`: 지정된 구성을 사용해서 볼륨을 생성한다. 웹 콘솔
|
||||
또는 quobyte CLI를 사용해서 새 구성을 작성하거나 기존 구성을
|
||||
수정할 수 있다. 기본값은 "BASE".
|
||||
* `quobyteTenant`: 지정된 테넌트 ID를 사용해서 볼륨을 생성/삭제한다.
|
||||
이 Quobyte 테넌트는 이미 Quobyte에 있어야 한다.
|
||||
기본값은 "DEFAULT".
|
||||
|
||||
### Azure 디스크
|
||||
|
||||
#### Azure 비관리 디스크 스토리지 클래스 {#azure-unmanaged-disk-storage-class}
|
||||
|
@ -782,96 +723,6 @@ parameters:
|
|||
카산드라와 같은 데이터베이스는 false로 설정해야 한다. `true/false` (기본값 `false`)
|
||||
여기에는 문자열, 즉 `true` 가 아닌, `"true"` 가 필요하다.
|
||||
|
||||
### ScaleIO
|
||||
|
||||
```yaml
|
||||
apiVersion: storage.k8s.io/v1
|
||||
kind: StorageClass
|
||||
metadata:
|
||||
name: slow
|
||||
provisioner: kubernetes.io/scaleio
|
||||
parameters:
|
||||
gateway: https://192.168.99.200:443/api
|
||||
system: scaleio
|
||||
protectionDomain: pd0
|
||||
storagePool: sp1
|
||||
storageMode: ThinProvisioned
|
||||
secretRef: sio-secret
|
||||
readOnly: "false"
|
||||
fsType: xfs
|
||||
```
|
||||
|
||||
* `provisioner`: 속성이 `kubernetes.io/scaleio` 로 설정되어 있다.
|
||||
* `gateway`: ScaleIO API 게이트웨이 주소(필수)
|
||||
* `system`: ScaleIO 시스템의 이름(필수)
|
||||
* `protectionDomain`: ScaleIO 보호 도메인의 이름(필수)
|
||||
* `storagePool`: 볼륨 스토리지 풀의 이름(필수)
|
||||
* `storageMode`: 스토리지 프로비전 모드: `ThinProvisioned` (기본값) 또는
|
||||
`ThickProvisioned`
|
||||
* `secretRef`: 구성된 시크릿 오브젝트에 대한 참조(필수)
|
||||
* `readOnly`: 마운트된 볼륨에 대한 접근 모드의 지정(기본값: false)
|
||||
* `fsType`: 볼륨에 사용할 파일 시스템 유형(기본값: ext4)
|
||||
|
||||
ScaleIO 쿠버네티스 볼륨 플러그인에는 구성된 시크릿 오브젝트가 필요하다.
|
||||
시크릿은 다음 명령에 표시된 것처럼 `kubernetes.io/scaleio` 유형으로
|
||||
작성해야 하며, PVC와 동일한 네임스페이스
|
||||
값을 사용해야 한다.
|
||||
|
||||
```shell
|
||||
kubectl create secret generic sio-secret --type="kubernetes.io/scaleio" \
|
||||
--from-literal=username=sioadmin --from-literal=password=d2NABDNjMA== \
|
||||
--namespace=default
|
||||
```
|
||||
|
||||
### StorageOS
|
||||
|
||||
```yaml
|
||||
apiVersion: storage.k8s.io/v1
|
||||
kind: StorageClass
|
||||
metadata:
|
||||
name: fast
|
||||
provisioner: kubernetes.io/storageos
|
||||
parameters:
|
||||
pool: default
|
||||
description: Kubernetes volume
|
||||
fsType: ext4
|
||||
adminSecretNamespace: default
|
||||
adminSecretName: storageos-secret
|
||||
```
|
||||
|
||||
* `pool`: 볼륨을 프로비전할 StorageOS 분산 용량
|
||||
풀의 이름. 지정되지 않은 경우 일반적으로 존재하는 `default` 풀을 사용한다.
|
||||
* `description`: 동적으로 생성된 볼륨에 할당할 설명.
|
||||
모든 볼륨 설명은 스토리지 클래스에 대해 동일하지만, 서로 다른
|
||||
유스케이스에 대한 설명을 허용하기 위해 다른 스토리지 클래스를 사용할 수 있다.
|
||||
기본값은 `Kubernetes volume`.
|
||||
* `fsType`: 요청할 기본 파일 시스템 유형. StorageOS 내의 사용자
|
||||
정의 규칙이 이 값을 무시할 수 있다. 기본 값은 `ext4`.
|
||||
* `adminSecretNamespace`: API 구성 시크릿이 있는 네임스페이스.
|
||||
adminSecretName 이 설정된 경우 필수이다.
|
||||
* `adminSecretName`: StorageOS API 자격증명을 얻는 데 사용할 시크릿의 이름.
|
||||
지정하지 않으면 기본값이 시도된다.
|
||||
|
||||
StorageOS 쿠버네티스 볼륨 플러그인은 시크릿 오브젝트를 사용해서 StorageOS API에
|
||||
접근하기 위한 엔드포인트와 자격증명을 지정할 수 있다. 이것은 기본값이
|
||||
변경된 경우에만 필요하다.
|
||||
시크릿은 다음의 명령과 같이 `kubernetes.io/storageos` 유형으로
|
||||
만들어야 한다.
|
||||
|
||||
```shell
|
||||
kubectl create secret generic storageos-secret \
|
||||
--type="kubernetes.io/storageos" \
|
||||
--from-literal=apiAddress=tcp://localhost:5705 \
|
||||
--from-literal=apiUsername=storageos \
|
||||
--from-literal=apiPassword=storageos \
|
||||
--namespace=default
|
||||
```
|
||||
|
||||
동적으로 프로비전된 볼륨에 사용되는 시크릿은 모든 네임스페이스에서
|
||||
생성할 수 있으며 `adminSecretNamespace` 파라미터로 참조될 수 있다.
|
||||
사전에 프로비전된 볼륨에서 사용하는 시크릿은 이를 참조하는 PVC와
|
||||
동일한 네임스페이스에서 작성해야 한다.
|
||||
|
||||
### Local
|
||||
|
||||
{{< feature-state for_k8s_version="v1.14" state="stable" >}}
|
||||
|
@ -892,3 +743,4 @@ volumeBindingMode: WaitForFirstConsumer
|
|||
볼륨 바인딩을 지연시키면 스케줄러가 퍼시스턴트볼륨클레임에
|
||||
적절한 퍼시스턴트볼륨을 선택할 때 파드의 모든 스케줄링
|
||||
제약 조건을 고려할 수 있다.
|
||||
|
||||
|
|
|
@ -32,8 +32,8 @@ weight: 60
|
|||
* 복제 지원은 동적 프로비저너만 사용할 수 있다.
|
||||
* CSI 드라이버는 볼륨 복제 기능을 구현했거나 구현하지 않았을 수 있다.
|
||||
* PVC는 대상 PVC와 동일한 네임스페이스에 있는 경우에만 복제할 수 있다(소스와 대상은 동일한 네임스페이스에 있어야 함).
|
||||
* 복제는 동일한 스토리지 클래스 내에서만 지원된다.
|
||||
- 대상 볼륨은 소스와 동일한 스토리지 클래스여야 한다.
|
||||
* 복제는 서로 다른 스토리지 클래스에 대해서도 지원된다.
|
||||
- 대상 볼륨은 소스와 동일하거나 다른 스토리지 클래스여도 된다.
|
||||
- 기본 스토리지 클래스를 사용할 수 있으며, 사양에 storageClassName을 생략할 수 있다.
|
||||
* 동일한 VolumeMode 설정을 사용하는 두 볼륨에만 복제를 수행할 수 있다(블록 모드 볼륨을 요청하는 경우에는 반드시 소스도 블록 모드여야 한다).
|
||||
|
||||
|
|
|
@ -155,6 +155,8 @@ spec:
|
|||
소스 볼륨 모드가 명시되어 있지 않으면,
|
||||
쿠버네티스는 해당 스냅샷의 소스 볼륨 모드를 알려지지 않은 상태(unknown)로 간주하여 스냅샷을 처리한다.
|
||||
|
||||
`volumeSnapshotRef`은 상응하는 `VolumeSnapshot`의 참조이다. `VolumeSnapshotContent`이 이전에 프로비전된 스냅샷으로 생성된 경우, `volumeSnapshotRef`에서 참조하는 `VolumeSnapshot`은 아직 존재하지 않을 수도 있음에 주의한다.
|
||||
|
||||
## 스냅샷의 볼륨 모드 변환하기 {#convert-volume-mode}
|
||||
|
||||
클러스터에 설치된 `VolumeSnapshots` API가 `sourceVolumeMode` 필드를 지원한다면,
|
||||
|
|
|
@ -104,7 +104,7 @@ metadata:
|
|||
name: test-ebs
|
||||
spec:
|
||||
containers:
|
||||
- image: k8s.gcr.io/test-webserver
|
||||
- image: registry.k8s.io/test-webserver
|
||||
name: test-container
|
||||
volumeMounts:
|
||||
- mountPath: /test-ebs
|
||||
|
@ -121,14 +121,13 @@ EBS 볼륨이 파티션된 경우, 선택적 필드인 `partition: "<partition n
|
|||
|
||||
#### AWS EBS CSI 마이그레이션
|
||||
|
||||
{{< feature-state for_k8s_version="v1.17" state="beta" >}}
|
||||
{{< feature-state for_k8s_version="v1.25" state="stable" >}}
|
||||
|
||||
`awsElasticBlockStore` 의 `CSIMigration` 기능이 활성화된 경우, 기존 인-트리 플러그인의
|
||||
모든 플러그인 작업을 `ebs.csi.aws.com` 컨테이너 스토리지 인터페이스(CSI)
|
||||
드라이버로 리디렉션한다. 이 기능을 사용하려면, 클러스터에 [AWS EBS CSI
|
||||
드라이버](https://github.com/kubernetes-sigs/aws-ebs-csi-driver)를
|
||||
설치하고 `CSIMigration` 과 `CSIMigrationAWS`
|
||||
베타 기능을 활성화해야 한다.
|
||||
설치해야 한다.
|
||||
|
||||
#### AWS EBS CSI 마이그레이션 완료
|
||||
|
||||
|
@ -152,8 +151,8 @@ EBS 볼륨이 파티션된 경우, 선택적 필드인 `partition: "<partition n
|
|||
`azureDisk` 의 `CSIMigration` 기능이 활성화된 경우,
|
||||
기존 인-트리 플러그인의 모든 플러그인 작업을
|
||||
`disk.csi.azure.com` 컨테이너 스토리지 인터페이스(CSI) 드라이버로 리다이렉트한다.
|
||||
이 기능을 사용하려면, 클러스터에 [Azure 디스크 CSI 드라이버](https://github.com/kubernetes-sigs/azuredisk-csi-driver) 를 설치하고
|
||||
`CSIMigration` 기능을 활성화해야 한다.
|
||||
이 기능을 사용하려면, 클러스터에 [Azure 디스크 CSI 드라이버](https://github.com/kubernetes-sigs/azuredisk-csi-driver) 를
|
||||
설치해야 한다.
|
||||
|
||||
#### azureDisk CSI 마이그레이션 완료
|
||||
|
||||
|
@ -179,7 +178,7 @@ EBS 볼륨이 파티션된 경우, 선택적 필드인 `partition: "<partition n
|
|||
`file.csi.azure.com` 컨테이너 스토리지 인터페이스(CSI)
|
||||
드라이버로 모든 플러그인 작업을 수행한다. 이 기능을 사용하려면, 클러스터에 [Azure 파일 CSI
|
||||
드라이버](https://github.com/kubernetes-sigs/azurefile-csi-driver)
|
||||
를 설치하고 `CSIMigration` 과 `CSIMigrationAzureFile`
|
||||
를 설치하고 `CSIMigrationAzureFile`
|
||||
[기능 게이트](/ko/docs/reference/command-line-tools-reference/feature-gates/)를 활성화해야 한다.
|
||||
|
||||
Azure File CSI 드라이버는 동일한 볼륨을 다른 fsgroup에서 사용하는 것을 지원하지 않는다.
|
||||
|
@ -226,7 +225,7 @@ metadata:
|
|||
name: test-cinder
|
||||
spec:
|
||||
containers:
|
||||
- image: k8s.gcr.io/test-webserver
|
||||
- image: registry.k8s.io/test-webserver
|
||||
name: test-cinder-container
|
||||
volumeMounts:
|
||||
- mountPath: /test-cinder
|
||||
|
@ -358,7 +357,7 @@ metadata:
|
|||
name: test-pd
|
||||
spec:
|
||||
containers:
|
||||
- image: k8s.gcr.io/test-webserver
|
||||
- image: registry.k8s.io/test-webserver
|
||||
name: test-container
|
||||
volumeMounts:
|
||||
- mountPath: /cache
|
||||
|
@ -382,24 +381,6 @@ targetWWN은 해당 WWN이 다중 경로 연결에서 온 것으로 예상한다
|
|||
|
||||
더 자세한 내용은 [파이버 채널 예시](https://github.com/kubernetes/examples/tree/master/staging/volumes/fibre_channel)를 참고한다.
|
||||
|
||||
### flocker (사용 중단됨(deprecated)){#flocker}
|
||||
|
||||
[Flocker](https://github.com/ClusterHQ/flocker)는 오픈소스이고, 클러스터
|
||||
컨테이너 데이터 볼륨 매니저이다. Flocker는 다양한
|
||||
스토리지 백엔드가 지원하는 데이터 볼륨 관리와 오케스트레이션을 제공한다.
|
||||
|
||||
`flocker` 볼륨은 Flocker 데이터셋을 파드에 마운트할 수 있게 한다. 만약
|
||||
Flocker내에 데이터셋이 없는 경우, 먼저 Flocker
|
||||
CLI 또는 Flocker API를 사용해서 생성해야 한다. 만약 데이터셋이 이미 있다면
|
||||
Flocker는 파드가 스케줄 되어 있는 노드에 다시 연결한다. 이는 필요에
|
||||
따라 파드 간에 데이터를 공유할 수 있다는 의미이다.
|
||||
|
||||
{{< note >}}
|
||||
`flocker` 볼륨을 사용하기 위해서는 먼저 Flocker를 설치하고 실행한다.
|
||||
{{< /note >}}
|
||||
|
||||
더 자세한 내용은 [Flocker 예시](https://github.com/kubernetes/examples/tree/master/staging/volumes/flocker)를 참조한다.
|
||||
|
||||
### gcePersistentDisk (사용 중단됨) {#gcepersistentdisk}
|
||||
|
||||
{{< feature-state for_k8s_version="v1.17" state="deprecated" >}}
|
||||
|
@ -446,7 +427,7 @@ metadata:
|
|||
name: test-pd
|
||||
spec:
|
||||
containers:
|
||||
- image: k8s.gcr.io/test-webserver
|
||||
- image: registry.k8s.io/test-webserver
|
||||
name: test-container
|
||||
volumeMounts:
|
||||
- mountPath: /test-pd
|
||||
|
@ -507,14 +488,13 @@ spec:
|
|||
|
||||
#### GCE CSI 마이그레이션
|
||||
|
||||
{{< feature-state for_k8s_version="v1.17" state="beta" >}}
|
||||
{{< feature-state for_k8s_version="v1.25" state="stable" >}}
|
||||
|
||||
GCE PD의 `CSIMigration` 기능이 활성화된 경우 기존 인-트리 플러그인에서
|
||||
`pd.csi.storage.gke.io` 컨테이너 스토리지 인터페이스(CSI)
|
||||
드라이버로 모든 플러그인 작업을 리디렉션한다. 이 기능을 사용하려면, 클러스터에 [GCE PD CSI
|
||||
드라이버](https://github.com/kubernetes-sigs/gcp-compute-persistent-disk-csi-driver)
|
||||
를 설치하고 `CSIMigration` 과 `CSIMigrationGCE`
|
||||
베타 기능을 활성화해야 한다.
|
||||
를 설치해야 한다.
|
||||
|
||||
#### GCE CSI 마이그레이션 완료
|
||||
|
||||
|
@ -554,7 +534,9 @@ spec:
|
|||
revision: "22f1d8406d464b0c0874075539c1f2e96c253775"
|
||||
```
|
||||
|
||||
### glusterfs
|
||||
### glusterfs (사용 중단됨)
|
||||
|
||||
{{< feature-state for_k8s_version="v1.25" state="deprecated" >}}
|
||||
|
||||
`glusterfs` 볼륨을 사용하면 [Glusterfs](https://www.gluster.org) (오픈
|
||||
소스 네트워크 파일시스템) 볼륨을 파드에 마운트할 수 있다. 파드를
|
||||
|
@ -629,7 +611,7 @@ metadata:
|
|||
name: test-pd
|
||||
spec:
|
||||
containers:
|
||||
- image: k8s.gcr.io/test-webserver
|
||||
- image: registry.k8s.io/test-webserver
|
||||
name: test-container
|
||||
volumeMounts:
|
||||
- mountPath: /test-pd
|
||||
|
@ -660,7 +642,7 @@ metadata:
|
|||
spec:
|
||||
containers:
|
||||
- name: test-webserver
|
||||
image: k8s.gcr.io/test-webserver:latest
|
||||
image: registry.k8s.io/test-webserver:latest
|
||||
volumeMounts:
|
||||
- mountPath: /var/local/aaa
|
||||
name: mydir
|
||||
|
@ -796,7 +778,9 @@ iSCSI 볼륨와 같은)를 "클레임" 할 수 있는 방법이다.
|
|||
더 자세한 내용은 [퍼시스턴트볼륨 예시](/ko/docs/concepts/storage/persistent-volumes)를
|
||||
본다.
|
||||
|
||||
### portworxVolume {#portworxvolume}
|
||||
### portworxVolume (사용 중단됨) {#portworxvolume}
|
||||
|
||||
{{< feature-state for_k8s_version="v1.25" state="deprecated" >}}
|
||||
|
||||
`portworxVolume` 은 쿠버네티스와 하이퍼컨버지드(hyperconverged)를 실행하는 탄력적인 블록 스토리지
|
||||
계층이다. [Portworx](https://portworx.com/use-case/kubernetes-storage/)는 서버의
|
||||
|
@ -814,7 +798,7 @@ metadata:
|
|||
name: test-portworx-volume-pod
|
||||
spec:
|
||||
containers:
|
||||
- image: k8s.gcr.io/test-webserver
|
||||
- image: registry.k8s.io/test-webserver
|
||||
name: test-container
|
||||
volumeMounts:
|
||||
- mountPath: /mnt
|
||||
|
@ -834,25 +818,22 @@ spec:
|
|||
|
||||
자세한 내용은 [Portworx 볼륨](https://github.com/kubernetes/examples/tree/master/staging/volumes/portworx/README.md) 예제를 참고한다.
|
||||
|
||||
#### Portworx CSI 마이그레이션
|
||||
{{< feature-state for_k8s_version="v1.25" state="beta" >}}
|
||||
|
||||
Portworx를 위한 `CSIMigration` 기능이 쿠버네티스 1.23에 추가되었지만 알파 상태이기 때문에 기본적으로는 비활성화되어 있었다.
|
||||
v1.25 이후 이 기능은 베타 상태가 되었지만 여전히 기본적으로는 비활성화되어 있다.
|
||||
이 기능은 사용 중인 트리 내(in-tree) 플러그인의 모든 동작을
|
||||
`pxd.portworx.com` CSI 드라이버로 리다이렉트한다.
|
||||
이 기능을 사용하려면, 클러스터에 [Portworx CSI 드라이버](https://docs.portworx.com/portworx-install-with-kubernetes/storage-operations/csi/)가
|
||||
설치되어 있어야 한다.
|
||||
이 기능을 활성화시키기 위해서는 kube-controller-manager와 kubelet에 `CSIMigrationPortworx=true`를 설정해야 한다.
|
||||
|
||||
### projected
|
||||
|
||||
`Projected` 볼륨은 여러 기존 볼륨 소스를 동일한 디렉터리에 매핑한다.
|
||||
더 자세한 사항은 [projected volumes](/ko/docs/concepts/storage/projected-volumes/)를 참고한다.
|
||||
|
||||
### quobyte (사용 중단됨) {#quobyte}
|
||||
|
||||
`quobyte` 볼륨을 사용하면 기존 [Quobyte](https://www.quobyte.com) 볼륨을
|
||||
파드에 마운트할 수 있다.
|
||||
|
||||
{{< note >}}
|
||||
사용하기 위해선 먼저 Quobyte를 설정하고 생성한 볼륨과
|
||||
함께 실행해야 한다.
|
||||
{{< /note >}}
|
||||
|
||||
Quobyte는 {{< glossary_tooltip text="컨테이너 스토리지 인터페이스" term_id="csi" >}}를 지원한다.
|
||||
CSI 는 쿠버네티스 내에서 Quobyte 볼륨을 사용하기 위해 권장하는 플러그인이다. Quobyte의
|
||||
깃헙 프로젝트에는 예시와 함께 CSI를 사용해서 Quobyte를 배포하기 위한 [사용 설명서](https://github.com/quobyte/quobyte-csi#quobyte-csi)가 있다.
|
||||
|
||||
### rbd
|
||||
|
||||
`rbd` 볼륨을 사용하면
|
||||
|
@ -885,8 +866,9 @@ RBD는 읽기-쓰기 모드에서 단일 고객만 마운트할 수 있다.
|
|||
드라이버로 리다이렉트한다.
|
||||
이 기능을 사용하려면, 클러스터에
|
||||
[Ceph CSI 드라이버](https://github.com/ceph/ceph-csi)가 설치되어 있고
|
||||
`CSIMigration`, `csiMigrationRBD`
|
||||
[기능 게이트](/ko/docs/reference/command-line-tools-reference/feature-gates/)가 활성화되어 있어야 한다.
|
||||
`csiMigrationRBD` [기능 게이트](/ko/docs/reference/command-line-tools-reference/feature-gates/)가
|
||||
활성화되어 있어야 한다. (v1.24 릴리즈에서 `csiMigrationRBD` 플래그는 삭제되었으며
|
||||
`CSIMigrationRBD`로 대체되었음에 주의한다.)
|
||||
|
||||
{{< note >}}
|
||||
|
||||
|
@ -926,61 +908,6 @@ tmpfs(RAM 기반 파일시스템)로 지원되기 때문에 비 휘발성 스토
|
|||
|
||||
더 자세한 내용은 [시크릿 구성하기](/ko/docs/concepts/configuration/secret/)를 참고한다.
|
||||
|
||||
### storageOS (사용 중단됨) {#storageos}
|
||||
|
||||
`storageos` 볼륨을 사용하면 기존 [StorageOS](https://www.storageos.com)
|
||||
볼륨을 파드에 마운트할 수 있다.
|
||||
|
||||
StorageOS 는 쿠버네티스 환경에서 컨테이너로 실행되므로
|
||||
쿠버네티스 클러스터의 모든 노드의 로컬 또는 연결된 스토리지에 접근할 수 있다.
|
||||
노드 장애로부터 보호하기 위해 데이터를 복제할 수 있다. 씬(Thin) 프로비저닝과
|
||||
압축은 활용률을 높이고 비용을 절감할 수 있게 한다.
|
||||
|
||||
StorageOS의 핵심은 컨테이너에 파일시스템을 통해 접근할 수 있는 블록 스토리지를 제공하는 것이다.
|
||||
|
||||
StorageOS 컨테이너는 64 비트 리눅스가 필요하고 추가적인 종속성이 없다.
|
||||
무료 개발자 라이선스를 사용할 수 있다.
|
||||
|
||||
{{< caution >}}
|
||||
StorageOS 볼륨에 접근하거나 스토리지 용량을
|
||||
풀에 제공할 StorageOS 컨테이너를 실행해야 한다.
|
||||
설치 설명서는
|
||||
[StorageOS 문서](https://docs.storageos.com)를 찾아본다.
|
||||
{{< /caution >}}
|
||||
|
||||
다음의 예시는 StorageOS를 사용한 파드 구성이다.
|
||||
|
||||
```yaml
|
||||
apiVersion: v1
|
||||
kind: Pod
|
||||
metadata:
|
||||
labels:
|
||||
name: redis
|
||||
role: master
|
||||
name: test-storageos-redis
|
||||
spec:
|
||||
containers:
|
||||
- name: master
|
||||
image: kubernetes/redis:v1
|
||||
env:
|
||||
- name: MASTER
|
||||
value: "true"
|
||||
ports:
|
||||
- containerPort: 6379
|
||||
volumeMounts:
|
||||
- mountPath: /redis-master-data
|
||||
name: redis-data
|
||||
volumes:
|
||||
- name: redis-data
|
||||
storageos:
|
||||
# `redis-vol01` 볼륨은 StorageOS에 `default` 네임스페이스로 있어야 한다.
|
||||
volumeName: redis-vol01
|
||||
fsType: ext4
|
||||
```
|
||||
|
||||
StorageOS, 동적 프로비저닝과 퍼시스턴트 볼륨 클래임에 대한 더 자세한 정보는
|
||||
[StorageOS 예제](https://github.com/kubernetes/examples/blob/master/volumes/storageos)를 참고한다.
|
||||
|
||||
### vsphereVolume (사용 중단됨) {#vspherevolume}
|
||||
|
||||
{{< note >}}
|
||||
|
@ -996,20 +923,22 @@ StorageOS, 동적 프로비저닝과 퍼시스턴트 볼륨 클래임에 대한
|
|||
|
||||
{{< feature-state for_k8s_version="v1.19" state="beta" >}}
|
||||
|
||||
`vsphereVolume` 용 `CSIMigration` 기능이 활성화되면, 기존 인-트리 플러그인에서
|
||||
`csi.vsphere.vmware.com` {{< glossary_tooltip text="CSI" term_id="csi" >}} 드라이버로 모든 플러그인 작업을 리디렉션한다. 이 기능을 사용하려면,
|
||||
`vsphereVolume` 용 `CSIMigrationvSphere` 기능은 쿠버네티스 v1.25부터 기본적으로 활성화되어 있다.
|
||||
인-트리 `vspherevolume`의 모든 플러그인 작업은 `CSIMigrationvSphere` 기능 게이트가 비활성화된 경우를 제외하고 `csi.vsphere.vmware.com` {{< glossary_tooltip text="CSI" term_id="csi" >}}로 리다이렉트된다.
|
||||
|
||||
|
||||
[vSphere CSI 드라이버](https://github.com/kubernetes-sigs/vsphere-csi-driver)가
|
||||
클러스터에 설치되어야 하며 `CSIMigration` 및 `CSIMigrationvSphere`
|
||||
[기능 게이트](/ko/docs/reference/command-line-tools-reference/feature-gates/)가 활성화되어 있어야 한다.
|
||||
마이그레이션에 대한 추가 조언은 VMware의 문서 페이지
|
||||
클러스터에 설치되어 있어야 한다. 인-트리 `vsphereVolume` 마이그레이션에 대한 추가 조언은 VMware의 문서 페이지
|
||||
[인-트리 vSphere 볼륨을 vSphere 컨테이너 스토리지 플러그인으로 마이그레이션하기](https://docs.vmware.com/en/VMware-vSphere-Container-Storage-Plug-in/2.0/vmware-vsphere-csp-getting-started/GUID-968D421F-D464-4E22-8127-6CB9FF54423F.html)를 참고한다.
|
||||
|
||||
쿠버네티스 v{{< skew currentVersion >}} 버전에서 외부(out-of-tree) CSI 드라이버로 마이그레이션하려면
|
||||
vSphere 7.0u2 이상을 사용하고 있어야 한다.
|
||||
쿠버네티스 v1.25 현재, 7.0u2 이하의 vSphere는
|
||||
(사용 중단된) 인-트리 vSphere 스토리지 드라이버가 지원되지 않는다.
|
||||
사용 중단된 드라이버를 계속 사용하거나, 교체된 CSI 드라이버로
|
||||
마이그레이션하기 위해서는 vSphere 7.0u2 이상을 사용해야 한다.
|
||||
|
||||
v{{< skew currentVersion >}} 외의 쿠버네티스 버전을 사용 중인 경우,
|
||||
해당 쿠버네티스 버전의 문서를 참고한다.
|
||||
쿠버네티스 v{{< skew currentVersion >}} 버전과 vSphere 이전 버전을 사용 중이라면,
|
||||
vSphere 버전을 7.0u2 이상으로 업그레이드하는 것을 추천한다.
|
||||
|
||||
|
||||
{{< note >}}
|
||||
빌트인 `vsphereVolume` 플러그인의 다음 스토리지클래스 파라미터는 vSphere CSI 드라이버에서 지원되지 않는다.
|
||||
|
@ -1032,16 +961,6 @@ vSphere CSI 드라이버에서 생성된 새 볼륨은 이러한 파라미터를
|
|||
|
||||
`vsphereVolume` 플러그인이 컨트롤러 관리자와 kubelet에 의해 로드되지 않도록 기능을 비활성화하려면, `InTreePluginvSphereUnregister` 기능 플래그를 `true` 로 설정해야 한다. 이를 위해서는 모든 워커 노드에 `csi.vsphere.vmware.com` {{< glossary_tooltip text="CSI" term_id="csi" >}} 드라이버를 설치해야 한다.
|
||||
|
||||
#### Portworx CSI 마이그레이션
|
||||
{{< feature-state for_k8s_version="v1.23" state="alpha" >}}
|
||||
|
||||
Portworx를 위한 `CSIMigration` 기능이 쿠버네티스 1.23에 추가되었지만
|
||||
알파 상태이기 때문에 기본적으로는 비활성화되어 있다.
|
||||
이 기능은 사용 중이 트리 내(in-tree) 플러그인의 모든 플러그인 동작을
|
||||
`pxd.portworx.com` CSI 드라이버로 리다이렉트한다.
|
||||
이 기능을 사용하려면, 클러스터에 [Portworx CSI 드라이버](https://docs.portworx.com/portworx-install-with-kubernetes/storage-operations/csi/)가
|
||||
설치되어 있고, kube-controller-manager와 kubelet에 `CSIMigrationPortworx=true`로 설정해야 한다.
|
||||
|
||||
## subPath 사용하기 {#using-subpath}
|
||||
|
||||
때로는 단일 파드에서 여러 용도의 한 볼륨을 공유하는 것이 유용하다.
|
||||
|
@ -1179,8 +1098,7 @@ CSI 호환 볼륨 드라이버가 쿠버네티스 클러스터에 배포되면
|
|||
|
||||
* [퍼시스턴트볼륨클레임](#persistentvolumeclaim)에 대한 참조를 통해서
|
||||
* [일반 임시 볼륨](/ko/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes)과 함께
|
||||
* 드라이버가 지원하는 경우
|
||||
[CSI 임시 볼륨](/ko/docs/concepts/storage/ephemeral-volumes/#csi-ephemeral-volumes)과 함께 (베타 기능)
|
||||
* 드라이버가 지원하는 경우 [CSI 임시 볼륨](/ko/docs/concepts/storage/ephemeral-volumes/#csi-ephemeral-volumes)과 함께
|
||||
|
||||
스토리지 관리자가 다음 필드를 사용해서 CSI 퍼시스턴트 볼륨을
|
||||
구성할 수 있다.
|
||||
|
@ -1218,16 +1136,28 @@ CSI 호환 볼륨 드라이버가 쿠버네티스 클러스터에 배포되면
|
|||
민감한 정보가 포함된 시크릿 오브젝트에 대한 참조이다. 이 필드는
|
||||
선택 사항이며, 시크릿이 필요하지 않은 경우 비어있을 수 있다. 만약 시크릿에
|
||||
둘 이상의 시크릿이 포함된 경우에도 모든 시크릿이 전달된다.
|
||||
`nodeExpandSecretRef`: CSI `NodeExpandVolume` 호출을 완료하기 위해
|
||||
CSI 드라이버에 전달하려는 민감한 정보를 포함하고 있는 시크릿에 대한
|
||||
참조이다. 이 필드는 선택 사항이며, 시크릿이 필요하지 않은 경우
|
||||
비어있을 수 있다. 오브젝트에 둘 이상의 시크릿이 포함된 경우에도, 모든
|
||||
시크릿이 전달된다. 노드에 의해 시작된 볼륨 확장을 위한
|
||||
시크릿 정보를 설정하면, kubelet은 `NodeExpandVolume()` 호출을 통해 CSI 드라이버에
|
||||
해당 데이터를 전달한다. `nodeExpandSecretRef` 필드를 사용하기 위해,
|
||||
클러스터는 쿠버네티스 버전 1.25 이상을 실행 중이어야 하며
|
||||
모든 노드의 모든 kube-apiserver와 kubelet을 대상으로 `CSINodeExpandSecret`
|
||||
[기능 게이트](/ko/docs/reference/command-line-tools-reference/feature-gates/)를
|
||||
활성화해야 한다. 또한 노드에 의해 시작된 스토리지 크기 조정 작업 시 시크릿 정보를 지원하거나 필요로 하는
|
||||
CSI 드라이버를 사용해야 한다.
|
||||
* `nodePublishSecretRef`: CSI의 `NodePublishVolume` 호출을 완료하기 위해
|
||||
CSI 드라이버에 전달하려는 민감한 정보가 포함 된 시크릿
|
||||
오브젝트에 대한 참조이다. 이 필드는 선택 사항이며, 시크릿이 필요하지 않은
|
||||
경우 비어있을 수 있다. 만약 시크릿 오브젝트에 둘 이상의 시크릿이 포함된 경우에도
|
||||
모든 시크릿이 전달된다.
|
||||
* `nodeStageSecretRef`: CSI의 `NodeStageVolume` 호출을 완료하기위해
|
||||
CSI 드라이버에 전달하려는 민감한 정보가 포함 된 시크릿
|
||||
오브젝트에 대한 참조이다. 이 필드는 선택 사항이며, 시크릿이 필요하지 않은
|
||||
경우 비어있을 수 있다. 만약 시크릿에 둘 이상의 시크릿이 포함된 경우에도
|
||||
모든 시크릿이 전달된다.
|
||||
* `nodePublishSecretRef`: CSI의 `NodePublishVolume` 호출을 완료하기위해
|
||||
CSI 드라이버에 전달하려는 민감한 정보가 포함 된 시크릿
|
||||
오브젝트에 대한 참조이다. 이 필드는 선택 사항이며, 시크릿이 필요하지 않은
|
||||
경우 비어있을 수 있다. 만약 시크릿 오브젝트에 둘 이상의 시크릿이 포함된 경우에도
|
||||
모든 시크릿이 전달된다.
|
||||
|
||||
#### CSI 원시(raw) 블록 볼륨 지원
|
||||
|
||||
|
@ -1241,7 +1171,7 @@ CSI 설정 변경 없이 평소와 같이
|
|||
|
||||
#### CSI 임시(ephemeral) 볼륨
|
||||
|
||||
{{< feature-state for_k8s_version="v1.16" state="beta" >}}
|
||||
{{< feature-state for_k8s_version="v1.25" state="stable" >}}
|
||||
|
||||
파드 명세 내에서 CSI 볼륨을 직접 구성할 수 있다.
|
||||
이 방식으로 지정된 볼륨은 임시 볼륨이며
|
||||
|
@ -1268,9 +1198,9 @@ CSI 노드 플러그인은 권한 있는 컨테이너로 배포된다. 윈도우
|
|||
|
||||
#### 인-트리 플러그인으로부터 CSI 드라이버로 마이그레이션하기
|
||||
|
||||
{{< feature-state for_k8s_version="v1.17" state="beta" >}}
|
||||
{{< feature-state for_k8s_version="v1.25" state="stable" >}}
|
||||
|
||||
`CSIMigration` 기능이 활성화 되면 기존의 인-트리 플러그인에
|
||||
`CSIMigration` 기능은 기존의 인-트리 플러그인에
|
||||
대한 작업을 해당 CSI 플러그인(설치와 구성이 될 것으로 예상한)으로 유도한다.
|
||||
결과적으로, 운영자는 인-트리 플러그인을 대체하는
|
||||
CSI 드라이버로 전환할 때 기존 스토리지 클래스, 퍼시스턴트볼륨 또는 퍼시스턴트볼륨클레임(인-트리 플러그인 참조)에
|
||||
|
@ -1290,7 +1220,7 @@ CSI 드라이버로 전환할 때 기존 스토리지 클래스, 퍼시스턴트
|
|||
* [`gcePersistentDisk`](#gcepersistentdisk)
|
||||
* [`vsphereVolume`](#vspherevolume)
|
||||
|
||||
### flexVolume
|
||||
### flexVolume (사용 중단됨) {#flexvolume-deprecated}
|
||||
|
||||
{{< feature-state for_k8s_version="v1.23" state="deprecated" >}}
|
||||
|
||||
|
|
|
@ -56,7 +56,7 @@ content_type: concept
|
|||
[플러그인](/ko/docs/concepts/storage/volumes/#volume-types) 형태로 제공된다.
|
||||
윈도우는 다음의 광역 쿠버네티스 볼륨 플러그인 클래스를 지원한다.
|
||||
|
||||
* [`FlexVolume 플러그인`](/ko/docs/concepts/storage/volumes/#flexVolume)
|
||||
* [`FlexVolume 플러그인`](/ko/docs/concepts/storage/volumes/#flexvolume-deprecated)
|
||||
* FlexVolumes은 1.23부터 사용 중단되었음에 유의한다.
|
||||
* [`CSI 플러그인`](/ko/docs/concepts/storage/volumes/#csi)
|
||||
|
||||
|
|
Loading…
Reference in New Issue