tencent cloud

Feedback

CFSTURBO-CSI

Last updated: 2024-02-28 18:04:47

    Component Overview

    The Kubernetes-csi-tencentcloud CFSTURBO plugin implements the CSI interface, facilitating the usage of Tencent Cloud's CFS Turbo Cloud File Storage within a container cluster.

    Use Cases

    Cloud File Storage CFS Turbo is ideal for large-scale throughput and mixed workload businesses, providing private protocol mounting. The performance of a single client can match that of the storage cluster. You can pair it with Cloud Virtual Machine (CVM), Tencent Kubernetes Engine (TKE), BatchCompute, and other services.
    CFS Turbo is effortlessly accessible. No need to adjust your existing business structure or undertake complex configurations. In just three steps, you can complete the access and usage of the file system: create a file system, enable the file system client on the server, and subsequently mount the created file system. With the CFSTURBO-CSI extension component, CFS Turbo can swiftly be brought into play within a container cluster by using the standard native Kubernetes.

    Use Limits

    The CFSTURBO-CSI extension component requires a Kubernetes version of 1.14 or later.
    For use limits of CFS Turbo, see Use Limits.
    To use CFS Turbo in TKE, it is required to install such an extension component in the cluster, which will occupy certain system resources.

    csfTurbo-csi Permission

    Permission Description

    The permission of this component is the minimal dependency required for the current feature to operate.
    It is required to mount the host /var/lib/kubelet related directory to the container to complete the mount/umount of the volume, hence the activation of the privileged-level container is required.

    Permission Scenarios

    Feature
    Involved Object
    Involved Operation Permission
    Supporting dynamic creation/deletion of cfsturbo subdirectory type pv
    persistentvolumeclaims/persistentvolumes/storageclasses
    get/list/watch/create/delete/update
    node
    get/list/

    Permission Definition

    kind: ClusterRole
    apiVersion: rbac.authorization.k8s.io/v1
    metadata:
    name: cfsturbo-csi-controller-role
    rules:
    - apiGroups: [""]
    resources: ["persistentvolumes"]
    verbs: ["get", "list", "watch", "create", "delete", "update"]
    - apiGroups: [""]
    resources: ["persistentvolumeclaims"]
    verbs: ["get", "list", "watch", "update"]
    - apiGroups: [""]
    resources: ["nodes"]
    verbs: ["get", "list"]
    - apiGroups: [""]
    resources: ["events"]
    verbs: ["get", "list", "watch", "create", "update", "patch"]
    - apiGroups: ["storage.k8s.io"]
    resources: ["storageclasses"]
    verbs: ["get", "list", "watch"]
    

    Directions

    Installing a Component

    1. Log in to the Tencent Kubernetes Engine Console, and choose Cluster from the left navigation bar.
    2. In the Cluster list, click the desired Cluster ID to access its detailed page.
    3. Select Component Management from the left-side menu, and click Create on the Component Management page.
    4. In the Create page, select the CFSTurbo.
    5. Click Done to install the component.

    Specifying StorageClass

    Step 1: Create a CFS Turbo Type StorageClass

    1. In the cluster list, click a cluster ID to enter the cluster details page.
    2. Select Storage > StorageClass from the left menu bar, then click Create on the StorageClass page.
    3. In the Create StorageClass page, configure the StorageClass parameters as shown below:
    
    
    
    Configuration Item
    Description
    Name
    Enter the StorageClass name.
    Region
    It is the region of the cluster by default.
    Provisioner
    Select Cloud File Storage CFS Turbo here.
    CFS Turbo
    Please select the already created CFS Turbo. If you do not have a suitable CFS Turbo, please go to the Cloud File Storage console to create a new one. For details, see Creating File Systems and Mount Targets.
    Reclaim Policy
    Two reclaim policies are provided: Delete and Retain. For data security, it is recommended to use the Retain reclaim policy.
    Delete: If a PV is dynamically created through a PVC, the PV and storage instance bound to the PVC will be automatically terminated when the PVC is terminated.
    Retain: If a PV is dynamically created through a PVC, the PV and storage instance bound to the PVC will be retained when the PVC is terminated.
    4. Click Create StorageClass to complete the creation.

    Step 2: Create a PersistentVolumeClaim

    1. In the cluster list, click a cluster ID to enter the cluster details page.
    2. Select Storage > PersistentVolumeClaim from the left menu bar, and click Create on the PersistentVolumeClaim page.
    3. On the Create PersistentVolumeClaim page, set the key parameters of your PVC.
    Configuration Item
    Description
    Name
    Enter the name of the PersistentVolumeClaim.
    Namespace
    A namespace is used to assign cluster resources. Select default here.
    Provisioner
    Select Cloud File Storage CFS Turbo.
    Read/Write Permission
    CFS only supports multi-server read and write.
    Specify StorageClass or Not
    Select Specify.
    Note:
    The PVC and PV will be bound to the same StorageClass.
    Do not specify implies that the StorageClass value of this PVC will be empty, corresponding to a void value under the storageClassName field in the YAML file as a character string.
    StorageClass
    Choose the StorageClass created in the steps above.
    Specify a PersistentVolume or Not
    Specify the PersistentVolume according to demand. Note:
    The system first searches the current cluster for PVs that meet the binding rules. If there are no such PVs, the system dynamically creates a PV to be bound based on the PVC and StorageClass parameters.
    Either the StorageClass or PersistVolume should be specified.
    For more details on Not Specifying PersistVolume, see PV and PVC Binding Rules.
    4. Click Create PersistentVolumeClaim.

    Step 3: Create a workload

    1. In the cluster list, click a cluster ID to enter the cluster details page.
    2. Select Workload > Deployment from the left menu bar, and click Create on the Deployment page.
    3. On the Create Deployment page, configure Workload parameters. For parameter details, see Creating a Deployment. Based on actual requirements, choose Use existing PVC for the data volume and select the PVC you have created.
    4. After mounting to the specified path in the container, click Create Deployment.

    Not Specifying StroageClass

    Step 1: Create a PersistentVolume

    1. In the cluster list, click a cluster ID to enter the cluster details page.
    2. Select Storage > PersistentVolume in the left menu bar, and click Create on the PersistentVolume page.
    3. On the Create PersistentVolume page, configure the key parameters for PV as shown below:
    
    
    
    Configuration Item
    Description
    Source Setting
    Select Static Creation.
    Name
    Enter the name of the PersistentVolume.
    Provisioner
    Select Cloud File Storage CFS Turbo.
    Read/Write Permission
    CFS only supports multi-server read and write.
    Specify StorageClass or Not
    Select Do not specify.
    CFS Turbo
    Please select the created CFS Turbo. If you do not have a suitable CFS Turbo, please go to the Cloud File Storage console to create a new one. For details, see Creating File Systems and Mount Targets.
    CFS Turbo Root Directory
    Fill in according to the root directory of the mount point information in CFS Turbo.
    CFS Turbo Subdirectory
    Fill in according to the subdirectory of the mount point information in CFS Turbo.
    4. Click Create PersistentVolume to complete the creation.

    Step 2: Create a PersistentVolumeClaim

    1. In the cluster list, click a cluster ID to enter the cluster details page.
    2. Select Storage > PersistentVolumeClaim in the left menu bar, and click Create on the PersistentVolumeClaim page.
    3. On the Create PersistentVolumeClaim page, configure the key parameters of your PVC.
    Configuration Item
    Description
    Name
    Enter the name of the PersistentVolumeClaim.
    Namespace
    A namespace is used to assign cluster resources. Select default here.
    Provisioner
    Select Cloud File Storage CFS Turbo.
    Read/Write Permission
    CFS only supports multi-server read and write.
    Specify StorageClass or Not
    Select Do not specify.
    Note:
    The PVC and PV will be bound to the same StorageClass.
    Do not specify implies that the StorageClass value of this PVC will be empty, corresponding to a void value under the storageClassName field in the YAML file as a character string.
    StorageClass
    Choose the StorageClass created in the steps above.
    Specify a PersistentVolume or Not
    Specify the PersistentVolume according to demand. Note:
    The system first searches the current cluster for PVs that meet the binding rules. If there are no such PVs, the system dynamically creates a PV to be bound based on the PVC and StorageClass parameters.
    Either the StorageClass or PersistVolume should be specified.
    For details on Not Specifying PersistVolume, see PV and PVC Binding Rules.
    4. Click Create PersistentVolumeClaim.

    Step 3: Create a workload

    1. In the cluster list, click a cluster ID to enter the cluster details page.
    2. Select Workload > Deployment in the left menu bar, and click Create on the Deployment page.
    3. In the Create Deployment page, configure the workload parameters. For more details, see Creating a Deployment. According to actual requirements, choose Use Existing PVC for the data volume and select the created PVC.
    
    Contact Us

    Contact our sales team or business advisors to help your business.

    Technical Support

    Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

    7x24 Phone Support