Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Storage Service for Local Controller

...

Optane PM (Persistent Memory) Plugin

Optane PM and PMEM-CSI

The term persistent memory is used to describe technologies which allow programs to access data as memory, directly byte-addressable, while the contents are non-volatile, preserved across power cycles. It has aspects that are like memory, and aspects that are like storage.

Intel Optane DC Persistent Memory is an innovative technology that delivers a unique combination of affordable large memory capacity and persistence (non-volatility). The persistent memory technology can help boost the performance of data-intensive applications, such as in-memory analytics, databases, content delivery networks, and high performance computing (HPC), as well as deliver consistent service levels at scale with higher virtual machine and container density.

To enable the Optane PM (Persistent Memory) on cloud native application, Intel has develop the PMEM-CSI driver for Kubernetes. Intel PMEM-CSI is a CSI (Container Storage Interface) storage driver for container orchestrators like Kubernetes. It makes local persistent memory (PMEM) available as a filesystem volume to container applications. It can currently utilize non-volatile memory devices that can be controlled via the libndctl utility library.

The PMEM-CSI driver can operate in two different device modes: LVM and direct.

  1. In Logical Volume Management (LVM) mode the PMEM-CSI driver uses LVM for logical volume Management to avoid the risk of fragmentation. The LVM logical volumes are served to satisfy API requests. There is one volume group created per region, ensuring the region-affinity of served volumes. 
  2. In direct device mode PMEM-CSI driver allocates namespaces directly from the storage device. This creates device space fragmentation risk, but reduces complexity and run-time overhead by avoiding additional device mapping layer. Direct mode also ensures the region-affinity of served volumes, because provisioned volume can belong to one region only.

For the Optane PM plugin in ICN, we support LVM mode, which provide CSI plugin and CSI driver.Application can directly create StorageClass and PersistentVolumeClaim to use it as LVM volume. , the framework as following chart.

devicemode-lvm diagramImage Added

The common usage scenario for Optane PM is mount as cache partition or store metadata for filesystem or clusters (Ceph for example), this work will be design in future release.

devicemode-lvm diagramImage Removed

Implementation

Optane PM plugin is part of KUD plugin addons, the bring up process defined in KUD deployment_infra ansible playbook.

Optane PM CSI plugin and driver layout as following chart, we create example application with StorageClass and PVC for dynamic volume provisioning.

<chart will file later>