Configuración de File Storage for Classic
IBM Cloud File Storage for Classic es un File Storage for Classic persistente, rápido, flexible, conectado a red y basado en NFS que puede añadir a sus apps mediante volúmenes persistentes (PV) de Kubernetes. Puede elegir los niveles de almacenamiento predefinidos con tamaños de GB e IOPS que cumplan los requisitos de sus cargas de trabajo. Para averiguar si IBM Cloud File Storage for Classic es la opción de almacenamiento correcta para usted, consulte Elección de una solución de almacenamiento. Para obtener información sobre precios, consulte Fijación de precios.
Infraestructura clásica
Inicio rápido para File Storage for Classic
En esta guía de inicio rápido, se crea un volumen de 24Gi de resistencia File Storage for Classic en el clúster mediante la creación de un PVC para aprovisionar dinámicamente el volumen. A continuación, se crea un despliegue de app que monta la PVC.
¿Es la primera vez que utiliza File Storage for Classic en el clúster? Vuelva aquí cuando esté familiarizado con las configuraciones de File Storage for Classic.
-
Cree un archivo para la PVC y llámelo
pvc.yaml
.apiVersion: v1 kind: PersistentVolumeClaim metadata: name: silver-pvc labels: billingType: hourly region: # Example: us-south zone: # Example: dal13 spec: accessModes: - ReadWriteMany resources: requests: storage: 24Gi storageClassName: ibmc-file-silver
-
Cree la PVC en el clúster.
oc apply -f pvc.yaml
-
Cuando la PVC
silver-pvc
esté enlazada, cree un despliegue de app que utilice la PVC. Cree un archivo para el despliegue y llámelodeployment.yaml
.apiVersion: apps/v1 kind: Deployment metadata: name: my-deployment labels: app: spec: selector: matchLabels: app: my-app template: metadata: labels: app: my-app spec: containers: - image: # Your contanerized app image. name: my-container volumeMounts: - name: my-volume mountPath: /mount-path volumes: - name: my-volume persistentVolumeClaim: claimName: silver-pvc
-
Cree el despliegue en el clúster.
oc apply -f deployment.yaml
Para obtener más información, consulte los siguientes enlaces.
Cómo decidir la configuración de File Storage for Classic
IBM Cloud® Kubernetes Service proporciona clases de almacenamiento predefinidas para el File Storage for Classic que puede utilizar para suministrar File Storage for Classic con una configuración específica.
Cada clase de almacenamiento especifica el tipo de File Storage for Classic que suministra, incluidos tamaño disponible, IOPS, sistema de archivos y política de retención.
Después de suministrar un tipo específico de almacenamiento utilizando una clase de almacenamiento, no puede cambiar el tipo ni la política de retención del dispositivo de almacenamiento. No obstante, puede cambiar el tamaño y las IOPS si desea aumentar el rendimiento y la capacidad de almacenamiento. Para cambiar el tipo y la política de retención de su almacenamiento, debe crear una nueva instancia de almacenamiento y copiar los datos de la instancia de almacenamiento antigua a la nueva.
Antes de empezar: acceda al clúster de Red Hat OpenShift.
Para elegir una configuración de almacenamiento:
-
Obtenga una lista de las clases de almacenamiento disponibles en IBM Cloud® Kubernetes Service.
oc get sc | grep file
Salida de ejemplo
NAME TYPE ibmc-file-bronze (default) ibm.io/ibmc-file ibmc-file-custom ibm.io/ibmc-file ibmc-file-gold ibm.io/ibmc-file ibmc-file-retain-bronze ibm.io/ibmc-file ibmc-file-retain-custom ibm.io/ibmc-file ibmc-file-retain-gold ibm.io/ibmc-file ibmc-file-retain-silver ibm.io/ibmc-file ibmc-file-silver ibm.io/ibmc-file
-
Revise la configuración de una clase de almacenamiento.
oc describe storageclass <storageclass_name>
Para obtener más información sobre cada clase de almacenamiento, consulte la referencia de clases de almacenamiento. Si no encuentra lo que busca, considere la posibilidad de crear su propia clase de almacenamiento personalizada. Para empezar, compruebe los ejemplos de clase de almacenamiento personalizada.
-
Seleccione el tipo, IOPS, política de reclamaciones y facturación de almacenamiento de archivos que desee usar.
Tipos de almacenamiento de archivos
Elija el tipo de File Storage for Classic que desea suministrar.
- Clases de almacenamiento bronce, plata y oro
- Estas clases de almacenamiento proporcionan almacenamiento resistente. El almacenamiento resistente le permite elegir el tamaño del almacenamiento en gigabytes en los niveles de IOPS predefinidos.
- Clase de almacenamiento personalizada
- Esta clase de almacenamiento proporciona almacenamiento de rendimiento. Con el almacenamiento de rendimiento, tiene más control sobre el tamaño del almacenamiento y de IOPS.
IOPS
Elija el tamaño e IOPS para el File Storage for Classic. El tamaño y el número de IOPS definen el número total de IOPS (operaciones de entrada/salida por segundo), lo que sirve como indicador de la rapidez del almacenamiento. Cuantas más IOPS tenga el almacenamiento, más rápido se procesarán las operaciones de entrada y salida.
- Clases de almacenamiento bronce, plata y oro
- Estas clases de almacenamiento incluyen un número fijo de IOPS por gigabyte y se suministran en discos duros SSD. El número total de IOPS depende del tamaño del almacenamiento que elija. Puede seleccionar cualquier número entero de gigabytes comprendido dentro del rango de tamaño permitido, como por ejemplo 20 Gi, 256 Gi o 11854 Gi. Para determinar el número total de IOPS, debe multiplicar IOPS por el tamaño seleccionado. Por ejemplo, si selecciona un tamaño de File Storage for Classic de 1000 Gi en la clase de almacenamiento de plata que se suministra con 4 IOPS por GB, el almacenamiento tendrá un total de 4000 IOPS.
Clase de almacenamiento | IOPS por gigabyte | Rango de tamaño en gigabytes |
---|---|---|
Bronce | 2 IOPS/GB | 20-12000 Gi |
Plata | 4 IOPS/GB | 20-12000 Gi |
Oro | 10 IOPS/GB | 20-4000 Gi |
- Clase de almacenamiento personalizada
- Cuando selecciona esta clase de almacenamiento, tiene más control sobre el tamaño y las IOPS que desea. Para el tamaño, puede seleccionar cualquier número entero de gigabytes comprendido dentro del rango de tamaño permitido. El tamaño que elija determina el rango de IOPS que tendrá a su disponibilidad. Puede elegir un tamaño de IOPS que sea un múltiplo de 100 y que esté en el rango especificado. Las IOPS que elige son estáticas y no se escalan con el tamaño del almacenamiento. Por ejemplo, si elige 40 Gi con 100 IOPS, el número total de IOPS seguirá siendo 100.
- La proporción entre IOPS y gigabytes también determina el tipo de disco duro que se suministra. Por ejemplo, si tiene 500 Gi a 100 IOPS, la proporción entre IOPS y gigabyte será de 0,2. Si la proporción es menor o igual a 0,3, el almacenamiento se suministra en discos duros SATA. Si la proporción es mayor que 0,3, el almacenamiento se suministran en los discos duros SSD.
Rango de tamaño en gigabytes | Rango de IOPS en múltiplos de 100 |
---|---|
20-39 Gi | 100-1000 IOPS |
40-79 Gi | 100-2000 IOPS |
80-99 Gi | 100-4000 IOPS |
100-499 Gi | 100-6000 IOPS |
500-999 Gi | 100-10000 IOPS |
1000-1999 Gi | 100-20000 IOPS |
2000-2999 Gi | 200-40000 IOPS |
3000-3999 Gi | 200-48000 IOPS |
4000-7999 Gi | 300-48000 IOPS |
8000-9999 Gi | 500-48000 IOPS |
10000-12000 Gi | 1000-48000 IOPS |
Política de reclamación
Decida si desea conservar los datos después de que se suprima el clúster o la reclamación de volumen persistente (PVC).
- Si desea conservar los datos, seleccione la clase de almacenamiento
retain
. Cuando se suprime la PVC, únicamente ésta se suprime. El PV, el dispositivo de almacenamiento físico de la cuenta de infraestructura de IBM Cloud y los datos seguirán existiendo. Para reclamar el almacenamiento y volverlo a utilizar en el clúster, debe eliminar el PV y seguir los pasos de utilización de File Storage for Classic existente. - Si desea que el PV, los datos y el dispositivo físico de File Storage for Classic se supriman cuando suprima la PVC, elija una clase de almacenamiento sin la opción
retain
.
Tipo de facturación
Elija por horas o por meses. Revise los precios para obtener más información.
De forma predeterminada, todos los dispositivos de File Storage for Classic se suministran con un tipo de facturación por hora.
Si selecciona el tipo de facturación mensual, cuando elimine el almacenamiento persistente seguirá pagando el cargo mensual por el mismo, aunque solo lo haya utilizado durante un breve periodo de tiempo.
Adición de File Storage for Classic a apps
Cree una reclamación de volumen persistente (PVC) para aprovisionar dinámicamente File Storage for Classic para su clúster. El suministro dinámico crea automáticamente el volumen persistente (PV) adecuado y solicita el dispositivo de almacenamiento físico en la cuenta de infraestructura de IBM Cloud.
Antes de empezar:
- Decida si desea utilizar una clase de almacenamiento predefinida o crear una clase de almacenamiento personalizada.
¿Desea desplegar File Storage for Classic en un conjunto con estado? Consulte Utilización del File Storage for Classic en un conjunto con estado para obtener más información.
Para añadir File Storage for Classic:
-
Cree un archivo de configuración para definir su reclamación de volumen persistente (PVC) y guarde la configuración como archivo
.yaml
.Ejemplo de clases de almacenamiento bronce, plata y oro
El siguiente archivo
.yaml
crea una reclamación llamadamypvc
de la clase de almacenamiento"ibmc-file-silver"
, con factura"monthly"
(mensual) y con un tamaño en gigabytes de24Gi
.apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mypvc labels: billingType: "monthly" region: us-south zone: dal13 spec: accessModes: - ReadWriteMany resources: requests: storage: 24Gi storageClassName: ibmc-file-silver
Ejemplo para utilizar su propia clase de almacenamiento.
El siguiente archivo
.yaml
crea una reclamación llamadamypvc
de la clase de almacenamientoibmc-file-retain-custom
, con facturación"hourly"
(horaria), un tamaño en gibibytes de45Gi
y una IOPS de"300"
.apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mypvc labels: billingType: "hourly" region: us-south zone: dal13 spec: accessModes: - ReadWriteMany resources: requests: storage: 45Gi iops: "300" storageClassName: ibmc-file-retain-custom
name
- Escriba el nombre de la PVC.
billingType
- Especifique la frecuencia con la que desea que se calcule la factura de almacenamiento, los valores son "monthly" u "hourly". Si no especifica ningún tipo de facturación, el almacenamiento se suministra con un tipo de facturación por hora.
region
- Opcional: especifique la región en la que desea suministrar el File Storage for Classic. Para conectarse al almacenamiento, cree el almacenamiento en la misma región en la que se encuentre el clúster. Si especifica la región, también debe
especificar una zona. Si no especifica una región o no se encuentra la región especificada, el almacenamiento se crea en la misma región que el clúster. Para obtener la región del clúster, ejecute
ibmcloud oc cluster get --cluster <cluster_name_or_ID>
y busque el prefijo de región en el URL maestro, comoeu-de
enhttps://c2.eu-de.containers.cloud.ibm.com:11111
. En lugar de especificar la región y la zona en la PVC, también se pueden especificar estos valores en una clase de almacenamiento personalizada. A continuación, utilice la clase de almacenamiento en la secciónmetadata.annotations.volume.beta.kubernetes.io/storage-class
de la PVC. Si se especifican la región y la zona en la clase de almacenamiento y la PVC, los valores de la PVC tendrán prioridad. zone
- Opcional: especifique la zona en la que desea suministrar el File Storage for Classic. Para utilizar el almacenamiento en una app, cree el almacenamiento en la misma zona en la que se encuentra el nodo trabajador. Para ver la zona del
nodo de trabajador, ejecute
ibmcloud oc worker ls --cluster <cluster_name_or_ID>
y revise la columna Zone de la salida de la CLI. Si especifica la zona, también debe especificar una región. Si no especifica una zona o la zona especificada no se encuentra en un clúster multizona, la zona se selecciona mediante iteración cíclica. En lugar de especificar la región y la zona en la PVC, también se pueden especificar estos valores en una clase de almacenamiento personalizada. A continuación, utilice la clase de almacenamiento en la secciónmetadata.annotations.volume.beta.kubernetes.io/storage-class
de la PVC. Si se especifican la región y la zona en la clase de almacenamiento y la PVC, los valores de la PVC tendrán prioridad. accessMode
- Especifique una de las opciones siguientes.
ReadWriteMany
: Varios pods pueden montar la PVC. Todos los pods pueden leer y escribir en el volumen.ReadOnlyMany
: Varios pods pueden montar la PVC. Todos los pods tienen acceso de sólo lectura.ReadWriteOnce
: Solo un pod puede montar la PVC. Este pod puede leer y escribir en el volumen.
storage
- Indique el tamaño del File Storage for Classic, en gigabytes (Gi). Una vez suministrado el almacenamiento, no puede cambiar el tamaño de File Storage for Classic. Asegúrese de especificar un tamaño que coincida con la cantidad de datos que desea almacenar.
iops
- Esta opción sólo está disponible para sus propias clases de almacenamiento personalizadas (
ibmc-file-custom / ibmc-file-retain-custom
). Especifique el total de IOPS para el almacenamiento, seleccionando un múltiplo de 100 dentro del rango permitido. Si elige un IOPS distinto del que aparece en la lista, el IOPS se redondea. storageClassName
- El nombre de la clase de almacenamiento que desea utilizar para suministrar File Storage for Classic. Puede optar por utilizar una de las clases de almacenamiento proporcionadas por IBM o crear su propia clase de almacenamiento.
Si no especifica ninguna clase de almacenamiento, el PV se crea con la clase de almacenamiento predeterminada
ibmc-file-bronze
.
Si desea utilizar una clase de almacenamiento personalizada, cree su PVC con el nombre de clase de almacenamiento correspondiente, unas IOPS válidas y un tamaño.
-
Cree la PVC.
oc apply -f mypvc.yaml
-
Verifique que la PVC se ha creado y se ha vinculado al PV.
oc describe pvc mypvc
Salida de ejemplo
Name: mypvc Namespace: default StorageClass: "" Status: Bound Volume: pvc-0d787071-3a67-11e7-aafc-eef80dd2dea2 Labels: <none> Capacity: 20Gi Access Modes: RWX Events: FirstSeen LastSeen Count From SubObjectPath Type Reason Message --------- -------- ----- ---- ------------- -------- ------ ------- 3m 3m 1 {ibm.io/ibmc-file 31898035-3011-11e7-a6a4-7a08779efd33 } Normal Provisioning External provisioner is provisioning volume for claim "default/my-persistent-volume-claim" 3m 1m 10 {persistentvolume-controller } Normal ExternalProvisioning can't find provisioner "ibm.io/ibmc-file", expecting that a volume for the claim is provisioned either manually or via external software 1m 1m 1 {ibm.io/ibmc-file 31898035-3011-11e7-a6a4-7a08779efd33 } Normal ProvisioningSucceeded Successfully provisioned volume pvc-0d787071-3a67-11e7-aafc-eef80dd2dea2
-
Para montar el almacenamiento en el despliegue, cree un archivo
.yaml
de configuración y especifique la PVC que enlaza el PV.Si tiene una app que requiere que un usuario no root escriba en el almacenamiento persistente, o una app que requiere que la vía de acceso de montaje sea propiedad del usuario root, consulte Adición de acceso de usuario no root a NFS File Storage for Classic.
apiVersion: apps/v1 kind: Deployment metadata: name: <deployment_name> labels: app: <deployment_label> spec: selector: matchLabels: app: <app_name> template: metadata: labels: app: <app_name> spec: containers: - image: <image_name> name: <container_name> volumeMounts: - name: <volume_name> mountPath: /<file_path> volumes: - name: <volume_name> persistentVolumeClaim: claimName: <pvc_name>
app
- En la sección metadata, especifique una etiqueta para el despliegue.
matchLabels.app
ylabels.app
- En el selector de especificación y en las secciones de metadatos de la plantilla, especifique una etiqueta para la app.
image
- El nombre de la imagen de contenedor que desea utilizar. Para ver una lista de todas las imágenes disponibles en su cuenta de IBM Cloud Container Registry, ejecute
ibmcloud cr image-list
. name
- El nombre del contenedor que desea desplegar en el clúster.
mountPath
- En la sección de montajes de volúmenes de contenedor, especifique la vía de acceso absoluta del directorio en el que está montado el volumen dentro del contenedor. Los datos que se escriben en la vía de acceso de montaje se almacenan en
el directorio
root
de la instancia de File Storage for Classic físicos. Si quieres compartir un volumen entre diferentes aplicaciones, puedes especificar sub-rutas de volumen para cada una de tus aplicaciones. name
- En la sección de montajes de volúmenes de contenedor, especifique el nombre del volumen que se va a montar en el pod.
name
- En la sección de volúmenes, especifique el nombre del volumen que se va a montar en el pod. Normalmente este nombre es el mismo que
volumeMounts.name
. claimName
- En la sección de reclamación de volúmenes persistentes, especifique el nombre de la PVC que enlaza el PV que desea utilizar.
-
Cree el despliegue.
oc apply -f <local_yaml_path>
-
Verifique que el PV se ha montado correctamente.
oc describe deployment <deployment_name>
El punto de montaje se muestra en el campo Volume Mounts y el volumen se muestra en el campo Volumes.
Volume Mounts: /var/run/secrets/kubernetes.io/serviceaccount from default-token-tqp61 (ro) /volumemount from myvol (rw) ... Volumes: myvol: Type: PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace) ClaimName: mypvc ReadOnly: false
Utilización de File Storage for Classic existente en el clúster
Si dispone de un dispositivo de almacenamiento físico que desea utilizar en su clúster, puede crear manualmente el PV y el PVC para aprovisionar estáticamente el almacenamiento.
Antes de empezar:
Asegúrese de que tiene al menos un nodo trabajador en la misma zona que la instancia de File Storage for Classic existente.
Acceda al clúster de Red Hat OpenShift.
Preparación del almacenamiento existente
Antes de empezar a montar el almacenamiento existente en una app, debe recuperar toda la información necesaria para su PV y debe preparar el almacenamiento para que el clúster pueda acceder al mismo.
- Para el almacenamiento que se aprovisionó con una clase de almacenamiento "
retain
". - Si ha suministrado almacenamiento con la clase de almacenamiento
retain
y elimina la PVC, el PV y el dispositivo de almacenamiento físico no se eliminan de forma automática. Para volver a utilizar el almacenamiento en el clúster, primero debe eliminar el PV restante.
Para utilizar el almacenamiento existente en un clúster distinto de aquel en el que se ha suministrado, siga los pasos para almacenamiento que se ha creado fuera del clúster para añadir el almacenamiento a la subred del nodo trabajador.
-
Obtenga una lista de los PV existentes.
oc get pv
Busque el PV perteneciente a su almacenamiento persistente. El PV está en el estado
released
. -
Obtenga los detalles del PV.
oc describe pv <pv_name>
-
Anote los valores de
CapacityGb
,storageClass
,failure-domain.beta.kubernetes.io/region
,failure-domain.beta.kubernetes.io/zone
,server
ypath
. -
Elimine el PV.
oc delete pv <pv_name>
-
Verifique que el PV se ha eliminado.
oc get pv
- Para el almacenamiento persistente que se aprovisionó fuera del clúster
- Si desea utilizar el almacenamiento existente que suministró anteriormente, pero que nunca utilizó en su clúster, debe hacer que el almacenamiento esté disponible en la misma subred que sus nodos trabajadores.
- En el portal de infraestructura deIBM Cloud, haga clic en Almacenamiento.
- Pulse File Storage for Classic y, en el menú Acciones, seleccione Autorizar host.
- Seleccione Subredes.
- En la lista desplegable, seleccione la subred VLAN privada a la que está conectado el nodo trabajador. Para buscar la subred del nodo de trabajador, ejecute
ibmcloud oc worker ls --cluster <cluster_name>
y compare el valorPrivate IP
del nodo de trabajador con la subred que ha encontrado en la lista desplegable. - Pulse Enviar.
- Pulse el nombre del File Storage for Classic.
- Anote los valores de los campos
Mount Point
,size
yLocation
. El campoMount Point
se visualiza como<nfs_server>:<file_storage_path>
.
Creación de un volumen persistente y de una reclamación de volumen persistente
-
Cree un archivo de configuración de almacenamiento para el PV. Incluya los valores que ha recuperado anteriormente.
apiVersion: v1 kind: PersistentVolume metadata: name: mypv labels: failure-domain.beta.kubernetes.io/region: <region> failure-domain.beta.kubernetes.io/zone: <zone> spec: capacity: storage: "<size>" accessModes: - ReadWriteMany nfs: server: "<nfs_server>" path: "<file_storage_path>"
name
- Especifique el nombre del objeto de PV que crear.
labels
- Especifique la región y la zona que ha recuperado anteriormente. Debe tener al menos un nodo de trabajador en la misma región y zona.
storage
- Especifique el tamaño de almacenamiento del recurso compartido de archivos NFS existente que ha recuperado anteriormente. El tamaño de almacenamiento se debe especificar en gigabytes, por ejemplo, 20Gi (20 GB) o 1000Gi (1 TB), y el tamaño debe coincidir con el tamaño del recurso compartido de archivos existente.
accessMode
- Especifique una de las opciones siguientes.
ReadWriteMany
: Varios pods pueden montar la PVC. Todos los pods pueden leer y escribir en el volumen.ReadOnlyMany
: Varios pods pueden montar la PVC. Todos los pods tienen acceso de sólo lectura.ReadWriteOnce
: Solo un pod puede montar la PVC. Este pod puede leer y escribir en el volumen.
server
- Escriba el ID del servidor de recursos compartidos de archivos NFS que ha recuperado anteriormente.
path
- Especifique la vía de acceso al recurso compartido de archivos NFS existente que ha recuperado anteriormente.
-
Cree el PV en el clúster.
oc apply -f mypv.yaml
-
Verifique que se ha creado el PV.
oc get pv
-
Cree otro archivo de configuración para crear la PVC. Para que la PVC coincida con el PV que ha creado anteriormente, debe elegir el mismo valor para
storage
yaccessMode
. El campostorage-class
debe ser una serie vacía. Si alguno de estos campos no coincide con el PV, entonces se aprovisiona dinámicamente un nuevo PV y una nueva instancia de almacenamiento físico.kind: PersistentVolumeClaim apiVersion: v1 metadata: name: mypvc spec: accessModes: - ReadWriteMany resources: requests: storage: "<size>" storageClassName: ""
-
Cree la PVC.
oc apply -f mypvc.yaml
-
Verifique que la PVC se ha creado y se ha vinculado al PV.
oc describe pvc mypvc
Salida de ejemplo
Name: mypvc Namespace: default StorageClass: "" Status: Bound Volume: pvc-0d787071-3a67-11e7-aafc-eef80dd2dea2 Labels: <none> Capacity: 20Gi Access Modes: RWX Events: FirstSeen LastSeen Count From SubObjectPath Type Reason Message --------- -------- ----- ---- ------------- -------- ------ ------- 3m 3m 1 {ibm.io/ibmc-file 31898035-3011-11e7-a6a4-7a08779efd33 } Normal Provisioning External provisioner is provisioning volume for claim "default/my-persistent-volume-claim" 3m 1m 10 {persistentvolume-controller } Normal ExternalProvisioning can't find provisioner "ibm.io/ibmc-file", expecting that a volume for the claim is provisioned either manually or via external software 1m 1m 1 {ibm.io/ibmc-file 31898035-3011-11e7-a6a4-7a08779efd33 } Normal ProvisioningSucceeded Successfully provisioned volume pvc-0d787071-3a67-11e7-aafc-eef80dd2dea2
Ha creado correctamente un PV y lo ha enlazado a una PVC. Ahora los usuarios del clúster pueden montar la PVC en sus despliegues y empezar a leer el objeto de PV y a escribir en el mismo.
Utilización del File Storage for Classic en un conjunto con estado
Si tiene una app con estado como, por ejemplo, una base de datos, puede crear conjuntos con estado que utilicen File Storage for Classic para almacenar los datos de la app. Como alternativa, puede utilizar una base de datos como servicio de IBM Cloud y almacenar los datos en la nube.
- ¿Qué debo tener en cuenta al añadir File Storage for Classic a un conjunto con estado?
- Para añadir almacenamiento a un conjunto con estado, debe especificar la configuración del almacenamiento en la sección
volumeClaimTemplates
del archivo YAML del conjunto con estado.volumeClaimTemplates
constituye la base para la PVC y puede incluir la clase de almacenamiento y el tamaño o IOPS del File Storage for Classic que desea suministrar. Sin embargo, si desea incluir etiquetas envolumeClaimTemplates
, Kubernetes no incluye estas etiquetas al crear la PVC. En su lugar, debe añadir las etiquetas directamente al conjunto con estado.
No puede desplegar dos conjuntos con estado al mismo tiempo. Si intenta crear un conjunto con estado antes de que otro se despliegue por completo, el despliegue de su conjunto con estado puede dar lugar a resultados inesperados.
- ¿Cómo puedo crear mi conjunto de estados en una zona específica?
- En un clúster multizona, puede especificar la zona y la región en las que desea crear el conjunto con estado en la sección
spec.selector.matchLabels
y en la secciónspec.template.metadata.labels
del archivo YAML del conjunto con estado. Como alternativa, puede añadir estas etiquetas a una clase de almacenamiento personalizada y utilizar esta clase de almacenamiento en la secciónvolumeClaimTemplates
de su conjunto con estado. - ¿Puedo retrasar la vinculación de un PV a mi pod stateful hasta que el pod esté listo?
- Sí, puede crear su propia clase de almacenamiento para la PVC que incluye el campo
volumeBindingMode: WaitForFirstConsumer
. - ¿Qué opciones tengo para añadir File Storage for Classic a un conjunto con estado?
- Si desea crear automáticamente la PVC al crear el conjunto con estado, utilice el suministro dinámico. También puede optar por realizar un suministro previo de las PVC o utilizar PVC existentes con su conjunto con estado.
Creación de la PVC al crear un conjunto con estado utilizando suministro dinámico
Utilice esta opción si desea crear automáticamente la PVC al crear el conjunto con estado.
Antes de empezar: acceda al clúster de Red Hat OpenShift.
-
Verifique que todos los conjuntos con estado existentes del clúster estén totalmente desplegados. Si todavía se está desplegando un conjunto con estado, no puede empezar a crear el conjunto con estado. Debe esperar a que todos los conjuntos con estado del clúster se hayan desplegado por completo para evitar resultados inesperados. Obtenga una lista de los conjuntos con estado existentes en el clúster.
oc get statefulset --all-namespaces
Salida de ejemplo
NAME DESIRED CURRENT AGE mystatefulset 3 3 6s
-
Visualice el estado de los pods de cada conjunto con estado para asegurarse de que el despliegue del conjunto con estado haya finalizado.
oc describe statefulset <statefulset_name>
Salida de ejemplo
Name: nginx Namespace: default CreationTimestamp: Fri, 05 Oct 2022 13:22:41 -0400 Selector: app=nginx,billingType=hourly,region=us-south,zone=dal10 Labels: app=nginx billingType=hourly region=us-south zone=dal10 Annotations: oc.kubernetes.io/last-applied-configuration={"apiVersion":"apps/v1","kind":"StatefulSet","metadata":{"annotations":{},"name":"nginx","namespace":"default"},"spec":{"podManagementPolicy":"Par..." Replicas: 3 desired | 3 total Pods Status: 0 Running / 3 Waiting / 0 Succeeded / 0 Failed Pod Template: Labels: app=nginx billingType=hourly region=us-south zone=dal10
Un conjunto con estado se ha desplegado por completo cuando el número de réplicas que encuentra en la sección Replicas de la salida de CLI es igual al número de pods con el estado Running en la sección Pods Status. Si un conjunto con estado aún no se ha desplegado por completo, espere hasta que el despliegue haya finalizado antes de continuar.
-
Cree un archivo de configuración para el conjunto con estado y el servicio que utiliza para exponer el conjunto con estado.
Ejemplo de conjunto con estado que especifica una zona. En el ejemplo siguiente se muestra cómo desplegar NGINX como un conjunto con estado con 3 réplicas. Para cada réplica, se proporciona un dispositivo de File Storage for Classic de 20 gigabytes en función de las especificaciones de la clase de almacenamiento
ibmc-file-retain-bronze
. Todos los dispositivos de almacenamiento se suministran en la zonadal10
. Dado que no se puede acceder a File Storage for Classic desde otras zonas, todas las réplicas del conjunto con estado también se despliegan en los nodos de trabajador que se encuentran endal10
.apiVersion: v1 kind: Service metadata: name: nginx labels: app: nginx spec: ports: - port: 80 name: web clusterIP: None selector: app: nginx --- apiVersion: apps/v1 kind: StatefulSet metadata: name: nginx spec: serviceName: "nginx" replicas: 3 podManagementPolicy: Parallel selector: matchLabels: app: nginx billingType: "hourly" region: "us-south" zone: "dal10" template: metadata: labels: app: nginx billingType: "hourly" region: "us-south" zone: "dal10" spec: containers: - name: nginx image: k8s.gcr.io/nginx-slim:0.8 ports: - containerPort: 80 name: web volumeMounts: - name: myvol mountPath: /usr/share/nginx/html volumeClaimTemplates: - metadata: name: myvol spec: accessModes: - ReadWriteOnce resources: requests: storage: 20Gi iops: "300" #required only for performance storage storageClassName: ibmc-file-retain-bronze
Ejemplo de conjunto con estado con una regla de antiafinidad y una creación de File Storage for Classic demorada. En el ejemplo siguiente se muestra cómo desplegar NGINX como un conjunto con estado con 3 réplicas. El conjunto con estado no especifica la región y la zona en las que se ha creado el File Storage for Classic. En su lugar, el conjunto con estado utiliza una regla de antiafinidad para asegurarse de que los pods se distribuyen entre nodos trabajadores y zonas. La antiafinidad de los nodos trabajadores se consigue definiendo la etiqueta
app: nginx
. Esta etiqueta indica al planificador de Kubernetes que no planifique un pod en un nodo trabajador si ya se ejecuta un pod con la misma etiqueta en este nodo trabajador. La etiquetatopologykey: failure-domain.beta.kubernetes.io/zone
restringe aún más esta regla antiafinidad y evita que el pod se planifique en un nodo trabajador que se encuentre en la misma zona que un nodo trabajador que ya ejecuta un pod con la etiquetaapp: nginx
. Para cada pod de conjunto con estado, se crean dos PVC definidas en la secciónvolumeClaimTemplates
, pero la creación de las instancias de File Storage for Classic se retrasa hasta que se planifica un pod de conjunto con estado que utiliza el almacenamiento. Esta configuración se denomina programación de volúmenes en función de la topología.apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: ibmc-file-bronze-delayed parameters: billingType: hourly classVersion: "2" iopsPerGB: "2" sizeRange: '[20-12000]Gi' type: Endurance provisioner: ibm.io/ibmc-file reclaimPolicy: Delete volumeBindingMode: WaitForFirstConsumer --- apiVersion: v1 kind: Service metadata: name: nginx labels: app: nginx spec: ports: - port: 80 name: web clusterIP: None selector: app: nginx --- apiVersion: apps/v1 kind: StatefulSet metadata: name: web spec: serviceName: "nginx" replicas: 3 podManagementPolicy: "Parallel" selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: affinity: podAntiAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 100 podAffinityTerm: labelSelector: matchExpressions: - key: app operator: In values: - nginx topologyKey: failure-domain.beta.kubernetes.io/zone containers: - name: nginx image: k8s.gcr.io/nginx-slim:0.8 ports: - containerPort: 80 name: web volumeMounts: - name: myvol1 mountPath: /usr/share/nginx/html - name: myvol2 mountPath: /tmp1 volumeClaimTemplates: - metadata: name: myvol1 spec: accessModes: - ReadWriteMany # access mode resources: requests: storage: 20Gi storageClassName: ibmc-file-bronze-delayed - metadata: name: myvol2 spec: accessModes: - ReadWriteMany # access mode resources: requests: storage: 20Gi storageClassName: ibmc-file-bronze-delayed
name
- En los metadatos, especifique un nombre para el conjunto con estado. El nombre que especifique se utilizará para crear el nombre de la PVC con el formato:
<volume_name>-<statefulset_name>-<replica_number>
. serviceName
- En la sección de especificación, especifique el nombre del servicio que desea utilizar para exponer el conjunto con estado.
replicas
- Especifique el número de réplicas para el conjunto con estado.
podManagementPolicy
- Especifique la política de gestión de pod que desea utilizar para su conjunto con estado. Puede elegir entre las siguientes opciones.
OrderedReady
: con esta opción, las réplicas del conjunto con estado se despliegan una después de otra. Por ejemplo, si ha especificado 3 réplicas, Kubernetes crea la PVC para la primera réplica, espera hasta que la PVC esté enlazada, despliegue la réplica del conjunto con estado y monta la PVC en la réplica. Una vez que haya finalizado el despliegue, se despliega la segunda réplica. Para obtener más información sobre esta opción, consulte Gestión de podsOrderedReady.Parallel
: con esta opción, todos los despliegues de las réplicas de conjunto con estado se inician al mismo tiempo. Si la app da soporte al despliegue de réplicas en paralelo, utilice esta opción para ahorrar tiempo de despliegue para las PVC y las réplicas de conjuntos con estado.
matchLabels
- En la sección de selector de especificación, especifique todas las etiquetas que desee incluir en el conjunto con estado y en la PVC. Kubernetes no reconoce las etiquetas que se incluyen en
volumeClaimTemplates
del conjunto con estado. Revise los siguientes ejemplos de etiqueta.region
yzone
: si desea que todas las réplicas y PVC del conjunto con estado se creen en una zona específica, añada ambas etiquetas. También puede especificar la zona y la región en la clase de almacenamiento que utiliza. Si no especifica una zona y región y tiene un clúster multizona, la zona en la que se suministra el almacenamiento se selecciona mediante iteración cíclica para equilibrar las solicitudes de volumen de forma uniforme en todas las zonas.billingType
: escriba el tipo de facturación que desea utilizar para los PVC. Elija entrehourly
omonthly
. Si no especifica esta etiqueta, todas las PVC se crean con un tipo de facturación por hora.
labels
- En la sección de metadatos de la plantilla de especificación, especifique las mismas etiquetas que ha añadido a la sección
spec.selector.matchLabels
. affinity
- En la sección de afinidad de especificación de plantilla de especificación, escriba la regla de antiafinidad para asegurarse de que los pods de conjunto con estado se distribuyen entre nodos trabajadores y zonas. El ejemplo muestra una
regla de antiafinidad en la que el pod del conjunto con estado prefiere no estar planificado en un nodo trabajador en el que se ejecuta un pod que tiene la etiqueta
app: nginx
. La clavetopologykey: failure-domain.beta.kubernetes.io/zone
restringe aún más esta regla antiafinidad e impide que el pod se planifique en un nodo trabajador si este está en la misma zona que un pod con la etiquetaapp: nginx
. Mediante esta regla antiafinidad, puede lograr la afinidad entre los nodos trabajadores y las zonas. name
- En la sección de metadatos de plantillas de reclamación de volúmenes de especificación, especifique un nombre para el volumen. Utilice el mismo nombre que ha definido en la sección
spec.containers.volumeMount.name
. El nombre que especifique aquí se utilizará para crear el nombre de la PVC con el siguiente formato:<volume_name>-<statefulset_name>-<replica_number>
. storage
- En la sección de solicitudes de recursos de especificación de plantillas de reclamación de volúmenes de especificación, escriba el tamaño de File Storage for Classic en gigabytes (Gi).
iops
- En la sección de solicitudes de recursos de especificación de plantillas de reclamación de volúmenes de especificación, si desea suministrar almacenamiento de rendimiento, especifique el número de IOPS. Si utiliza una clase de almacenamiento de resistencia y especifica un número de IOPS, se pasa por alto el número de IOPS. En su lugar se utiliza el número de IOPS especificado en la clase de almacenamiento.
storageClassName
- En la sección de especificación de plantillas de reclamación de volúmenes de especificación, escriba la clase de almacenamiento que desea utilizar. Para listar las clases de almacenamiento existentes, ejecute '
oc get sc | grep file
. Si no especifica una clase de almacenamiento, la PVC se crea con la clase de almacenamiento predeterminada establecida en el clúster. Asegúrese de que la clase de almacenamiento predeterminada utiliza el suministradoribm.io/ibmc-file
para que el conjunto con estado se suministre con File Storage for Classic.
-
Cree su conjunto con estado.
oc apply -f statefulset.yaml
-
Espere a que se despliegue el conjunto con estado.
oc describe statefulset <statefulset_name>
Para ver el estado actual de los PVC, ejecute oc get pvc
. El nombre de su PVC tiene este formato <volume_name>-<statefulset_name>-<replica_number>
.
Suministro estático: Utilización de una PVC existente con un conjunto con estado
Puede realizar un suministro previo de las PVC antes de crear el conjunto con estado o utilizar PVC existentes con su conjunto con estado.
Cuando suministre dinámicamente las PVC al crear el conjunto con estado, el nombre de la PVC se asigna en función de los valores que ha utilizado en el archivo YAML de conjunto con estado. Para que el conjunto con estado utilice las PVC existentes, el nombre de las PVC debe coincidir con el nombre que se crearía automáticamente si se utilizara el suministro dinámico.
Antes de empezar: acceda al clúster de Red Hat OpenShift.
-
Si desea suministrar la PVC antes de crear el conjunto con estado, siga los pasos del 1 al 3 de la sección Adición de File Storage for Classic a apps para crear un PVC para cada réplica del conjunto con estado. Cree la PVC con un nombre que respete el siguiente formato:
<volume_name>-<statefulset_name>-<replica_number>
.<volume_name>
- Utilice el nombre que desee especificar en la sección
spec.volumeClaimTemplates.metadata.name
de su conjunto con estado, como por ejemplonginxvol
. <statefulset_name>
- Utilice el nombre que desee especificar en la sección
metadata.name
de su conjunto con estado, como por ejemplonginx_statefulset
. <replica_number>
- Especifique el número de la réplica, empezando por 0.
Por ejemplo, si tiene que crear 3 réplicas del conjunto con estado, cree 3 PVC con los siguientes nombres:
nginxvol-nginx_statefulset-0
,nginxvol-nginx_statefulset-1
ynginxvol-nginx_statefulset-2
.¿Desea crear una PVC y un PV para una instancia de File Storage for Classic existente? Cree la PVC y el PV mediante suministro estático.
-
Siga los pasos de Suministro dinámico: Creación de la PVC al crear un conjunto con estado para crear el conjunto con estado. El nombre de la PVC sigue el formato
<volume_name>-<statefulset_name>-<replica_number>
. Asegúrese de usar los valores siguientes a partir del nombre de la PVC en la especificación del conjunto con estado.spec.volumeClaimTemplates.metadata.name
- Escriba el
<volume_name>
del nombre de la PVC. metadata.name
- Escriba el
<statefulset_name>
del nombre de la PVC. spec.replicas
- Especifique el número de réplicas que desea crear para el conjunto con estado. El número de réplicas debe ser igual al número de PVC que ha creado anteriormente.
Si las PVC están en zonas diferentes, no incluya ninguna etiqueta de región o zona en el conjunto con estado.
-
Compruebe que las PVC se usan en los pods de réplica del conjunto con estado listando los pods del clúster e identificando los pods que pertenecen al conjunto con estado.
oc get pods
-
Verifique que la PVC existente esté montada en la réplica del conjunto con estado. Revise el valor de
ClaimName
en la secciónVolumes
de la salida de la CLI.oc describe pod <pod_name>
Salida de ejemplo
Name: nginx-0 Namespace: default Node: 10.xxx.xx.xxx/10.xxx.xx.xxx Start Time: Fri, 05 Oct 2022 13:24:59 -0400 ... Volumes: myvol: Type: PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace) ClaimName: myvol-nginx-0 ...
Cambio del tamaño e IOPS del dispositivo de almacenamiento existente
Si desea aumentar la capacidad de almacenamiento o el rendimiento, puede modificar el volumen existente.
Para ver preguntas sobre la facturación y encontrar los pasos sobre cómo utilizar la consola de IBM Cloud para modificar el almacenamiento, consulte Ampliación de la capacidad de compartición de archivos.
-
Liste las PVC del clúster y tome nota del nombre del PV asociado en la columna VOLUME.
oc get pvc
Salida de ejemplo
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE myvol Bound pvc-01ac123a-123b-12c3-abcd-0a1234cb12d3 20Gi RWX ibmc-file-bronze 147d
-
Recupere los valores de
StorageType
,volumeId
yserver
del File Storage for Classic físico asociado con la PVC mostrando una lista de los detalles del PV al que está vinculada la PVC. Sustituya<pv_name>
por el nombre del PV que ha recuperado en el paso anterior. El tipo de almacenamiento, ID de volumen y nombre de servidor se muestran en la secciónLabels
de la salida de la CLI.oc describe pv <pv_name>
Salida de ejemplo
Name: pvc-4b62c704-5f77-11e8-8a75-b229c11ba64a Labels: CapacityGb=20 Datacenter=dal10 Iops=2 StorageType=ENDURANCE Username=IBM02SEV1543159_6 billingType=hourly failure-domain.beta.kubernetes.io/region=us-south failure-domain.beta.kubernetes.io/zone=dal10 path=IBM01SEV1234567_8ab12t server=fsf-dal1001g-fz.adn.networklayer.com volumeId=12345678 ...
-
Modifique el tamaño o las IOPS del volumen en su cuenta de infraestructura de IBM Cloud.
Ejemplo de almacenamiento de rendimiento.
ibmcloud sl file volume-modify <volume_ID> --new-size <size> --new-iops <iops>
Ejemplo de almacenamiento resistente.
ibmcloud sl file volume-modify <volume_ID> --new-size <size> --new-tier <iops>
volume_ID
- Especifique el ID del volumen que ha recuperado anteriormente.
new-size
- Especifique el nuevo tamaño del volumen en gigabytes (Gi). Para ver qué valores son válidos, consulte Cómo decidir la configuración del File Storage for Classic. El tamaño que especifique debe ser mayor o igual que el tamaño actual del volumen. Si no especifica un nuevo tamaño, se utiliza el tamaño actual del volumen.
new-iops
- Solo para el almacenamiento de rendimiento. Especifique el nuevo número de IOPS que desee. Para ver qué valores de IOPS son válidos, consulte Cómo decidir la configuración del File Storage for Classic. Si no especifica el valor de IOPS, se utiliza el valor de IOPS actual. Si la proporción original de IOPS/GB del volumen es menor que 0,3, la nueva proporción de IOPS/GB debe ser menor que 0,3. Si la proporción original de IOPS/GB del volumen es mayor o igual que 0,3, la nueva proporción de IOPS/GB del volumen debe ser mayor o igual que 0,3.
new-tier
- Solo para el almacenamiento resistente. Especifique el nuevo número de IOPS por GB que desee. Para ver qué valores de IOPS son válidos, consulte Cómo decidir la configuración del File Storage for Classic. Si no especifica el valor de IOPS, se utiliza el valor de IOPS actual. Si la proporción original de IOPS/GB del volumen es menor que 0,25, la nueva proporción de IOPS/GB debe ser menor que 0,25. Si la proporción original de IOPS/GB del volumen es mayor o igual que 0,25, la nueva proporción de IOPS/GB del volumen debe ser mayor o igual que 0,25.
Salida de ejemplo
Order 31020713 was placed successfully!. > Storage as a Service > 40 GBs > 2 IOPS per GB > 20 GB Storage Space (Snapshot Space) You might run 'ibmcloud sl file volume-list --order 12345667' to find this file volume after it is ready.
-
Si ha cambiado el tamaño del volumen y utiliza el volumen en un pod, inicie sesión en el pod para verificar el nuevo tamaño. Obtenga una lista de todos los pods que utilizan PVC. Los pods se devuelven en el formato:
<pod_name>: <pvc_name>
.oc get pods --all-namespaces -o=jsonpath='{range .items[*]}{"\n"}{.metadata.name}{":\t"}{range .spec.volumes[*]}{.persistentVolumeClaim.claimName}{" "}{end}{end}' | grep "<pvc_name>"
-
Inicie una sesión en el pod.
oc exec -it <pod_name> bash
-
Muestre las estadísticas de uso de disco y busque la vía de acceso de servidor del volumen que ha recuperado anteriormente.
df -h
Salida de ejemplo
Filesystem Size Used Avail Use% Mounted on overlay 99G 4.8G 89G 6% / tmpfs 64M 0 64M 0% /dev tmpfs 7.9G 0 7.9G 0% /sys/fs/cgroup fsf-dal1001g-fz.adn.networklayer.com:/IBM01SEV1234567_6/data01 40G 0 40G 0% /myvol
Aunque el tamaño y el valor de IOPS del almacenamiento físico han cambiado, estos valores no se reflejan en el PV ni en la PVC. Si describe su PV o PVC, se seguirán viendo el tamaño y el valor de IOPS antiguos. Tiene la opción de actualizar
manualmente el tamaño y el valor de IOPS en el PV mediante el mandato oc patch pv
. Sin embargo, este mandato no se puede usar para cambiar el tamaño o el valor de IOPS en la PVC. Para evitar tener distintos tamaños e IOPS en la
PVC y en el PV, deje tanto la PVC como el PV tal como están.
Cambio de la versión predeterminada de NFS
La versión del File Storage for Classic determina el protocolo que se utiliza para comunicarse con el servidor de IBM Cloud File Storage for Classic. De forma predeterminada, todas las instancias de File Storage for Classic se configuran con NFS versión 4. Puede cambiar el PV existente a una versión de NFS más antigua si la aplicación requiere una versión específica para funcionar correctamente.
Para cambiar la versión predeterminada de NFS, puede crear una nueva clase de almacenamiento para suministrar de forma dinámica el File Storage for Classic en su clúster o elegir cambiar un PV existente que esté montado en el pod.
Para aplicar las últimas actualizaciones de seguridad y mejorar el rendimiento, utilice la versión de NFS predeterminada y no cambie a una versión de NFS más antigua.
Creación de una clase de almacenamiento personalizada con una versión NFS específica
-
Cree una clase de almacenamiento personalizada con la versión de NFS que desea suministrar.
-
Cree una clase de almacenamiento en el clúster.
oc apply -f nfsversion_storageclass.yaml
-
Verifique que se haya creado la clase de almacenamiento personalizada.
oc get sc
-
Suministre File Storage for Classic con la clase de almacenamiento personalizada.
Cambiar su PV existente para utilizar una versión NFS diferente
-
Obtenga el PV del File Storage for Classic cuya versión de NFS desee cambiar y anote el nombre del PV.
oc get pv
-
Añada una anotación a su PV. Sustituya
<version_number>
por la versión de NFS que desee utilizar. Por ejemplo, para cambiar a NFS versión 3.0, especifique 3.oc patch pv <pv_name> -p '{"metadata": {"annotations":{"volume.beta.kubernetes.io/mount-options":"vers=<version_number>"}}}'
-
Suprima el pod que utiliza el File Storage for Classic y vuelva a crear el pod.
-
Guarde el archivo YAML del pod en su máquina local.
kubect get pod <pod_name> -o yaml > <filepath/pod.yaml>
-
Suprima el pod.
oc deleted pod <pod_name>
-
Vuelva a crear el pod.
oc apply -f pod.yaml
-
-
Espere a que se haya desplegado el pod. El pod quedará completamente desplegado cuando el estado cambie a
Running
.oc get pods
-
Inicie una sesión en el pod.
oc exec -it <pod_name> sh
-
Verifique que el File Storage for Classic se ha montado con la versión de NFS que ha especificado anteriormente.
mount | grep "nfs" | awk -F" |," '{ print $5, $8 }'
Salida de ejemplo
nfs vers=3.0
Copia de seguridad y restauración de datos
El File Storage for Classic se suministra en la misma ubicación que los nodos trabajadores del clúster. IBM aloja el almacenamiento en servidores en clúster para proporcionar disponibilidad en el caso de que un servidor deje de funcionar. Sin embargo, no se realizan automáticamente copias de seguridad del File Storage for Classic, y puede dejar de ser accesible si falla toda la ubicación. Para evitar que los datos que se pierdan o se dañen, puede configurar copias de seguridad periódicas que puede utilizar para restaurar los datos cuando sea necesario.
Revise las siguientes opciones de copia de seguridad y de respaldo del File Storage for Classic.
Configuración de instantáneas periódicas
Puede configurar instantáneas periódicas para File Storage for Classic, que constituyen imágenes de solo lectura que captan el estado de la instancia en un punto en el tiempo. Para almacenar la instantánea, debe solicitar espacio de instantáneas en el File Storage for Classic. Las instantáneas se almacenan en la instancia de almacenamiento existente dentro de la misma zona. Puede restaurar datos desde una instantánea si un usuario elimina accidentalmente datos importantes del volumen.
Siga estos pasos para crear una instantánea del volumen.
-
Inicie una sesión en la CLI de
ibmcloud sl
.ibmcloud sl init
-
Liste los PV en su clúster.
oc get pv
-
Obtenga los detalles de los PV para los que desea crear espacio de instantáneas y anote el ID de volumen, el tamaño y las IOPS. Encontrará el ID de volumen, el tamaño y las IOPS en la sección Labels de la salida de la CLI.
oc describe pv <pv_name>
-
Cree el tamaño de instantánea para el volumen existente con los parámetros que ha recuperado en el paso anterior.
ibmcloud sl file snapshot-order <volume_ID> --size <size> --tier <iops>
-
Espere a que se haya creado el tamaño de la instantánea. El tamaño de instantánea se suministra satisfactoriamente cuando el tamaño de instantánea (GB) cambia en la salida de CLI de 0 al tamaño que ha solicitado.
ibmcloud sl file volume-detail <volume_ID>
-
Cree la instantánea para el volumen y anote el ID de la instantánea que se crea para usted.
ibmcloud sl file snapshot-create <volume_ID>
-
Verifique que la instantánea se haya creado correctamente.
ibmcloud sl file snapshot-list <volume_ID>
-
Establezca la planificación de instantánea. Para obtener más información sobre las opciones disponibles para la planificación de instantáneas, consulte la documentación de CLI.
ibmcloud sl block snapshot-enable VOLUME_ID <OPTIONS>
-
Para restaurar los datos de una instantánea en un volumen existente, ejecute el comando siguiente.
ibmcloud sl file snapshot-restore <volume_ID> <snapshot_ID>
Replicación de instantáneas en otra zona
Para proteger los datos ante un error de la zona, puede replicar instantáneas en una instancia de File Storage for Classic configurada en otra zona.
Los datos únicamente se pueden replicar desde el almacenamiento primario al almacenamiento de copia de seguridad. No puede montar una instancia replicada de File Storage for Classic en un clúster. Cuando el almacenamiento primario falla, puede establecer de forma manual el almacenamiento de copia de seguridad replicado para que sea el primario. A continuación, puede montarla en el clúster. Una vez restaurado el almacenamiento primario, puede restaurar los datos del almacenamiento de copia de seguridad.
Duplicación del almacenamiento
Puede duplicar la instancia de File Storage for Classic en la misma zona que la instancia de almacenamiento original.
La instancia duplicada tiene los mismos datos que la instancia de almacenamiento original en el momento de duplicarla. A diferencia de las réplicas, utilice los duplicados como una instancia de almacenamiento independiente de la original. Para duplicar, primero configure instantáneas para el volumen.
Copia de seguridad de los datos en IBM Cloud® Object Storage
Puede utilizar el diagrama de Helm de ibm-backup-restore
acelerar un pod de copia de seguridad y restauración del clúster.
Este pod contiene un script para ejecutar una copia de seguridad puntual o periódico para cualquier reclamación de volumen persistente (PVC) en el clúster. Los datos se almacenan en la instancia de IBM Cloud® Object Storage que ha configurado en una zona.
Para aumentar la alta disponibilidad de los datos y proteger la app ante un error de la zona, configure una segunda instancia de IBM Cloud® Object Storage y replique los datos entre las zonas. Si necesita restaurar datos desde la instancia de IBM Cloud® Object Storage, utilice el script de restauración que se proporciona con el diagrama de Helm.
Copia de datos desde y hacia pods y contenedores
Puede utilizar el comando ' oc cp
' para copiar archivos y directorios a y desde pods o contenedores específicos
en su cluster.
Antes de empezar: acceda al clúster de Red Hat OpenShift. Si no especifica ningún contenedor con -c
, el mandato utiliza el primer contenedor disponible en el pod.
Copie los datos de la máquina local en un pod del clúster.
oc cp <local_filepath>/<filename> <namespace>/<pod>:<pod_filepath>
Copie los datos de un pod del clúster en la máquina local.
oc cp <namespace>/<pod>:<pod_filepath>/<filename></var> <local_filepath>/<filename>
Copie los datos de la máquina local en un contenedor concreto que ejecute en un pod del clúster.
oc cp <local_filepath>/<filename> <namespace>/<pod>:<pod_filepath> -c CONTAINER
Referencia de clases de almacenamiento
Características | Valor |
---|---|
Nombre | ibmc-file-bronze ibmc-file-retain-bronze ibmc-file-bronze-gid |
Tipo | Almacenamiento resistente |
Sistema de archivos | NFS |
IOPS por gigabyte | 2 |
Rango de tamaño en gigabytes | 20-12000 Gi |
Disco duro | SSD |
Política de reclamación | ibmc-file-bronze : Suprimiribmc-file-retain-bronze : Reteneribmc-file-bronze-gid: Suprimir |
ID de grupo complementario | El ID de grupo suplementario 65531 se establece automáticamente cuando se utiliza la clase de almacenamiento ibmc-file-bronze-gid para permitir a los usuarios no root acceder a la instancia de almacenamiento de archivos. Para
obtener más información sobre cómo utilizar esta clase de almacenamiento o establecer los ID de grupos personalizados, consulte Almacenamiento de archivos: la adición de acceso de usuario no root al almacenamiento persistente no se realiza correctamente. |
Facturación | Cada hora |
Precios | Información sobre precios |
Características | Valor |
---|---|
Nombre | ibmc-file-silver ibmc-file-retain-silver ibmc-file-silver-gid |
Tipo | Almacenamiento resistente |
Sistema de archivos | NFS |
IOPS por gigabyte | 4 |
Rango de tamaño en gigabytes | 20-12000 Gi |
Disco duro | SSD |
Política de reclamación | ibmc-file-silver : Suprimiribmc-file-retain-silver : Reteneribmc-file-silver-gid: Suprimir |
ID de grupo complementario | El ID de grupo suplementario 65531 se establece automáticamente cuando se utiliza la clase de almacenamiento ibmc-file-bronze-gid para permitir a los usuarios no root acceder a la instancia de almacenamiento de archivos. Para
obtener más información sobre cómo utilizar esta clase de almacenamiento o establecer los ID de grupos personalizados, consulte Almacenamiento de archivos: la adición de acceso de usuario no root al almacenamiento persistente no se realiza correctamente. |
Facturación | Cada hora |
Precios | Información sobre precios |
Características | Valor |
---|---|
Nombre | ibmc-file-gold ibmc-file-retain-gold ibmc-file-gold-gid |
Tipo | Almacenamiento resistente |
Sistema de archivos | NFS |
IOPS por gigabyte | 10 |
Rango de tamaño en gigabytes | 20-4000 Gi |
Disco duro | SSD |
Política de reclamación | ibmc-file-gold : Suprimiribmc-file-retain-gold : Reteneribmc-file-gold-gid: Suprimir |
ID de grupo complementario | El ID de grupo suplementario 65531 se establece automáticamente cuando se utiliza la clase de almacenamiento ibmc-file-bronze-gid para permitir a los usuarios no root acceder a la instancia de almacenamiento de archivos. Para
obtener más información sobre cómo utilizar esta clase de almacenamiento o establecer los ID de grupos personalizados, consulte Almacenamiento de archivos: la adición de acceso de usuario no root al almacenamiento persistente no se realiza correctamente. |
Facturación | Cada hora |
Precios | Información sobre precios |
Características | Valor |
---|---|
Nombre | ibmc-file-custom ibmc-file-retain-custom |
Tipo | Rendimiento |
Sistema de archivos | NFS |
IOPS y tamaño |
|
Disco duro |
La proporción entre IOPS y gigabytes determina el tipo de disco duro que se suministra. Para determinar la proporción entre IOPS y gigabytes, divida el número de IOPS por el tamaño de su almacenamiento.
|
Política de reclamación | ibmc-file-custom : Suprimiribmc-file-retain-custom : Retener |
Facturación | Cada hora |
Precios | Información sobre precios |
Clases de almacenamiento personalizadas de ejemplo
Puede crear una clase de almacenamiento personalizada y utilizar la clase de almacenamiento en la PVC.
Red Hat OpenShift on IBM Cloud proporciona clases de almacenamiento predefinidas para suministrar a File Storage for Classic almacenamiento de archivos con un nivel y una configuración determinados. A veces, es posible que desee suministrar almacenamiento con una configuración diferente que no esté cubierta en las clases de almacenamiento predefinidas. Puede utilizar los ejemplos de este tema para encontrar clases de almacenamiento personalizadas de ejemplo.
Para crear la clase de almacenamiento personalizada, consulte Personalización de una clase de almacenamiento. A continuación, utilice la clase de almacenamiento personalizada en la PVC.
Creación de almacenamiento que tenga en cuenta la topología
Para utilizar el File Storage for Classic en un clúster multizona, su pod debe estar planificado en la misma zona que la instancia de File Storage for Classic para que pueda leer y escribir en el volumen. Antes de que Kubernetes incorporara la planificación del volumen que tiene en cuenta la topología, el suministro dinámico del almacenamiento creaba automáticamente la instancia de File Storage for Classic al crear una PVC. A continuación, cuando creaba el pod, el planificador de Kubernetes intentaba desplegar el pod en un nodo trabajador del mismo centro de datos que la instancia de File Storage for Classic.
La creación de la instancia de File Storage for Classic sin conocer las restricciones del pod puede llevar a resultados no deseados. Por ejemplo, es posible que el pod no pueda planificarse en el mismo nodo trabajador que el almacenamiento porque el nodo trabajador no tiene recursos suficientes o porque el nodo trabajador está marcado y no permite que se planifique el pod. Con la planificación de volumen que tiene en cuenta la topología, la instancia de File Storage for Classic se retrasa hasta que se crea el primer pod que utiliza el almacenamiento.
En los siguientes ejemplos se muestra cómo crear clases de almacenamiento que retrasan la creación de la instancia de File Storage for Classic hasta que el primer pod que utiliza este almacenamiento esté listo para ser planificado. Para retrasar
la creación, debe incluir la opción volumeBindingMode: WaitForFirstConsumer
. Si no incluye esta opción, el volumeBindingMode
se establece automáticamente en Immediate
y la instancia de File Storage
for Classic se crea al crear la PVC.
Ejemplo de File Storage for Classic de resistencia.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ibmc-file-bronze-delayed
parameters:
billingType: hourly
classVersion: "2"
iopsPerGB: "2"
sizeRange: '[20-12000]Gi'
type: Endurance
provisioner: ibm.io/ibmc-file
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
Ejemplo de File Storage for Classic de rendimiento.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ibmc-file-performance-storageclass
labels:
kubernetes.io/cluster-service: "true"
provisioner: ibm.io/ibmc-file
parameters:
billingType: "hourly"
classVersion: "2"
sizeIOPSRange: |-
"[20-39]Gi:[100-1000]"
"[40-79]Gi:[100-2000]"
"[80-99]Gi:[100-4000]"
"[100-499]Gi:[100-6000]"
"[500-999]Gi:[100-10000]"
"[1000-1999]Gi:[100-20000]"
"[2000-2999]Gi:[200-40000]"
"[3000-3999]Gi:[200-48000]"
"[4000-7999]Gi:[300-48000]"
"[8000-9999]Gi:[500-48000]"
"[10000-12000]Gi:[1000-48000]"
type: "Performance"
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
Especificación de la zona para clústeres multizona
Si desea crear el File Storage for Classic en una zona específica, puede especificar la zona y la región en una clase de almacenamiento personalizada.
Utilice la clase de almacenamiento personalizada si desea suministrar File Storage for Classic de forma estática en una zona específica. En todos los demás casos, especifique la zona directamente en la PVC.
Cuando cree la clase de almacenamiento personalizada, especifique la misma región y la misma zona en la que se encuentran los nodos de clúster y trabajador. Para obtener la región del clúster, ejecute ibmcloud oc cluster get --cluster <cluster_name_or_ID>
y busque el prefijo de región en el URL maestro, como eu-de
en https://c2.eu-de.containers.cloud.ibm.com:11111
. Para obtener la zona del nodo de trabajador, ejecute ibmcloud oc worker ls --cluster <cluster_name_or_ID>
.
Ejemplo de File Storage for Classic de resistencia.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ibmc-file-silver-mycustom-storageclass
labels:
kubernetes.io/cluster-service: "true"
provisioner: ibm.io/ibmc-file
parameters:
zone: "dal12"
region: "us-south"
type: "Endurance"
iopsPerGB: "4"
sizeRange: "[20-12000]Gi"
reclaimPolicy: "Delete"
classVersion: "2"
reclaimPolicy: Delete
volumeBindingMode: Immediate
Ejemplo de File Storage for Classic de rendimiento.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ibmc-file-performance-storageclass
labels:
kubernetes.io/cluster-service: "true"
provisioner: ibm.io/ibmc-file
parameters:
zone: "dal12"
region: "us-south"
billingType: "hourly"
classVersion: "2"
sizeIOPSRange: |-
"[20-39]Gi:[100-1000]"
"[40-79]Gi:[100-2000]"
"[80-99]Gi:[100-4000]"
"[100-499]Gi:[100-6000]"
"[500-999]Gi:[100-10000]"
"[1000-1999]Gi:[100-20000]"
"[2000-2999]Gi:[200-40000]"
"[3000-3999]Gi:[200-48000]"
"[4000-7999]Gi:[300-48000]"
"[8000-9999]Gi:[500-48000]"
"[10000-12000]Gi:[1000-48000]"
type: "Performance"
reclaimPolicy: Delete
volumeBindingMode: Immediate
Cambio de la versión predeterminada de NFS
La siguiente clase de almacenamiento personalizada le permite definir la versión de NFS que desea suministrar. Por ejemplo, para suministrar NFS versión 3.0, sustituya <nfs_version>
por 3.0.
Ejemplo de File Storage for Classic de resistencia.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ibmc-file-mount
labels:
kubernetes.io/cluster-service: "true"
provisioner: ibm.io/ibmc-file
parameters:
type: "Endurance"
iopsPerGB: "2"
sizeRange: "[1-12000]Gi"
reclaimPolicy: "Delete"
classVersion: "2"
mountOptions: nfsvers=<nfs_version>
Ejemplo de File Storage for Classic de rendimiento.
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: ibmc-file-mount
labels:
kubernetes.io/cluster-service: "true"
provisioner: ibm.io/ibmc-file
parameters:
type: "Performance"
classVersion: "2"
sizeIOPSRange: |-
"[20-39]Gi:[100-1000]"
"[40-79]Gi:[100-2000]"
"[80-99]Gi:[100-4000]"
"[100-499]Gi:[100-6000]"
"[500-999]Gi:[100-10000]"
"[1000-1999]Gi:[100-20000]"
"[2000-2999]Gi:[200-40000]"
"[3000-3999]Gi:[200-48000]"
"[4000-7999]Gi:[300-48000]"
"[8000-9999]Gi:[500-48000]"
"[10000-12000]Gi:[1000-48000]"
mountOptions: nfsvers=<nfs_version>
Eliminación del almacenamiento persistente de un clúster
Cuando configura el almacenamiento persistente en el clúster, tiene tres componentes principales: la reclamación de volumen persistente (PVC) de Kubernetes que solicita almacenamiento, el volumen persistente (PV) de Kubernetes que se monta en un pod y se describe en el PVC y la instancia de infraestructura de IBM Cloud, como por ejemplo el almacenamiento clásico de archivos o en bloque. En función de cómo haya creado el almacenamiento, es posible que los tenga que suprimir los tres componentes por separado.
Visión general de la eliminación del almacenamiento
La eliminación del almacenamiento persistente de la cuenta de IBM Cloud varía en función de cómo haya suministrado el almacenamiento y de los componentes que ya haya eliminado.
- ¿Se elimina mi almacenamiento persistente cuando borro mi clúster?
- Durante la supresión del clúster, tiene la opción de eliminar el almacenamiento persistente. Sin embargo, en función de cómo se haya suministrado el almacenamiento, es posible que la eliminación del almacenamiento no incluya todos los componentes
de almacenamiento. Si aprovisionó almacenamiento dinámicamente con una clase de almacenamiento que establece '
reclaimPolicy: Delete
, su PVC, PV y la instancia de almacenamiento se eliminan automáticamente al eliminar el clúster. Para el almacenamiento que se aprovisionó estáticamente o el almacenamiento que aprovisionó con una clase de almacenamiento que establece 'reclaimPolicy: Retain
, el PVC y el PV se eliminan cuando se elimina el clúster, pero su instancia de almacenamiento y sus datos permanecen. Se le sigue facturando la instancia de almacenamiento. Además, si ha suprimido el clúster que no está en buen estado, es posible que el almacenamiento siga existiendo incluso si ha elegido eliminarlo. - ¿Cómo elimino el almacenamiento si quiero conservar mi clúster?
- Cuando se ha suministrado el almacenamiento de forma dinámica con una clase de almacenamiento que establece
reclaimPolicy: Delete
, puede eliminar la PVC para iniciar el proceso de supresión de su almacenamiento persistente. La PVC, el PV y la instancia de almacenamiento se eliminan automáticamente. Para el almacenamiento que se aprovisionó estáticamente o el almacenamiento que aprovisionó con una clase de almacenamiento que establece "reclaimPolicy: Retain
, debe eliminar manualmente el PVC, el PV y la instancia de almacenamiento para evitar más cargos. - ¿Cómo se detiene la facturación después de borrar mi almacenamiento?
- En función de los componentes de almacenamiento que suprima y de cuándo lo haga, es posible que el ciclo de facturación no se detenga inmediatamente. Si suprime la PVC y el PV, pero no la instancia de almacenamiento de la cuenta de IBM Cloud, dicha instancia sigue existiendo y se le sigue facturando por la misma.
Si suprime la PVC, el PV y la instancia de almacenamiento, el ciclo de facturación se detiene en función del valor de billingType
que haya elegido al suministrar el almacenamiento y de cómo haya elegido suprimir el almacenamiento.
-
Cuando se cancela manualmente la instancia de almacenamiento persistente desde la consola IBM Cloud o la CLI, la facturación se detiene del siguiente modo:
- Almacenamiento por hora: la facturación se detiene inmediatamente. Una vez que se haya cancelado el almacenamiento, es posible que siga viendo la instancia de almacenamiento en la consola durante 72 horas más.
- Almacenamiento mensual: puede elegir entre cancelación inmediata o cancelación al cumplirse el año. En ambos casos, se le factura hasta el final del ciclo de facturación actual y la facturación se detiene en el siguiente ciclo de facturación. Una vez que se haya cancelado el almacenamiento, es posible que siga viendo la instancia de almacenamiento en la consola o la CLI durante 72 horas más.
- Cancelación inmediata: elija esta opción para eliminar el almacenamiento de inmediato. Ni usted ni sus usuarios pueden seguir utilizando el almacenamiento ni recuperar los datos.
- Fecha de aniversario: elija esta opción para cancelar el almacenamiento en la fecha del próximo aniversario. Las instancias de almacenamiento permanecen activas hasta la fecha del siguiente aniversario y puede seguir utilizándolas hasta dicha fecha, por ejemplo para dar tiempo a su equipo para que realice copias de seguridad de los datos.
-
Si ha suministrado el almacenamiento de forma dinámica con una clase de almacenamiento que establece
reclaimPolicy: Delete
y elige eliminar la PVC, el PV y la instancia de almacenamiento se eliminan inmediatamente. En el caso del almacenamiento que se factura por hora, la facturación se detiene inmediatamente. En el caso del almacenamiento que se factura mensualmente, se le factura el resto del mes. Una vez que se haya eliminado el almacenamiento y se detiene la facturación, es posible que siga viendo la instancia de almacenamiento en la consola o la CLI durante 72 horas más.
- ¿Qué debo tener en cuenta antes de eliminar el almacenamiento permanente?
- Cuando se limpia el almacenamiento persistente, se suprimen todos los datos almacenados en el mismo. Si necesita una copia de los datos, haga una copia de seguridad.
- He borrado mi instancia de almacenamiento. ¿Por qué sigo viendo mi instancia?
- Después de eliminar el almacenamiento persistente, pueden pasar hasta 72 horas hasta que la eliminación se procese por completo y el almacenamiento desaparezca de la consola o de la CLI de IBM Cloud.
Limpieza del almacenamiento persistente
Elimine la PVC, el PV y la instancia de almacenamiento de la cuenta de IBM Cloud para evitar cargos adicionales de almacenamiento persistente.
Antes de empezar:
- Asegúrese de que ha realizado una copia de seguridad de los datos que desea conservar.
- Acceda al clúster de Red Hat OpenShift.
Para limpiar los datos persistentes:
-
Obtenga una lista de las PVC del clúster y anote el nombre (
NAME
) de la PVC, suSTORAGECLASS
y el nombre del PV vinculado a la PVC que se muestra comoVOLUME
.oc get pvc
Salida de ejemplo
NAME STATUS VOLUME CAPACITY ACCESSMODES STORAGECLASS AGE claim1 Bound pvc-06886b77-102b-11e8-968a-f6612bb731fb 20Gi RWO class 78d claim2 Bound pvc-457a2b96-fafc-11e7-8ff9-b6c8f770356c 4Gi RWX class 105d claim3 Bound pvc-1efef0ba-0c48-11e8-968a-f6612bb731fb 24Gi RWX class 83d
-
Revise los valores
ReclaimPolicy
ybillingType
para la clase de almacenamiento.oc describe storageclass <storageclass_name>
Si la política de reclamación indica
Delete
, el PV y el almacenamiento físico se eliminan cuando se elimina la PVC. Si la política de reclamación indicaRetain
, o si ha suministrado el almacenamiento sin una clase de almacenamiento, el PV y el almacenamiento físico no se eliminan cuando se elimina la PVC. Debe eliminar la PVC, el PV y el almacenamiento físico por separado.Si el almacenamiento se carga de forma mensual, se le facturará todo el mes, aunque elimine el almacenamiento antes de que finalice el ciclo de facturación.
-
Elimine los pods que montan la PVC. Obtenga una lista de los pods que montan la PVC. Si no se devuelve ningún pod en la salida de la CLI, no tiene ningún pod que utilice la PVC.
oc get pods --all-namespaces -o=jsonpath='{range .items[*]}{"\n"}{.metadata.name}{":\t"}{range .spec.volumes[*]}{.persistentVolumeClaim.claimName}{" "}{end}{end}' | grep "<pvc_name>"
Salida de ejemplo
depl-12345-prz7b: claim1
-
Elimine el pod que utiliza la PVC. Si el pod forma parte de un despliegue, elimine el despliegue.
oc delete pod <pod_name>
-
Verifique que el pod se ha eliminado.
oc get pods
-
Elimine la PVC.
oc delete pvc <pvc_name>
-
Revise el estado de su PV. Utilice el nombre del PV que ha recuperado antes como
VOLUME
. Cuando se elimina la PVC, se libera el PV vinculado a la PVC. En función de cómo haya suministrado el almacenamiento, el PV entra en estadoDeleting
si el PV se suprime automáticamente o en estadoReleased
si debe suprimir manualmente el PV. Nota: para los PV que se suprimen automáticamente, el estado puede indicar brevementeReleased
antes de que se suprima. Vuelva a ejecutar el mandato después de unos minutos para ver si se ha eliminado el PV.oc get pv <pv_name>
-
Si su PV no se ha suprimido, elimine manualmente el PV.
oc delete pv <pv_name>
-
Verifique que el PV se ha eliminado.
oc get pv
-
Obtenga una lista de la instancia de almacenamiento físico a la que apuntaba su PV y anote el
id
de la instancia de almacenamiento físico.ibmcloud sl file volume-list --columns id --columns notes | grep <pv_name>
Salida de ejemplo para File Storage for Classic.
id notes 12345678 {"plugin":"ibm-file-plugin-5b55b7b77b-55bb7","region":"us-south","cluster":"aa1a11a1a11b2b2bb22b22222c3c3333","type":"Endurance","ns":"default","pvc":"mypvc","pv":"pvc-d979977d-d79d-77d9-9d7d-d7d97ddd99d7","storageclass":"ibmc-file-gold"}
"plugin":"ibm-file-plugin-5b55b7b77b-55bb7"
- El plugin de almacenamiento que utiliza el clúster.
"region":"us-south"
- La región en la que se encuentra el clúster.
"cluster":"aa1a11a1a11b2b2bb22b22222c3c3333"
- El ID de clúster que está asociado con la instancia de almacenamiento.
"type":"Endurance"
- El tipo de almacenamiento de archivos o en bloque,
Endurance
oPerformance
. "ns":"default"
- El espacio de nombres en el que se despliega la instancia de almacenamiento.
"pvc":"mypvc"
- El nombre del PVC que está asociado a la instancia de almacenamiento.
"pv":"pvc-d979977d-d79d-77d9-9d7d-d7d97ddd99d7"
- El PV que está asociado con la instancia de almacenamiento.
"storageclass":"ibmc-file-gold"
- El tipo de clase de almacenamiento: bronce, plata, oro o personalizado.
-
Elimine la instancia de almacenamiento físico.
ibmcloud sl file volume-cancel <classic_file_id>
-
Verifique que se ha eliminado la instancia de almacenamiento físico.
ibmcloud sl file volume-list
El proceso de supresión puede tardar hasta 72 horas en completarse.