Accede a archivos compartidos desde los clústeres de Google Kubernetes Engine

Usa este tema para obtener más información sobre cómo acceder a un archivo compartido de Cloud Filestore desde un clúster de GKE mediante la creación de un volumen persistente y una reclamación de volumen persistente.

El clúster debe estar en el mismo proyecto de Google Cloud Platform y la red de VPC que la instancia de Cloud Filestore.

Crea un volumen persistente

  1. Instala la herramienta de línea de comandos de kubectl mediante la ejecución de los comandos siguientes:

    gcloud components install kubectl
    gcloud container clusters get-credentials [CLUSTER_NAME]

    donde [CLUSTER_NAME] es el nombre del clúster.

  2. Crea una especificación de volumen persistente de Kubernetes. Este es un archivo .yaml que proporciona información sobre cómo acceder al archivo compartido de Cloud Filestore. La especificación se verá similar al ejemplo siguiente:

    apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: fileserver
    spec:
      capacity:
        storage: [STORAGE]
      accessModes:
      - ReadWriteMany
      nfs:
        path: /[FILESHARE]
        server: [IP_ADDRESS]
    

    en el que:

    • [STORAGE] es el tamaño del archivo compartido en la instancia de Cloud Filestore. Debes especificar el valor [STORAGE] en una de las unidades compatibles que se describen en las cantidades de recursos, por ejemplo 2T.
    • [FILESHARE] es el nombre del archivo compartido en la instancia de Cloud Filestore. Puedes obtener el nombre del archivo compartido de una instancia desde cualquiera de las fuentes siguientes:
    • [IP_ADDRESS] es la dirección IP de la instancia de Cloud Filestore. Puedes obtener la dirección IP de una instancia desde cualquiera de las fuentes siguientes:

    Si deseas obtener más información sobre la otra configuración, consulta Volúmenes persistentes.

  3. Implementa la especificación del volumen persistente mediante la ejecución del comando siguiente:

    kubectl create -f /path/to/[PERSISTENT_VOLUME_FILE_NAME].yaml

Crea una reclamación de volumen persistente

  1. Crea una especificación de una reclamación de volumen persistente de Kubernetes. Este es un archivo .yaml que permite a un pod de Kubernetes acceder a los recursos de almacenamiento de un volumen persistente. La especificación se verá similar al ejemplo siguiente:

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: fileserver-claim
    spec:
      accessModes:
      - ReadWriteMany
      storageClassName: ""
      resources:
        requests:
          storage: [STORAGE]
    

    Donde [STORAGE] es el tamaño de la reclamación de volumen persistente que deseas que esté disponible en los objetos de Kubernetes. Debes especificar el valor [STORAGE] en una de las unidades compatibles que se describen en las cantidades de recursos. El valor que especifiques debe ser igual o menor que el almacenamiento que especificaste para el volumen persistente.

    Si deseas obtener más información sobre la otra configuración, consulta Reclamaciones de volúmenes persistentes.

  2. Implementa la especificación de la reclamación del volumen persistente mediante la ejecución del comando siguiente:

    kubectl create -f /path/to/[PERSISTENT_VOLUME_CLAIM_FILE_NAME].yaml

Consume la reclamación de volumen persistente

  1. Crea una especificación para un objeto de Kubernetes que consuma una reclamación de volumen persistente, por ejemplo, un pod de Kubernetes. Esta especificación es un archivo .yaml file que describe el objeto, junto con la información sobre los recursos de almacenamiento disponibles. Una especificación de pod se verá similar al ejemplo siguiente:

    apiVersion: v1
    kind: Pod
    metadata:
      name: my-pod
    spec:
      containers:
      - name: [CONTAINER_NAME]
        image: [IMAGE_NAME]
        volumeMounts:
        - mountPath: [MOUNT_PATH]
          name: mypvc
      volumes:
      - name: mypvc
        persistentVolumeClaim:
          claimName: [CLAIM_NAME]
          readOnly: false
    

    en el que:

    • [CONTAINER_NAME] es el nombre de un contenedor, como se describe en contenedores.
    • [IMAGE_NAME] es el nombre de una imagen de Docker, como se describe en contenedores.
    • [MOUNT_PATH] es la ruta para activar la reclamación de volumen persistente, por ejemplo /mnt/fileserver.
    • [CLAIM_NAME] es el nombre de una reclamación de valor persistente implementado. En este ejemplo, se muestra un fileserver-claim.

    Si deseas obtener más información sobre la otra configuración, consulta Pods.

  2. Implementa la especificación del pod mediante la ejecución del comando siguiente:

    kubectl create -f /path/to/[POD_FILE_NAME].yaml

Pasos siguientes

Obtén información sobre la instancia de Cloud Filestore.

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Documentación de Cloud Filestore