Todos los productos
Search
Centro de documentos

Container Service for Kubernetes:Use Alibaba Cloud CSI storage

Última actualización: Sep 09, 2026

ACK se integra de forma profunda con el almacenamiento de Alibaba Cloud y es compatible con los servicios de almacenamiento nativos de Kubernetes. Despliegue el plugin CSI en un clúster registrado para montar automáticamente discos en la nube, NAS, OSS y volúmenes locales en los pods. Este tema explica cómo usar el almacenamiento CSI de Alibaba Cloud en un clúster registrado.

Configure los permisos de RAM, instale el plugin CSI y monte los volúmenes en sus pods.

Consideraciones

Compruebe si aplican a continuación las siguientes restricciones:

  • En los clústeres de centro de datos, los nodos de ECS que se agregan mediante grupos de nodos reciben automáticamente la etiqueta alibabacloud.com/external=true.

Requisitos previos

Asegúrese de contar con lo siguiente:

  • Se creó un ACK One registered cluster con un clúster de Kubernetes externo conectado.

  • Un clúster registrado que ejecute Kubernetes 1.24 o una versión posterior.

  • (Obligatorio para despliegues en centros de datos) Un circuito de Express Connect entre su centro de datos y Alibaba Cloud.

Paso 1: Configurar los permisos de RAM

El plugin Container Storage Interface (CSI) requiere un par de AccessKey para llamar a las API de Alibaba Cloud. Sin este par, el plugin no puede acceder al almacenamiento en la nube.

Elija uno de estos métodos:

Usar onectl

  1. Install onectl en su computadora local.

  2. Otorgue al usuario de RAM los permisos del plugin CSI:

    onectl ram-user grant --addon csi-plugin

    Resultado esperado:

    Ram policy ack-one-registered-cluster-policy-csi-plugin granted to ram user ack-one-user-ce313528c3 successfully.

Usar la consola

  1. Create a RAM user.

  2. Create a custom policy con el siguiente ejemplo. Este otorga permisos para gestionar discos, instantáneas, políticas de instantáneas, etiquetas, instancias, sistemas de archivos NAS y buckets de OSS.

    Show sample policy

    {
        "Version": "1",
        "Statement": [
            {
                "Action": [
                    "ecs:AttachDisk",
                    "ecs:DetachDisk",
                    "ecs:DescribeDisks",
                    "ecs:CreateDisk",
                    "ecs:ResizeDisk",
                    "ecs:CreateSnapshot",
                    "ecs:DeleteSnapshot",
                    "ecs:CreateAutoSnapshotPolicy",
                    "ecs:ApplyAutoSnapshotPolicy",
                    "ecs:CancelAutoSnapshotPolicy",
                    "ecs:DeleteAutoSnapshotPolicy",
                    "ecs:DescribeAutoSnapshotPolicyEX",
                    "ecs:ModifyAutoSnapshotPolicyEx",
                    "ecs:AddTags",
                    "ecs:DescribeTags",
                    "ecs:DescribeSnapshots",
                    "ecs:ListTagResources",
                    "ecs:TagResources",
                    "ecs:UntagResources",
                    "ecs:ModifyDiskSpec",
                    "ecs:DeleteDisk",
                    "ecs:DescribeInstanceAttribute",
                    "ecs:DescribeInstances"
                ],
                "Resource": ["*"],
                "Effect": "Allow"
            },
            {
                "Action": [
                    "nas:DescribeFileSystems",
                    "nas:DescribeMountTargets",
                    "nas:AddTags",
                    "nas:DescribeTags",
                    "nas:RemoveTags",
                    "nas:CreateFileSystem",
                    "nas:DeleteFileSystem",
                    "nas:ModifyFileSystem",
                    "nas:CreateMountTarget",
                    "nas:DeleteMountTarget",
                    "nas:ModifyMountTarget",
                    "nas:TagResources",
                    "nas:SetDirQuota",
                    "nas:EnableRecycleBin",
                    "nas:GetRecycleBinAttribute"
                ],
                "Resource": ["*"],
                "Effect": "Allow"
            },
            {
                "Action": [
                    "oss:PutBucket",
                    "oss:GetObjectTagging",
                    "oss:ListBuckets",
                    "oss:PutBucketTags",
                    "oss:GetBucketTags",
                    "oss:PutBucketEncryption",
                    "oss:GetBucketInfo"
                ],
                "Resource": ["*"],
                "Effect": "Allow"
            }
        ]
    }
  3. Attach the custom policy to the RAM user.

  4. Create an AccessKey para el usuario de RAM.

    Aviso

    Configure una política de restricción de red para AccessKey para limitar las llamadas a redes de confianza.

  5. Cree un Secret llamado alibaba-addon-secret en el namespace kube-system con el par de AccessKey. El plugin CSI usa este Secret para autenticarse con Alibaba Cloud.

    kubectl -n kube-system create secret generic alibaba-addon-secret \
      --from-literal='access-key-id=<your-access-key-id>' \
      --from-literal='access-key-secret=<your-access-key-secret>'

    Reemplace <your-access-key-id> y <your-access-key-secret> con su par de AccessKey.

Paso 2: Instalar el plugin CSI

Instale tanto csi-plugin como csi-provisioner.

Usar onectl

Instale los complementos:

onectl addon install csi-plugin
onectl addon install csi-provisioner

Resultado esperado:

Addon csi-plugin, version **** installed.
Addon csi-provisioner, version **** installed.

Usar la consola

  1. Inicie sesión en la consola de ACK. En el panel de navegación izquierdo, haga clic en Clusters.

  2. Haga clic en el nombre de su clúster. En el panel de navegación izquierdo, haga clic en Add-ons.

  3. Haga clic en la pestaña Volumes. Busque las tarjetas csi-plugin y csi-provisioner, y luego haga clic en Install en cada una.

  4. En el cuadro de diálogo Message, confirme las versiones y haga clic en OK.

Paso 3: Usar volúmenes

Una vez instalado el plugin CSI, monte distintos tipos de volúmenes en su clúster registrado.

Tipo de volumen

Temas

NAS

Use a statically provisioned NAS volume, Use a dynamically provisioned NAS volume

OSS

Use a statically provisioned ossfs 1.0 volume, Encrypt an ossfs 1.0 volume

Disco

Use a statically provisioned disk volume, Use a dynamically provisioned disk volume

Pasos siguientes

  • Gestione o elimine los complementos CSI desde la página Add-ons en la consola de ACK, o bien use onectl.

  • Gestione el almacenamiento en varios clústeres registrados con gestión de flotas de ACK One.